VDL Plugin SDK

flattenObject

Import from @varavel/vdl-plugin-sdk/utils/objects.

function flattenObject(object, __namedParameters?): Record<string, any>;

Flattens a nested object into a single level object with delimiter-separated keys.

Parameters

ParameterTypeDescription
objectobjectThe object to flatten.
__namedParameters?FlattenObjectOptions-

Returns

Record<string, any>

The flattened object.

Example

const nestedObject = {
  a: {
    b: {
      c: 1
    }
  },
  d: [2, 3]
};

const flattened = flattenObject(nestedObject);
console.log(flattened);
// Output:
// {
//   'a.b.c': 1,
//   'd.0': 2,
//   'd.1': 3
// }

const preserved = flattenObject(nestedObject, { preserveArrays: true });
console.log(preserved);
// Output:
// {
//   'a.b.c': 1,
//   'd': [2, 3]
// }