{"version":3,"file":"http-t7fOg_NY.cjs","sources":["../../../node_modules/@codemirror/legacy-modes/mode/http.js"],"sourcesContent":["function failFirstLine(stream, state) {\n  stream.skipToEnd();\n  state.cur = header;\n  return \"error\";\n}\n\nfunction 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\nfunction 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 < 400) {\n    return \"atom\";\n  } else {\n    return \"error\";\n  }\n}\n\nfunction responseStatusText(stream, state) {\n  stream.skipToEnd();\n  state.cur = header;\n  return null;\n}\n\nfunction requestPath(stream, state) {\n  stream.eatWhile(/\\S/);\n  state.cur = requestProtocol;\n  return \"string.special\";\n}\n\nfunction 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\nfunction 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\nfunction body(stream) {\n  stream.skipToEnd();\n  return null;\n}\n\nexport const http = {\n  name: \"http\",\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"],"names":["failFirstLine","stream","state","skipToEnd","cur","header","start","match","responseStatusCode","test","peek","requestPath","code","responseStatusText","status","Number","eatWhile","requestProtocol","sol","eat","body","http","name","token","eatSpace","blankLine","startState"],"mappings":"aAAA,SAASA,EAAcC,EAAQC,GAG7B,OAFAD,EAAOE,YACPD,EAAME,IAAMC,EACL,OACT,CAEA,SAASC,EAAML,EAAQC,GACrB,OAAID,EAAOM,MAAM,kBACfL,EAAME,IAAMI,EACL,WACEP,EAAOM,MAAM,YAAc,QAAQE,KAAKR,EAAOS,SACxDR,EAAME,IAAMO,EACL,WAEAX,EAAcC,EAAQC,EAEjC,CAEA,SAASM,EAAmBP,EAAQC,GAClC,IAAIU,EAAOX,EAAOM,MAAM,QACxB,IAAKK,EAAM,OAAOZ,EAAcC,EAAQC,GAExCA,EAAME,IAAMS,EACZ,IAAIC,EAASC,OAAOH,EAAK,IACzB,OAAIE,GAAU,KAAOA,EAAS,IACrB,OAEA,OAEX,CAEA,SAASD,EAAmBZ,EAAQC,GAGlC,OAFAD,EAAOE,YACPD,EAAME,IAAMC,EACL,IACT,CAEA,SAASM,EAAYV,EAAQC,GAG3B,OAFAD,EAAOe,SAAS,MAChBd,EAAME,IAAMa,EACL,gBACT,CAEA,SAASA,EAAgBhB,EAAQC,GAC/B,OAAID,EAAOM,MAAM,mBACfL,EAAME,IAAMC,EACL,WAEAL,EAAcC,EAAQC,EAEjC,CAEA,SAASG,EAAOJ,GACd,OAAIA,EAAOiB,QAAUjB,EAAOkB,IAAI,SAC1BlB,EAAOM,MAAM,SACR,QAEPN,EAAOE,YACA,UAGTF,EAAOE,YACA,SAEX,CAEA,SAASiB,EAAKnB,GAEZ,OADAA,EAAOE,YACA,IACT,oEAEY,MAACkB,EAAO,CAClBC,KAAM,OACNC,MAAO,SAAStB,EAAQC,GACtB,IAAIE,EAAMF,EAAME,IAChB,OAAIA,GAAOC,GAAUD,GAAOgB,GAAQnB,EAAOuB,WAAmB,KACvDpB,EAAIH,EAAQC,EACrB,EAEAuB,UAAW,SAASvB,GAClBA,EAAME,IAAMgB,CACd,EAEAM,WAAY,WACV,MAAO,CAACtB,IAAKE,EACf","x_google_ignoreList":[0]}