Path: blob/master/web-gui/buildyourownbotnet/assets/js/codemirror/mode/http/http.js
1293 views
CodeMirror.defineMode("http", function() {1function failFirstLine(stream, state) {2stream.skipToEnd();3state.cur = header;4return "error";5}67function start(stream, state) {8if (stream.match(/^HTTP\/\d\.\d/)) {9state.cur = responseStatusCode;10return "keyword";11} else if (stream.match(/^[A-Z]+/) && /[ \t]/.test(stream.peek())) {12state.cur = requestPath;13return "keyword";14} else {15return failFirstLine(stream, state);16}17}1819function responseStatusCode(stream, state) {20var code = stream.match(/^\d+/);21if (!code) return failFirstLine(stream, state);2223state.cur = responseStatusText;24var status = Number(code[0]);25if (status >= 100 && status < 200) {26return "positive informational";27} else if (status >= 200 && status < 300) {28return "positive success";29} else if (status >= 300 && status < 400) {30return "positive redirect";31} else if (status >= 400 && status < 500) {32return "negative client-error";33} else if (status >= 500 && status < 600) {34return "negative server-error";35} else {36return "error";37}38}3940function responseStatusText(stream, state) {41stream.skipToEnd();42state.cur = header;43return null;44}4546function requestPath(stream, state) {47stream.eatWhile(/\S/);48state.cur = requestProtocol;49return "string-2";50}5152function requestProtocol(stream, state) {53if (stream.match(/^HTTP\/\d\.\d$/)) {54state.cur = header;55return "keyword";56} else {57return failFirstLine(stream, state);58}59}6061function header(stream) {62if (stream.sol() && !stream.eat(/[ \t]/)) {63if (stream.match(/^.*?:/)) {64return "atom";65} else {66stream.skipToEnd();67return "error";68}69} else {70stream.skipToEnd();71return "string";72}73}7475function body(stream) {76stream.skipToEnd();77return null;78}7980return {81token: function(stream, state) {82var cur = state.cur;83if (cur != header && cur != body && stream.eatSpace()) return null;84return cur(stream, state);85},8687blankLine: function(state) {88state.cur = body;89},9091startState: function() {92return {cur: start};93}94};95});9697CodeMirror.defineMIME("message/http", "http");9899100