(function(b){"object"==typeof exports&&"object"==typeof module?b(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],b):b(CodeMirror)})(function(b){b.defineMode("htmlmixed",function(h,o){function s(b,j){var c=j.htmlState.tagName,B=a.token(b,j.htmlState);if("script"==c&&/\btag\b/.test(B)&&">"==b.current()){(c=(c=b.string.slice(Math.max(0, b.pos-100),b.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i))?c[1]:"")&&/[\"\']/.test(c.charAt(0))&&(c=c.slice(1,c.length-1));for(var l=0;l"==b.current())&&(j.token=e,j.localMode=d,j.localState=d.startState(a.indent(j.htmlState,"")));return B}function k(a, b,c){var d=a.current(),e=d.search(b);-1/i,!1)?(b.token=s,b.localState=b.localMode=null,s(a,b)):k(a,/<\/\s*script\s*>/,b.localMode.token(a,b.localState))}function e(a,b){return a.match(/^<\/\s*style\s*>/i,!1)?(b.token=s,b.localState=b.localMode=null,s(a,b)):k(a,/<\/\s*style\s*>/,d.token(a,b.localState))}var a=b.getMode(h,{name:"xml",htmlMode:!0,multilineTagIndentFactor:o.multilineTagIndentFactor, multilineTagIndentPastTag:o.multilineTagIndentPastTag}),d=b.getMode(h,"css"),v=[],l=o&&o.scriptTypes;v.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:b.getMode(h,"javascript")});if(l)for(var p=0;p")):null:n.match("--")?c(e("comment","--\>")):n.match("DOCTYPE",!0,!0)?(n.eatWhile(/[\w\._\-]/),c(a(1))):null;if(n.eat("?"))return n.eatWhile(/[\w\._\-]/), F.tokenize=e("meta","?>"),"meta";x=n.eat("/")?"closeTag":"openTag";F.tokenize=k;return"tag bracket"}if("&"==b)return(n.eat("#")?n.eat("x")?n.eatWhile(/[a-fA-F\d]/)&&n.eat(";"):n.eatWhile(/[\d]/)&&n.eat(";"):n.eatWhile(/[\w\.\-:]/)&&n.eat(";"))?"atom":"error";n.eatWhile(/[^&<]/);return null}function k(n,a){var c=n.next();if(">"==c||"/"==c&&n.eat(">"))return a.tokenize=s,x=">"==c?"endTag":"selfcloseTag","tag bracket";if("="==c)return x="equals",null;if("<"==c)return a.tokenize=s,a.state=p,a.tagName= a.tagStart=null,(c=a.tokenize(n,a))?c+" tag error":"tag error";if(/[\'\"]/.test(c))return a.tokenize=q(c),a.stringStartCol=n.column(),a.tokenize(n,a);n.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}function q(a){var c=function(c,b){for(;!c.eol();)if(c.next()==a){b.tokenize=k;break}return"string"};c.isInAttribute=!0;return c}function e(a,c){return function(b,d){for(;!b.eol();){if(b.match(c)){d.tokenize=s;break}b.next()}return a}}function a(n){return function(c,b){for(var d;null!=(d= c.next());){if("<"==d)return b.tokenize=a(n+1),b.tokenize(c,b);if(">"==d)if(1==n){b.tokenize=s;break}else return b.tokenize=a(n-1),b.tokenize(c,b)}return"meta"}}function d(a,c,b){this.prev=a.context;this.tagName=c;this.indent=a.indented;this.startOfLine=b;if(m.doNotIndent.hasOwnProperty(c)||a.context&&a.context.noIndent)this.noIndent=!0}function v(a){a.context&&(a.context=a.context.prev)}function l(a,c){for(var b;a.context;){b=a.context.tagName;if(!m.contextGrabbers.hasOwnProperty(b)||!m.contextGrabbers[b].hasOwnProperty(c))break; v(a)}}function p(a,c,b){return"openTag"==a?(b.tagStart=c.column(),C):"closeTag"==a?G:p}function C(a,c,b){if("word"==a)return b.tagName=c.current(),y="tag",B;y="error";return C}function G(a,b,d){if("word"==a){a=b.current();d.context&&(d.context.tagName!=a&&m.implicitlyClosed.hasOwnProperty(d.context.tagName))&&v(d);if(d.context&&d.context.tagName==a)return y="tag",j;y="tag error";return c}y="error";return c}function j(a,c,b){if("endTag"!=a)return y="error",j;v(b);return p}function c(a,c,b){y="error"; return j(a,c,b)}function B(a,c,b){if("word"==a)return y="attribute",H;if("endTag"==a||"selfcloseTag"==a){var c=b.tagName,e=b.tagStart;b.tagName=b.tagStart=null;"selfcloseTag"==a||m.autoSelfClosers.hasOwnProperty(c)?l(b,c):(l(b,c),b.context=new d(b,c,e==b.indented));return p}y="error";return B}function H(a,c,b){if("equals"==a)return I;m.allowMissing||(y="error");return B(a,c,b)}function I(a,c,b){if("string"==a)return t;if("word"==a&&m.allowUnquoted)return y="string",B;y="error";return B(a,c,b)}function t(a, c,b){return"string"==a?t:B(a,c,b)}var r=h.indentUnit,u=o.multilineTagIndentFactor||1,z=o.multilineTagIndentPastTag;null==z&&(z=!0);var m=o.htmlMode?{autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0}, optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{}, doNotIndent:{},allowUnquoted:!1,allowMissing:!1,caseFold:!1},D=o.alignCDATA,x,y;return{startState:function(){return{tokenize:s,state:p,indented:0,tagName:null,tagStart:null,context:null}},token:function(a,c){!c.tagName&&a.sol()&&(c.indented=a.indentation());if(a.eatSpace())return null;x=null;var b=c.tokenize(a,c);if((b||x)&&"comment"!=b)y=null,c.state=c.state(x||b,a,c),y&&(b="error"==y?b+" error":y);return b},indent:function(a,c,d){var e=a.context;if(a.tokenize.isInAttribute)return a.tagStart==a.indented? a.stringStartCol+1:a.indented+r;if(e&&e.noIndent)return b.Pass;if(a.tokenize!=k&&a.tokenize!=s)return d?d.match(/^(\s*)/)[0].length:0;if(a.tagName)return z?a.tagStart+a.tagName.length+2:a.tagStart+r*u;if(D&&/$/,blockCommentStart:"<\!--",blockCommentEnd:"--\>",configuration:o.htmlMode?"html":"xml",helperType:o.htmlMode?"html":"xml"}});b.defineMIME("text/xml","xml");b.defineMIME("application/xml","xml");b.mimeModes.hasOwnProperty("text/html")||b.defineMIME("text/html",{name:"xml",htmlMode:!0})}); (function(b){"object"==typeof exports&&"object"==typeof module?b(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],b):b(CodeMirror)})(function(b){b.defineMode("javascript",function(h,o){var s,k,q,e;function a(f,a,c){O=f;R=c;return a}function d(f,c){var b=f.next();if('"'==b||"'"==b)return c.tokenize=v(b),c.tokenize(f,c);if("."==b&&f.match(/^\d+(?:[eE][+\-]?\d+)?/))return a("number","number");if("."==b&&f.match(".."))return a("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(b))return a(b); if("="==b&&f.eat(">"))return a("=>","operator");if("0"==b&&f.eat(/x/i))return f.eatWhile(/[\da-f]/i),a("number","number");if(/\d/.test(b))return f.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/),a("number","number");if("/"==b){if(f.eat("*"))return c.tokenize=l,l(f,c);if(f.eat("/"))return f.skipToEnd(),a("comment","comment");if("operator"==c.lastType||"keyword c"==c.lastType||"sof"==c.lastType||/^[\[{}\(,;:]$/.test(c.lastType)){a:for(var b=!1,g,i=!1;null!=(g=f.next());){if(!b){if("/"==g&&!i)break a;"["== g?i=!0:i&&"]"==g&&(i=!1)}b=!b&&"\\"==g}f.eatWhile(/[gimy]/);return a("regexp","string-2")}f.eatWhile(W);return a("operator","operator",f.current())}if("`"==b)return c.tokenize=p,p(f,c);if("#"==b)return f.skipToEnd(),a("error","error");if(W.test(b))return f.eatWhile(W),a("operator","operator",f.current());f.eatWhile(/[\w\$_]/);b=f.current();return(g=ba.propertyIsEnumerable(b)&&ba[b])&&"."!=c.lastType?a(g.type,g.style,b):a("variable","variable",b)}function v(f){return function(b,c){var g=!1,i;if(S&& "@"==b.peek()&&b.match(ma))return c.tokenize=d,a("jsonld-keyword","meta");for(;null!=(i=b.next())&&(i!=f||g);)g=!g&&"\\"==i;g||(c.tokenize=d);return a("string","string")}}function l(f,b){for(var c=!1,g;g=f.next();){if("/"==g&&c){b.tokenize=d;break}c="*"==g}return a("comment","comment")}function p(f,b){for(var c=!1,g;null!=(g=f.next());){if(!c&&("`"==g||"$"==g&&f.eat("{"))){b.tokenize=d;break}c=!c&&"\\"==g}return a("quasi","string-2",f.current())}function C(f,a){a.fatArrowAt&&(a.fatArrowAt=null);var c= f.string.indexOf("=>",f.start);if(!(0>c)){for(var b=0,g=!1,c=c-1;0<=c;--c){var i=f.string.charAt(c),d=na.indexOf(i);if(0<=d&&3>d){if(!b){++c;break}if(0==--b)break}else if(3<=d&&6>d)++b;else if(/[$\w]/.test(i))g=!0;else if(g&&!b){++c;break}}g&&!b&&(a.fatArrowAt=c)}}function G(f,a,c,b,g,i){this.indented=f;this.column=a;this.type=c;this.prev=g;this.info=i;null!=b&&(this.align=b)}function j(){for(var f=arguments.length-1;0<=f;f--)s.push(arguments[f])}function c(){j.apply(null,arguments);return!0}function B(f){function a(c){for(;c;c= c.next)if(c.name==f)return!0;return!1}var c=k;c.context?(q="def",a(c.localVars)||(c.localVars={name:f,next:c.localVars})):!a(c.globalVars)&&o.globalVars&&(c.globalVars={name:f,next:c.globalVars})}function H(){k.context={prev:k.context,vars:k.localVars};k.localVars=oa}function I(){k.localVars=k.context.vars;k.context=k.context.prev}function t(f,a){var c=function(){var c=k,b=c.indented;"stat"==c.lexical.type&&(b=c.lexical.indented);c.lexical=new G(b,e.column(),f,null,c.lexical,a)};c.lex=!0;return c} function r(){var f=k;f.lexical.prev&&(")"==f.lexical.type&&(f.indented=f.lexical.indented),f.lexical=f.lexical.prev)}function u(f){function a(b){return b==f?c():";"==f?j():c(a)}return a}function z(f,a){return"var"==f?c(t("vardef",a.length),X,u(";"),r):"keyword a"==f?c(t("form"),m,z,r):"keyword b"==f?c(t("form"),z,r):"{"==f?c(t("}"),A,r):";"==f?c():"if"==f?("else"==k.lexical.info&&k.cc[k.cc.length-1]==r&&k.cc.pop()(),c(t("form"),m,z,r,ca)):"function"==f?c(K):"for"==f?c(t("form"),da,z,r):"variable"== f?c(t("stat"),pa):"switch"==f?c(t("form"),m,t("}","switch"),u("{"),A,r,r):"case"==f?c(m,u(":")):"default"==f?c(u(":")):"catch"==f?c(t("form"),H,u("("),Y,u(")"),z,r,I):"module"==f?c(t("form"),H,qa,I,r):"class"==f?c(t("form"),ra,sa,r):"export"==f?c(t("form"),ta,r):"import"==f?c(t("form"),ua,r):j(t("stat"),m,u(";"),r)}function m(f){return x(f,!1)}function D(f){return x(f,!0)}function x(f,a){if(k.fatArrowAt==e.start){var b=a?ea:fa;if("("==f)return c(H,t(")"),E(L,")"),r,u("=>"),b,I);if("variable"==f)return j(H, L,u("=>"),b,I)}b=a?V:F;return ga.hasOwnProperty(f)?c(b):"function"==f?c(K,b):"keyword c"==f?c(a?n:y):"("==f?c(t(")"),y,T,u(")"),r,b):"operator"==f||"spread"==f?c(a?D:m):"["==f?c(t("]"),va,r,b):"{"==f?g(J,"}",null,b):"quasi"==f?j(Q,b):c()}function y(f){return f.match(/[;\}\)\],]/)?j():j(m)}function n(f){return f.match(/[;\}\)\],]/)?j():j(D)}function F(f,a){return","==f?c(m):V(f,a,!1)}function V(a,b,i){var d=!1==i?F:V,e=!1==i?m:D;if("=>"==b)return c(H,i?ea:fa,I);if("operator"==a)return/\+\+|--/.test(b)? c(d):"?"==b?c(m,u(":"),e):c(e);if("quasi"==a)return j(Q,d);if(";"!=a){if("("==a)return g(D,")","call",d);if("."==a)return c(Z,d);if("["==a)return c(t("]"),y,u("]"),r,d)}}function Q(a,b){return"quasi"!=a?j():"${"!=b.slice(b.length-2)?c(Q):c(m,la)}function la(a){if("}"==a)return q="string-2",k.tokenize=p,c(Q)}function fa(a){C(e,k);return"{"==a?j(z):j(m)}function ea(a){C(e,k);return"{"==a?j(z):j(D)}function pa(a){return":"==a?c(r,z):j(F,u(";"),r)}function Z(a){if("variable"==a)return q="property",c()} function J(a,b){if("variable"==a){if(q="property","get"==b||"set"==b)return c(P)}else if("number"==a||"string"==a)q=S?"property":a+" property";else if("["==a)return c(m,u("]"),w);if(ga.hasOwnProperty(a))return c(w)}function P(a){if("variable"!=a)return j(w);q="property";return c(K)}function w(a){if(":"==a)return c(D);if("("==a)return j(K)}function E(a,b){function g(i){return","==i?(i=k.lexical,"call"==i.info&&(i.pos=(i.pos||0)+1),c(a,g)):i==b?c():c(u(b))}return function(i){return i==b?c():j(a,g)}} function g(a,b,g){for(var i=3;i!?|~^]/,ma=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/,O,R,na="([{}])",ga={atom:!0,number:!0, variable:!0,string:!0,regexp:!0,"this":!0,"jsonld-keyword":!0};s=q=k=null;e=void 0;var oa={name:"this",next:{name:"arguments"}};r.lex=!0;return{startState:function(a){a={tokenize:d,lastType:"sof",cc:[],lexical:new G((a||0)-M,0,"block",!1),localVars:o.localVars,context:o.localVars&&{vars:o.localVars},indented:0};o.globalVars&&"object"==typeof o.globalVars&&(a.globalVars=o.globalVars);return a},token:function(a,b){a.sol()&&(b.lexical.hasOwnProperty("align")||(b.lexical.align=!1),b.indented=a.indentation(), C(a,b));if(b.tokenize!=l&&a.eatSpace())return null;var c=b.tokenize(a,b);if("comment"==O)return c;b.lastType="operator"==O&&("++"==R||"--"==R)?"incdec":O;var g;a:{var i=O,d=R,A=b.cc;k=b;e=a;q=null;s=A;b.lexical.hasOwnProperty("align")||(b.lexical.align=!0);for(;;)if((A.length?A.pop():N?m:z)(i,d)){for(;A.length&&A[A.length-1].lex;)A.pop()();if(q){g=q;break a}if(g="variable"==i)b:{for(g=b.localVars;g;g=g.next)if(g.name==d){g=!0;break b}for(i=b.context;i;i=i.prev)for(g=i.vars;g;g=g.next)if(g.name==d){g= !0;break b}g=void 0}if(g){g="variable-2";break a}g=c;break a}}return g},indent:function(a,c){if(a.tokenize==l)return b.Pass;if(a.tokenize!=d)return 0;var g=c&&c.charAt(0),i=a.lexical;if(!/^\s*else\b/.test(c))for(var e=a.cc.length-1;0<=e;--e){var A=a.cc[e];if(A==r)i=i.prev;else if(A!=ca)break}"stat"==i.type&&"}"==g&&(i=i.prev);ka&&(")"==i.type&&"stat"==i.prev.type)&&(i=i.prev);e=i.type;A=g==e;return"vardef"==e?i.indented+("operator"==a.lastType||","==a.lastType?i.info+1:0):"form"==e&&"{"==g?i.indented: "form"==e?i.indented+M:"stat"==e?i.indented+("operator"==a.lastType||","==a.lastType?ka||M:0):"switch"==i.info&&!A&&!1!=o.doubleIndentSwitch?i.indented+(/^(?:case|default)\b/.test(c)?M:2*M):i.align?i.column+(A?0:1):i.indented+(A?0:M)},electricChars:":{}",blockCommentStart:N?null:"/*",blockCommentEnd:N?null:"*/",lineComment:N?null:"//",fold:"brace",helperType:N?"json":"javascript",jsonldMode:S,jsonMode:N}});b.registerHelper("wordChars","javascript",/[\\w$]/);b.defineMIME("text/javascript","javascript"); b.defineMIME("text/ecmascript","javascript");b.defineMIME("application/javascript","javascript");b.defineMIME("application/ecmascript","javascript");b.defineMIME("application/json",{name:"javascript",json:!0});b.defineMIME("application/x-json",{name:"javascript",json:!0});b.defineMIME("application/ld+json",{name:"javascript",jsonld:!0});b.defineMIME("text/typescript",{name:"javascript",typescript:!0});b.defineMIME("application/typescript",{name:"javascript",typescript:!0})}); (function(b){"object"==typeof exports&&"object"==typeof module?b(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],b):b(CodeMirror)})(function(b){function h(a){for(var b={},c=0;c")?(a.match("--\>"),b.tokenize=null):a.skipToEnd();return["comment","comment"]}b.defineMode("css", function(a,c){function d(a,b){P=b;return a}function e(a,b){var c=a.next();if(F[c]){var n=F[c](a,b);if(!1!==n)return n}if("@"==c)return a.eatWhile(/[\w\\\-]/),d("def",a.current());if("="==c||("~"==c||"|"==c)&&a.eat("="))return d(null,"compare");if('"'==c||"'"==c)return b.tokenize=l(c),b.tokenize(a,b);if("#"==c)return a.eatWhile(/[\w\\\-]/),d("atom","hash");if("!"==c)return a.match(/^\s*\w*/),d("keyword","important");if(/\d/.test(c)||"."==c&&a.eat(/\d/))return a.eatWhile(/[\w.%]/),d("number","unit"); if("-"===c){if(/[\d.]/.test(a.peek()))return a.eatWhile(/[\w.%]/),d("number","unit");if(a.match(/^\w+-/))return d("meta","meta")}else return/[,+>*\/]/.test(c)?d(null,"select-op"):"."==c&&a.match(/^-?[_a-z][_a-z0-9-]*/i)?d("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(c)?d(null,c):"u"==c&&a.match("rl(")?(a.backUp(1),b.tokenize=p,d("property","word")):/[\w\\\-]/.test(c)?(a.eatWhile(/[\w\\\-]/),d("property","word")):d(null,null)}function l(a){return function(b,c){for(var e=!1,n;null!=(n=b.next());){if(n== a&&!e){")"==a&&b.backUp(1);break}e=!e&&"\\"==n}if(n==a||!e&&")"!=a)c.tokenize=null;return d("string","string")}}function p(a,b){a.next();b.tokenize=a.match(/\s*[\"\')]/,!1)?null:l(")");return d(null,"(")}function j(a,b,c){this.type=a;this.indent=b;this.prev=c}function m(a,b,c){a.context=new j(c,b.indentation()+n,a.context);return c}function v(a){a.context=a.context.prev;return a.context.type}function h(a,b,c,d){for(d=d||1;0