refactor: dedupe shared string readers

This commit is contained in:
Peter Steinberger
2026-04-07 00:38:56 +01:00
parent 899f490c9c
commit 61f7d53731
11 changed files with 31 additions and 54 deletions

View File

@@ -4,6 +4,14 @@ export function asRecord(value: unknown): Record<string, unknown> {
return typeof value === "object" && value !== null ? (value as Record<string, unknown>) : {};
}
export function readStringField(
record: Record<string, unknown> | null | undefined,
key: string,
): string | undefined {
const value = record?.[key];
return typeof value === "string" ? value : undefined;
}
export function asOptionalRecord(value: unknown): Record<string, unknown> | undefined {
return isRecord(value) ? value : undefined;
}

View File

@@ -1,3 +1,7 @@
export function readStringValue(value: unknown): string | undefined {
return typeof value === "string" ? value : undefined;
}
export function normalizeNullableString(value: unknown): string | null {
if (typeof value !== "string") {
return null;