UNPKG

1.03 kBJavaScriptView Raw
1/*
2Language: CSP
3Description: Content Security Policy definition highlighting
4Author: Taras <oxdef@oxdef.info>
5Website: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
6
7vim: ts=2 sw=2 st=2
8*/
9
10/** @type LanguageFn */
11function csp(hljs) {
12 const KEYWORDS = [
13 "base-uri",
14 "child-src",
15 "connect-src",
16 "default-src",
17 "font-src",
18 "form-action",
19 "frame-ancestors",
20 "frame-src",
21 "img-src",
22 "manifest-src",
23 "media-src",
24 "object-src",
25 "plugin-types",
26 "report-uri",
27 "sandbox",
28 "script-src",
29 "style-src",
30 "trusted-types",
31 "unsafe-hashes",
32 "worker-src"
33 ];
34 return {
35 name: 'CSP',
36 case_insensitive: false,
37 keywords: {
38 $pattern: '[a-zA-Z][a-zA-Z0-9_-]*',
39 keyword: KEYWORDS
40 },
41 contains: [
42 {
43 className: 'string',
44 begin: "'",
45 end: "'"
46 },
47 {
48 className: 'attribute',
49 begin: '^Content',
50 end: ':',
51 excludeEnd: true
52 }
53 ]
54 };
55}
56
57module.exports = csp;