UNPKG

purplejs

Version:

A little bit of React

25 lines (19 loc) 636 B
import ElementObject from '../../interfaces/element-object' import HTMLElement from '../../interfaces/html-element' import keyIsEvent from '../key-is-event/index' import addEvent from './add-event' import addProperty from './add-property' export default ( element: ElementObject, dom: HTMLElement, ): HTMLElement => { const propKeys: string[] = Object.keys(element.props || {}) if (!propKeys.length) return dom; const clonedDOM: HTMLElement = dom.cloneNode() propKeys.forEach(key => { keyIsEvent(key) ? addEvent(element, clonedDOM, key) : addProperty(element, clonedDOM, key) }) return clonedDOM }