Loading homepage
Implement flattenObject(object). Convert nested object properties into a new flat object whose keys are dot-separated paths. Preserve each leaf value without changing the input.
For example, { user: { name: "Ada" } } becomes { "user.name": "Ada" }. Arrays are leaf values in this exercise; use Flatten Array for array flattening.
Input: { user: { name: "Ada", address: { city: "Pune" } } } Output: { "user.name": "Ada", "user.address.city": "Pune" }
Input: { settings: {}, items: [1, 2], active: false } Output: { settings: {}, items: [1, 2], active: false }
Input: {} Output: {}
flattenObject(object) returns a new Record<string, unknown> with dot-separated keys. Arrays and empty nested records remain leaf values.