<commit_before>import * as faker from "faker";
import * as classes from "../utils/publicClassNames";

export interface IEmployee {
	id: string;
	age: number;
	name: string;
	role: string;
	birthday: Date;
	balance: number;
}

export const testClasses: typeof classes = {
	rowClassName: "row",
	cellClassName: "cell",
	tableClassName: "table",
	ruleRowClassName: "ruleRow",
	tableBodyClassName: "tableBody",
	headerCellClassName: "headerCell",
	tableHeaderClassName: "tableHeader",
};

const employeeRoles = [ "CEO", "Senior Dev", "Junior Dev", "Commercial" ];

export const employeeData: IEmployee[] = [...new Array(faker.random.number({ min: 10, max: 30 }))].map((_, i) => {
	const age = faker.random.number({ min: 18, max: 60 });
	return {
		age,
		id: i + "",
		name: faker.name.findName(),
		birthday: faker.date.past(age),
		role: faker.random.arrayElement(employeeRoles),
		balance: faker.random.number({ min: 1E3, max: 1E5 }),
	};
});<commit_msg>Add nullable data to test more use cases of sorters<commit_after>import * as faker from "faker";
import * as classes from "../utils/publicClassNames";

export interface IEmployee {
	id: string;
	age: number;
	name: string;
	role: string;
	birthday: Date;
	balance: number;
	state: string | undefined;
}

export const testClasses: typeof classes = {
	rowClassName: "row",
	cellClassName: "cell",
	tableClassName: "table",
	ruleRowClassName: "ruleRow",
	tableBodyClassName: "tableBody",
	headerCellClassName: "headerCell",
	tableHeaderClassName: "tableHeader",
};

const stateRoles = [ "Bahia", "São Paulo", "Sergipe", undefined ];
const employeeRoles = [ "CEO", "Senior Dev", "Junior Dev", "Commercial" ];

export const employeeData: IEmployee[] = [...new Array(faker.random.number({ min: 30, max: 50 }))].map((_, i) => {
	const age = faker.random.number({ min: 18, max: 100 });

	return {
		age,
		id: i + "",
		name: faker.name.findName(),
		birthday: faker.date.past(age),
		state: faker.random.arrayElement(stateRoles),
		role: faker.random.arrayElement(employeeRoles),
		balance: faker.random.number({ min: 1E3, max: 1E5, precision: 1E-2 }),
	};
});
{'fraction_non_alphanumeric': 0.16096866096866097, 'fraction_numerical': 0.01282051282051282, 'mean_word_length': 4.968838526912181, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3344829', 'n_tokens_mistral': 769, 'n_tokens_neox': 720, 'n_words': 197}