1{"version":3,"sources":["../../node_modules/codemirror/mode/asciiarmor/asciiarmor.js"],"names":["mod","exports","module","require","define","amd","CodeMirror","errorIfNotEmpty","stream","nonWS","match","skipToEnd","defineMode","token","state","m","sol","type","result","eatWhile","next","blankLine","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,GACV,YAEA,SAASC,GAAgBC,GACvB,GAAIC,GAAQD,EAAOE,MAAM,SACzBF,GAAOG,WACP,OAAOF,GAAQ,QAAU,KAG3BH,EAAWM,WAAW,aAAc,WAClC,OACEC,MAAO,SAASL,EAAQM,GACtB,GAAIC,EACJ,IAAID,EAAMA,OAAS,MAAO,CACxB,GAAIN,EAAOQ,QAAUD,EAAIP,EAAOE,MAAM,+BAAgC,CACpEI,EAAMA,MAAQ,SACdA,GAAMG,KAAOF,EAAE,EACf,OAAO,MAET,MAAOR,GAAgBC,OAClB,IAAIM,EAAMA,OAAS,UAAW,CACnC,GAAIN,EAAOQ,OAASR,EAAOE,MAAM,SAAU,CACzCI,EAAMA,MAAQ,QACd,OAAO,WACF,CACL,GAAII,GAASX,EAAgBC,EAC7B,IAAIU,EAAQJ,EAAMA,MAAQ,MAC1B,OAAOI,QAEJ,IAAIJ,EAAMA,OAAS,SAAU,CAClCN,EAAOG,WACPG,GAAMA,MAAQ,SACd,OAAO,aACF,IAAIA,EAAMA,OAAS,OAAQ,CAChC,GAAIN,EAAOQ,QAAUD,EAAIP,EAAOE,MAAM,6BAA8B,CAClE,GAAIK,EAAE,IAAMD,EAAMG,KAAM,MAAO,OAC/BH,GAAMA,MAAQ,KACd,OAAO,UACF,CACL,GAAIN,EAAOW,SAAS,mBAAoB,CACtC,MAAO,UACF,CACLX,EAAOY,MACP,OAAO,cAGN,IAAIN,EAAMA,OAAS,MAAO,CAC/B,MAAOP,GAAgBC,KAG3Ba,UAAW,SAASP,GAClB,GAAIA,EAAMA,OAAS,UAAWA,EAAMA,MAAQ,QAE9CQ,WAAY,WACV,OAAQR,MAAO,MAAOG,KAAM,SAKlCX,GAAWiB,WAAW,kBAAmB,aACzCjB,GAAWiB,WAAW,4BAA6B,aACnDjB,GAAWiB,WAAW,uBAAwB,aAC9CjB,GAAWiB,WAAW,4BAA6B","file":"asciiarmor.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 errorIfNotEmpty(stream) {\n    var nonWS = stream.match(/^\\s*\\S/);\n    stream.skipToEnd();\n    return nonWS ? \"error\" : null;\n  }\n\n  CodeMirror.defineMode(\"asciiarmor\", function() {\n    return {\n      token: function(stream, state) {\n        var m;\n        if (state.state == \"top\") {\n          if (stream.sol() && (m = stream.match(/^-----BEGIN (.*)?-----\\s*$/))) {\n            state.state = \"headers\";\n            state.type = m[1];\n            return \"tag\";\n          }\n          return errorIfNotEmpty(stream);\n        } else if (state.state == \"headers\") {\n          if (stream.sol() && stream.match(/^\\w+:/)) {\n            state.state = \"header\";\n            return \"atom\";\n          } else {\n            var result = errorIfNotEmpty(stream);\n            if (result) state.state = \"body\";\n            return result;\n          }\n        } else if (state.state == \"header\") {\n          stream.skipToEnd();\n          state.state = \"headers\";\n          return \"string\";\n        } else if (state.state == \"body\") {\n          if (stream.sol() && (m = stream.match(/^-----END (.*)?-----\\s*$/))) {\n            if (m[1] != state.type) return \"error\";\n            state.state = \"end\";\n            return \"tag\";\n          } else {\n            if (stream.eatWhile(/[A-Za-z0-9+\\/=]/)) {\n              return null;\n            } else {\n              stream.next();\n              return \"error\";\n            }\n          }\n        } else if (state.state == \"end\") {\n          return errorIfNotEmpty(stream);\n        }\n      },\n      blankLine: function(state) {\n        if (state.state == \"headers\") state.state = \"body\";\n      },\n      startState: function() {\n        return {state: \"top\", type: null};\n      }\n    };\n  });\n\n  CodeMirror.defineMIME(\"application/pgp\", \"asciiarmor\");\n  CodeMirror.defineMIME(\"application/pgp-encrypted\", \"asciiarmor\");\n  CodeMirror.defineMIME(\"application/pgp-keys\", \"asciiarmor\");\n  CodeMirror.defineMIME(\"application/pgp-signature\", \"asciiarmor\");\n});\n"]}