sun-form-v3 1.0.51 → 1.0.53

Sign up to get free protection for your applications and to get access to all the features.
Files changed (95) hide show
  1. package/dist/abap-DfvySaIJ.js +1404 -0
  2. package/dist/apex-B__0irD3.js +332 -0
  3. package/dist/assets/css.worker-OK053IOu.js +84 -0
  4. package/dist/assets/editor.worker-D9iUZyMP.js +11 -0
  5. package/dist/assets/html.worker-CL40hqKM.js +458 -0
  6. package/dist/assets/json.worker-6f9bhSHY.js +42 -0
  7. package/dist/assets/ts.worker-B6g3wjaE.js +37021 -0
  8. package/dist/azcli-CDMGhRmx.js +74 -0
  9. package/dist/bat-0Mk8aqzx.js +106 -0
  10. package/dist/bicep-BBi_I06Z.js +108 -0
  11. package/dist/cameligo-D0G_Zm6X.js +180 -0
  12. package/dist/clojure-o2ZKLeMp.js +767 -0
  13. package/dist/coffee-DOQff5VC.js +238 -0
  14. package/dist/cpp-CQGJnWhD.js +395 -0
  15. package/dist/csharp-C1jLsHl8.js +332 -0
  16. package/dist/csp-C_ttMQaW.js +59 -0
  17. package/dist/css-BC202kVV.js +193 -0
  18. package/dist/cssMode-CijMoTZZ.js +1541 -0
  19. package/dist/cypher-DwtEH7Fi.js +269 -0
  20. package/dist/dart-D9XknsP2.js +287 -0
  21. package/dist/dockerfile-DgsNjqqa.js +136 -0
  22. package/dist/ecl-BAMCHBl6.js +462 -0
  23. package/dist/elixir-CegIttP8.js +575 -0
  24. package/dist/flow9-9608t7UV.js +148 -0
  25. package/dist/freemarker2-D9YBhhWM.js +995 -0
  26. package/dist/fsharp-CCtt9-1_.js +223 -0
  27. package/dist/go-CGUIPbct.js +224 -0
  28. package/dist/graphql-BNRIFFIn.js +157 -0
  29. package/dist/handlebars-Dhqjd5tc.js +425 -0
  30. package/dist/hcl-C__KLIXe.js +189 -0
  31. package/dist/html-B-mTv9go.js +314 -0
  32. package/dist/htmlMode-B0tRSzS3.js +1551 -0
  33. package/dist/index2-Bdli2NxK.js +124568 -0
  34. package/dist/ini-CeKYn_zA.js +77 -0
  35. package/dist/java-Dm24deQl.js +238 -0
  36. package/dist/javascript-D2ymRpX4.js +76 -0
  37. package/dist/jsonMode-CGIrxPxy.js +1957 -0
  38. package/dist/julia-BImNW7VE.js +517 -0
  39. package/dist/kotlin-BfE79GEb.js +259 -0
  40. package/dist/less-DglNOcaC.js +168 -0
  41. package/dist/lexon-BA0dRz9Q.js +163 -0
  42. package/dist/liquid-k0lS69v2.js +246 -0
  43. package/dist/lua-DMkWzJcm.js +168 -0
  44. package/dist/m3-sA-5shO8.js +216 -0
  45. package/dist/markdown-OYRB1igA.js +235 -0
  46. package/dist/mdx-CxifJq1N.js +171 -0
  47. package/dist/mips-rRzkJ_7G.js +204 -0
  48. package/dist/msdax-DoVJdUhd.js +381 -0
  49. package/dist/mysql-Ty44IHXo.js +884 -0
  50. package/dist/objective-c-VUfyhYrA.js +189 -0
  51. package/dist/pascal-DkASiYyw.js +257 -0
  52. package/dist/pascaligo-p-ELPlVO.js +170 -0
  53. package/dist/perl-Cjl1FxLZ.js +632 -0
  54. package/dist/pgsql-DjVenF7s.js +857 -0
  55. package/dist/php-CwvGzZOO.js +506 -0
  56. package/dist/pla-Br1iaBIV.js +143 -0
  57. package/dist/postiats-BaeP8zZY.js +913 -0
  58. package/dist/powerquery-CLCshuo8.js +896 -0
  59. package/dist/powershell-CZV50w5N.js +245 -0
  60. package/dist/protobuf-MV3XTewJ.js +426 -0
  61. package/dist/pug-DkDg4c4l.js +408 -0
  62. package/dist/python-C6Cj0Gak.js +282 -0
  63. package/dist/qsharp-BAtiKA97.js +291 -0
  64. package/dist/r-8ocrd-h-.js +249 -0
  65. package/dist/razor-Bv4FKN67.js +556 -0
  66. package/dist/redis-9sZiddxc.js +308 -0
  67. package/dist/redshift-DQfTOGC0.js +815 -0
  68. package/dist/restructuredtext-DXU-vkgr.js +180 -0
  69. package/dist/ruby-DotfqwMf.js +517 -0
  70. package/dist/rust-BIauJ5KN.js +349 -0
  71. package/dist/sb-CmWMvDEV.js +121 -0
  72. package/dist/scala-C81brEbk.js +376 -0
  73. package/dist/scheme-D0pcFz2x.js +114 -0
  74. package/dist/scss-BOdN2fGG.js +268 -0
  75. package/dist/shell-6E09eAkU.js +227 -0
  76. package/dist/solidity-CWStzA1K.js +1373 -0
  77. package/dist/sophia-76Sb6CWe.js +205 -0
  78. package/dist/sparql-BmZTkOWT.js +207 -0
  79. package/dist/sql-Cs9TBAW5.js +859 -0
  80. package/dist/st-B-rqE1Bu.js +422 -0
  81. package/dist/style.css +1 -0
  82. package/dist/sun-form-v3.es.js +2 -168
  83. package/dist/sun-form-v3.umd.js +1909 -1
  84. package/dist/swift-Btsj6YxQ.js +318 -0
  85. package/dist/systemverilog-B3RHBRa2.js +582 -0
  86. package/dist/tcl-Dpj776pn.js +238 -0
  87. package/dist/tsMode-B9h9b9mp.js +886 -0
  88. package/dist/twig-Bb9JmBsE.js +398 -0
  89. package/dist/typescript-zCW2a0Fk.js +349 -0
  90. package/dist/typespec-CDWeg3SU.js +123 -0
  91. package/dist/vb-DEXnYwEI.js +378 -0
  92. package/dist/wgsl-D602c1lx.js +445 -0
  93. package/dist/xml-BJSUmOQK.js +101 -0
  94. package/dist/yaml-DFDANPGB.js +212 -0
  95. package/package.json +1 -1
