{"version":3,"sources":["webpack:///./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/json.js"],"names":["module","exports","hljs","LITERALS","literal","ALLOWED_COMMENTS","C_LINE_COMMENT_MODE","C_BLOCK_COMMENT_MODE","TYPES","QUOTE_STRING_MODE","C_NUMBER_MODE","VALUE_CONTAINER","end","endsWithParent","excludeEnd","contains","keywords","OBJECT","begin","className","BACKSLASH_ESCAPE","illegal","inherit","concat","ARRAY","push","forEach","rule","name"],"mappings":"8EAqDAA,EAAOC,QA9CP,SAAcC,GACZ,IAAIC,EAAW,CACbC,QAAS,mBAEPC,EAAmB,CAACH,EAAKI,oBAAqBJ,EAAKK,sBACnDC,EAAQ,CAACN,EAAKO,kBAAmBP,EAAKQ,eACtCC,EAAkB,CACpBC,IAAK,IACLC,gBAAgB,EAChBC,YAAY,EACZC,SAAUP,EACVQ,SAAUb,GAERc,EAAS,CACXC,MAAO,IACPN,IAAK,IACLG,SAAU,CAAC,CACTI,UAAW,OACXD,MAAO,IACPN,IAAK,IACLG,SAAU,CAACb,EAAKkB,kBAChBC,QAAS,OACRnB,EAAKoB,QAAQX,EAAiB,CAC/BO,MAAO,OACLK,OAAOlB,GACXgB,QAAS,OAEPG,EAAQ,CACVN,MAAO,MACPN,IAAK,MACLG,SAAU,CAACb,EAAKoB,QAAQX,IAExBU,QAAS,OAMX,OAJAb,EAAMiB,KAAKR,EAAQO,GACnBnB,EAAiBqB,SAAQ,SAAUC,GACjCnB,EAAMiB,KAAKE,MAEN,CACLC,KAAM,OACNb,SAAUP,EACVQ,SAAUb,EACVkB,QAAS","file":"react-syntax-highlighter_languages_highlight_json-0782414f6e4f8a6edbb4.js","sourcesContent":["/*\nLanguage: JSON\nDescription: JSON (JavaScript Object Notation) is a lightweight data-interchange format.\nAuthor: Ivan Sagalaev <maniac@softwaremaniacs.org>\nWebsite: http://www.json.org\nCategory: common, protocols\n*/\nfunction json(hljs) {\n  var LITERALS = {\n    literal: 'true false null'\n  };\n  var ALLOWED_COMMENTS = [hljs.C_LINE_COMMENT_MODE, hljs.C_BLOCK_COMMENT_MODE];\n  var TYPES = [hljs.QUOTE_STRING_MODE, hljs.C_NUMBER_MODE];\n  var VALUE_CONTAINER = {\n    end: ',',\n    endsWithParent: true,\n    excludeEnd: true,\n    contains: TYPES,\n    keywords: LITERALS\n  };\n  var OBJECT = {\n    begin: '{',\n    end: '}',\n    contains: [{\n      className: 'attr',\n      begin: /\"/,\n      end: /\"/,\n      contains: [hljs.BACKSLASH_ESCAPE],\n      illegal: '\\\\n'\n    }, hljs.inherit(VALUE_CONTAINER, {\n      begin: /:/\n    })].concat(ALLOWED_COMMENTS),\n    illegal: '\\\\S'\n  };\n  var ARRAY = {\n    begin: '\\\\[',\n    end: '\\\\]',\n    contains: [hljs.inherit(VALUE_CONTAINER)],\n    // inherit is a workaround for a bug that makes shared modes with endsWithParent compile only the ending of one of the parents\n    illegal: '\\\\S'\n  };\n  TYPES.push(OBJECT, ARRAY);\n  ALLOWED_COMMENTS.forEach(function (rule) {\n    TYPES.push(rule);\n  });\n  return {\n    name: 'JSON',\n    contains: TYPES,\n    keywords: LITERALS,\n    illegal: '\\\\S'\n  };\n}\n\nmodule.exports = json;"],"sourceRoot":""}