tsx-dom
Version:
A simple way to use tsx syntax to create native dom elements using document.createElement.
18 lines (17 loc) • 641 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.jsx = jsx;
exports.jsxs = jsx;
exports.jsxDEV = jsx;
const setAttributes_1 = require("./setAttributes");
const utils_1 = require("./utils");
function jsx(tag, props) {
if (typeof tag === "function")
return tag(props);
const { children, ...attrs } = props;
const { finalTag, finalAttrs } = (0, utils_1.applyTsxTag)(tag, attrs);
const element = (0, utils_1.createDomElement)(finalTag, finalAttrs);
(0, setAttributes_1.setAttributes)(element, finalAttrs);
(0, utils_1.applyChildren)(element, [children]);
return element;
}
;