{"version":3,"file":"accesslog.mjs","sources":["../../../../../../node_modules/highlight.js/lib/languages/accesslog.js"],"sourcesContent":["/*\n Language: Apache Access Log\n Author: Oleg Efimov <efimovov@gmail.com>\n Description: Apache/Nginx Access Logs\n Website: https://httpd.apache.org/docs/2.4/logs.html#accesslog\n Category: web, logs\n Audit: 2020\n */\n\n/** @type LanguageFn */\nfunction accesslog(hljs) {\n  const regex = hljs.regex;\n  // https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods\n  const HTTP_VERBS = [\n    \"GET\",\n    \"POST\",\n    \"HEAD\",\n    \"PUT\",\n    \"DELETE\",\n    \"CONNECT\",\n    \"OPTIONS\",\n    \"PATCH\",\n    \"TRACE\"\n  ];\n  return {\n    name: 'Apache Access Log',\n    contains: [\n      // IP\n      {\n        className: 'number',\n        begin: /^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b/,\n        relevance: 5\n      },\n      // Other numbers\n      {\n        className: 'number',\n        begin: /\\b\\d+\\b/,\n        relevance: 0\n      },\n      // Requests\n      {\n        className: 'string',\n        begin: regex.concat(/\"/, regex.either(...HTTP_VERBS)),\n        end: /\"/,\n        keywords: HTTP_VERBS,\n        illegal: /\\n/,\n        relevance: 5,\n        contains: [\n          {\n            begin: /HTTP\\/[12]\\.\\d'/,\n            relevance: 5\n          }\n        ]\n      },\n      // Dates\n      {\n        className: 'string',\n        // dates must have a certain length, this prevents matching\n        // simple array accesses a[123] and [] and other common patterns\n        // found in other languages\n        begin: /\\[\\d[^\\]\\n]{8,}\\]/,\n        illegal: /\\n/,\n        relevance: 1\n      },\n      {\n        className: 'string',\n        begin: /\\[/,\n        end: /\\]/,\n        illegal: /\\n/,\n        relevance: 0\n      },\n      // User agent / relevance boost\n      {\n        className: 'string',\n        begin: /\"Mozilla\\/\\d\\.\\d \\(/,\n        end: /\"/,\n        illegal: /\\n/,\n        relevance: 3\n      },\n      // Strings\n      {\n        className: 'string',\n        begin: /\"/,\n        end: /\"/,\n        illegal: /\\n/,\n        relevance: 0\n      }\n    ]\n  };\n}\n\nmodule.exports = accesslog;\n"],"names":["accesslog","hljs","regex","HTTP_VERBS","accesslog_1"],"mappings":";;;;AAUA,WAASA,EAAUC,GAAM;AACvB,UAAMC,IAAQD,EAAK,OAEbE,IAAa;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AACE,WAAO;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA;AAAA,QAER;AAAA,UACE,WAAW;AAAA,UACX,OAAO;AAAA,UACP,WAAW;AAAA;;QAGb;AAAA,UACE,WAAW;AAAA,UACX,OAAO;AAAA,UACP,WAAW;AAAA;;QAGb;AAAA,UACE,WAAW;AAAA,UACX,OAAOD,EAAM,OAAO,KAAKA,EAAM,OAAO,GAAGC,CAAU,CAAC;AAAA,UACpD,KAAK;AAAA,UACL,UAAUA;AAAA,UACV,SAAS;AAAA,UACT,WAAW;AAAA,UACX,UAAU;AAAA,YACR;AAAA,cACE,OAAO;AAAA,cACP,WAAW;AAAA;;;;QAKjB;AAAA,UACE,WAAW;AAAA;AAAA;AAAA;AAAA,UAIX,OAAO;AAAA,UACP,SAAS;AAAA,UACT,WAAW;AAAA;QAEb;AAAA,UACE,WAAW;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAW;AAAA;;QAGb;AAAA,UACE,WAAW;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAW;AAAA;;QAGb;AAAA,UACE,WAAW;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAW;AAAA;;IAGnB;AAAA,EACA;AAEA,SAAAC,IAAiBJ;;","x_google_ignoreList":[0]}