<commit_before>export type FilterId = 'experience' | 'location' | 'role';

export type CustomFilter = {
  numComments: number;
};

type RoleFilter =
  | 'Android Engineer'
  | 'Backend Engineer'
  | 'DevOps Engineer'
  | 'Frontend Engineer'
  | 'Full-Stack Engineer'
  | 'iOS Engineer';

type ExperienceFilter =
  | 'Entry Level (0 - 2 years)'
  | 'Freshman'
  | 'Junior'
  | 'Mid Level (3 - 5 years)'
  | 'Senior Level (5+ years)'
  | 'Senior'
  | 'Sophomore';

type LocationFilter = 'India' | 'Singapore' | 'United States';

export type FilterValue = ExperienceFilter | LocationFilter | RoleFilter;

export type FilterOption<T> = {
  label: string;
  value: T;
};

export type Filter = {
  id: FilterId;
  label: string;
  options: Array<FilterOption<FilterValue>>;
};

export type FilterState = Partial<CustomFilter> &
  Record<FilterId, Array<FilterValue>>;

export type SortOrder = 'latest' | 'popular' | 'topComments';

export type Shortcut = {
  customFilters?: CustomFilter;
  filters: FilterState;
  name: string;
  sortOrder: SortOrder;
};

export const BROWSE_TABS_VALUES = {
  ALL: 'all',
  MY: 'my',
  STARRED: 'starred',
};

export const SORT_OPTIONS: Record<string, string> = {
  latest: 'Latest',
  popular: 'Popular',
  topComments: 'Top Comments',
};

export const ROLE: Array<FilterOption<RoleFilter>> = [
  {
    label: 'Full-Stack Engineer',
    value: 'Full-Stack Engineer',
  },
  { label: 'Frontend Engineer', value: 'Frontend Engineer' },
  { label: 'Backend Engineer', value: 'Backend Engineer' },
  { label: 'DevOps Engineer', value: 'DevOps Engineer' },
  { label: 'iOS Engineer', value: 'iOS Engineer' },
  { label: 'Android Engineer', value: 'Android Engineer' },
];

export const EXPERIENCE: Array<FilterOption<ExperienceFilter>> = [
  { label: 'Freshman', value: 'Freshman' },
  { label: 'Sophomore', value: 'Sophomore' },
  { label: 'Junior', value: 'Junior' },
  { label: 'Senior', value: 'Senior' },
  {
    label: 'Entry Level (0 - 2 years)',
    value: 'Entry Level (0 - 2 years)',
  },
  {<commit_msg>[resumes][feat] change to most comments<commit_after>export type FilterId = 'experience' | 'location' | 'role';

export type CustomFilter = {
  numComments: number;
};

type RoleFilter =
  | 'Android Engineer'
  | 'Backend Engineer'
  | 'DevOps Engineer'
  | 'Frontend Engineer'
  | 'Full-Stack Engineer'
  | 'iOS Engineer';

type ExperienceFilter =
  | 'Entry Level (0 - 2 years)'
  | 'Freshman'
  | 'Junior'
  | 'Mid Level (3 - 5 years)'
  | 'Senior Level (5+ years)'
  | 'Senior'
  | 'Sophomore';

type LocationFilter = 'India' | 'Singapore' | 'United States';

export type FilterValue = ExperienceFilter | LocationFilter | RoleFilter;

export type FilterOption<T> = {
  label: string;
  value: T;
};

export type Filter = {
  id: FilterId;
  label: string;
  options: Array<FilterOption<FilterValue>>;
};

export type FilterState = Partial<CustomFilter> &
  Record<FilterId, Array<FilterValue>>;

export type SortOrder = 'latest' | 'popular' | 'topComments';

export type Shortcut = {
  customFilters?: CustomFilter;
  filters: FilterState;
  name: string;
  sortOrder: SortOrder;
};

export const BROWSE_TABS_VALUES = {
  ALL: 'all',
  MY: 'my',
  STARRED: 'starred',
};

export const SORT_OPTIONS: Record<string, string> = {
  latest: 'Latest',
  popular: 'Popular',
  topComments: 'Most Comments',
};

export const ROLE: Array<FilterOption<RoleFilter>> = [
  {
    label: 'Full-Stack Engineer',
    value: 'Full-Stack Engineer',
  },
  { label: 'Frontend Engineer', value: 'Frontend Engineer' },
  { label: 'Backend Engineer', value: 'Backend Engineer' },
  { label: 'DevOps Engineer', value: 'DevOps Engineer' },
  { label: 'iOS Engineer', value: 'iOS Engineer' },
  { label: 'Android Engineer', value: 'Android Engineer' },
];

export const EXPERIENCE: Array<FilterOption<ExperienceFilter>> = [
  { label: 'Freshman', value: 'Freshman' },
  { label: 'Sophomore', value: 'Sophomore' },
  { label: 'Junior', value: 'Junior' },
  { label: 'Senior', value: 'Senior' },
  {
    label: 'Entry Level (0 - 2 years)',
    value: 'Entry Level (0 - 2 years)',
  },
  {
{'fraction_non_alphanumeric': 0.15493300852618758, 'fraction_numerical': 0.00438489646772229, 'mean_word_length': 4.2040557667934095, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 25, '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': '3136949', 'n_tokens_mistral': 1460, 'n_tokens_neox': 1374, 'n_words': 382}