diff --git a/app/src/shared/utils.ts b/app/src/shared/utils.ts index d8f30d1..9667b55 100644 --- a/app/src/shared/utils.ts +++ b/app/src/shared/utils.ts @@ -19,4 +19,16 @@ export function rng(min: number, max = 0) { min = Math.ceil(min) max = Math.floor(max) return Math.floor(Math.random() * (max - min + 1)) + min +} + +// randomElement([5, 7, 9]) #=> 7 +export function randomElement(list: T[]): T | undefined { + if (!list.length) return + return list[rng(0, list.length - 1)] +} + +// randomIndex([5, 7, 9]) #=> 1 +export function randomIndex(list: T[]): number | undefined { + if (!list.length) return + return rng(0, list.length - 1) } \ No newline at end of file