UNPKG

xyzd

Version:

transform arrays to virtual dom trees

16 lines (13 loc) 447 B
const clense = (a, b) => !b ? a : typeof b[0] === 'string' ? [...a, b] : [...a, ...b] const build = (x, y, z) => node => !!node && typeof node[1] === 'object' && !Array.isArray(node[1]) ? { [x]: node[0], [y]: node[1], [z]: Array.isArray(node[2]) ? node[2].reduce(clense, []).map(build(x, y, z)) : node[2] + '', } : build(x, y, z)([node[0], {}, node[1] || '']) export const h = build