UNPKG

1.45 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.parsePadding = exports.isAutoPadding = void 0;
4var tslib_1 = require("tslib");
5var util_1 = require("@antv/util");
6/**
7 * @ignore
8 * 是否是自动 padding
9 * @param padding
10 */
11function isAutoPadding(padding) {
12 return !(0, util_1.isNumber)(padding) && !(0, util_1.isArray)(padding);
13}
14exports.isAutoPadding = isAutoPadding;
15/**
16 * @ignore
17 * padding 的解析逻辑
18 * @param padding
19 * @return [ top, right, bottom, left ]
20 */
21function parsePadding(padding) {
22 if (padding === void 0) { padding = 0; }
23 var paddingArray = (0, util_1.isArray)(padding) ? padding : [padding];
24 switch (paddingArray.length) {
25 case 0:
26 paddingArray = [0, 0, 0, 0];
27 break;
28 case 1:
29 paddingArray = new Array(4).fill(paddingArray[0]);
30 break;
31 case 2:
32 paddingArray = (0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([], paddingArray, true), paddingArray, true);
33 break;
34 case 3:
35 paddingArray = (0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([], paddingArray, true), [paddingArray[1]], false);
36 break;
37 default:
38 // 其他情况,只去四个
39 paddingArray = paddingArray.slice(0, 4);
40 break;
41 }
42 return paddingArray;
43}
44exports.parsePadding = parsePadding;
45//# sourceMappingURL=padding.js.map
\No newline at end of file