1{"version":3,"sources":["../../node_modules/codemirror/mode/properties/properties.js"],"names":["mod","exports","module","require","define","amd","CodeMirror","defineMode","token","stream","state","sol","afterSection","eol","nextMultiline","inMultiline","position","eatSpace","ch","next","skipToEnd","skipTo","eat","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,aAAc,WAClC,OACEC,MAAO,SAASC,EAAQC,GACtB,GAAIC,GAAMF,EAAOE,OAASD,EAAME,YAChC,IAAIC,GAAMJ,EAAOI,KAEjBH,GAAME,aAAe,KAErB,IAAID,EAAK,CACP,GAAID,EAAMI,cAAe,CACvBJ,EAAMK,YAAc,IACpBL,GAAMI,cAAgB,UACjB,CACLJ,EAAMM,SAAW,OAIrB,GAAIH,IAASH,EAAMI,cAAe,CAChCJ,EAAMK,YAAc,KACpBL,GAAMM,SAAW,MAGnB,GAAIL,EAAK,CACP,MAAMF,EAAOQ,WAAY,GAG3B,GAAIC,GAAKT,EAAOU,MAEhB,IAAIR,IAAQO,IAAO,KAAOA,IAAO,KAAOA,IAAO,KAAM,CACnDR,EAAMM,SAAW,SACjBP,GAAOW,WACP,OAAO,cACF,IAAIT,GAAOO,IAAO,IAAK,CAC5BR,EAAME,aAAe,IACrBH,GAAOY,OAAO,IAAMZ,GAAOa,IAAI,IAC/B,OAAO,aACF,IAAIJ,IAAO,KAAOA,IAAO,IAAK,CACnCR,EAAMM,SAAW,OACjB,OAAO,UACF,IAAIE,IAAO,MAAQR,EAAMM,WAAa,QAAS,CACpD,GAAIP,EAAOI,MAAO,CAEhBH,EAAMI,cAAgB,MAI1B,MAAOJ,GAAMM,UAGfO,WAAY,WACV,OACEP,SAAW,MACXF,cAAgB,MAChBC,YAAc,MACdH,aAAe,UAOvBN,GAAWkB,WAAW,oBAAqB,aAC3ClB,GAAWkB,WAAW,aAAc","file":"properties.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(\"properties\", function() {\n  return {\n    token: function(stream, state) {\n      var sol = stream.sol() || state.afterSection;\n      var eol = stream.eol();\n\n      state.afterSection = false;\n\n      if (sol) {\n        if (state.nextMultiline) {\n          state.inMultiline = true;\n          state.nextMultiline = false;\n        } else {\n          state.position = \"def\";\n        }\n      }\n\n      if (eol && ! state.nextMultiline) {\n        state.inMultiline = false;\n        state.position = \"def\";\n      }\n\n      if (sol) {\n        while(stream.eatSpace()) {}\n      }\n\n      var ch = stream.next();\n\n      if (sol && (ch === \"#\" || ch === \"!\" || ch === \";\")) {\n        state.position = \"comment\";\n        stream.skipToEnd();\n        return \"comment\";\n      } else if (sol && ch === \"[\") {\n        state.afterSection = true;\n        stream.skipTo(\"]\"); stream.eat(\"]\");\n        return \"header\";\n      } else if (ch === \"=\" || ch === \":\") {\n        state.position = \"quote\";\n        return null;\n      } else if (ch === \"\\\\\" && state.position === \"quote\") {\n        if (stream.eol()) {  // end of line?\n          // Multiline value\n          state.nextMultiline = true;\n        }\n      }\n\n      return state.position;\n    },\n\n    startState: function() {\n      return {\n        position : \"def\",       // Current position, \"def\", \"quote\" or \"comment\"\n        nextMultiline : false,  // Is the next line multiline value\n        inMultiline : false,    // Is the current line a multiline value\n        afterSection : false    // Did we just open a section\n      };\n    }\n\n  };\n});\n\nCodeMirror.defineMIME(\"text/x-properties\", \"properties\");\nCodeMirror.defineMIME(\"text/x-ini\", \"properties\");\n\n});\n"]}