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.04 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var isString_1 = __importDefault(require("vanillajs-helpers/isString"));
var isDOMChildNode_1 = __importDefault(require("./isDOMChildNode"));
var 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 (!(0, isDOMChildNode_1.default)(elm)) {
return;
}
if (!replacement) {
return elm.remove();
}
if ((0, isString_1.default)(replacement)) {
replacement = (0, create_1.default)(replacement);
}
elm.replaceWith(replacement);
return elm;
}
exports.default = replaceNode;