diff --git a/source/utilities/exports.ts b/source/utilities/exports.ts index 72d91da..71f0f37 100644 --- a/source/utilities/exports.ts +++ b/source/utilities/exports.ts @@ -6,4 +6,5 @@ export * from "./groups.js"; export * from "./logging.js"; export * from "./query-selectors.js"; export * from "./report-a-bug.js"; +export * from "./text.js"; export * from "./validators.js"; diff --git a/source/utilities/text.ts b/source/utilities/text.ts new file mode 100644 index 0000000..2f97e6a --- /dev/null +++ b/source/utilities/text.ts @@ -0,0 +1,18 @@ +/** + * Pluralize a word based on a count. + * @param count The number of things. + * @param singular The word in its singular form. + * @param plural Optionally the word in its plural form. If left undefined the + * returned string will be the singular form plus the letter "s". + */ +export function pluralize( + count: number, + singular: string, + plural?: string, +): string { + if (count === 1) { + return singular; + } + + return plural ?? singular + "s"; +}