Set a value in a nested object by dot-path (mutates).
(obj: Record<string, unknown>, path: string, value: unknown)
| 35 | |
| 36 | /** Set a value in a nested object by dot-path (mutates). */ |
| 37 | function setConfigAtPath(obj: Record<string, unknown>, path: string, value: unknown): boolean { |
| 38 | const parts = path.split("."); |
| 39 | let current: unknown = obj; |
| 40 | for (let i = 0; i < parts.length - 1; i++) { |
| 41 | if (current === null || typeof current !== "object") return false; |
| 42 | current = (current as Record<string, unknown>)[parts[i]]; |
| 43 | } |
| 44 | if (current === null || typeof current !== "object") return false; |
| 45 | (current as Record<string, unknown>)[parts[parts.length - 1]] = value; |
| 46 | return true; |
| 47 | } |
| 48 | |
| 49 | /** Parse a raw string value into the appropriate type. */ |
| 50 | function parseValue(raw: string): unknown { |
no outgoing calls
no test coverage detected