1(function(a){if(typeof exports=="object"&&typeof module=="object")a(require("../../lib/codemirror"),require("../../addon/mode/simple"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror","../../addon/mode/simple"],a);else a(CodeMirror)})(function(a){"use strict";var b="from";var c=new RegExp("^(\\s*)\\b("+b+")\\b","i");var d=["run","cmd","entrypoint","shell"];var e=new RegExp("^(\\s*)("+d.join("|")+")(\\s+\\[)","i");var f="expose";var g=new RegExp("^(\\s*)("+f+")(\\s+)","i");var h=["arg","from","maintainer","label","env","add","copy","volume","user","workdir","onbuild","stopsignal","healthcheck","shell"];var i=[b,f].concat(d).concat(h),j="("+i.join("|")+")",k=new RegExp("^(\\s*)"+j+"(\\s*)(#.*)?$","i"),l=new RegExp("^(\\s*)"+j+"(\\s+)","i");a.defineSimpleMode("dockerfile",{start:[{regex:/^\s*#.*$/,sol:true,token:"comment"},{regex:c,token:[null,"keyword"],sol:true,next:"from"},{regex:k,token:[null,"keyword",null,"error"],sol:true},{regex:e,token:[null,"keyword",null],sol:true,next:"array"},{regex:g,token:[null,"keyword",null],sol:true,next:"expose"},{regex:l,token:[null,"keyword",null],sol:true,next:"arguments"},{regex:/./,token:null}],from:[{regex:/\s*$/,token:null,next:"start"},{regex:/(\s*)(#.*)$/,token:[null,"error"],next:"start"},{regex:/(\s*\S+\s+)(as)/i,token:[null,"keyword"],next:"start"},{token:null,next:"start"}],single:[{regex:/(?:[^\\']|\\.)/,token:"string"},{regex:/'/,token:"string",pop:true}],"double":[{regex:/(?:[^\\"]|\\.)/,token:"string"},{regex:/"/,token:"string",pop:true}],array:[{regex:/\]/,token:null,next:"start"},{regex:/"(?:[^\\"]|\\.)*"?/,token:"string"}],expose:[{regex:/\d+$/,token:"number",next:"start"},{regex:/[^\d]+$/,token:null,next:"start"},{regex:/\d+/,token:"number"},{regex:/[^\d]+/,token:null},{token:null,next:"start"}],arguments:[{regex:/^\s*#.*$/,sol:true,token:"comment"},{regex:/"(?:[^\\"]|\\.)*"?$/,token:"string",next:"start"},{regex:/"/,token:"string",push:"double"},{regex:/'(?:[^\\']|\\.)*'?$/,token:"string",next:"start"},{regex:/'/,token:"string",push:"single"},{regex:/[^#"']+[\\`]$/,token:null},{regex:/[^#"']+$/,token:null,next:"start"},{regex:/[^#"']+/,token:null},{token:null,next:"start"}],meta:{lineComment:"#"}});a.defineMIME("text/x-dockerfile","dockerfile")});
2//# sourceMappingURL=dockerfile.min.js.map