1
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.getColumnsKey = getColumnsKey;
|
||||
exports.validNumberValue = validNumberValue;
|
||||
exports.validateValue = validateValue;
|
||||
const INTERNAL_KEY_PREFIX = 'RC_TABLE_KEY';
|
||||
function toArray(arr) {
|
||||
if (arr === undefined || arr === null) {
|
||||
return [];
|
||||
}
|
||||
return Array.isArray(arr) ? arr : [arr];
|
||||
}
|
||||
function getColumnsKey(columns) {
|
||||
const columnKeys = [];
|
||||
const keys = {};
|
||||
columns.forEach(column => {
|
||||
const {
|
||||
key,
|
||||
dataIndex
|
||||
} = column || {};
|
||||
let mergedKey = key || toArray(dataIndex).join('-') || INTERNAL_KEY_PREFIX;
|
||||
while (keys[mergedKey]) {
|
||||
mergedKey = `${mergedKey}_next`;
|
||||
}
|
||||
keys[mergedKey] = true;
|
||||
columnKeys.push(mergedKey);
|
||||
});
|
||||
return columnKeys;
|
||||
}
|
||||
function validateValue(val) {
|
||||
return val !== null && val !== undefined;
|
||||
}
|
||||
function validNumberValue(value) {
|
||||
return typeof value === 'number' && !Number.isNaN(value);
|
||||
}
|
||||
Reference in New Issue
Block a user