1{"version":3,"sources":["../../node_modules/codemirror/mode/protobuf/protobuf.js"],"names":["mod","exports","module","require","define","amd","CodeMirror","wordRegexp","words","RegExp","join","keywordArray","keywords","registerHelper","identifiers","tokenBase","stream","eatSpace","match","skipToEnd","next","defineMode","token","fold","defineMIME"],"mappings":"CAGA,SAAUA,GACR,SAAWC,UAAW,gBAAmBC,SAAU,SACjDF,EAAIG,QAAQ,6BACT,UAAWC,SAAU,YAAcA,OAAOC,IAC7CD,QAAQ,wBAAyBJ,OAEjCA,GAAIM,cACL,SAASA,GACV,YAEA,SAASC,GAAWC,GAClB,MAAO,IAAIC,QAAO,MAAQD,EAAME,KAAK,OAAS,QAAS,KAGzD,GAAIC,IACF,UAAW,UAAW,SAAU,SAChC,WAAY,WAAY,WAAY,WAAY,UAAW,aAAc,SACzE,OAAQ,QAAS,SAAU,OAAQ,QAAS,SAC5C,QAAS,QAAS,SAAU,SAAU,SAAU,SAAU,UAAW,UAAW,WAAY,WAC5F,SAAU,UAAW,MAAO,UAE9B,IAAIC,GAAWL,EAAWI,EAE1BL,GAAWO,eAAe,YAAa,WAAYF,EAEnD,IAAIG,GAAc,GAAIL,QAAO,gCAE7B,SAASM,GAAUC,GAEjB,GAAIA,EAAOC,WAAY,MAAO,KAG9B,IAAID,EAAOE,MAAM,MAAO,CACtBF,EAAOG,WACP,OAAO,UAIT,GAAIH,EAAOE,MAAM,aAAc,OAAQ,CACrC,GAAIF,EAAOE,MAAM,wBACf,MAAO,QACT,IAAIF,EAAOE,MAAM,mCACf,MAAO,QACT,IAAIF,EAAOE,MAAM,8BACf,MAAO,SAIX,GAAIF,EAAOE,MAAM,mBAAoB,CAAE,MAAO,SAC9C,GAAIF,EAAOE,MAAM,mBAAoB,CAAE,MAAO,SAG9C,GAAIF,EAAOE,MAAMN,GAAW,CAAE,MAAO,UACrC,GAAII,EAAOE,MAAMJ,GAAc,CAAE,MAAO,WAGxCE,EAAOI,MACP,OAAO,MAGTd,EAAWe,WAAW,WAAY,WAChC,OACEC,MAAOP,EACPQ,KAAM,UAIVjB,GAAWkB,WAAW,kBAAmB","file":"protobuf.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\n  function wordRegexp(words) {\n    return new RegExp(\"^((\" + words.join(\")|(\") + \"))\\\\b\", \"i\");\n  };\n\n  var keywordArray = [\n    \"package\", \"message\", \"import\", \"syntax\",\n    \"required\", \"optional\", \"repeated\", \"reserved\", \"default\", \"extensions\", \"packed\",\n    \"bool\", \"bytes\", \"double\", \"enum\", \"float\", \"string\",\n    \"int32\", \"int64\", \"uint32\", \"uint64\", \"sint32\", \"sint64\", \"fixed32\", \"fixed64\", \"sfixed32\", \"sfixed64\",\n    \"option\", \"service\", \"rpc\", \"returns\"\n  ];\n  var keywords = wordRegexp(keywordArray);\n\n  CodeMirror.registerHelper(\"hintWords\", \"protobuf\", keywordArray);\n\n  var identifiers = new RegExp(\"^[_A-Za-z\\xa1-\\uffff][_A-Za-z0-9\\xa1-\\uffff]*\");\n\n  function tokenBase(stream) {\n    // whitespaces\n    if (stream.eatSpace()) return null;\n\n    // Handle one line Comments\n    if (stream.match(\"//\")) {\n      stream.skipToEnd();\n      return \"comment\";\n    }\n\n    // Handle Number Literals\n    if (stream.match(/^[0-9\\.+-]/, false)) {\n      if (stream.match(/^[+-]?0x[0-9a-fA-F]+/))\n        return \"number\";\n      if (stream.match(/^[+-]?\\d*\\.\\d+([EeDd][+-]?\\d+)?/))\n        return \"number\";\n      if (stream.match(/^[+-]?\\d+([EeDd][+-]?\\d+)?/))\n        return \"number\";\n    }\n\n    // Handle Strings\n    if (stream.match(/^\"([^\"]|(\"\"))*\"/)) { return \"string\"; }\n    if (stream.match(/^'([^']|(''))*'/)) { return \"string\"; }\n\n    // Handle words\n    if (stream.match(keywords)) { return \"keyword\"; }\n    if (stream.match(identifiers)) { return \"variable\"; } ;\n\n    // Handle non-detected items\n    stream.next();\n    return null;\n  };\n\n  CodeMirror.defineMode(\"protobuf\", function() {\n    return {\n      token: tokenBase,\n      fold: \"brace\"\n    };\n  });\n\n  CodeMirror.defineMIME(\"text/x-protobuf\", \"protobuf\");\n});\n"]}