@linkdesign/screen
Version:
屏组件库,但使用场景又不局限于屏。主要用于BI、大盘和屏
89 lines (82 loc) • 2.61 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.isInvalid = exports.fillBy = exports["default"] = exports.NWC = exports.GIS_COLORS = exports.Dimension = exports.DATA_COLORS = exports.Compose = void 0;
var _reduceRight = _interopRequireDefault(require("lodash/reduceRight"));
var _isNull = _interopRequireDefault(require("lodash/isNull"));
var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
var _isNaN = _interopRequireDefault(require("lodash/isNaN"));
var _fill = _interopRequireDefault(require("lodash/fill"));
/**
* 内置图表色值
*/
var DATA_COLORS = exports.DATA_COLORS = ['#0070cc', '#2aca96', '#fec400', '#909ca6', '#826af9', '#ff7d51',
// 扩充
'#3b81ff', '#00cbfb'];
/**
* 内置GIS色值
*/
var GIS_COLORS = exports.GIS_COLORS = ["#34B999", "#0DACB0", "#0D9FB0", "#2386CD", "#0070C0", "#0D5DCB", "#0E4FCE", "#5949C1"];
/**
* 获取容器真正高度(含margin)
* @param el 容器
*/
var Dimension = exports.Dimension = function Dimension(el) {
var styles = window.getComputedStyle(el);
var margin = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom);
return Math.ceil(el.offsetHeight + margin);
};
/**
* 判断数据是否有效
* @param val
* @returns
*/
var isInvalid = exports.isInvalid = function isInvalid(val) {
return (0, _isNull["default"])(val) || (0, _isUndefined["default"])(val) || (0, _isNaN["default"])(val);
};
/**
* 数字每三位加逗号
* @param {*} x 要处理的数字
*/
var NWC = exports.NWC = function NWC(x, p) {
if (isInvalid(x)) {
return p || '-';
}
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
};
/**
* 一个函数执行完之后把返回的结果再作为参数赋给下一个函数来执行.以此类推;
* @param fns
*/
var Compose = exports.Compose = function Compose(fns) {
return function (x) {
return (0, _reduceRight["default"])(fns, function (y, f) {
return f(y);
}, x);
};
};
/**
* 填充数组
* @param arr 原始数组
* @param val 填充数据
* @param length 目标数组长度
* @returns
*/
var fillBy = exports.fillBy = function fillBy(arr, val, length) {
if ((arr || []).length <= length) {
return (0, _fill["default"])(Array(length), '-').map(function (el, i) {
return (arr || [])[i] || val;
});
} else {
return arr;
}
};
var _default = exports["default"] = {
DATA_COLORS: DATA_COLORS,
GIS_COLORS: GIS_COLORS,
Dimension: Dimension,
NWC: NWC,
Compose: Compose,
isInvalid: isInvalid,
fillBy: fillBy
};
;