vanillajs-browser-helpers
Version:
Collection of convenience code snippets (helpers) that aims to make it a little easier to work with vanilla JS in the browser
30 lines (29 loc) • 1 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const isString_1 = __importDefault(require("vanillajs-helpers/isString"));
const isDOMChildNode_1 = __importDefault(require("./isDOMChildNode"));
const create_1 = __importDefault(require("./create"));
/**
* Replace a given DOM element with another DOM element or plain HTML string
*
* @param elm - DOM element to replace
* @param replacement - DOM element or plain HTML string to replace {elm}
* @return The value given in `elm`
*/
function replaceNode(elm, replacement) {
if (!isDOMChildNode_1.default(elm)) {
return;
}
if (!replacement) {
return elm.remove();
}
if (isString_1.default(replacement)) {
replacement = create_1.default(replacement);
}
elm.replaceWith(replacement);
return elm;
}
exports.default = replaceNode;