'use strict'; | |
var NS = exports.NAMESPACES = { | |
HTML: 'http://www.w3.org/1999/xhtml', | |
MATHML: 'http://www.w3.org/1998/Math/MathML', | |
SVG: 'http://www.w3.org/2000/svg', | |
XLINK: 'http://www.w3.org/1999/xlink', | |
XML: 'http://www.w3.org/XML/1998/namespace', | |
XMLNS: 'http://www.w3.org/2000/xmlns/' | |
}; | |
exports.ATTRS = { | |
TYPE: 'type', | |
ACTION: 'action', | |
ENCODING: 'encoding', | |
PROMPT: 'prompt', | |
NAME: 'name', | |
COLOR: 'color', | |
FACE: 'face', | |
SIZE: 'size' | |
}; | |
var $ = exports.TAG_NAMES = { | |
A: 'a', | |
ADDRESS: 'address', | |
ANNOTATION_XML: 'annotation-xml', | |
APPLET: 'applet', | |
AREA: 'area', | |
ARTICLE: 'article', | |
ASIDE: 'aside', | |
B: 'b', | |
BASE: 'base', | |
BASEFONT: 'basefont', | |
BGSOUND: 'bgsound', | |
BIG: 'big', | |
BLOCKQUOTE: 'blockquote', | |
BODY: 'body', | |
BR: 'br', | |
BUTTON: 'button', | |
CAPTION: 'caption', | |
CENTER: 'center', | |
CODE: 'code', | |
COL: 'col', | |
COLGROUP: 'colgroup', | |
COMMAND: 'command', | |
DD: 'dd', | |
DESC: 'desc', | |
DETAILS: 'details', | |
DIALOG: 'dialog', | |
DIR: 'dir', | |
DIV: 'div', | |
DL: 'dl', | |
DT: 'dt', | |
EM: 'em', | |
EMBED: 'embed', | |
FIELDSET: 'fieldset', | |
FIGCAPTION: 'figcaption', | |
FIGURE: 'figure', | |
FONT: 'font', | |
FOOTER: 'footer', | |
FOREIGN_OBJECT: 'foreignObject', | |
FORM: 'form', | |
FRAME: 'frame', | |
FRAMESET: 'frameset', | |
H1: 'h1', | |
H2: 'h2', | |
H3: 'h3', | |
H4: 'h4', | |
H5: 'h5', | |
H6: 'h6', | |
HEAD: 'head', | |
HEADER: 'header', | |
HGROUP: 'hgroup', | |
HR: 'hr', | |
HTML: 'html', | |
I: 'i', | |
IMG: 'img', | |
IMAGE: 'image', | |
INPUT: 'input', | |
IFRAME: 'iframe', | |
ISINDEX: 'isindex', | |
KEYGEN: 'keygen', | |
LABEL: 'label', | |
LI: 'li', | |
LINK: 'link', | |
LISTING: 'listing', | |
MAIN: 'main', | |
MALIGNMARK: 'malignmark', | |
MARQUEE: 'marquee', | |
MATH: 'math', | |
MENU: 'menu', | |
MENUITEM: 'menuitem', | |
META: 'meta', | |
MGLYPH: 'mglyph', | |
MI: 'mi', | |
MO: 'mo', | |
MN: 'mn', | |
MS: 'ms', | |
MTEXT: 'mtext', | |
NAV: 'nav', | |
NOBR: 'nobr', | |
NOFRAMES: 'noframes', | |
NOEMBED: 'noembed', | |
NOSCRIPT: 'noscript', | |
OBJECT: 'object', | |
OL: 'ol', | |
OPTGROUP: 'optgroup', | |
OPTION: 'option', | |
P: 'p', | |
PARAM: 'param', | |
PLAINTEXT: 'plaintext', | |
PRE: 'pre', | |
RP: 'rp', | |
RT: 'rt', | |
RUBY: 'ruby', | |
S: 's', | |
SCRIPT: 'script', | |
SECTION: 'section', | |
SELECT: 'select', | |
SOURCE: 'source', | |
SMALL: 'small', | |
SPAN: 'span', | |
STRIKE: 'strike', | |
STRONG: 'strong', | |
STYLE: 'style', | |
SUB: 'sub', | |
SUMMARY: 'summary', | |
SUP: 'sup', | |
TABLE: 'table', | |
TBODY: 'tbody', | |
TEMPLATE: 'template', | |
TEXTAREA: 'textarea', | |
TFOOT: 'tfoot', | |
TD: 'td', | |
TH: 'th', | |
THEAD: 'thead', | |
TITLE: 'title', | |
TR: 'tr', | |
TRACK: 'track', | |
TT: 'tt', | |
U: 'u', | |
UL: 'ul', | |
SVG: 'svg', | |
VAR: 'var', | |
WBR: 'wbr', | |
XMP: 'xmp' | |
}; | |
var SPECIAL_ELEMENTS = exports.SPECIAL_ELEMENTS = {}; | |
SPECIAL_ELEMENTS[NS.HTML] = {}; | |
SPECIAL_ELEMENTS[NS.HTML][$.ADDRESS] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.APPLET] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.AREA] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.ARTICLE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.ASIDE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BASE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BASEFONT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BGSOUND] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BLOCKQUOTE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BODY] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BR] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.BUTTON] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.CAPTION] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.CENTER] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.COL] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.COLGROUP] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.DD] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.DETAILS] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.DIR] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.DIV] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.DL] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.DT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.EMBED] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FIELDSET] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FIGCAPTION] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FIGURE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FOOTER] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FORM] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FRAME] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.FRAMESET] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.H1] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.H2] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.H3] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.H4] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.H5] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.H6] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.HEAD] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.HEADER] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.HGROUP] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.HR] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.HTML] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.IFRAME] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.IMG] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.INPUT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.ISINDEX] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.LI] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.LINK] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.LISTING] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.MAIN] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.MARQUEE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.MENU] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.MENUITEM] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.META] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.NAV] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.NOEMBED] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.NOFRAMES] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.NOSCRIPT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.OBJECT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.OL] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.P] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.PARAM] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.PLAINTEXT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.PRE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.SCRIPT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.SECTION] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.SELECT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.SOURCE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.STYLE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.SUMMARY] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TABLE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TBODY] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TD] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TEMPLATE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TEXTAREA] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TFOOT] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TH] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.THEAD] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TITLE] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TR] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.TRACK] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.UL] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.WBR] = true; | |
SPECIAL_ELEMENTS[NS.HTML][$.XMP] = true; | |
SPECIAL_ELEMENTS[NS.MATHML] = {}; | |
SPECIAL_ELEMENTS[NS.MATHML][$.MI] = true; | |
SPECIAL_ELEMENTS[NS.MATHML][$.MO] = true; | |
SPECIAL_ELEMENTS[NS.MATHML][$.MN] = true; | |
SPECIAL_ELEMENTS[NS.MATHML][$.MS] = true; | |
SPECIAL_ELEMENTS[NS.MATHML][$.MTEXT] = true; | |
SPECIAL_ELEMENTS[NS.MATHML][$.ANNOTATION_XML] = true; | |
SPECIAL_ELEMENTS[NS.SVG] = {}; | |
SPECIAL_ELEMENTS[NS.SVG][$.TITLE] = true; | |
SPECIAL_ELEMENTS[NS.SVG][$.FOREIGN_OBJECT] = true; | |
SPECIAL_ELEMENTS[NS.SVG][$.DESC] = true; |