ukelli-ui
Version:
[](https://travis-ci.org/ukelli/ukelli-ui) [](https://packagephobia.now.sh/result?p=ukelli-ui)
36 lines (31 loc) • 926 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = positionFilter;
/**
* 用于过滤控件的定位标识, 确保位置准确性
* 检查缺失项,并且补全
* 过滤重复位置标识
* @param {"verticalPosition,horizontalPosition"} position
* @returns {"verticalPosition horizontalPosition"}
*/
function positionFilter(position) {
var horizontal = ['left', 'right'];
var vertical = ['bottom', 'top'];
var all = horizontal.concat(vertical);
var result = [];
var positionArr = position.split(/,|\./);
all.forEach(function (pos) {
var posIdx = positionArr.indexOf(pos);
if (posIdx != -1) {
result.push(pos);
}
});
if (result.length < 2) {
var hasPos = result[0];
horizontal.indexOf(hasPos) == -1 && result.push(horizontal[0]);
vertical.indexOf(hasPos) == -1 && result.push(vertical[0]);
}
return result.join(' ');
}