@antmjs/vantui
Version:
一套适用于Taro3及React的vantui组件库
127 lines (126 loc) • 5.15 kB
JavaScript
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];
}
;