UNPKG

mp-colorui

Version:

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

534 lines (461 loc) 26 kB
(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["components/tree/index"],{ /***/ "./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js?!./src/components/tree/index.tsx?taro&type=script&parse=COMPONENT&": /*!**********************************************************************************************************************************************************!*\ !*** ./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js??ref--4-0!./src/components/tree/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 _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; 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 _index = __webpack_require__(/*! ../../lib/index */ "./src/lib/index.ts"); __webpack_require__(/*! ./index.scss */ "./src/components/tree/index.scss"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } 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 ClTree = function (_BaseComponent) { _inherits(ClTree, _BaseComponent); function ClTree() { var _ref; var _temp, _this, _ret; _classCallCheck(this, ClTree); for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ClTree.__proto__ || Object.getPrototypeOf(ClTree)).call.apply(_ref, [this].concat(args))), _this), _this.$usedState = ["loopArray78", "list", "originList", "flatList", "color", "showCheck", "__fn_call", "data"], _this.customComponents = ["ClFlex", "ClIcon", "ClCheckbox", "ClText"], _temp), _possibleConstructorReturn(_this, _ret); } _createClass(ClTree, [{ key: "_constructor", value: function _constructor(props) { _get(ClTree.prototype.__proto__ || Object.getPrototypeOf(ClTree.prototype), "_constructor", this).call(this, props); this.state = { list: [], originList: [], flatList: [] }; this.$$refs = new _taroWeapp2.default.RefsArray(); } }, { key: "dealLevel", value: function dealLevel(_ref2) { var _this2 = this; var list = _ref2.list, parentId = _ref2.parentId, deep = _ref2.deep, levelId = _ref2.levelId; if (!list) { return; }var deepIndex = deep || 0; deepIndex++; var temp = list.map(function (item, listIndex) { var id = listIndex + 1; var newLevelId = levelId ? levelId + "-" + id : "" + id; return _extends({}, item, { deepIndex: deepIndex, id: id, parent: parentId, childrenCheck: [], commonId: (0, _index.generateId)(), levelId: newLevelId, children: _this2.dealLevel({ list: item.children, parentId: id, deep: deepIndex, levelId: newLevelId }) }); }); return temp; } }, { key: "openItem", value: function openItem(item) { var thisOpen = !item.open; var originItem = this.getTreeItem(item.commonId); originItem.open = thisOpen; var originList = this.state.originList; var newList = this.flatList(originList); this.setState({ list: newList }); } }, { key: "clickItem", value: function clickItem(item) { var onClickItem = this.props.onClickItem; onClickItem && this.props.onClickItem(item); } }, { key: "getTreeItem", value: function getTreeItem(id) { var originList = this.state.originList; var result = void 0; function getItem(list) { if (!result) { var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = list[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var item = _step.value; result = result ? result : item.commonId === id ? item : undefined; if (item.children && !result) { getItem(item.children); } } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } } } getItem(originList); return result; } }, { key: "changeChecked", value: function changeChecked() { var commonId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var item = arguments[1]; var flatList = this.state.flatList; var onCheckedChange = this.props.onCheckedChange; var id = item.commonId; var checked = commonId.length > 0; var data = flatList.find(function (item) { return item.commonId === id; }); var levelIdArr = item.levelId.split("-"); var allLevelChildren = flatList.filter(function (child) { var levelArr = child.levelId.split("-"); return levelIdArr.every(function (item, index) { return item === levelArr[index]; }) && item.deepIndex < child.deepIndex; }); var allParent = flatList.filter(function (father) { if (item.deepIndex <= father.deepIndex) { return false; }var i = 0; var result = true; var levelArr = father.levelId.split("-"); while (i < father.deepIndex) { result = result && levelArr[i] === levelIdArr[i]; i++; } return result; }); allLevelChildren.forEach(function (item) { item.checked = checked; item.someCheck = false; }); var father = allParent.find(function (parent) { return parent.deepIndex === item.deepIndex - 1; }); data.checked = checked; onCheckedChange && this.props.onCheckedChange(data); var maxDeep = allParent.length; var i = maxDeep; if (checked) { data.someCheck = false; if (father) { father.someCheck = father.children.some(function (item) { return !item.checked || item.someCheck; }); } var result = true; while (i > 0) { var current = allParent.find(function (item) { return item.deepIndex === i; }); result = result && current.children.every(function (child) { return child.checked && !child.someCheck; }); current.someCheck = !result; current.checked = checked; i--; } } else { allParent.forEach(function (item) { return item.someCheck = true; }); if (father) { father.checked = father.children.some(function (item) { return item.checked; }); } while (i > 0) { var _current = allParent.find(function (item) { return item.deepIndex === i; }); _current.checked = _current.children.some(function (child) { return child.checked; }); i--; } } this.setState({ flatList: [].concat(_toConsumableArray(flatList)), list: [].concat(_toConsumableArray(this.state.list)) }); } }, { key: "_createItemData", value: function _createItemData(_$uid) { var _this3 = this; return function (item) { var _genCompid = (0, _taroWeapp.genCompid)(_$uid + "$compid__872"), _genCompid2 = _slicedToArray(_genCompid, 2), $prevCompid__872 = _genCompid2[0], $compid__872 = _genCompid2[1]; var _genCompid3 = (0, _taroWeapp.genCompid)(_$uid + "$compid__873"), _genCompid4 = _slicedToArray(_genCompid3, 2), $prevCompid__873 = _genCompid4[0], $compid__873 = _genCompid4[1]; var _genCompid5 = (0, _taroWeapp.genCompid)(_$uid + "$compid__874"), _genCompid6 = _slicedToArray(_genCompid5, 2), $prevCompid__874 = _genCompid6[0], $compid__874 = _genCompid6[1]; var _genCompid7 = (0, _taroWeapp.genCompid)(_$uid + "$compid__875"), _genCompid8 = _slicedToArray(_genCompid7, 2), $prevCompid__875 = _genCompid8[0], $compid__875 = _genCompid8[1]; var _props = _this3.props, color = _props.color, showCheck = _props.showCheck; var anonymousState__temp = (0, _taroWeapp.internal_inline_style)({ paddingLeft: (0, _taroWeapp.pxTransform)((item.deepIndex - 1) * 20) }); var anonymousState__temp2 = (0, _taroWeapp.internal_inline_style)({ transform: "rotate(" + (item.open ? 180 : 90) + "deg)", visibility: item.children ? "initial" : "hidden" }); var anonymousState__temp3 = showCheck ? [{ checked: item.checked, key: "", value: item.commonId, disabled: item.disabled }] : null; _this3.anonymousFunc0 = function (commonId) { _this3.changeChecked.call(_this3, commonId, item); }; _taroWeapp.propsManager.set({ "align": "center" }, $compid__872, $prevCompid__872); _taroWeapp.propsManager.set({ "iconName": "triangleupfill", "size": "small" }, $compid__873, $prevCompid__873); showCheck && _taroWeapp.propsManager.set({ "type": "normal", "shape": "round", "more": item.someCheck, "color": color, "checkboxGroup": anonymousState__temp3, "onChange": _this3.anonymousFunc0 }, $compid__874, $prevCompid__874); _taroWeapp.propsManager.set({ "text": item.name }, $compid__875, $prevCompid__875); return { anonymousState__temp: anonymousState__temp, anonymousState__temp2: anonymousState__temp2, anonymousState__temp3: anonymousState__temp3, $compid__872: $compid__872, $compid__873: $compid__873, $compid__874: $compid__874, $compid__875: $compid__875, item: item, showCheck: showCheck }; }; } }, { key: "flatList", value: function flatList(list) { var flat = []; function flatFn(list) { list.forEach(function (item) { flat.push(item); if (item.children && item.open) { flatFn(item.children); } }); } flatFn(list); return flat; } }, { key: "flatAllArr", value: function flatAllArr(list) { var category = []; function categoryFn() { var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; list.forEach(function (item) { category.push(item); if (item.children) { categoryFn(item.children); } }); } categoryFn(list); return category; } }, { key: "updateData", value: function updateData(data) { var _this4 = this; var dealArr = this.dealLevel({ list: data, parentId: undefined }); var flatArr = this.flatList(dealArr); var flatList = this.flatAllArr(dealArr); this.setState({ list: flatArr, originList: dealArr, flatList: flatList }, function () { var checkedList = flatList.filter(function (item) { return item.checked; }); var openList = flatList.filter(function (item) { return item.open; }); openList.forEach(function (item) { item.open = !item.open; _this4.openItem(item); }); checkedList.forEach(function (item) { _this4.changeChecked(item.commonId, item); }); }); } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps, nextContext) { this.updateData(nextProps.data); } }, { key: "componentDidMount", value: function componentDidMount() { this.updateData(this.props.data); } }, { key: "_createData", value: function _createData() { var _this5 = this; this.__state = arguments[0] || this.state || {}; this.__props = arguments[1] || this.props || {}; var __isRunloopRef = arguments[2]; var __prefix = this.$prefix; ; var list = this.__state.list; var loopArray78 = list.map(function (item, _anonIdx) { item = { $original: (0, _taroWeapp.internal_get_original)(item) }; var $loopState__temp5 = _this5._createItemData(__prefix + "biazzzzzzz" + ("" + _anonIdx))(item.$original); var $loopState__temp7 = "key-" + item.$original.commonId; return { $loopState__temp5: $loopState__temp5, $loopState__temp7: $loopState__temp7, $original: item.$original }; }); Object.assign(this.__state, { loopArray78: loopArray78 }); return this.__state; } }, { key: "anonymousFunc0", value: function anonymousFunc0(e) { ; } }]); return ClTree; }(_taroWeapp.Component); ClTree.$$events = ["openItem", "clickItem"]; ClTree.$$componentPath = "components/tree/index"; ClTree.options = { addGlobalClass: true }; ClTree.defaultProps = { showCheck: false, data: [] }; exports.default = ClTree; Component(__webpack_require__(/*! @tarojs/taro-weapp */ "./node_modules/@tarojs/taro-weapp/index.js").default.createComponent(ClTree)); /***/ }), /***/ "./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/tree/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/tree/index.tsx?taro&type=template&parse=COMPONENT& ***! \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__.p + "components/tree/index.wxml"; /***/ }), /***/ "./src/components/tree/index.scss": /*!****************************************!*\ !*** ./src/components/tree/index.scss ***! \****************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "./src/components/tree/index.tsx": /*!***************************************!*\ !*** ./src/components/tree/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/tree/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/tree/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/tree/index.tsx?taro&type=script&parse=COMPONENT&": /*!*************************************************************************!*\ !*** ./src/components/tree/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/tree/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/tree/index.tsx?taro&type=template&parse=COMPONENT&": /*!***************************************************************************!*\ !*** ./src/components/tree/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/tree/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/tree/index.tsx","runtime","taro","vendors","common"]]]);