From b8c02c64fbc0aeaa6588b1a952f5d6f65cf1252c Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 20 Apr 2026 23:37:59 +0100 Subject: [PATCH] refactor: reuse shared string coercion in ui --- ui/src/ui/string-coerce.ts | 31 ++++++------------------------- 1 file changed, 6 insertions(+), 25 deletions(-) diff --git a/ui/src/ui/string-coerce.ts b/ui/src/ui/string-coerce.ts index fee006e26c6..38be33e69c0 100644 --- a/ui/src/ui/string-coerce.ts +++ b/ui/src/ui/string-coerce.ts @@ -1,25 +1,6 @@ -export function normalizeOptionalString(value: unknown): string | undefined { - if (typeof value !== "string") { - return undefined; - } - const trimmed = value.trim(); - return trimmed ? trimmed : undefined; -} - -export function normalizeStringifiedOptionalString(value: unknown): string | undefined { - if (typeof value === "string") { - return normalizeOptionalString(value); - } - if (typeof value === "number" || typeof value === "boolean" || typeof value === "bigint") { - return normalizeOptionalString(String(value)); - } - return undefined; -} - -export function normalizeOptionalLowercaseString(value: unknown): string | undefined { - return normalizeOptionalString(value)?.toLowerCase(); -} - -export function normalizeLowercaseStringOrEmpty(value: unknown): string { - return normalizeOptionalLowercaseString(value) ?? ""; -} +export { + normalizeLowercaseStringOrEmpty, + normalizeOptionalLowercaseString, + normalizeOptionalString, + normalizeStringifiedOptionalString, +} from "../../../src/shared/string-coerce.js";