UNPKG

mp-colorui

Version:

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

404 lines (340 loc) 25.1 kB
(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["components/tip/index"],{ /***/ "./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js?!./src/components/tip/index.tsx?taro&type=script&parse=COMPONENT&": /*!*********************************************************************************************************************************************************!*\ !*** ./node_modules/@tarojs/mini-runner/dist/loaders/wxTransformerLoader.js??ref--4-0!./src/components/tip/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 _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 _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 _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/tip/index.scss"); var _model = __webpack_require__(/*! ../../lib/model */ "./src/lib/model.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 ClTip = function (_Taro$Component) { _inherits(ClTip, _Taro$Component); function ClTip() { var _ref; var _temp, _this, _ret; _classCallCheck(this, ClTip); for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ClTip.__proto__ || Object.getPrototypeOf(ClTip)).call.apply(_ref, [this].concat(args))), _this), _this.$usedState = ["anonymousState__temp", "anonymousState__temp2", "anonymousState__temp3", "anonymousState__temp4", "anonymousState__temp5", "anonymousState__temp6", "$compid__1572", "$compid__1573", "showTip", "props", "BG_COLOR_LIST", "isH5", "renderMessage", "children"], _this.customComponents = ["ClText", "ClTip_H5"], _temp), _possibleConstructorReturn(_this, _ret); } _createClass(ClTip, [{ key: "_constructor", value: function _constructor(props) { _get(ClTip.prototype.__proto__ || Object.getPrototypeOf(ClTip.prototype), "_constructor", this).call(this, props); this.$$refs = new _taroWeapp2.default.RefsArray(); } }, { key: "_createData", value: function _createData() { var _this2 = this; this.__state = arguments[0] || this.state || {}; this.__props = arguments[1] || this.props || {}; var __isRunloopRef = arguments[2]; var __prefix = this.$prefix; ; var _genCompid = (0, _taroWeapp.genCompid)(__prefix + "$compid__1572"), _genCompid2 = _slicedToArray(_genCompid, 2), $prevCompid__1572 = _genCompid2[0], $compid__1572 = _genCompid2[1]; var _genCompid3 = (0, _taroWeapp.genCompid)(__prefix + "$compid__1573"), _genCompid4 = _slicedToArray(_genCompid3, 2), $prevCompid__1573 = _genCompid4[0], $compid__1573 = _genCompid4[1]; var props = this.__props; var _useState = (0, _taroWeapp.useState)(props.show), _useState2 = _slicedToArray(_useState, 2), showTip = _useState2[0], setShowTip = _useState2[1]; var _useState3 = (0, _taroWeapp.useState)({ top: "auto", left: "auto", right: "auto", bottom: "auto", transform: "", arrowTransform: "" }), _useState4 = _slicedToArray(_useState3, 2), distance = _useState4[0], setDistance = _useState4[1]; var isH5 = _taroWeapp2.default.getEnv() === _taroWeapp2.default.ENV_TYPE.WEB; var resver2Zero = function resver2Zero(params) { distance.top = "auto"; distance.left = "auto"; distance.right = "auto"; distance.bottom = "auto"; params.forEach(function (item) { distance[item.direction] = item.long + "px"; }); return distance; }; (0, _taroWeapp.useEffect)(function () { setShowTip(props.show); }, [props.show]); (0, _taroWeapp.useEffect)(function () { function reRender() { if (_taroWeapp2.default.ENV_TYPE.WEB === _taroWeapp2.default.getEnv()) { return; }var query = _taroWeapp2.default.createSelectorQuery().in(this.$scope); new Promise(function (resolve) { query.select("#content").boundingClientRect().exec(function (res) { resolve(res[0]); }); }).then(function (res) { query.select("#message").boundingClientRect().exec(function (data) { var messageData = data[0]; var contentWidth = props.width || 100; var screenWidth = 750 * _index.screenPercent; var customDirection = []; var systemInfo = _taroWeapp2.default.getSystemInfoSync(); var bottomDistance = systemInfo.windowHeight - res.top - res.height; var leftDistance = screenWidth - res.left - res.width; var sqrt = Math.sqrt(Math.pow(20 * _index.screenPercent, 2) * 2) / 2; if (props.direction === "top") { if (res.top < bottomDistance && res.top < messageData.height) { props.direction = "bottom"; }customDirection = [{ direction: "bottom", long: 0 }]; console.log(res); var translateX = (res.width - contentWidth) / 2; if (res.left < res.right && res.left < screenWidth / 2) { if (Math.abs(translateX) > res.left) { translateX = -res.left; }distance.transform = "translateX(" + translateX + "px) translateY(-" + (res.height + 10) + "px)"; distance.arrowTransform = "translateX(" + (Math.abs(translateX) + res.width / 2 - sqrt) + "px) rotate(45deg) translateY(0)"; } else { var maxRight = screenWidth - res.left; if (maxRight < contentWidth) { translateX = contentWidth - maxRight; }distance.transform = "translateX(-" + translateX + "px) translateY(-" + (res.height + 10) + "px)"; distance.arrowTransform = "translateX(" + (Math.abs(translateX) + res.width / 2 - sqrt) + "px) rotate(45deg) translateY(30%)"; } } else if (props.direction === "bottom") { if (res.top > bottomDistance && bottomDistance < messageData.height) { props.direction = "bottom"; }customDirection = [{ direction: "left", long: 0 }]; var _translateX = (res.width - contentWidth) / 2; if (res.left < res.right && res.left < screenWidth / 2) { if (Math.abs(_translateX) > res.left) { _translateX = -res.left; }distance.transform = "translateX(" + _translateX + "px) translateY(" + (res.height + 10) + "px)"; distance.arrowTransform = "translateX(" + (Math.abs(_translateX) + res.width / 2 - sqrt) + "px) rotate(45deg) translateY(0)"; } else { var _maxRight = screenWidth - res.left; if (_maxRight < contentWidth) { _translateX = contentWidth - _maxRight; }distance.transform = "translateX(-" + _translateX + "px) translateY(" + (res.height + 10) + "px)"; distance.arrowTransform = "translateX(" + (Math.abs(_translateX) + res.width / 2 - sqrt) + "px) rotate(45deg) translateY(-30%)"; } } else if (props.direction === "left") { var diffHeight = messageData.height - res.height; if (res.left < contentWidth + 10 && leftDistance > res.left) { props.direction = "right"; }customDirection = [{ direction: "right", long: 0 }]; var moveTop = bottomDistance - (messageData.height / 2 - res.height / 2); var moveBottom = res.top - (messageData.height / 2 - res.height / 2); if (moveTop > 0) { moveTop = 0; }if (moveBottom > 0) { moveBottom = 0; }distance.arrowTransform = "translateY(" + (messageData.height / 2 - moveTop + moveBottom - sqrt) + "px) translateX(30%) rotate(45deg)"; distance.transform = "translateX(" + (-res.width - 10) + "px) translateY(" + (-diffHeight / 2 + moveTop - moveBottom) + "px)"; } else if (props.direction === "right") { if (leftDistance - 10 < contentWidth && leftDistance < res.left) { props.direction = "left"; }var _diffHeight = messageData.height - res.height; if (res.left < contentWidth + 10) { props.direction = "right"; }customDirection = [{ direction: "left", long: 0 }]; var _moveTop = bottomDistance - (messageData.height / 2 - res.height / 2); var _moveBottom = res.top - (messageData.height / 2 - res.height / 2); if (_moveTop > 0) { _moveTop = 0; }if (_moveBottom > 0) { _moveBottom = 0; }distance.arrowTransform = "translateY(" + (messageData.height / 2 - _moveTop + _moveBottom - sqrt) + "px) translateX(-30%) rotate(45deg)"; distance.transform = "translateX(" + (res.width + 10) + "px) translateY(" + (-_diffHeight / 2 + _moveTop - _moveBottom) + "px)"; } Object.assign(distance, resver2Zero(customDirection)); setDistance(distance); }); }); } reRender.call(_this2); }, [props.width, props.direction, showTip]); this.anonymousFunc0 = function () { if (props.mode === "click") { var show = !showTip; setShowTip(show); props.onChange && props.onChange(show); } }; this.anonymousFunc1 = function () { if (props.mode === "touch") { var show = !showTip; setShowTip(show); props.onChange && props.onChange(show); } }; this.anonymousFunc2 = function () { if (props.mode === "touch") { var show = !showTip; setShowTip(show); props.onChange && props.onChange(show); } }; var anonymousState__temp = (0, _taroWeapp.internal_inline_style)({ position: "relative", display: "inline-block" }); var anonymousState__temp2 = (0, _taroWeapp.internal_inline_style)({ width: (showTip ? props.width : 0) + "px", left: distance.left, right: distance.right, top: distance.top, bottom: distance.bottom, transform: distance.transform }); var anonymousState__temp3 = (0, _taroWeapp.internal_inline_style)({ left: distance.left, right: distance.right, top: distance.top, bottom: distance.bottom, transform: distance.arrowTransform }); var anonymousState__temp4 = (0, _taroWeapp.internal_inline_style)({ width: props.width + "px", padding: "10px" }); this.anonymousFunc3 = function (e) { e.stopPropagation(); }; var anonymousState__temp5 = (0, _index.classNames)(props.className); var anonymousState__temp6 = (0, _taroWeapp.internal_inline_style)(Object.assign({}, props.style)); _taroWeapp.propsManager.set({ "text": props.message }, $compid__1572, $prevCompid__1572); isH5 && _taroWeapp.propsManager.set(_extends({}, props), $compid__1573, $prevCompid__1573); Object.assign(this.__state, { anonymousState__temp: anonymousState__temp, anonymousState__temp2: anonymousState__temp2, anonymousState__temp3: anonymousState__temp3, anonymousState__temp4: anonymousState__temp4, anonymousState__temp5: anonymousState__temp5, anonymousState__temp6: anonymousState__temp6, $compid__1572: $compid__1572, $compid__1573: $compid__1573, showTip: showTip, props: props, BG_COLOR_LIST: _model.BG_COLOR_LIST, isH5: isH5 }); return this.__state; } }, { key: "anonymousFunc0", value: function anonymousFunc0(e) { ; } }, { key: "anonymousFunc1", value: function anonymousFunc1(e) { ; } }, { key: "anonymousFunc2", value: function anonymousFunc2(e) { ; } }, { key: "anonymousFunc3", value: function anonymousFunc3(e) { e.stopPropagation(); } }]); return ClTip; }(_taroWeapp2.default.Component); ClTip.$$events = ["anonymousFunc0", "anonymousFunc1", "anonymousFunc2", "anonymousFunc3"]; ClTip.multipleSlots = true; ClTip.$$componentPath = "components/tip/index"; ClTip.defaultProps = { show: false, direction: "bottom", bgColor: "white", mode: "touch", width: 150 }; ClTip.options = { addGlobalClass: true }; exports.default = ClTip; Component(__webpack_require__(/*! @tarojs/taro-weapp */ "./node_modules/@tarojs/taro-weapp/index.js").default.createComponent(ClTip)); /***/ }), /***/ "./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/tip/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/tip/index.tsx?taro&type=template&parse=COMPONENT& ***! \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__.p + "components/tip/index.wxml"; /***/ }), /***/ "./src/components/tip/index.scss": /*!***************************************!*\ !*** ./src/components/tip/index.scss ***! \***************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin /***/ }), /***/ "./src/components/tip/index.tsx": /*!**************************************!*\ !*** ./src/components/tip/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/tip/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/tip/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/tip/index.tsx?taro&type=script&parse=COMPONENT&": /*!************************************************************************!*\ !*** ./src/components/tip/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/tip/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/tip/index.tsx?taro&type=template&parse=COMPONENT&": /*!**************************************************************************!*\ !*** ./src/components/tip/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/tip/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/tip/index.tsx","runtime","taro","vendors","common"]]]);