comparison third_party/highlight/languages/graphql.js @ 157:2db6253f355d

[ThirdParty] Added highlight library for better readability on blog.
author June Park <parkjune1995@gmail.com>
date Tue, 13 Jan 2026 19:18:47 -0800
parents
children
comparison
equal deleted inserted replaced
156:cd35e600ae34 157:2db6253f355d
1 /*! `graphql` grammar compiled for Highlight.js 11.11.1 */
2 (function(){
3 var hljsGrammar = (function () {
4 'use strict';
5
6 /*
7 Language: GraphQL
8 Author: John Foster (GH jf990), and others
9 Description: GraphQL is a query language for APIs
10 Category: web, common
11 */
12
13 /** @type LanguageFn */
14 function graphql(hljs) {
15 const regex = hljs.regex;
16 const GQL_NAME = /[_A-Za-z][_0-9A-Za-z]*/;
17 return {
18 name: "GraphQL",
19 aliases: [ "gql" ],
20 case_insensitive: true,
21 disableAutodetect: false,
22 keywords: {
23 keyword: [
24 "query",
25 "mutation",
26 "subscription",
27 "type",
28 "input",
29 "schema",
30 "directive",
31 "interface",
32 "union",
33 "scalar",
34 "fragment",
35 "enum",
36 "on"
37 ],
38 literal: [
39 "true",
40 "false",
41 "null"
42 ]
43 },
44 contains: [
45 hljs.HASH_COMMENT_MODE,
46 hljs.QUOTE_STRING_MODE,
47 hljs.NUMBER_MODE,
48 {
49 scope: "punctuation",
50 match: /[.]{3}/,
51 relevance: 0
52 },
53 {
54 scope: "punctuation",
55 begin: /[\!\(\)\:\=\[\]\{\|\}]{1}/,
56 relevance: 0
57 },
58 {
59 scope: "variable",
60 begin: /\$/,
61 end: /\W/,
62 excludeEnd: true,
63 relevance: 0
64 },
65 {
66 scope: "meta",
67 match: /@\w+/,
68 excludeEnd: true
69 },
70 {
71 scope: "symbol",
72 begin: regex.concat(GQL_NAME, regex.lookahead(/\s*:/)),
73 relevance: 0
74 }
75 ],
76 illegal: [
77 /[;<']/,
78 /BEGIN/
79 ]
80 };
81 }
82
83 return graphql;
84
85 })();
86
87 hljs.registerLanguage('graphql', hljsGrammar);
88 })();