import { generateVariableId } from "./generate-variable-id"; const HAS_WARNED = new Set(); export function warnOnce( cb: (...args: TArgs) => unknown[], ...args: TArgs ): void { if (process.env["NODE_ENV"] === "production") { return; } const key = args.reduce( (acc, arg) => `${acc}&${String(arg)}`, generateVariableId(cb), ); if (!HAS_WARNED.has(key)) { HAS_WARNED.add(key); console.warn(...cb(...args)); } }