uhtml
Version:
A micro HTML/SVG render
25 lines (19 loc) • 518 B
JavaScript
;
const { DOCUMENT_TYPE_NODE } = require('domconstants/constants');
const Node = (require('./node.js'));
const { nodeName } = require('./symbols.js');
module.exports = class DocumentType extends Node {
constructor(name, owner = null) {
super(DOCUMENT_TYPE_NODE, owner)[nodeName] = name;
}
get nodeName() {
return this[nodeName];
}
get name() {
return this[nodeName];
}
toString() {
const { [nodeName]: value } = this;
return value ? `<!DOCTYPE ${value}>` : '';
}
}