UNPKG

@antmjs/vantui

Version:

一套适用于Taro3及React的vantui组件库

127 lines (126 loc) 5.15 kB
"use strict"; var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports.addUnit = addUnit; exports.cancelAnimationFrame = cancelAnimationFrame; exports.getAllRect = getAllRect; exports.getCurrentPage = getCurrentPage; exports.getMenuButtonBoundingClientRect = getMenuButtonBoundingClientRect; exports.getRect = getRect; exports.getSystemInfoSync = getSystemInfoSync; exports.getWindowInfo = getWindowInfo; Object.defineProperty(exports, "isDef", { enumerable: true, get: function get() { return _validator.isDef; } }); exports.nextTick = nextTick; exports.pickExclude = pickExclude; exports.range = range; exports.requestAnimationFrame = requestAnimationFrame; exports.toPromise = toPromise; var _taro = _interopRequireWildcard(require("@tarojs/taro")); var raf = _interopRequireWildcard(require("raf")); var _validator = require("./validator"); var _version = require("./version"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function range(num, min, max) { return Math.min(Math.max(num, min), max); } function nextTick(cb) { if ((0, _version.canIUseNextTick)()) { _taro.default.nextTick(cb); } else { setTimeout(function () { cb(); }, 33.333333333333336); } } var systemInfo; function getSystemInfoSync() { systemInfo = (0, _taro.getSystemInfoSync)(); return systemInfo; } var windowInfo; function getWindowInfo() { windowInfo = process.env.TARO_ENV === 'weapp' ? (0, _taro.getWindowInfo)() : getSystemInfoSync(); return windowInfo; } var menuInfo; function getMenuButtonBoundingClientRect() { if (menuInfo == null) { menuInfo = _taro.default.getMenuButtonBoundingClientRect(); } return menuInfo; } function addUnit(value) { if (!(0, _validator.isDef)(value)) { return undefined; } return /^-?\d+(\.\d+)?$/.test('' + value) ? _taro.default.pxTransform(value) : value; } function requestAnimationFrame(cb) { if (window.requestAnimationFrame) { return window.requestAnimationFrame(cb); } return raf.default(cb); } function cancelAnimationFrame(id) { if (window.cancelAnimationFrame) { return window.cancelAnimationFrame(id); } return raf.cancel(id); } function pickExclude(obj, keys) { if (!(0, _validator.isPlainObject)(obj)) { return {}; } return Object.keys(obj).reduce(function (prev, key) { if (!keys.includes(key)) { prev[key] = obj[key]; } return prev; }, {}); } function getRect(context, selector, parent) { // 微信端层级太深找不到元素信息 (https://taro-docs.jd.com/docs/optimized#1-%E5%85%A8%E5%B1%80%E9%85%8D%E7%BD%AE%E9%A1%B9-baselevel) var target = process.env.TARO_ENV === 'weapp' && parent ? "".concat(parent, " >>> ").concat(selector) : selector; return new Promise(function (resolve) { var query = (0, _taro.createSelectorQuery)(); if (context) { query = query.in(context); } query.select(target).boundingClientRect().exec(function () { var rect = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; return resolve(rect[0]); }); }); } function getAllRect(context, selector, parent) { // 微信端层级太深找不到元素信息 (https://taro-docs.jd.com/docs/optimized#1-%E5%85%A8%E5%B1%80%E9%85%8D%E7%BD%AE%E9%A1%B9-baselevel) var target = process.env.TARO_ENV === 'weapp' && parent ? "".concat(parent, " >>> ").concat(selector) : selector; return new Promise(function (resolve) { var query = (0, _taro.createSelectorQuery)(); if (context) { query = query.in(context); } query.selectAll(target).boundingClientRect().exec(function () { var rect = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; return resolve(rect[0]); }); }); } function toPromise(promiseLike) { if ((0, _validator.isPromise)(promiseLike)) { return promiseLike; } return Promise.resolve(promiseLike); } function getCurrentPage() { var pages = _taro.default.getCurrentPages(); return pages[pages.length - 1]; }