blob: b9dd9ce394c7d9707d79d98354de1598d35c56ac (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
export const is_nullundef = x => x === null || x === undefined;
export const is_obj = x => x !== null && typeof x === "object";
export const is_arr = x => Array.isArray(x);
export const clean_dict = x =>
[x]
.map(x => Object.entries(x))
.map(x =>
x.map(([k, v]) =>
is_arr(v)
? [k, v.map(vv => (is_obj(vv) ? clean_dict(vv) : vv))]
: is_obj(v)
? [k, clean_dict(v)]
: [k, v]
)
)
.map(x => x.filter(([k, v]) => v !== null))
.map(x => Object.fromEntries(x))
.pop();
|