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) || [];
}
