UNPKG

@nameof/nameof

Version:

A tiny utility for safely extracting property names from TypeScript objects — inspired by C#'s [`nameof`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/nameof) operator.

21 lines (20 loc) 426 B
// index.ts function nameof(...args) { const lastArg = args.at(-1); if (typeof lastArg === "function") { return lastArg.name; } if (typeof lastArg === "object" && lastArg !== null) { const k = Object.keys(lastArg).at(0); if (k) { return k; } else { throw new Error("Object must have exactly one string-key property"); } } return lastArg; } export { nameof, nameof as default };