{"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"]}