Sha256: 3f4e76055925ddbc843ee0235028c200caa4069aff00bed1f7ec95e69ec35d07
Contents?: true
Size: 1019 Bytes
Versions: 20
Compression:
Stored size: 1019 Bytes
Contents
"use strict"; const { parseFragment } = require("../../browser/parser"); const { HTML_NS } = require("../helpers/namespaces.js"); const { isShadowRoot } = require("../helpers/shadow-dom.js"); const NODE_TYPE = require("../node-type.js"); const { fragmentSerialization } = require("./serialization.js"); // https://w3c.github.io/DOM-Parsing/#the-innerhtml-mixin exports.implementation = class InnerHTMLImpl { // https://w3c.github.io/DOM-Parsing/#dom-innerhtml-innerhtml get innerHTML() { return fragmentSerialization(this, { requireWellFormed: true, globalObject: this._globalObject }); } set innerHTML(markup) { const contextElement = isShadowRoot(this) ? this.host : this; const fragment = parseFragment(markup, contextElement); let contextObject = this; if (this.nodeType === NODE_TYPE.ELEMENT_NODE && this.localName === "template" && this.namespaceURI === HTML_NS) { contextObject = this._templateContents; } contextObject._replaceAll(fragment); } };
Version data entries
20 entries across 20 versions & 1 rubygems