| |
| |
|
|
| (function(mod) { |
| if (typeof exports == "object" && typeof module == "object") |
| mod(require("../../lib/codemirror"), require("./xml-hint")); |
| else if (typeof define == "function" && define.amd) |
| define(["../../lib/codemirror", "./xml-hint"], mod); |
| else |
| mod(CodeMirror); |
| })(function(CodeMirror) { |
| "use strict"; |
|
|
| var langs = "ab aa af ak sq am ar an hy as av ae ay az bm ba eu be bn bh bi bs br bg my ca ch ce ny zh cv kw co cr hr cs da dv nl dz en eo et ee fo fj fi fr ff gl ka de el gn gu ht ha he hz hi ho hu ia id ie ga ig ik io is it iu ja jv kl kn kr ks kk km ki rw ky kv kg ko ku kj la lb lg li ln lo lt lu lv gv mk mg ms ml mt mi mr mh mn na nv nb nd ne ng nn no ii nr oc oj cu om or os pa pi fa pl ps pt qu rm rn ro ru sa sc sd se sm sg sr gd sn si sk sl so st es su sw ss sv ta te tg th ti bo tk tl tn to tr ts tt tw ty ug uk ur uz ve vi vo wa cy wo fy xh yi yo za zu".split(" "); |
| var targets = ["_blank", "_self", "_top", "_parent"]; |
| var charsets = ["ascii", "utf-8", "utf-16", "latin1", "latin1"]; |
| var methods = ["get", "post", "put", "delete"]; |
| var encs = ["application/x-www-form-urlencoded", "multipart/form-data", "text/plain"]; |
| var media = ["all", "screen", "print", "embossed", "braille", "handheld", "print", "projection", "screen", "tty", "tv", "speech", |
| "3d-glasses", "resolution [>][<][=] [X]", "device-aspect-ratio: X/Y", "orientation:portrait", |
| "orientation:landscape", "device-height: [X]", "device-width: [X]"]; |
| var s = { attrs: {} }; |
|
|
| var data = { |
| a: { |
| attrs: { |
| href: null, ping: null, type: null, |
| media: media, |
| target: targets, |
| hreflang: langs |
| } |
| }, |
| abbr: s, |
| acronym: s, |
| address: s, |
| applet: s, |
| area: { |
| attrs: { |
| alt: null, coords: null, href: null, target: null, ping: null, |
| media: media, hreflang: langs, type: null, |
| shape: ["default", "rect", "circle", "poly"] |
| } |
| }, |
| article: s, |
| aside: s, |
| audio: { |
| attrs: { |
| src: null, mediagroup: null, |
| crossorigin: ["anonymous", "use-credentials"], |
| preload: ["none", "metadata", "auto"], |
| autoplay: ["", "autoplay"], |
| loop: ["", "loop"], |
| controls: ["", "controls"] |
| } |
| }, |
| b: s, |
| base: { attrs: { href: null, target: targets } }, |
| basefont: s, |
| bdi: s, |
| bdo: s, |
| big: s, |
| blockquote: { attrs: { cite: null } }, |
| body: s, |
| br: s, |
| button: { |
| attrs: { |
| form: null, formaction: null, name: null, value: null, |
| autofocus: ["", "autofocus"], |
| disabled: ["", "autofocus"], |
| formenctype: encs, |
| formmethod: methods, |
| formnovalidate: ["", "novalidate"], |
| formtarget: targets, |
| type: ["submit", "reset", "button"] |
| } |
| }, |
| canvas: { attrs: { width: null, height: null } }, |
| caption: s, |
| center: s, |
| cite: s, |
| code: s, |
| col: { attrs: { span: null } }, |
| colgroup: { attrs: { span: null } }, |
| command: { |
| attrs: { |
| type: ["command", "checkbox", "radio"], |
| label: null, icon: null, radiogroup: null, command: null, title: null, |
| disabled: ["", "disabled"], |
| checked: ["", "checked"] |
| } |
| }, |
| data: { attrs: { value: null } }, |
| datagrid: { attrs: { disabled: ["", "disabled"], multiple: ["", "multiple"] } }, |
| datalist: { attrs: { data: null } }, |
| dd: s, |
| del: { attrs: { cite: null, datetime: null } }, |
| details: { attrs: { open: ["", "open"] } }, |
| dfn: s, |
| dir: s, |
| div: s, |
| dialog: { attrs: { open: null } }, |
| dl: s, |
| dt: s, |
| em: s, |
| embed: { attrs: { src: null, type: null, width: null, height: null } }, |
| eventsource: { attrs: { src: null } }, |
| fieldset: { attrs: { disabled: ["", "disabled"], form: null, name: null } }, |
| figcaption: s, |
| figure: s, |
| font: s, |
| footer: s, |
| form: { |
| attrs: { |
| action: null, name: null, |
| "accept-charset": charsets, |
| autocomplete: ["on", "off"], |
| enctype: encs, |
| method: methods, |
| novalidate: ["", "novalidate"], |
| target: targets |
| } |
| }, |
| frame: s, |
| frameset: s, |
| h1: s, h2: s, h3: s, h4: s, h5: s, h6: s, |
| head: { |
| attrs: {}, |
| children: ["title", "base", "link", "style", "meta", "script", "noscript", "command"] |
| }, |
| header: s, |
| hgroup: s, |
| hr: s, |
| html: { |
| attrs: { manifest: null }, |
| children: ["head", "body"] |
| }, |
| i: s, |
| iframe: { |
| attrs: { |
| src: null, srcdoc: null, name: null, width: null, height: null, |
| sandbox: ["allow-top-navigation", "allow-same-origin", "allow-forms", "allow-scripts"], |
| seamless: ["", "seamless"] |
| } |
| }, |
| img: { |
| attrs: { |
| alt: null, src: null, ismap: null, usemap: null, width: null, height: null, |
| crossorigin: ["anonymous", "use-credentials"] |
| } |
| }, |
| input: { |
| attrs: { |
| alt: null, dirname: null, form: null, formaction: null, |
| height: null, list: null, max: null, maxlength: null, min: null, |
| name: null, pattern: null, placeholder: null, size: null, src: null, |
| step: null, value: null, width: null, |
| accept: ["audio/*", "video/*", "image/*"], |
| autocomplete: ["on", "off"], |
| autofocus: ["", "autofocus"], |
| checked: ["", "checked"], |
| disabled: ["", "disabled"], |
| formenctype: encs, |
| formmethod: methods, |
| formnovalidate: ["", "novalidate"], |
| formtarget: targets, |
| multiple: ["", "multiple"], |
| readonly: ["", "readonly"], |
| required: ["", "required"], |
| type: ["hidden", "text", "search", "tel", "url", "email", "password", "datetime", "date", "month", |
| "week", "time", "datetime-local", "number", "range", "color", "checkbox", "radio", |
| "file", "submit", "image", "reset", "button"] |
| } |
| }, |
| ins: { attrs: { cite: null, datetime: null } }, |
| kbd: s, |
| keygen: { |
| attrs: { |
| challenge: null, form: null, name: null, |
| autofocus: ["", "autofocus"], |
| disabled: ["", "disabled"], |
| keytype: ["RSA"] |
| } |
| }, |
| label: { attrs: { "for": null, form: null } }, |
| legend: s, |
| li: { attrs: { value: null } }, |
| link: { |
| attrs: { |
| href: null, type: null, |
| hreflang: langs, |
| media: media, |
| sizes: ["all", "16x16", "16x16 32x32", "16x16 32x32 64x64"] |
| } |
| }, |
| map: { attrs: { name: null } }, |
| mark: s, |
| menu: { attrs: { label: null, type: ["list", "context", "toolbar"] } }, |
| meta: { |
| attrs: { |
| content: null, |
| charset: charsets, |
| name: ["viewport", "application-name", "author", "description", "generator", "keywords"], |
| "http-equiv": ["content-language", "content-type", "default-style", "refresh"] |
| } |
| }, |
| meter: { attrs: { value: null, min: null, low: null, high: null, max: null, optimum: null } }, |
| nav: s, |
| noframes: s, |
| noscript: s, |
| object: { |
| attrs: { |
| data: null, type: null, name: null, usemap: null, form: null, width: null, height: null, |
| typemustmatch: ["", "typemustmatch"] |
| } |
| }, |
| ol: { attrs: { reversed: ["", "reversed"], start: null, type: ["1", "a", "A", "i", "I"] } }, |
| optgroup: { attrs: { disabled: ["", "disabled"], label: null } }, |
| option: { attrs: { disabled: ["", "disabled"], label: null, selected: ["", "selected"], value: null } }, |
| output: { attrs: { "for": null, form: null, name: null } }, |
| p: s, |
| param: { attrs: { name: null, value: null } }, |
| pre: s, |
| progress: { attrs: { value: null, max: null } }, |
| q: { attrs: { cite: null } }, |
| rp: s, |
| rt: s, |
| ruby: s, |
| s: s, |
| samp: s, |
| script: { |
| attrs: { |
| type: ["text/javascript"], |
| src: null, |
| async: ["", "async"], |
| defer: ["", "defer"], |
| charset: charsets |
| } |
| }, |
| section: s, |
| select: { |
| attrs: { |
| form: null, name: null, size: null, |
| autofocus: ["", "autofocus"], |
| disabled: ["", "disabled"], |
| multiple: ["", "multiple"] |
| } |
| }, |
| small: s, |
| source: { attrs: { src: null, type: null, media: null } }, |
| span: s, |
| strike: s, |
| strong: s, |
| style: { |
| attrs: { |
| type: ["text/css"], |
| media: media, |
| scoped: null |
| } |
| }, |
| sub: s, |
| summary: s, |
| sup: s, |
| table: s, |
| tbody: s, |
| td: { attrs: { colspan: null, rowspan: null, headers: null } }, |
| textarea: { |
| attrs: { |
| dirname: null, form: null, maxlength: null, name: null, placeholder: null, |
| rows: null, cols: null, |
| autofocus: ["", "autofocus"], |
| disabled: ["", "disabled"], |
| readonly: ["", "readonly"], |
| required: ["", "required"], |
| wrap: ["soft", "hard"] |
| } |
| }, |
| tfoot: s, |
| th: { attrs: { colspan: null, rowspan: null, headers: null, scope: ["row", "col", "rowgroup", "colgroup"] } }, |
| thead: s, |
| time: { attrs: { datetime: null } }, |
| title: s, |
| tr: s, |
| track: { |
| attrs: { |
| src: null, label: null, "default": null, |
| kind: ["subtitles", "captions", "descriptions", "chapters", "metadata"], |
| srclang: langs |
| } |
| }, |
| tt: s, |
| u: s, |
| ul: s, |
| "var": s, |
| video: { |
| attrs: { |
| src: null, poster: null, width: null, height: null, |
| crossorigin: ["anonymous", "use-credentials"], |
| preload: ["auto", "metadata", "none"], |
| autoplay: ["", "autoplay"], |
| mediagroup: ["movie"], |
| muted: ["", "muted"], |
| controls: ["", "controls"] |
| } |
| }, |
| wbr: s |
| }; |
|
|
| var globalAttrs = { |
| accesskey: ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], |
| "class": null, |
| contenteditable: ["true", "false"], |
| contextmenu: null, |
| dir: ["ltr", "rtl", "auto"], |
| draggable: ["true", "false", "auto"], |
| dropzone: ["copy", "move", "link", "string:", "file:"], |
| hidden: ["hidden"], |
| id: null, |
| inert: ["inert"], |
| itemid: null, |
| itemprop: null, |
| itemref: null, |
| itemscope: ["itemscope"], |
| itemtype: null, |
| lang: ["en", "es"], |
| spellcheck: ["true", "false"], |
| autocorrect: ["true", "false"], |
| autocapitalize: ["true", "false"], |
| style: null, |
| tabindex: ["1", "2", "3", "4", "5", "6", "7", "8", "9"], |
| title: null, |
| translate: ["yes", "no"], |
| onclick: null, |
| rel: ["stylesheet", "alternate", "author", "bookmark", "help", "license", "next", "nofollow", "noreferrer", "prefetch", "prev", "search", "tag"] |
| }; |
| function populate(obj) { |
| for (var attr in globalAttrs) if (globalAttrs.hasOwnProperty(attr)) |
| obj.attrs[attr] = globalAttrs[attr]; |
| } |
|
|
| populate(s); |
| for (var tag in data) if (data.hasOwnProperty(tag) && data[tag] != s) |
| populate(data[tag]); |
|
|
| CodeMirror.htmlSchema = data; |
| function htmlHint(cm, options) { |
| var local = {schemaInfo: data}; |
| if (options) for (var opt in options) local[opt] = options[opt]; |
| return CodeMirror.hint.xml(cm, local); |
| } |
| CodeMirror.registerHelper("hint", "html", htmlHint); |
| }); |
|
|