parseSavedFormPayload function exported ✓ 100.0%
Last updated: 2026-03-01T23:25:47.127Z
Metrics
LOC: 33
Complexity: 13
Params: 1
Coverage: 100.0% (9/9 lines, 11x executed)
Signature
parseSavedFormPayload(input: unknown): : SavedForm | null
Summary
Lightweight saved-form payload parser — typeof checks only.
Architecture violations
- [warning] max-cyclomatic-complexity: 'parseSavedFormPayload' has cyclomatic complexity 13 (max 10)
Tags
#@param input - Raw payload from a `SAVE_FORM` or `APPLY_TEMPLATE` message#@returns Reconstructed `SavedForm` or `null` if invalid
Source Code
export function parseSavedFormPayload(input: unknown): SavedForm | null {
if (!input || typeof input !== "object") return null;
const value = input as Partial<SavedForm>;
if (
typeof value.id !== "string" ||
typeof value.name !== "string" ||
typeof value.urlPattern !== "string" ||
typeof value.createdAt !== "number" ||
typeof value.updatedAt !== "number" ||
!value.fields ||
typeof value.fields !== "object"
) {
return null;
}
const entries = Object.entries(value.fields as Record<string, unknown>);
const allStringValues = entries.every(
([k, v]) => typeof k === "string" && typeof v === "string",
);
if (!allStringValues) return null;
return {
id: value.id,
name: value.name,
urlPattern: value.urlPattern,
fields: value.fields as Record<string, string>,
templateFields: Array.isArray(value.templateFields)
? value.templateFields
: undefined,
createdAt: value.createdAt,
updatedAt: value.updatedAt,
};
}
No outgoing dependencies.
No incoming dependencies.