{"version":3,"sources":["../../node_modules/codemirror/mode/http/http.js"],"names":["mod","exports","module","require","define","amd","CodeMirror","defineMode","failFirstLine","stream","state","skipToEnd","cur","header","start","match","responseStatusCode","test","peek","requestPath","code","responseStatusText","status","Number","eatWhile","requestProtocol","sol","eat","body","token","eatSpace","blankLine","startState","defineMIME"],"mappings":"CAGA,SAAUA,GACR,SAAWC,UAAW,gBAAmBC,SAAU,SACjDF,EAAIG,QAAQ,6BACT,UAAWC,SAAU,YAAcA,OAAOC,IAC7CD,QAAQ,wBAAyBJ,OAEjCA,GAAIM,cACL,SAASA,GACZ,YAEAA,GAAWC,WAAW,OAAQ,WAC5B,QAASC,GAAcC,EAAQC,GAC7BD,EAAOE,WACPD,GAAME,IAAMC,CACZ,OAAO,QAGT,QAASC,GAAML,EAAQC,GACrB,GAAID,EAAOM,MAAM,iBAAkB,CACjCL,EAAME,IAAMI,CACZ,OAAO,cACF,IAAIP,EAAOM,MAAM,YAAc,QAAQE,KAAKR,EAAOS,QAAS,CACjER,EAAME,IAAMO,CACZ,OAAO,cACF,CACL,MAAOX,GAAcC,EAAQC,IAIjC,QAASM,GAAmBP,EAAQC,GAClC,GAAIU,GAAOX,EAAOM,MAAM,OACxB,KAAKK,EAAM,MAAOZ,GAAcC,EAAQC,EAExCA,GAAME,IAAMS,CACZ,IAAIC,GAASC,OAAOH,EAAK,GACzB,IAAIE,GAAU,KAAOA,EAAS,IAAK,CACjC,MAAO,6BACF,IAAIA,GAAU,KAAOA,EAAS,IAAK,CACxC,MAAO,uBACF,IAAIA,GAAU,KAAOA,EAAS,IAAK,CACxC,MAAO,wBACF,IAAIA,GAAU,KAAOA,EAAS,IAAK,CACxC,MAAO,4BACF,IAAIA,GAAU,KAAOA,EAAS,IAAK,CACxC,MAAO,4BACF,CACL,MAAO,SAIX,QAASD,GAAmBZ,EAAQC,GAClCD,EAAOE,WACPD,GAAME,IAAMC,CACZ,OAAO,MAGT,QAASM,GAAYV,EAAQC,GAC3BD,EAAOe,SAAS,KAChBd,GAAME,IAAMa,CACZ,OAAO,WAGT,QAASA,GAAgBhB,EAAQC,GAC/B,GAAID,EAAOM,MAAM,kBAAmB,CAClCL,EAAME,IAAMC,CACZ,OAAO,cACF,CACL,MAAOL,GAAcC,EAAQC,IAIjC,QAASG,GAAOJ,GACd,GAAIA,EAAOiB,QAAUjB,EAAOkB,IAAI,SAAU,CACxC,GAAIlB,EAAOM,MAAM,SAAU,CACzB,MAAO,WACF,CACLN,EAAOE,WACP,OAAO,aAEJ,CACLF,EAAOE,WACP,OAAO,UAIX,QAASiB,GAAKnB,GACZA,EAAOE,WACP,OAAO,MAGT,OACEkB,MAAO,SAASpB,EAAQC,GACtB,GAAIE,GAAMF,EAAME,GAChB,IAAIA,GAAOC,GAAUD,GAAOgB,GAAQnB,EAAOqB,WAAY,MAAO,KAC9D,OAAOlB,GAAIH,EAAQC,IAGrBqB,UAAW,SAASrB,GAClBA,EAAME,IAAMgB,GAGdI,WAAY,WACV,OAAQpB,IAAKE,MAKnBR,GAAW2B,WAAW,eAAgB","file":"http.min.js","sourcesContent":["// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n\"use strict\";\n\nCodeMirror.defineMode(\"http\", function() {\n function failFirstLine(stream, state) {\n stream.skipToEnd();\n state.cur = header;\n return \"error\";\n }\n\n function start(stream, state) {\n if (stream.match(/^HTTP\\/\\d\\.\\d/)) {\n state.cur = responseStatusCode;\n return \"keyword\";\n } else if (stream.match(/^[A-Z]+/) && /[ \\t]/.test(stream.peek())) {\n state.cur = requestPath;\n return \"keyword\";\n } else {\n return failFirstLine(stream, state);\n }\n }\n\n function responseStatusCode(stream, state) {\n var code = stream.match(/^\\d+/);\n if (!code) return failFirstLine(stream, state);\n\n state.cur = responseStatusText;\n var status = Number(code[0]);\n if (status >= 100 && status < 200) {\n return \"positive informational\";\n } else if (status >= 200 && status < 300) {\n return \"positive success\";\n } else if (status >= 300 && status < 400) {\n return \"positive redirect\";\n } else if (status >= 400 && status < 500) {\n return \"negative client-error\";\n } else if (status >= 500 && status < 600) {\n return \"negative server-error\";\n } else {\n return \"error\";\n }\n }\n\n function responseStatusText(stream, state) {\n stream.skipToEnd();\n state.cur = header;\n return null;\n }\n\n function requestPath(stream, state) {\n stream.eatWhile(/\\S/);\n state.cur = requestProtocol;\n return \"string-2\";\n }\n\n function requestProtocol(stream, state) {\n if (stream.match(/^HTTP\\/\\d\\.\\d$/)) {\n state.cur = header;\n return \"keyword\";\n } else {\n return failFirstLine(stream, state);\n }\n }\n\n function header(stream) {\n if (stream.sol() && !stream.eat(/[ \\t]/)) {\n if (stream.match(/^.*?:/)) {\n return \"atom\";\n } else {\n stream.skipToEnd();\n return \"error\";\n }\n } else {\n stream.skipToEnd();\n return \"string\";\n }\n }\n\n function body(stream) {\n stream.skipToEnd();\n return null;\n }\n\n return {\n token: function(stream, state) {\n var cur = state.cur;\n if (cur != header && cur != body && stream.eatSpace()) return null;\n return cur(stream, state);\n },\n\n blankLine: function(state) {\n state.cur = body;\n },\n\n startState: function() {\n return {cur: start};\n }\n };\n});\n\nCodeMirror.defineMIME(\"message/http\", \"http\");\n\n});\n"]}