UNPKG

tsx-dom

Version:

A simple way to use tsx syntax to create native dom elements using document.createElement.

20 lines (19 loc) 782 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createRef = exports.h = void 0; exports.createElement = createElement; const setAttributes_1 = require("./setAttributes"); const utils_1 = require("./utils"); function createElement(tag, attrs, ...children) { if (typeof tag === "function") return tag({ ...attrs, children }); const { finalTag, finalAttrs } = (0, utils_1.applyTsxTag)(tag, attrs); const element = (0, utils_1.createDomElement)(finalTag, finalAttrs); if (finalAttrs) (0, setAttributes_1.setAttributes)(element, finalAttrs); (0, utils_1.applyChildren)(element, children); return element; } exports.h = createElement; const createRef = () => ({ current: null }); exports.createRef = createRef;