@@ -0,0 +1,425 @@
1
+ import { m as l } from "./index2-Bdli2NxK.js";
2
+ /*!-----------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Version: 0.49.0(383fdf3fc0e1e1a024068b8d0fd4f3dcbae74d04)
5
+ * Released under the MIT license
6
+ * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
7
+ *-----------------------------------------------------------------------------*/
8
+ var i = Object.defineProperty, s = Object.getOwnPropertyDescriptor, d = Object.getOwnPropertyNames, c = Object.prototype.hasOwnProperty, p = (t, e, r, m) => {
9
+ if (e && typeof e == "object" || typeof e == "function")
10
+ for (let n of d(e))
11
+ !c.call(t, n) && n !== r && i(t, n, { get: () => e[n], enumerable: !(m = s(e, n)) || m.enumerable });
12
+ return t;
13
+ }, h = (t, e, r) => (p(t, e, "default"), r), a = {};
14
+ h(a, l);
15
+ var o = [
16
+ "area",
17
+ "base",
18
+ "br",
19
+ "col",
20
+ "embed",
21
+ "hr",
22
+ "img",
23
+ "input",
24
+ "keygen",
25
+ "link",
26
+ "menuitem",
27
+ "meta",
28
+ "param",
29
+ "source",
30
+ "track",
31
+ "wbr"
32
+ ], u = {
33
+ wordPattern: /(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,
34
+ comments: {
35
+ blockComment: ["{{!--", "--}}"]
36
+ },
37
+ brackets: [
38
+ ["<!--", "-->"],
39
+ ["<", ">"],
40
+ ["{{", "}}"],
41
+ ["{", "}"],
42
+ ["(", ")"]
43
+ ],
44
+ autoClosingPairs: [
45
+ { open: "{", close: "}" },
46
+ { open: "[", close: "]" },
47
+ { open: "(", close: ")" },
48
+ { open: '"', close: '"' },
49
+ { open: "'", close: "'" }
50
+ ],
51
+ surroundingPairs: [
52
+ { open: "<", close: ">" },
53
+ { open: '"', close: '"' },
54
+ { open: "'", close: "'" }
55
+ ],
56
+ onEnterRules: [
57
+ {
58
+ beforeText: new RegExp(
59
+ `<(?!(?:${o.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,
60
+ "i"
61
+ ),
62
+ afterText: /^<\/(\w[\w\d]*)\s*>$/i,
63
+ action: {
64
+ indentAction: a.languages.IndentAction.IndentOutdent
65
+ }
66
+ },
67
+ {
68
+ beforeText: new RegExp(
69
+ `<(?!(?:${o.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,
70
+ "i"
71
+ ),
72
+ action: { indentAction: a.languages.IndentAction.Indent }
73
+ }
74
+ ]
75
+ }, y = {
76
+ defaultToken: "",
77
+ tokenPostfix: "",
78
+ // ignoreCase: true,
79
+ // The main tokenizer for our languages
80
+ tokenizer: {
81
+ root: [
82
+ [/\{\{!--/, "comment.block.start.handlebars", "@commentBlock"],
83
+ [/\{\{!/, "comment.start.handlebars", "@comment"],
84
+ [/\{\{/, { token: "@rematch", switchTo: "@handlebarsInSimpleState.root" }],
85
+ [/<!DOCTYPE/, "metatag.html", "@doctype"],
86
+ [/<!--/, "comment.html", "@commentHtml"],
87
+ [/(<)(\w+)(\/>)/, ["delimiter.html", "tag.html", "delimiter.html"]],
88
+ [/(<)(script)/, ["delimiter.html", { token: "tag.html", next: "@script" }]],
89
+ [/(<)(style)/, ["delimiter.html", { token: "tag.html", next: "@style" }]],
90
+ [/(<)([:\w]+)/, ["delimiter.html", { token: "tag.html", next: "@otherTag" }]],
91
+ [/(<\/)(\w+)/, ["delimiter.html", { token: "tag.html", next: "@otherTag" }]],
92
+ [/</, "delimiter.html"],
93
+ [/\{/, "delimiter.html"],
94
+ [/[^<{]+/]
95
+ // text
96
+ ],
97
+ doctype: [
98
+ [
99
+ /\{\{/,
100
+ {
101
+ token: "@rematch",
102
+ switchTo: "@handlebarsInSimpleState.comment"
103
+ }
104
+ ],
105
+ [/[^>]+/, "metatag.content.html"],
106
+ [/>/, "metatag.html", "@pop"]
107
+ ],
108
+ comment: [
109
+ [/\}\}/, "comment.end.handlebars", "@pop"],
110
+ [/./, "comment.content.handlebars"]
111
+ ],
112
+ commentBlock: [
113
+ [/--\}\}/, "comment.block.end.handlebars", "@pop"],
114
+ [/./, "comment.content.handlebars"]
115
+ ],
116
+ commentHtml: [
117
+ [
118
+ /\{\{/,
119
+ {
120
+ token: "@rematch",
121
+ switchTo: "@handlebarsInSimpleState.comment"
122
+ }
123
+ ],
124
+ [/-->/, "comment.html", "@pop"],
125
+ [/[^-]+/, "comment.content.html"],
126
+ [/./, "comment.content.html"]
127
+ ],
128
+ otherTag: [
129
+ [
130
+ /\{\{/,
131
+ {
132
+ token: "@rematch",
133
+ switchTo: "@handlebarsInSimpleState.otherTag"
134
+ }
135
+ ],
136
+ [/\/?>/, "delimiter.html", "@pop"],
137
+ [/"([^"]*)"/, "attribute.value"],
138
+ [/'([^']*)'/, "attribute.value"],
139
+ [/[\w\-]+/, "attribute.name"],
140
+ [/=/, "delimiter"],
141
+ [/[ \t\r\n]+/]
142
+ // whitespace
143
+ ],
144
+ // -- BEGIN <script> tags handling
145
+ // After <script
146
+ script: [
147
+ [
148
+ /\{\{/,
149
+ {
150
+ token: "@rematch",
151
+ switchTo: "@handlebarsInSimpleState.script"
152
+ }
153
+ ],
154
+ [/type/, "attribute.name", "@scriptAfterType"],
155
+ [/"([^"]*)"/, "attribute.value"],
156
+ [/'([^']*)'/, "attribute.value"],
157
+ [/[\w\-]+/, "attribute.name"],
158
+ [/=/, "delimiter"],
159
+ [
160
+ />/,
161
+ {
162
+ token: "delimiter.html",
163
+ next: "@scriptEmbedded.text/javascript",
164
+ nextEmbedded: "text/javascript"
165
+ }
166
+ ],
167
+ [/[ \t\r\n]+/],
168
+ // whitespace
169
+ [
170
+ /(<\/)(script\s*)(>)/,
171
+ ["delimiter.html", "tag.html", { token: "delimiter.html", next: "@pop" }]
172
+ ]
173
+ ],
174
+ // After <script ... type
175
+ scriptAfterType: [
176
+ [
177
+ /\{\{/,
178
+ {
179
+ token: "@rematch",
180
+ switchTo: "@handlebarsInSimpleState.scriptAfterType"
181
+ }
182
+ ],
183
+ [/=/, "delimiter", "@scriptAfterTypeEquals"],
184
+ [
185
+ />/,
186
+ {
187
+ token: "delimiter.html",
188
+ next: "@scriptEmbedded.text/javascript",
189
+ nextEmbedded: "text/javascript"
190
+ }
191
+ ],
192
+ // cover invalid e.g. <script type>
193
+ [/[ \t\r\n]+/],
194
+ // whitespace
195
+ [/<\/script\s*>/, { token: "@rematch", next: "@pop" }]
196
+ ],
197
+ // After <script ... type =
198
+ scriptAfterTypeEquals: [
199
+ [
200
+ /\{\{/,
201
+ {
202
+ token: "@rematch",
203
+ switchTo: "@handlebarsInSimpleState.scriptAfterTypeEquals"
204
+ }
205
+ ],
206
+ [
207
+ /"([^"]*)"/,
208
+ {
209
+ token: "attribute.value",
210
+ switchTo: "@scriptWithCustomType.$1"
211
+ }
212
+ ],
213
+ [
214
+ /'([^']*)'/,
215
+ {
216
+ token: "attribute.value",
217
+ switchTo: "@scriptWithCustomType.$1"
218
+ }
219
+ ],
220
+ [
221
+ />/,
222
+ {
223
+ token: "delimiter.html",
224
+ next: "@scriptEmbedded.text/javascript",
225
+ nextEmbedded: "text/javascript"
226
+ }
227
+ ],
228
+ // cover invalid e.g. <script type=>
229
+ [/[ \t\r\n]+/],
230
+ // whitespace
231
+ [/<\/script\s*>/, { token: "@rematch", next: "@pop" }]
232
+ ],
233
+ // After <script ... type = $S2
234
+ scriptWithCustomType: [
235
+ [
236
+ /\{\{/,
237
+ {
238
+ token: "@rematch",
239
+ switchTo: "@handlebarsInSimpleState.scriptWithCustomType.$S2"
240
+ }
241
+ ],
242
+ [
243
+ />/,
244
+ {
245
+ token: "delimiter.html",
246
+ next: "@scriptEmbedded.$S2",
247
+ nextEmbedded: "$S2"
248
+ }
249
+ ],
250
+ [/"([^"]*)"/, "attribute.value"],
251
+ [/'([^']*)'/, "attribute.value"],
252
+ [/[\w\-]+/, "attribute.name"],
253
+ [/=/, "delimiter"],
254
+ [/[ \t\r\n]+/],
255
+ // whitespace
256
+ [/<\/script\s*>/, { token: "@rematch", next: "@pop" }]
257
+ ],
258
+ scriptEmbedded: [
259
+ [
260
+ /\{\{/,
261
+ {
262
+ token: "@rematch",
263
+ switchTo: "@handlebarsInEmbeddedState.scriptEmbedded.$S2",
264
+ nextEmbedded: "@pop"
265
+ }
266
+ ],
267
+ [/<\/script/, { token: "@rematch", next: "@pop", nextEmbedded: "@pop" }]
268
+ ],
269
+ // -- END <script> tags handling
270
+ // -- BEGIN <style> tags handling
271
+ // After <style
272
+ style: [
273
+ [
274
+ /\{\{/,
275
+ {
276
+ token: "@rematch",
277
+ switchTo: "@handlebarsInSimpleState.style"
278
+ }
279
+ ],
280
+ [/type/, "attribute.name", "@styleAfterType"],
281
+ [/"([^"]*)"/, "attribute.value"],
282
+ [/'([^']*)'/, "attribute.value"],
283
+ [/[\w\-]+/, "attribute.name"],
284
+ [/=/, "delimiter"],
285
+ [
286
+ />/,
287
+ {
288
+ token: "delimiter.html",
289
+ next: "@styleEmbedded.text/css",
290
+ nextEmbedded: "text/css"
291
+ }
292
+ ],
293
+ [/[ \t\r\n]+/],
294
+ // whitespace
295
+ [
296
+ /(<\/)(style\s*)(>)/,
297
+ ["delimiter.html", "tag.html", { token: "delimiter.html", next: "@pop" }]
298
+ ]
299
+ ],
300
+ // After <style ... type
301
+ styleAfterType: [
302
+ [
303
+ /\{\{/,
304
+ {
305
+ token: "@rematch",
306
+ switchTo: "@handlebarsInSimpleState.styleAfterType"
307
+ }
308
+ ],
309
+ [/=/, "delimiter", "@styleAfterTypeEquals"],
310
+ [
311
+ />/,
312
+ {
313
+ token: "delimiter.html",
314
+ next: "@styleEmbedded.text/css",
315
+ nextEmbedded: "text/css"
316
+ }
317
+ ],
318
+ // cover invalid e.g. <style type>
319
+ [/[ \t\r\n]+/],
320
+ // whitespace
321
+ [/<\/style\s*>/, { token: "@rematch", next: "@pop" }]
322
+ ],
323
+ // After <style ... type =
324
+ styleAfterTypeEquals: [
325
+ [
326
+ /\{\{/,
327
+ {
328
+ token: "@rematch",
329
+ switchTo: "@handlebarsInSimpleState.styleAfterTypeEquals"
330
+ }
331
+ ],
332
+ [
333
+ /"([^"]*)"/,
334
+ {
335
+ token: "attribute.value",
336
+ switchTo: "@styleWithCustomType.$1"
337
+ }
338
+ ],
339
+ [
340
+ /'([^']*)'/,
341
+ {
342
+ token: "attribute.value",
343
+ switchTo: "@styleWithCustomType.$1"
344
+ }
345
+ ],
346
+ [
347
+ />/,
348
+ {
349
+ token: "delimiter.html",
350
+ next: "@styleEmbedded.text/css",
351
+ nextEmbedded: "text/css"
352
+ }
353
+ ],
354
+ // cover invalid e.g. <style type=>
355
+ [/[ \t\r\n]+/],
356
+ // whitespace
357
+ [/<\/style\s*>/, { token: "@rematch", next: "@pop" }]
358
+ ],
359
+ // After <style ... type = $S2
360
+ styleWithCustomType: [
361
+ [
362
+ /\{\{/,
363
+ {
364
+ token: "@rematch",
365
+ switchTo: "@handlebarsInSimpleState.styleWithCustomType.$S2"
366
+ }
367
+ ],
368
+ [
369
+ />/,
370
+ {
371
+ token: "delimiter.html",
372
+ next: "@styleEmbedded.$S2",
373
+ nextEmbedded: "$S2"
374
+ }
375
+ ],
376
+ [/"([^"]*)"/, "attribute.value"],
377
+ [/'([^']*)'/, "attribute.value"],
378
+ [/[\w\-]+/, "attribute.name"],
379
+ [/=/, "delimiter"],
380
+ [/[ \t\r\n]+/],
381
+ // whitespace
382
+ [/<\/style\s*>/, { token: "@rematch", next: "@pop" }]
383
+ ],
384
+ styleEmbedded: [
385
+ [
386
+ /\{\{/,
387
+ {
388
+ token: "@rematch",
389
+ switchTo: "@handlebarsInEmbeddedState.styleEmbedded.$S2",
390
+ nextEmbedded: "@pop"
391
+ }
392
+ ],
393
+ [/<\/style/, { token: "@rematch", next: "@pop", nextEmbedded: "@pop" }]
394
+ ],
395
+ // -- END <style> tags handling
396
+ handlebarsInSimpleState: [
397
+ [/\{\{\{?/, "delimiter.handlebars"],
398
+ [/\}\}\}?/, { token: "delimiter.handlebars", switchTo: "@$S2.$S3" }],
399
+ { include: "handlebarsRoot" }
400
+ ],
401
+ handlebarsInEmbeddedState: [
402
+ [/\{\{\{?/, "delimiter.handlebars"],
403
+ [
404
+ /\}\}\}?/,
405
+ {
406
+ token: "delimiter.handlebars",
407
+ switchTo: "@$S2.$S3",
408
+ nextEmbedded: "$S3"
409
+ }
410
+ ],
411
+ { include: "handlebarsRoot" }
412
+ ],
413
+ handlebarsRoot: [
414
+ [/"[^"]*"/, "string.handlebars"],
415
+ [/[#/][^\s}]+/, "keyword.helper.handlebars"],
416
+ [/else\b/, "keyword.helper.handlebars"],
417
+ [/[\s]+/],
418
+ [/[^}]/, "variable.parameter.handlebars"]
419
+ ]
420
+ }
421
+ };
422
+ export {
423
+ u as conf,
424
+ y as language
425
+ };
@@ -0,0 +1,189 @@
1
+ /*!-----------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Version: 0.49.0(383fdf3fc0e1e1a024068b8d0fd4f3dcbae74d04)
4
+ * Released under the MIT license
5
+ * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
6
+ *-----------------------------------------------------------------------------*/
7
+ var e = {
8
+ comments: {
9
+ lineComment: "#",
10
+ blockComment: ["/*", "*/"]
11
+ },
12
+ brackets: [
13
+ ["{", "}"],
14
+ ["[", "]"],
15
+ ["(", ")"]
16
+ ],
17
+ autoClosingPairs: [
18
+ { open: "{", close: "}" },
19
+ { open: "[", close: "]" },
20
+ { open: "(", close: ")" },
21
+ { open: '"', close: '"', notIn: ["string"] }
22
+ ],
23
+ surroundingPairs: [
24
+ { open: "{", close: "}" },
25
+ { open: "[", close: "]" },
26
+ { open: "(", close: ")" },
27
+ { open: '"', close: '"' }
28
+ ]
29
+ }, t = {
30
+ defaultToken: "",
31
+ tokenPostfix: ".hcl",
32
+ keywords: [
33
+ "var",
34
+ "local",
35
+ "path",
36
+ "for_each",
37
+ "any",
38
+ "string",
39
+ "number",
40
+ "bool",
41
+ "true",
42
+ "false",
43
+ "null",
44
+ "if ",
45
+ "else ",
46
+ "endif ",
47
+ "for ",
48
+ "in",
49
+ "endfor"
50
+ ],
51
+ operators: [
52
+ "=",
53
+ ">=",
54
+ "<=",
55
+ "==",
56
+ "!=",
57
+ "+",
58
+ "-",
59
+ "*",
60
+ "/",
61
+ "%",
62
+ "&&",
63
+ "||",
64
+ "!",
65
+ "<",
66
+ ">",
67
+ "?",
68
+ "...",
69
+ ":"
70
+ ],
71
+ symbols: /[=><!~?:&|+\-*\/\^%]+/,
72
+ escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
73
+ terraformFunctions: /(abs|ceil|floor|log|max|min|pow|signum|chomp|format|formatlist|indent|join|lower|regex|regexall|replace|split|strrev|substr|title|trimspace|upper|chunklist|coalesce|coalescelist|compact|concat|contains|distinct|element|flatten|index|keys|length|list|lookup|map|matchkeys|merge|range|reverse|setintersection|setproduct|setunion|slice|sort|transpose|values|zipmap|base64decode|base64encode|base64gzip|csvdecode|jsondecode|jsonencode|urlencode|yamldecode|yamlencode|abspath|dirname|pathexpand|basename|file|fileexists|fileset|filebase64|templatefile|formatdate|timeadd|timestamp|base64sha256|base64sha512|bcrypt|filebase64sha256|filebase64sha512|filemd5|filemd1|filesha256|filesha512|md5|rsadecrypt|sha1|sha256|sha512|uuid|uuidv5|cidrhost|cidrnetmask|cidrsubnet|tobool|tolist|tomap|tonumber|toset|tostring)/,
74
+ terraformMainBlocks: /(module|data|terraform|resource|provider|variable|output|locals)/,
75
+ tokenizer: {
76
+ root: [
77
+ // highlight main blocks
78
+ [
79
+ /^@terraformMainBlocks([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)(\{)/,
80
+ ["type", "", "string", "", "string", "", "@brackets"]
81
+ ],
82
+ // highlight all the remaining blocks
83
+ [
84
+ /(\w+[ \t]+)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)(\{)/,
85
+ ["identifier", "", "string", "", "string", "", "@brackets"]
86
+ ],
87
+ // highlight block
88
+ [
89
+ /(\w+[ \t]+)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)([\w-]+|"[\w-]+"|)(=)(\{)/,
90
+ ["identifier", "", "string", "", "operator", "", "@brackets"]
91
+ ],
92
+ // terraform general highlight - shared with expressions
93
+ { include: "@terraform" }
94
+ ],
95
+ terraform: [
96
+ // highlight terraform functions
97
+ [/@terraformFunctions(\()/, ["type", "@brackets"]],
98
+ // all other words are variables or keywords
99
+ [
100
+ /[a-zA-Z_]\w*-*/,
101
+ // must work with variables such as foo-bar and also with negative numbers
102
+ {
103
+ cases: {
104
+ "@keywords": { token: "keyword.$0" },
105
+ "@default": "variable"
106
+ }
107
+ }
108
+ ],
109
+ { include: "@whitespace" },
110
+ { include: "@heredoc" },
111
+ // delimiters and operators
112
+ [/[{}()\[\]]/, "@brackets"],
113
+ [/[<>](?!@symbols)/, "@brackets"],
114
+ [
115
+ /@symbols/,
116
+ {
117
+ cases: {
118
+ "@operators": "operator",
119
+ "@default": ""
120
+ }
121
+ }
122
+ ],
123
+ // numbers
124
+ [/\d*\d+[eE]([\-+]?\d+)?/, "number.float"],
125
+ [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
126
+ [/\d[\d']*/, "number"],
127
+ [/\d/, "number"],
128
+ [/[;,.]/, "delimiter"],
129
+ // delimiter: after number because of .\d floats
130
+ // strings
131
+ [/"/, "string", "@string"],
132
+ // this will include expressions
133
+ [/'/, "invalid"]
134
+ ],
135
+ heredoc: [
136
+ [/<<[-]*\s*["]?([\w\-]+)["]?/, { token: "string.heredoc.delimiter", next: "@heredocBody.$1" }]
137
+ ],
138
+ heredocBody: [
139
+ [
140
+ /([\w\-]+)$/,
141
+ {
142
+ cases: {
143
+ "$1==$S2": [
144
+ {
145
+ token: "string.heredoc.delimiter",
146
+ next: "@popall"
147
+ }
148
+ ],
149
+ "@default": "string.heredoc"
150
+ }
151
+ }
152
+ ],
153
+ [/./, "string.heredoc"]
154
+ ],
155
+ whitespace: [
156
+ [/[ \t\r\n]+/, ""],
157
+ [/\/\*/, "comment", "@comment"],
158
+ [/\/\/.*$/, "comment"],
159
+ [/#.*$/, "comment"]
160
+ ],
161
+ comment: [
162
+ [/[^\/*]+/, "comment"],
163
+ [/\*\//, "comment", "@pop"],
164
+ [/[\/*]/, "comment"]
165
+ ],
166
+ string: [
167
+ [/\$\{/, { token: "delimiter", next: "@stringExpression" }],
168
+ [/[^\\"\$]+/, "string"],
169
+ [/@escapes/, "string.escape"],
170
+ [/\\./, "string.escape.invalid"],
171
+ [/"/, "string", "@popall"]
172
+ ],
173
+ stringInsideExpression: [
174
+ [/[^\\"]+/, "string"],
175
+ [/@escapes/, "string.escape"],
176
+ [/\\./, "string.escape.invalid"],
177
+ [/"/, "string", "@pop"]
178
+ ],
179
+ stringExpression: [
180
+ [/\}/, { token: "delimiter", next: "@pop" }],
181
+ [/"/, "string", "@stringInsideExpression"],
182
+ { include: "@terraform" }
183
+ ]
184
+ }
185
+ };
186
+ export {
187
+ e as conf,
188
+ t as language
189
+ };