openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

htmlmixed.min.js (3018B)


      1 (function(t){if(typeof exports=='object'&&typeof module=='object')t(require('../../lib/codemirror'),require('../xml/xml'),require('../javascript/javascript'),require('../css/css'));else if(typeof define=='function'&&define.amd)define(['../../lib/codemirror','../xml/xml','../javascript/javascript','../css/css'],t);else t(CodeMirror)})(function(t){'use strict';var l={script:[['lang',/(javascript|babel)/i,'javascript'],['type',/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,'javascript'],['type',/./,'text/plain'],[null,null,'javascript']],style:[['lang',/^css$/i,'css'],['type',/^(text\/)?(x-)?(stylesheet|css)$/i,'css'],['type',/./,'text/plain'],[null,null,'css']]};function r(t,e,n){var a=t.current(),l=a.search(e);if(l>-1){t.backUp(a.length-l)}
      2 else if(a.match(/<\/?$/)){t.backUp(a.length);if(!t.match(e,!1))t.match(a)};return n};var e={};function i(t){var a=e[t];if(a)return a;return e[t]=new RegExp('\\s+'+t+'\\s*=\\s*(\'|")?([^\'"]+)(\'|")?\\s*')};function o(t,e){var a=t.match(i(e));return a?/^\s*(.*?)\s*$/.exec(a[2])[1]:''};function a(t,e){return new RegExp((e?'^':'')+'<\/\s*'+t+'\s*>','i')};function n(t,e){for(var n in t){var r=e[n]||(e[n]=[]),l=t[n];for(var a=l.length-1;a>=0;a--)r.unshift(l[a])}};function c(t,e){for(var n=0;n<t.length;n++){var a=t[n];if(!a[0]||a[1].test(o(e,a[0])))return a[2]}};t.defineMode('htmlmixed',function(e,i){var o=t.getMode(e,{name:'xml',htmlMode:!0,multilineTagIndentFactor:i.multilineTagIndentFactor,multilineTagIndentPastTag:i.multilineTagIndentPastTag});var s={};var m=i&&i.tags,f=i&&i.scriptTypes;n(l,s);if(m)n(m,s);if(f)for(var u=f.length-1;u>=0;u--)s.script.unshift(['type',f[u].matches,f[u].mode]);function d(l,n){var m=o.token(l,n.htmlState),p=/\btag\b/.test(m),u;if(p&&!/[<>\s\/]/.test(l.current())&&(u=n.htmlState.tagName&&n.htmlState.tagName.toLowerCase())&&s.hasOwnProperty(u)){n.inTag=u+' '}
      3 else if(n.inTag&&p&&/>$/.test(l.current())){var i=/^([\S]+) (.*)/.exec(n.inTag);n.inTag=null;var g=l.current()=='>'&&c(s[i[1]],i[2]),f=t.getMode(e,g),h=a(i[1],!0),v=a(i[1],!1);n.token=function(t,e){if(t.match(h,!1)){e.token=d;e.localState=e.localMode=null;return null};return r(t,v,e.localMode.token(t,e.localState))};n.localMode=f;n.localState=t.startState(f,o.indent(n.htmlState,''))}
      4 else if(n.inTag){n.inTag+=l.current();if(l.eol())n.inTag+=' '};return m};return{startState:function(){var e=t.startState(o);return{token:d,inTag:null,localMode:null,localState:null,htmlState:e}},copyState:function(e){var a;if(e.localState){a=t.copyState(e.localMode,e.localState)};return{token:e.token,inTag:e.inTag,localMode:e.localMode,localState:a,htmlState:t.copyState(o,e.htmlState)}},token:function(t,e){return e.token(t,e)},indent:function(e,a,n){if(!e.localMode||/^\s*<\//.test(a))return o.indent(e.htmlState,a);else if(e.localMode.indent)return e.localMode.indent(e.localState,a,n);else return t.Pass},innerMode:function(t){return{state:t.localState||t.htmlState,mode:t.localMode||o}}}},'xml','javascript','css');t.defineMIME('text/html','htmlmixed')});