UNPKG

mp-colorui

Version:

MP ColorUI 是一款基于 Taro 框架并且联合 Color-UI CSS 库开发的多端 UI 组件库(支持小程序端和H5端)

394 lines (331 loc) 21.6 kB
(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["components/tabs/index"],{ /***/ "./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js?!./src/components/tabs/index.tsx?taro&type=script&parse=COMPONENT&": /*!**********************************************************************************************************************************************************!*\ !*** ./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js??ref--4-0!./src/components/tabs/index.tsx?taro&type=script&parse=COMPONENT& ***! \**********************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; var _taroWeapp = __webpack_require__(/*! @tarojs/taro-weapp */ "./node_modules/@tarojs/taro-weapp/index.js"); var _taroWeapp2 = _interopRequireDefault(_taroWeapp); var _model = __webpack_require__(/*! ../../lib/model */ "./src/lib/model.ts"); __webpack_require__(/*! ./index.scss */ "./src/components/tabs/index.scss"); var _index = __webpack_require__(/*! ../../lib/index */ "./src/lib/index.ts"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } var move = 0; var scrollLeftContent = 0; var duration = 0.3; var distance = 0; var ClTabs = function (_BaseComponent) { _inherits(ClTabs, _BaseComponent); function ClTabs() { var _ref; var _temp, _this, _ret; _classCallCheck(this, ClTabs); for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ClTabs.__proto__ || Object.getPrototypeOf(ClTabs)).call.apply(_ref, [this].concat(args))), _this), _this.$usedState = ["anonymousState__temp2", "anonymousState__temp3", "anonymousState__temp4", "anonymousState__temp", "activeTab", "scrollLeft", "contentScrollLeft", "tabs", "active", "bgColor", "activeColor", "className", "style", "touchMove", "type", "children"], _this.customComponents = [], _temp), _possibleConstructorReturn(_this, _ret); } _createClass(ClTabs, [{ key: "_constructor", value: function _constructor() { _get(ClTabs.prototype.__proto__ || Object.getPrototypeOf(ClTabs.prototype), "_constructor", this).apply(this, arguments); this.state = { activeTab: 0, scrollLeft: 0, contentScrollLeft: 0 }; this.$$refs = new _taroWeapp2.default.RefsArray(); } }, { key: "componentDidMount", value: function componentDidMount() { this.props.tabs.length && this.onClickTab(this.props.active || 0); } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps, nextContext) { var nextActive = nextProps.active; var thisActive = this.props.active; if (nextActive !== thisActive) { this.onClickTab(nextActive || 0); } } }, { key: "onClickTab", value: function onClickTab(index) { var _this2 = this; var id = this.props.tabs[index].id; var id0 = this.props.tabs[0].id; var query = _taroWeapp2.default.createSelectorQuery(); var view = query.select("#" + id); var view0 = query.select("#" + id0); var left = 0; var promise = new Promise(function (resolve) { new Promise(function (resolve1) { view0.boundingClientRect().exec(function (res) { var data = res[0]; left = data.left; resolve1(); }); }).then(function () { view.boundingClientRect().exec(function (res) { var data = res[(0, _index.getRectNumber)()]; if (_index.isAliPay) { left = data.width * index; } else { left = Math.abs(left - data.left); } resolve(left); }); }); }); promise.then(function () { _this2.setState({ activeTab: index, scrollLeft: (index - 1) * 60, contentScrollLeft: left + Math.random() / 10 }); }); this.props.onClick && this.props.onClick(index); } }, { key: "_createDefaultComponentData", value: function _createDefaultComponentData(_$uid) { return function (paramters) { var bgColorClassName = paramters.bgColorClassName, activeColor = paramters.activeColor, tabs = paramters.tabs, activeTab = paramters.activeTab, scrollLeft = paramters.scrollLeft; return { bgColorClassName: bgColorClassName, scrollLeft: scrollLeft, activeTab: activeTab, activeColor: activeColor, tabs: tabs }; }; } }, { key: "_createVerbComponentData", value: function _createVerbComponentData(_$uid) { return function (paramters) { var bgColorClassName = paramters.bgColorClassName, activeColor = paramters.activeColor, tabs = paramters.tabs, activeTab = paramters.activeTab; return { bgColorClassName: bgColorClassName, activeTab: activeTab, activeColor: activeColor, tabs: tabs }; }; } }, { key: "_createCenterComponentData", value: function _createCenterComponentData(_$uid) { return function (paramters) { var bgColorClassName = paramters.bgColorClassName, activeColor = paramters.activeColor, tabs = paramters.tabs, activeTab = paramters.activeTab; return { bgColorClassName: bgColorClassName, activeTab: activeTab, activeColor: activeColor, tabs: tabs }; }; } }, { key: "_createData", value: function _createData() { var _this3 = this; this.__state = arguments[0] || this.state || {}; this.__props = arguments[1] || this.props || {}; var __isRunloopRef = arguments[2]; var __prefix = this.$prefix; ; var contentScrollLeft = this.__state.contentScrollLeft; var bgColorClassName = this.__props.bgColor ? _model.BG_COLOR_LIST[this.__props.bgColor] : ""; var activeColor = this.__props.activeColor ? _model.TEXT_COLOR_LIST[this.__props.activeColor] : ""; // 空组件镇压邪魔 var renderClosureComponent = function renderClosureComponent(_$uid) { return function () { var _$_$anonymousState__temp, _$_$anonymousState__temp2, _$_$anonymousState__temp3; var _props = _this3.props, type = _props.type, tabs = _props.tabs; var _state = _this3.state, activeTab = _state.activeTab, scrollLeft = _state.scrollLeft; var defaultParameter = { bgColorClassName: bgColorClassName, activeColor: activeColor, tabs: tabs, activeTab: activeTab, scrollLeft: scrollLeft }; if (type === "default") { _$_$anonymousState__temp = undefined; _$_$anonymousState__temp = _this3._createDefaultComponentData(_$uid + "bidzzzzzzz")(defaultParameter); } else if (type === "verb") { _$_$anonymousState__temp2 = undefined; _$_$anonymousState__temp2 = _this3._createVerbComponentData(_$uid + "biezzzzzzz")(defaultParameter); } else if (type === "center") { _$_$anonymousState__temp3 = undefined; _$_$anonymousState__temp3 = _this3._createCenterComponentData(_$uid + "bifzzzzzzz")(defaultParameter); } else {} return { type: type, _$_$anonymousState__temp: _$_$anonymousState__temp, _$_$anonymousState__temp2: _$_$anonymousState__temp2, _$_$anonymousState__temp3: _$_$anonymousState__temp3 }; }; }; var anonymousState__temp = renderClosureComponent(__prefix + "biczzzzzzz")(); var anonymousState__temp2 = (0, _index.classNames)(this.__props.className); var anonymousState__temp3 = (0, _taroWeapp.internal_inline_style)(Object.assign({ overflow: "hidden" }, this.__props.style)); var anonymousState__temp4 = (0, _taroWeapp.internal_inline_style)({ width: "auto", transform: "translateX(-" + (0, _taroWeapp.pxTransform)(contentScrollLeft / _index.screenPercent) + ")", transitionDuration: duration + "s" }); this.anonymousFunc0 = function (e) { if (!_this3.__props.touchMove) { return; }scrollLeftContent = 0; duration = 0; move = e.touches[0].pageX; }; this.anonymousFunc1 = function (e) { if (!_this3.__props.touchMove) { return; }if (scrollLeftContent === 0) { scrollLeftContent = e.touches[0].pageX; }distance = e.touches[0].pageX - scrollLeftContent; _this3.setState({ contentScrollLeft: contentScrollLeft - distance }); scrollLeftContent = e.touches[0].pageX; }; this.anonymousFunc2 = function (e) { if (!_this3.__props.touchMove) { return; }duration = 0.3; move = e.changedTouches[0].pageX - move; var maxIndex = _this3.__props.tabs.length - 1; if (move < -50) { _this3.onClickTab(_this3.__state.activeTab + 1 > maxIndex ? maxIndex : _this3.__state.activeTab + 1); } else if (move > 50) { _this3.onClickTab(_this3.__state.activeTab - 1); } else _this3.onClickTab(_this3.__state.activeTab); }; Object.assign(this.__state, { anonymousState__temp2: anonymousState__temp2, anonymousState__temp3: anonymousState__temp3, anonymousState__temp4: anonymousState__temp4, anonymousState__temp: anonymousState__temp }); return this.__state; } }, { key: "anonymousFunc0", value: function anonymousFunc0(e) { ; } }, { key: "anonymousFunc1", value: function anonymousFunc1(e) { ; } }, { key: "anonymousFunc2", value: function anonymousFunc2(e) { ; } }]); return ClTabs; }(_taroWeapp.Component); ClTabs.$$events = ["onClickTab", "onClickTab", "onClickTab", "anonymousFunc0", "anonymousFunc1", "anonymousFunc2"]; ClTabs.$$componentPath = "components/tabs/index"; ClTabs.options = { addGlobalClass: true }; ClTabs.defaultProps = { type: "default", bgColor: undefined, activeColor: "black", active: 0, tabs: [], touchMove: false }; exports.default = ClTabs; Component(__webpack_require__(/*! @tarojs/taro-weapp */ "./node_modules/@tarojs/taro-weapp/index.js").default.createComponent(ClTabs)); /***/ }), /***/ "./node_modules/file-loader/dist/cjs.js?name=[path][name].wxml&context=/Users/jinbai/Documents/develop/github/mp-colorui-old/mp-colorui/src!./node_modules/@tarojs/mini-runner/dist/loaders/miniTemplateLoader.js!./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js?!./src/components/tabs/index.tsx?taro&type=template&parse=COMPONENT&": /*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/file-loader/dist/cjs.js?name=[path][name].wxml&context=/Users/jinbai/Documents/develop/github/mp-colorui-old/mp-colorui/src!./node_modules/@tarojs/mini-runner/dist/loaders/miniTemplateLoader.js!./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js??ref--4-0!./src/components/tabs/index.tsx?taro&type=template&parse=COMPONENT& ***! \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__.p + "components/tabs/index.wxml"; /***/ }), /***/ "./src/components/tabs/index.scss": /*!****************************************!*\ !*** ./src/components/tabs/index.scss ***! \****************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "./src/components/tabs/index.tsx": /*!***************************************!*\ !*** ./src/components/tabs/index.tsx ***! \***************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _index_tsx_taro_type_template_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.tsx?taro&type=template&parse=COMPONENT& */ "./src/components/tabs/index.tsx?taro&type=template&parse=COMPONENT&"); /* harmony import */ var _index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.tsx?taro&type=script&parse=COMPONENT& */ "./src/components/tabs/index.tsx?taro&type=script&parse=COMPONENT&"); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /***/ }), /***/ "./src/components/tabs/index.tsx?taro&type=script&parse=COMPONENT&": /*!*************************************************************************!*\ !*** ./src/components/tabs/index.tsx?taro&type=script&parse=COMPONENT& ***! \*************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js??ref--4-0!./index.tsx?taro&type=script&parse=COMPONENT& */ "./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js?!./src/components/tabs/index.tsx?taro&type=script&parse=COMPONENT&"); /* harmony import */ var _node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony default export */ __webpack_exports__["default"] = (_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_script_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0___default.a); /***/ }), /***/ "./src/components/tabs/index.tsx?taro&type=template&parse=COMPONENT&": /*!***************************************************************************!*\ !*** ./src/components/tabs/index.tsx?taro&type=template&parse=COMPONENT& ***! \***************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _node_modules_file_loader_dist_cjs_js_name_path_name_wxml_context_Users_jinbai_Documents_develop_github_mp_colorui_old_mp_colorui_src_node_modules_tarojs_mini_runner_dist_loaders_miniTemplateLoader_js_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_template_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/file-loader/dist/cjs.js?name=[path][name].wxml&context=/Users/jinbai/Documents/develop/github/mp-colorui-old/mp-colorui/src!../../../node_modules/@tarojs/mini-runner/dist/loaders/miniTemplateLoader.js!../../../node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js??ref--4-0!./index.tsx?taro&type=template&parse=COMPONENT& */ "./node_modules/file-loader/dist/cjs.js?name=[path][name].wxml&context=/Users/jinbai/Documents/develop/github/mp-colorui-old/mp-colorui/src!./node_modules/@tarojs/mini-runner/dist/loaders/miniTemplateLoader.js!./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js?!./src/components/tabs/index.tsx?taro&type=template&parse=COMPONENT&"); /* harmony import */ var _node_modules_file_loader_dist_cjs_js_name_path_name_wxml_context_Users_jinbai_Documents_develop_github_mp_colorui_old_mp_colorui_src_node_modules_tarojs_mini_runner_dist_loaders_miniTemplateLoader_js_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_template_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_file_loader_dist_cjs_js_name_path_name_wxml_context_Users_jinbai_Documents_develop_github_mp_colorui_old_mp_colorui_src_node_modules_tarojs_mini_runner_dist_loaders_miniTemplateLoader_js_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_template_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_file_loader_dist_cjs_js_name_path_name_wxml_context_Users_jinbai_Documents_develop_github_mp_colorui_old_mp_colorui_src_node_modules_tarojs_mini_runner_dist_loaders_miniTemplateLoader_js_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_template_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_file_loader_dist_cjs_js_name_path_name_wxml_context_Users_jinbai_Documents_develop_github_mp_colorui_old_mp_colorui_src_node_modules_tarojs_mini_runner_dist_loaders_miniTemplateLoader_js_node_modules_tarojs_mini_runner_dist_loaders_wxTransformerLoader_js_ref_4_0_index_tsx_taro_type_template_parse_COMPONENT___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /***/ }) },[["./src/components/tabs/index.tsx","runtime","taro","vendors","common"]]]);