@cainiaofe/cn-ui-m-onecode
Version:
25 lines (21 loc) • 572 B
text/typescript
function normalizeDataSource(dataSource) {
if (!Array.isArray(dataSource)) return [];
const source = [];
dataSource.forEach((item) => {
// enable array of basic type
if (
/string|boolean|number/.test(typeof item) ||
item === null ||
item === undefined
) {
item = { text: `${item}`, originalItem: item };
} else if (typeof item === 'object') {
item.originalItem = item;
}
source.push(item);
});
return source;
}
export function getDataSource(dataSource) {
return normalizeDataSource(dataSource) || [];
}