| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351 | 
							- // CodeMirror, copyright (c) by Marijn Haverbeke and others
 
- // Distributed under an MIT license: https://codemirror.net/LICENSE
 
- (function(mod) {
 
-   if (typeof exports == "object" && typeof module == "object") // CommonJS
 
-     mod(require("../../lib/codemirror"), require("./xml-hint"));
 
-   else if (typeof define == "function" && define.amd) // AMD
 
-     define(["../../lib/codemirror", "./xml-hint"], mod);
 
-   else // Plain browser env
 
-     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: {} }; // Simple tag, reused for a whole lot of tags
 
-   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);
 
- });
 
 
  |