INNER CODE UNIT · TypeScript
exercisesById
bryllim/workout-guide · packages/workout-guide/src/index.ts:21
const exercisesById = new Map(exercises.map((exercise) => [exercise.id, exercise]));
const exercisesBySlug = new Map(exercises.map((exercise) => [exercise.slug, exercise]));
export function normalizeSearchText(value: string) {
return value
.toLowerCase()
.normalize('NFD')
.replace(/[\u0300-\u036f]/g, '')
.replace(/&/g, ' and ')
.replace(/[^a-z0-9]+/g, ' ')
.trim()
.replace(/\s+/g, ' ');
}
export function getExercise(idOrSlug: string) {
return exercisesById.get(idOrSlug) ?? exercisesBySlug.get(idOrSlug) ?? null;
}