@prokodo/ui 0.0.53 → 0.0.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_commonjsHelpers.js +9 -0
- package/dist/_virtual/common.js +7 -0
- package/dist/components/post-item/PostItem.client.js +3 -4
- package/dist/components/post-item/PostItem.server.js +3 -4
- package/dist/components/post-item/PostItem.view.js +2 -2
- package/dist/components/post-teaser/PostTeaser.client.js +5 -6
- package/dist/components/post-teaser/PostTeaser.server.js +3 -4
- package/dist/components/post-teaser/PostTeaser.view.js +4 -4
- package/dist/components/rich-text/RichText.client.js +175 -10
- package/dist/components/rich-text/RichText.module.scss.js +1 -1
- package/dist/constants/project.js +1 -1
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/common.js +5 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/common.js +90 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/core.js +1629 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/bash.js +407 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/c.js +307 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/cpp.js +556 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/csharp.js +413 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/css.js +950 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/diff.js +66 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/go.js +167 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/graphql.js +83 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/ini.js +129 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/java.js +268 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/javascript.js +715 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/json.js +53 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/kotlin.js +268 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/less.js +1031 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/lua.js +74 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/makefile.js +84 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/markdown.js +245 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/objectivec.js +256 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/perl.js +498 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/php-template.js +59 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/php.js +614 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/plaintext.js +25 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/python-repl.js +38 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/python.js +428 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/r.js +223 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/ruby.js +426 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/rust.js +326 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/scss.js +935 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/shell.js +37 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/sql.js +658 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/swift.js +893 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/typescript.js +829 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/vbnet.js +146 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/wasm.js +134 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/xml.js +239 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/yaml.js +214 -0
- package/dist/node_modules/.pnpm/marked-highlight@2.2.2_marked@15.0.12/node_modules/marked-highlight/src/index.js +93 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/components/post-item/PostItem.model.d.ts +1 -1
- package/dist/types/components/post-teaser/PostTeaser.model.d.ts +1 -1
- package/dist/types/components/rich-text/RichText.client.d.ts +1 -1
- package/dist/types/components/rich-text/RichText.d.ts +5 -0
- package/dist/types/components/rich-text/RichText.lazy.d.ts +5 -0
- package/dist/types/components/rich-text/RichText.model.d.ts +5 -0
- package/dist/ui.css +38 -30
- package/package.json +3 -1
- package/dist/helpers/calculation.js +0 -6
package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/bash.js
ADDED
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
var bash_1;
|
|
4
|
+
var hasRequiredBash;
|
|
5
|
+
function requireBash() {
|
|
6
|
+
if (hasRequiredBash) return bash_1;
|
|
7
|
+
hasRequiredBash = 1;
|
|
8
|
+
function bash(hljs) {
|
|
9
|
+
const regex = hljs.regex;
|
|
10
|
+
const VAR = {};
|
|
11
|
+
const BRACED_VAR = {
|
|
12
|
+
begin: /\$\{/,
|
|
13
|
+
end: /\}/,
|
|
14
|
+
contains: [
|
|
15
|
+
"self",
|
|
16
|
+
{
|
|
17
|
+
begin: /:-/,
|
|
18
|
+
contains: [VAR]
|
|
19
|
+
}
|
|
20
|
+
// default values
|
|
21
|
+
]
|
|
22
|
+
};
|
|
23
|
+
Object.assign(VAR, {
|
|
24
|
+
className: "variable",
|
|
25
|
+
variants: [
|
|
26
|
+
{ begin: regex.concat(
|
|
27
|
+
/\$[\w\d#@][\w\d_]*/,
|
|
28
|
+
// negative look-ahead tries to avoid matching patterns that are not
|
|
29
|
+
// Perl at all like $ident$, @ident@, etc.
|
|
30
|
+
`(?![\\w\\d])(?![$])`
|
|
31
|
+
) },
|
|
32
|
+
BRACED_VAR
|
|
33
|
+
]
|
|
34
|
+
});
|
|
35
|
+
const SUBST = {
|
|
36
|
+
className: "subst",
|
|
37
|
+
begin: /\$\(/,
|
|
38
|
+
end: /\)/,
|
|
39
|
+
contains: [hljs.BACKSLASH_ESCAPE]
|
|
40
|
+
};
|
|
41
|
+
const COMMENT = hljs.inherit(
|
|
42
|
+
hljs.COMMENT(),
|
|
43
|
+
{
|
|
44
|
+
match: [
|
|
45
|
+
/(^|\s)/,
|
|
46
|
+
/#.*$/
|
|
47
|
+
],
|
|
48
|
+
scope: {
|
|
49
|
+
2: "comment"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
);
|
|
53
|
+
const HERE_DOC = {
|
|
54
|
+
begin: /<<-?\s*(?=\w+)/,
|
|
55
|
+
starts: { contains: [
|
|
56
|
+
hljs.END_SAME_AS_BEGIN({
|
|
57
|
+
begin: /(\w+)/,
|
|
58
|
+
end: /(\w+)/,
|
|
59
|
+
className: "string"
|
|
60
|
+
})
|
|
61
|
+
] }
|
|
62
|
+
};
|
|
63
|
+
const QUOTE_STRING = {
|
|
64
|
+
className: "string",
|
|
65
|
+
begin: /"/,
|
|
66
|
+
end: /"/,
|
|
67
|
+
contains: [
|
|
68
|
+
hljs.BACKSLASH_ESCAPE,
|
|
69
|
+
VAR,
|
|
70
|
+
SUBST
|
|
71
|
+
]
|
|
72
|
+
};
|
|
73
|
+
SUBST.contains.push(QUOTE_STRING);
|
|
74
|
+
const ESCAPED_QUOTE = {
|
|
75
|
+
match: /\\"/
|
|
76
|
+
};
|
|
77
|
+
const APOS_STRING = {
|
|
78
|
+
className: "string",
|
|
79
|
+
begin: /'/,
|
|
80
|
+
end: /'/
|
|
81
|
+
};
|
|
82
|
+
const ESCAPED_APOS = {
|
|
83
|
+
match: /\\'/
|
|
84
|
+
};
|
|
85
|
+
const ARITHMETIC = {
|
|
86
|
+
begin: /\$?\(\(/,
|
|
87
|
+
end: /\)\)/,
|
|
88
|
+
contains: [
|
|
89
|
+
{
|
|
90
|
+
begin: /\d+#[0-9a-f]+/,
|
|
91
|
+
className: "number"
|
|
92
|
+
},
|
|
93
|
+
hljs.NUMBER_MODE,
|
|
94
|
+
VAR
|
|
95
|
+
]
|
|
96
|
+
};
|
|
97
|
+
const SH_LIKE_SHELLS = [
|
|
98
|
+
"fish",
|
|
99
|
+
"bash",
|
|
100
|
+
"zsh",
|
|
101
|
+
"sh",
|
|
102
|
+
"csh",
|
|
103
|
+
"ksh",
|
|
104
|
+
"tcsh",
|
|
105
|
+
"dash",
|
|
106
|
+
"scsh"
|
|
107
|
+
];
|
|
108
|
+
const KNOWN_SHEBANG = hljs.SHEBANG({
|
|
109
|
+
binary: `(${SH_LIKE_SHELLS.join("|")})`,
|
|
110
|
+
relevance: 10
|
|
111
|
+
});
|
|
112
|
+
const FUNCTION = {
|
|
113
|
+
className: "function",
|
|
114
|
+
begin: /\w[\w\d_]*\s*\(\s*\)\s*\{/,
|
|
115
|
+
returnBegin: true,
|
|
116
|
+
contains: [hljs.inherit(hljs.TITLE_MODE, { begin: /\w[\w\d_]*/ })],
|
|
117
|
+
relevance: 0
|
|
118
|
+
};
|
|
119
|
+
const KEYWORDS = [
|
|
120
|
+
"if",
|
|
121
|
+
"then",
|
|
122
|
+
"else",
|
|
123
|
+
"elif",
|
|
124
|
+
"fi",
|
|
125
|
+
"time",
|
|
126
|
+
"for",
|
|
127
|
+
"while",
|
|
128
|
+
"until",
|
|
129
|
+
"in",
|
|
130
|
+
"do",
|
|
131
|
+
"done",
|
|
132
|
+
"case",
|
|
133
|
+
"esac",
|
|
134
|
+
"coproc",
|
|
135
|
+
"function",
|
|
136
|
+
"select"
|
|
137
|
+
];
|
|
138
|
+
const LITERALS = [
|
|
139
|
+
"true",
|
|
140
|
+
"false"
|
|
141
|
+
];
|
|
142
|
+
const PATH_MODE = { match: /(\/[a-z._-]+)+/ };
|
|
143
|
+
const SHELL_BUILT_INS = [
|
|
144
|
+
"break",
|
|
145
|
+
"cd",
|
|
146
|
+
"continue",
|
|
147
|
+
"eval",
|
|
148
|
+
"exec",
|
|
149
|
+
"exit",
|
|
150
|
+
"export",
|
|
151
|
+
"getopts",
|
|
152
|
+
"hash",
|
|
153
|
+
"pwd",
|
|
154
|
+
"readonly",
|
|
155
|
+
"return",
|
|
156
|
+
"shift",
|
|
157
|
+
"test",
|
|
158
|
+
"times",
|
|
159
|
+
"trap",
|
|
160
|
+
"umask",
|
|
161
|
+
"unset"
|
|
162
|
+
];
|
|
163
|
+
const BASH_BUILT_INS = [
|
|
164
|
+
"alias",
|
|
165
|
+
"bind",
|
|
166
|
+
"builtin",
|
|
167
|
+
"caller",
|
|
168
|
+
"command",
|
|
169
|
+
"declare",
|
|
170
|
+
"echo",
|
|
171
|
+
"enable",
|
|
172
|
+
"help",
|
|
173
|
+
"let",
|
|
174
|
+
"local",
|
|
175
|
+
"logout",
|
|
176
|
+
"mapfile",
|
|
177
|
+
"printf",
|
|
178
|
+
"read",
|
|
179
|
+
"readarray",
|
|
180
|
+
"source",
|
|
181
|
+
"sudo",
|
|
182
|
+
"type",
|
|
183
|
+
"typeset",
|
|
184
|
+
"ulimit",
|
|
185
|
+
"unalias"
|
|
186
|
+
];
|
|
187
|
+
const ZSH_BUILT_INS = [
|
|
188
|
+
"autoload",
|
|
189
|
+
"bg",
|
|
190
|
+
"bindkey",
|
|
191
|
+
"bye",
|
|
192
|
+
"cap",
|
|
193
|
+
"chdir",
|
|
194
|
+
"clone",
|
|
195
|
+
"comparguments",
|
|
196
|
+
"compcall",
|
|
197
|
+
"compctl",
|
|
198
|
+
"compdescribe",
|
|
199
|
+
"compfiles",
|
|
200
|
+
"compgroups",
|
|
201
|
+
"compquote",
|
|
202
|
+
"comptags",
|
|
203
|
+
"comptry",
|
|
204
|
+
"compvalues",
|
|
205
|
+
"dirs",
|
|
206
|
+
"disable",
|
|
207
|
+
"disown",
|
|
208
|
+
"echotc",
|
|
209
|
+
"echoti",
|
|
210
|
+
"emulate",
|
|
211
|
+
"fc",
|
|
212
|
+
"fg",
|
|
213
|
+
"float",
|
|
214
|
+
"functions",
|
|
215
|
+
"getcap",
|
|
216
|
+
"getln",
|
|
217
|
+
"history",
|
|
218
|
+
"integer",
|
|
219
|
+
"jobs",
|
|
220
|
+
"kill",
|
|
221
|
+
"limit",
|
|
222
|
+
"log",
|
|
223
|
+
"noglob",
|
|
224
|
+
"popd",
|
|
225
|
+
"print",
|
|
226
|
+
"pushd",
|
|
227
|
+
"pushln",
|
|
228
|
+
"rehash",
|
|
229
|
+
"sched",
|
|
230
|
+
"setcap",
|
|
231
|
+
"setopt",
|
|
232
|
+
"stat",
|
|
233
|
+
"suspend",
|
|
234
|
+
"ttyctl",
|
|
235
|
+
"unfunction",
|
|
236
|
+
"unhash",
|
|
237
|
+
"unlimit",
|
|
238
|
+
"unsetopt",
|
|
239
|
+
"vared",
|
|
240
|
+
"wait",
|
|
241
|
+
"whence",
|
|
242
|
+
"where",
|
|
243
|
+
"which",
|
|
244
|
+
"zcompile",
|
|
245
|
+
"zformat",
|
|
246
|
+
"zftp",
|
|
247
|
+
"zle",
|
|
248
|
+
"zmodload",
|
|
249
|
+
"zparseopts",
|
|
250
|
+
"zprof",
|
|
251
|
+
"zpty",
|
|
252
|
+
"zregexparse",
|
|
253
|
+
"zsocket",
|
|
254
|
+
"zstyle",
|
|
255
|
+
"ztcp"
|
|
256
|
+
];
|
|
257
|
+
const GNU_CORE_UTILS = [
|
|
258
|
+
"chcon",
|
|
259
|
+
"chgrp",
|
|
260
|
+
"chown",
|
|
261
|
+
"chmod",
|
|
262
|
+
"cp",
|
|
263
|
+
"dd",
|
|
264
|
+
"df",
|
|
265
|
+
"dir",
|
|
266
|
+
"dircolors",
|
|
267
|
+
"ln",
|
|
268
|
+
"ls",
|
|
269
|
+
"mkdir",
|
|
270
|
+
"mkfifo",
|
|
271
|
+
"mknod",
|
|
272
|
+
"mktemp",
|
|
273
|
+
"mv",
|
|
274
|
+
"realpath",
|
|
275
|
+
"rm",
|
|
276
|
+
"rmdir",
|
|
277
|
+
"shred",
|
|
278
|
+
"sync",
|
|
279
|
+
"touch",
|
|
280
|
+
"truncate",
|
|
281
|
+
"vdir",
|
|
282
|
+
"b2sum",
|
|
283
|
+
"base32",
|
|
284
|
+
"base64",
|
|
285
|
+
"cat",
|
|
286
|
+
"cksum",
|
|
287
|
+
"comm",
|
|
288
|
+
"csplit",
|
|
289
|
+
"cut",
|
|
290
|
+
"expand",
|
|
291
|
+
"fmt",
|
|
292
|
+
"fold",
|
|
293
|
+
"head",
|
|
294
|
+
"join",
|
|
295
|
+
"md5sum",
|
|
296
|
+
"nl",
|
|
297
|
+
"numfmt",
|
|
298
|
+
"od",
|
|
299
|
+
"paste",
|
|
300
|
+
"ptx",
|
|
301
|
+
"pr",
|
|
302
|
+
"sha1sum",
|
|
303
|
+
"sha224sum",
|
|
304
|
+
"sha256sum",
|
|
305
|
+
"sha384sum",
|
|
306
|
+
"sha512sum",
|
|
307
|
+
"shuf",
|
|
308
|
+
"sort",
|
|
309
|
+
"split",
|
|
310
|
+
"sum",
|
|
311
|
+
"tac",
|
|
312
|
+
"tail",
|
|
313
|
+
"tr",
|
|
314
|
+
"tsort",
|
|
315
|
+
"unexpand",
|
|
316
|
+
"uniq",
|
|
317
|
+
"wc",
|
|
318
|
+
"arch",
|
|
319
|
+
"basename",
|
|
320
|
+
"chroot",
|
|
321
|
+
"date",
|
|
322
|
+
"dirname",
|
|
323
|
+
"du",
|
|
324
|
+
"echo",
|
|
325
|
+
"env",
|
|
326
|
+
"expr",
|
|
327
|
+
"factor",
|
|
328
|
+
// "false", // keyword literal already
|
|
329
|
+
"groups",
|
|
330
|
+
"hostid",
|
|
331
|
+
"id",
|
|
332
|
+
"link",
|
|
333
|
+
"logname",
|
|
334
|
+
"nice",
|
|
335
|
+
"nohup",
|
|
336
|
+
"nproc",
|
|
337
|
+
"pathchk",
|
|
338
|
+
"pinky",
|
|
339
|
+
"printenv",
|
|
340
|
+
"printf",
|
|
341
|
+
"pwd",
|
|
342
|
+
"readlink",
|
|
343
|
+
"runcon",
|
|
344
|
+
"seq",
|
|
345
|
+
"sleep",
|
|
346
|
+
"stat",
|
|
347
|
+
"stdbuf",
|
|
348
|
+
"stty",
|
|
349
|
+
"tee",
|
|
350
|
+
"test",
|
|
351
|
+
"timeout",
|
|
352
|
+
// "true", // keyword literal already
|
|
353
|
+
"tty",
|
|
354
|
+
"uname",
|
|
355
|
+
"unlink",
|
|
356
|
+
"uptime",
|
|
357
|
+
"users",
|
|
358
|
+
"who",
|
|
359
|
+
"whoami",
|
|
360
|
+
"yes"
|
|
361
|
+
];
|
|
362
|
+
return {
|
|
363
|
+
name: "Bash",
|
|
364
|
+
aliases: [
|
|
365
|
+
"sh",
|
|
366
|
+
"zsh"
|
|
367
|
+
],
|
|
368
|
+
keywords: {
|
|
369
|
+
$pattern: /\b[a-z][a-z0-9._-]+\b/,
|
|
370
|
+
keyword: KEYWORDS,
|
|
371
|
+
literal: LITERALS,
|
|
372
|
+
built_in: [
|
|
373
|
+
...SHELL_BUILT_INS,
|
|
374
|
+
...BASH_BUILT_INS,
|
|
375
|
+
// Shell modifiers
|
|
376
|
+
"set",
|
|
377
|
+
"shopt",
|
|
378
|
+
...ZSH_BUILT_INS,
|
|
379
|
+
...GNU_CORE_UTILS
|
|
380
|
+
]
|
|
381
|
+
},
|
|
382
|
+
contains: [
|
|
383
|
+
KNOWN_SHEBANG,
|
|
384
|
+
// to catch known shells and boost relevancy
|
|
385
|
+
hljs.SHEBANG(),
|
|
386
|
+
// to catch unknown shells but still highlight the shebang
|
|
387
|
+
FUNCTION,
|
|
388
|
+
ARITHMETIC,
|
|
389
|
+
COMMENT,
|
|
390
|
+
HERE_DOC,
|
|
391
|
+
PATH_MODE,
|
|
392
|
+
QUOTE_STRING,
|
|
393
|
+
ESCAPED_QUOTE,
|
|
394
|
+
APOS_STRING,
|
|
395
|
+
ESCAPED_APOS,
|
|
396
|
+
VAR
|
|
397
|
+
]
|
|
398
|
+
};
|
|
399
|
+
}
|
|
400
|
+
__name(bash, "bash");
|
|
401
|
+
bash_1 = bash;
|
|
402
|
+
return bash_1;
|
|
403
|
+
}
|
|
404
|
+
__name(requireBash, "requireBash");
|
|
405
|
+
export {
|
|
406
|
+
requireBash as __require
|
|
407
|
+
};
|
package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/languages/c.js
ADDED
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
var c_1;
|
|
4
|
+
var hasRequiredC;
|
|
5
|
+
function requireC() {
|
|
6
|
+
if (hasRequiredC) return c_1;
|
|
7
|
+
hasRequiredC = 1;
|
|
8
|
+
function c(hljs) {
|
|
9
|
+
const regex = hljs.regex;
|
|
10
|
+
const C_LINE_COMMENT_MODE = hljs.COMMENT("//", "$", { contains: [{ begin: /\\\n/ }] });
|
|
11
|
+
const DECLTYPE_AUTO_RE = "decltype\\(auto\\)";
|
|
12
|
+
const NAMESPACE_RE = "[a-zA-Z_]\\w*::";
|
|
13
|
+
const TEMPLATE_ARGUMENT_RE = "<[^<>]+>";
|
|
14
|
+
const FUNCTION_TYPE_RE = "(" + DECLTYPE_AUTO_RE + "|" + regex.optional(NAMESPACE_RE) + "[a-zA-Z_]\\w*" + regex.optional(TEMPLATE_ARGUMENT_RE) + ")";
|
|
15
|
+
const TYPES = {
|
|
16
|
+
className: "type",
|
|
17
|
+
variants: [
|
|
18
|
+
{ begin: "\\b[a-z\\d_]*_t\\b" },
|
|
19
|
+
{ match: /\batomic_[a-z]{3,6}\b/ }
|
|
20
|
+
]
|
|
21
|
+
};
|
|
22
|
+
const CHARACTER_ESCAPES = "\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)";
|
|
23
|
+
const STRINGS = {
|
|
24
|
+
className: "string",
|
|
25
|
+
variants: [
|
|
26
|
+
{
|
|
27
|
+
begin: '(u8?|U|L)?"',
|
|
28
|
+
end: '"',
|
|
29
|
+
illegal: "\\n",
|
|
30
|
+
contains: [hljs.BACKSLASH_ESCAPE]
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
begin: "(u8?|U|L)?'(" + CHARACTER_ESCAPES + "|.)",
|
|
34
|
+
end: "'",
|
|
35
|
+
illegal: "."
|
|
36
|
+
},
|
|
37
|
+
hljs.END_SAME_AS_BEGIN({
|
|
38
|
+
begin: /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,
|
|
39
|
+
end: /\)([^()\\ ]{0,16})"/
|
|
40
|
+
})
|
|
41
|
+
]
|
|
42
|
+
};
|
|
43
|
+
const NUMBERS = {
|
|
44
|
+
className: "number",
|
|
45
|
+
variants: [
|
|
46
|
+
{ match: /\b(0b[01']+)/ },
|
|
47
|
+
{ match: /(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/ },
|
|
48
|
+
{ match: /(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/ },
|
|
49
|
+
{ match: /(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/ }
|
|
50
|
+
],
|
|
51
|
+
relevance: 0
|
|
52
|
+
};
|
|
53
|
+
const PREPROCESSOR = {
|
|
54
|
+
className: "meta",
|
|
55
|
+
begin: /#\s*[a-z]+\b/,
|
|
56
|
+
end: /$/,
|
|
57
|
+
keywords: { keyword: "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include" },
|
|
58
|
+
contains: [
|
|
59
|
+
{
|
|
60
|
+
begin: /\\\n/,
|
|
61
|
+
relevance: 0
|
|
62
|
+
},
|
|
63
|
+
hljs.inherit(STRINGS, { className: "string" }),
|
|
64
|
+
{
|
|
65
|
+
className: "string",
|
|
66
|
+
begin: /<.*?>/
|
|
67
|
+
},
|
|
68
|
+
C_LINE_COMMENT_MODE,
|
|
69
|
+
hljs.C_BLOCK_COMMENT_MODE
|
|
70
|
+
]
|
|
71
|
+
};
|
|
72
|
+
const TITLE_MODE = {
|
|
73
|
+
className: "title",
|
|
74
|
+
begin: regex.optional(NAMESPACE_RE) + hljs.IDENT_RE,
|
|
75
|
+
relevance: 0
|
|
76
|
+
};
|
|
77
|
+
const FUNCTION_TITLE = regex.optional(NAMESPACE_RE) + hljs.IDENT_RE + "\\s*\\(";
|
|
78
|
+
const C_KEYWORDS = [
|
|
79
|
+
"asm",
|
|
80
|
+
"auto",
|
|
81
|
+
"break",
|
|
82
|
+
"case",
|
|
83
|
+
"continue",
|
|
84
|
+
"default",
|
|
85
|
+
"do",
|
|
86
|
+
"else",
|
|
87
|
+
"enum",
|
|
88
|
+
"extern",
|
|
89
|
+
"for",
|
|
90
|
+
"fortran",
|
|
91
|
+
"goto",
|
|
92
|
+
"if",
|
|
93
|
+
"inline",
|
|
94
|
+
"register",
|
|
95
|
+
"restrict",
|
|
96
|
+
"return",
|
|
97
|
+
"sizeof",
|
|
98
|
+
"typeof",
|
|
99
|
+
"typeof_unqual",
|
|
100
|
+
"struct",
|
|
101
|
+
"switch",
|
|
102
|
+
"typedef",
|
|
103
|
+
"union",
|
|
104
|
+
"volatile",
|
|
105
|
+
"while",
|
|
106
|
+
"_Alignas",
|
|
107
|
+
"_Alignof",
|
|
108
|
+
"_Atomic",
|
|
109
|
+
"_Generic",
|
|
110
|
+
"_Noreturn",
|
|
111
|
+
"_Static_assert",
|
|
112
|
+
"_Thread_local",
|
|
113
|
+
// aliases
|
|
114
|
+
"alignas",
|
|
115
|
+
"alignof",
|
|
116
|
+
"noreturn",
|
|
117
|
+
"static_assert",
|
|
118
|
+
"thread_local",
|
|
119
|
+
// not a C keyword but is, for all intents and purposes, treated exactly like one.
|
|
120
|
+
"_Pragma"
|
|
121
|
+
];
|
|
122
|
+
const C_TYPES = [
|
|
123
|
+
"float",
|
|
124
|
+
"double",
|
|
125
|
+
"signed",
|
|
126
|
+
"unsigned",
|
|
127
|
+
"int",
|
|
128
|
+
"short",
|
|
129
|
+
"long",
|
|
130
|
+
"char",
|
|
131
|
+
"void",
|
|
132
|
+
"_Bool",
|
|
133
|
+
"_BitInt",
|
|
134
|
+
"_Complex",
|
|
135
|
+
"_Imaginary",
|
|
136
|
+
"_Decimal32",
|
|
137
|
+
"_Decimal64",
|
|
138
|
+
"_Decimal96",
|
|
139
|
+
"_Decimal128",
|
|
140
|
+
"_Decimal64x",
|
|
141
|
+
"_Decimal128x",
|
|
142
|
+
"_Float16",
|
|
143
|
+
"_Float32",
|
|
144
|
+
"_Float64",
|
|
145
|
+
"_Float128",
|
|
146
|
+
"_Float32x",
|
|
147
|
+
"_Float64x",
|
|
148
|
+
"_Float128x",
|
|
149
|
+
// modifiers
|
|
150
|
+
"const",
|
|
151
|
+
"static",
|
|
152
|
+
"constexpr",
|
|
153
|
+
// aliases
|
|
154
|
+
"complex",
|
|
155
|
+
"bool",
|
|
156
|
+
"imaginary"
|
|
157
|
+
];
|
|
158
|
+
const KEYWORDS = {
|
|
159
|
+
keyword: C_KEYWORDS,
|
|
160
|
+
type: C_TYPES,
|
|
161
|
+
literal: "true false NULL",
|
|
162
|
+
// TODO: apply hinting work similar to what was done in cpp.js
|
|
163
|
+
built_in: "std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"
|
|
164
|
+
};
|
|
165
|
+
const EXPRESSION_CONTAINS = [
|
|
166
|
+
PREPROCESSOR,
|
|
167
|
+
TYPES,
|
|
168
|
+
C_LINE_COMMENT_MODE,
|
|
169
|
+
hljs.C_BLOCK_COMMENT_MODE,
|
|
170
|
+
NUMBERS,
|
|
171
|
+
STRINGS
|
|
172
|
+
];
|
|
173
|
+
const EXPRESSION_CONTEXT = {
|
|
174
|
+
// This mode covers expression context where we can't expect a function
|
|
175
|
+
// definition and shouldn't highlight anything that looks like one:
|
|
176
|
+
// `return some()`, `else if()`, `(x*sum(1, 2))`
|
|
177
|
+
variants: [
|
|
178
|
+
{
|
|
179
|
+
begin: /=/,
|
|
180
|
+
end: /;/
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
begin: /\(/,
|
|
184
|
+
end: /\)/
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
beginKeywords: "new throw return else",
|
|
188
|
+
end: /;/
|
|
189
|
+
}
|
|
190
|
+
],
|
|
191
|
+
keywords: KEYWORDS,
|
|
192
|
+
contains: EXPRESSION_CONTAINS.concat([
|
|
193
|
+
{
|
|
194
|
+
begin: /\(/,
|
|
195
|
+
end: /\)/,
|
|
196
|
+
keywords: KEYWORDS,
|
|
197
|
+
contains: EXPRESSION_CONTAINS.concat(["self"]),
|
|
198
|
+
relevance: 0
|
|
199
|
+
}
|
|
200
|
+
]),
|
|
201
|
+
relevance: 0
|
|
202
|
+
};
|
|
203
|
+
const FUNCTION_DECLARATION = {
|
|
204
|
+
begin: "(" + FUNCTION_TYPE_RE + "[\\*&\\s]+)+" + FUNCTION_TITLE,
|
|
205
|
+
returnBegin: true,
|
|
206
|
+
end: /[{;=]/,
|
|
207
|
+
excludeEnd: true,
|
|
208
|
+
keywords: KEYWORDS,
|
|
209
|
+
illegal: /[^\w\s\*&:<>.]/,
|
|
210
|
+
contains: [
|
|
211
|
+
{
|
|
212
|
+
// to prevent it from being confused as the function title
|
|
213
|
+
begin: DECLTYPE_AUTO_RE,
|
|
214
|
+
keywords: KEYWORDS,
|
|
215
|
+
relevance: 0
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
begin: FUNCTION_TITLE,
|
|
219
|
+
returnBegin: true,
|
|
220
|
+
contains: [hljs.inherit(TITLE_MODE, { className: "title.function" })],
|
|
221
|
+
relevance: 0
|
|
222
|
+
},
|
|
223
|
+
// allow for multiple declarations, e.g.:
|
|
224
|
+
// extern void f(int), g(char);
|
|
225
|
+
{
|
|
226
|
+
relevance: 0,
|
|
227
|
+
match: /,/
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
className: "params",
|
|
231
|
+
begin: /\(/,
|
|
232
|
+
end: /\)/,
|
|
233
|
+
keywords: KEYWORDS,
|
|
234
|
+
relevance: 0,
|
|
235
|
+
contains: [
|
|
236
|
+
C_LINE_COMMENT_MODE,
|
|
237
|
+
hljs.C_BLOCK_COMMENT_MODE,
|
|
238
|
+
STRINGS,
|
|
239
|
+
NUMBERS,
|
|
240
|
+
TYPES,
|
|
241
|
+
// Count matching parentheses.
|
|
242
|
+
{
|
|
243
|
+
begin: /\(/,
|
|
244
|
+
end: /\)/,
|
|
245
|
+
keywords: KEYWORDS,
|
|
246
|
+
relevance: 0,
|
|
247
|
+
contains: [
|
|
248
|
+
"self",
|
|
249
|
+
C_LINE_COMMENT_MODE,
|
|
250
|
+
hljs.C_BLOCK_COMMENT_MODE,
|
|
251
|
+
STRINGS,
|
|
252
|
+
NUMBERS,
|
|
253
|
+
TYPES
|
|
254
|
+
]
|
|
255
|
+
}
|
|
256
|
+
]
|
|
257
|
+
},
|
|
258
|
+
TYPES,
|
|
259
|
+
C_LINE_COMMENT_MODE,
|
|
260
|
+
hljs.C_BLOCK_COMMENT_MODE,
|
|
261
|
+
PREPROCESSOR
|
|
262
|
+
]
|
|
263
|
+
};
|
|
264
|
+
return {
|
|
265
|
+
name: "C",
|
|
266
|
+
aliases: ["h"],
|
|
267
|
+
keywords: KEYWORDS,
|
|
268
|
+
// Until differentiations are added between `c` and `cpp`, `c` will
|
|
269
|
+
// not be auto-detected to avoid auto-detect conflicts between C and C++
|
|
270
|
+
disableAutodetect: true,
|
|
271
|
+
illegal: "</",
|
|
272
|
+
contains: [].concat(
|
|
273
|
+
EXPRESSION_CONTEXT,
|
|
274
|
+
FUNCTION_DECLARATION,
|
|
275
|
+
EXPRESSION_CONTAINS,
|
|
276
|
+
[
|
|
277
|
+
PREPROCESSOR,
|
|
278
|
+
{
|
|
279
|
+
begin: hljs.IDENT_RE + "::",
|
|
280
|
+
keywords: KEYWORDS
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
className: "class",
|
|
284
|
+
beginKeywords: "enum class struct union",
|
|
285
|
+
end: /[{;:<>=]/,
|
|
286
|
+
contains: [
|
|
287
|
+
{ beginKeywords: "final class struct" },
|
|
288
|
+
hljs.TITLE_MODE
|
|
289
|
+
]
|
|
290
|
+
}
|
|
291
|
+
]
|
|
292
|
+
),
|
|
293
|
+
exports: {
|
|
294
|
+
preprocessor: PREPROCESSOR,
|
|
295
|
+
strings: STRINGS,
|
|
296
|
+
keywords: KEYWORDS
|
|
297
|
+
}
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
__name(c, "c");
|
|
301
|
+
c_1 = c;
|
|
302
|
+
return c_1;
|
|
303
|
+
}
|
|
304
|
+
__name(requireC, "requireC");
|
|
305
|
+
export {
|
|
306
|
+
requireC as __require
|
|
307
|
+
};
|