sun-form-v3 1.0.50 → 1.0.52

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-D45lxKGY.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-C5c6cqO5.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-CnNQzLDj.js +425 -0
  30. package/dist/hcl-C__KLIXe.js +189 -0
  31. package/dist/html-CiZ8fiaP.js +314 -0
  32. package/dist/htmlMode-Dus2ru9E.js +1551 -0
  33. package/dist/index2-CjCXYnQw.js +110864 -0
  34. package/dist/ini-CeKYn_zA.js +77 -0
  35. package/dist/java-Dm24deQl.js +238 -0
  36. package/dist/javascript-IKydnX8w.js +76 -0
  37. package/dist/jsonMode-CfkTtfN1.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-C_UYsilK.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-C3JSJ9-L.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-CqYwzGqW.js +282 -0
  63. package/dist/qsharp-BAtiKA97.js +291 -0
  64. package/dist/r-8ocrd-h-.js +249 -0
  65. package/dist/razor-BS6FM1Di.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 -1
  82. package/dist/sun-form-v3.es.js +2 -4685
  83. package/dist/sun-form-v3.umd.js +1881 -10
  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-Dbl96ki0.js +886 -0
  88. package/dist/twig-Bb9JmBsE.js +398 -0
  89. package/dist/typescript-CtVOBIu6.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-BRkm61cw.js +101 -0
  94. package/dist/yaml-8VMD2KxU.js +212 -0
  95. package/package.json +1 -1
@@ -0,0 +1,245 @@
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
+ // the default separators except `$-`
9
+ wordPattern: /(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,
10
+ comments: {
11
+ lineComment: "#",
12
+ blockComment: ["<#", "#>"]
13
+ },
14
+ brackets: [
15
+ ["{", "}"],
16
+ ["[", "]"],
17
+ ["(", ")"]
18
+ ],
19
+ autoClosingPairs: [
20
+ { open: "{", close: "}" },
21
+ { open: "[", close: "]" },
22
+ { open: "(", close: ")" },
23
+ { open: '"', close: '"', notIn: ["string"] },
24
+ { open: "'", close: "'", notIn: ["string", "comment"] }
25
+ ],
26
+ surroundingPairs: [
27
+ { open: "{", close: "}" },
28
+ { open: "[", close: "]" },
29
+ { open: "(", close: ")" },
30
+ { open: '"', close: '"' },
31
+ { open: "'", close: "'" }
32
+ ],
33
+ folding: {
34
+ markers: {
35
+ start: new RegExp("^\\s*#region\\b"),
36
+ end: new RegExp("^\\s*#endregion\\b")
37
+ }
38
+ }
39
+ }, n = {
40
+ defaultToken: "",
41
+ ignoreCase: !0,
42
+ tokenPostfix: ".ps1",
43
+ brackets: [
44
+ { token: "delimiter.curly", open: "{", close: "}" },
45
+ { token: "delimiter.square", open: "[", close: "]" },
46
+ { token: "delimiter.parenthesis", open: "(", close: ")" }
47
+ ],
48
+ keywords: [
49
+ "begin",
50
+ "break",
51
+ "catch",
52
+ "class",
53
+ "continue",
54
+ "data",
55
+ "define",
56
+ "do",
57
+ "dynamicparam",
58
+ "else",
59
+ "elseif",
60
+ "end",
61
+ "exit",
62
+ "filter",
63
+ "finally",
64
+ "for",
65
+ "foreach",
66
+ "from",
67
+ "function",
68
+ "if",
69
+ "in",
70
+ "param",
71
+ "process",
72
+ "return",
73
+ "switch",
74
+ "throw",
75
+ "trap",
76
+ "try",
77
+ "until",
78
+ "using",
79
+ "var",
80
+ "while",
81
+ "workflow",
82
+ "parallel",
83
+ "sequence",
84
+ "inlinescript",
85
+ "configuration"
86
+ ],
87
+ helpKeywords: /SYNOPSIS|DESCRIPTION|PARAMETER|EXAMPLE|INPUTS|OUTPUTS|NOTES|LINK|COMPONENT|ROLE|FUNCTIONALITY|FORWARDHELPTARGETNAME|FORWARDHELPCATEGORY|REMOTEHELPRUNSPACE|EXTERNALHELP/,
88
+ // we include these common regular expressions
89
+ symbols: /[=><!~?&%|+\-*\/\^;\.,]+/,
90
+ escapes: /`(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
91
+ // The main tokenizer for our languages
92
+ tokenizer: {
93
+ root: [
94
+ // commands and keywords
95
+ [
96
+ /[a-zA-Z_][\w-]*/,
97
+ {
98
+ cases: {
99
+ "@keywords": { token: "keyword.$0" },
100
+ "@default": ""
101
+ }
102
+ }
103
+ ],
104
+ // whitespace
105
+ [/[ \t\r\n]+/, ""],
106
+ // labels
107
+ [/^:\w*/, "metatag"],
108
+ // variables
109
+ [
110
+ /\$(\{((global|local|private|script|using):)?[\w]+\}|((global|local|private|script|using):)?[\w]+)/,
111
+ "variable"
112
+ ],
113
+ // Comments
114
+ [/<#/, "comment", "@comment"],
115
+ [/#.*$/, "comment"],
116
+ // delimiters
117
+ [/[{}()\[\]]/, "@brackets"],
118
+ [/@symbols/, "delimiter"],
119
+ // numbers
120
+ [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
121
+ [/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/, "number.hex"],
122
+ [/\d+?/, "number"],
123
+ // delimiter: after number because of .\d floats
124
+ [/[;,.]/, "delimiter"],
125
+ // strings:
126
+ [/\@"/, "string", '@herestring."'],
127
+ [/\@'/, "string", "@herestring.'"],
128
+ [
129
+ /"/,
130
+ {
131
+ cases: {
132
+ "@eos": "string",
133
+ "@default": { token: "string", next: '@string."' }
134
+ }
135
+ }
136
+ ],
137
+ [
138
+ /'/,
139
+ {
140
+ cases: {
141
+ "@eos": "string",
142
+ "@default": { token: "string", next: "@string.'" }
143
+ }
144
+ }
145
+ ]
146
+ ],
147
+ string: [
148
+ [
149
+ /[^"'\$`]+/,
150
+ {
151
+ cases: {
152
+ "@eos": { token: "string", next: "@popall" },
153
+ "@default": "string"
154
+ }
155
+ }
156
+ ],
157
+ [
158
+ /@escapes/,
159
+ {
160
+ cases: {
161
+ "@eos": { token: "string.escape", next: "@popall" },
162
+ "@default": "string.escape"
163
+ }
164
+ }
165
+ ],
166
+ [
167
+ /`./,
168
+ {
169
+ cases: {
170
+ "@eos": {
171
+ token: "string.escape.invalid",
172
+ next: "@popall"
173
+ },
174
+ "@default": "string.escape.invalid"
175
+ }
176
+ }
177
+ ],
178
+ [
179
+ /\$[\w]+$/,
180
+ {
181
+ cases: {
182
+ '$S2=="': { token: "variable", next: "@popall" },
183
+ "@default": { token: "string", next: "@popall" }
184
+ }
185
+ }
186
+ ],
187
+ [
188
+ /\$[\w]+/,
189
+ {
190
+ cases: {
191
+ '$S2=="': "variable",
192
+ "@default": "string"
193
+ }
194
+ }
195
+ ],
196
+ [
197
+ /["']/,
198
+ {
199
+ cases: {
200
+ "$#==$S2": { token: "string", next: "@pop" },
201
+ "@default": {
202
+ cases: {
203
+ "@eos": { token: "string", next: "@popall" },
204
+ "@default": "string"
205
+ }
206
+ }
207
+ }
208
+ }
209
+ ]
210
+ ],
211
+ herestring: [
212
+ [
213
+ /^\s*(["'])@/,
214
+ {
215
+ cases: {
216
+ "$1==$S2": { token: "string", next: "@pop" },
217
+ "@default": "string"
218
+ }
219
+ }
220
+ ],
221
+ [/[^\$`]+/, "string"],
222
+ [/@escapes/, "string.escape"],
223
+ [/`./, "string.escape.invalid"],
224
+ [
225
+ /\$[\w]+/,
226
+ {
227
+ cases: {
228
+ '$S2=="': "variable",
229
+ "@default": "string"
230
+ }
231
+ }
232
+ ]
233
+ ],
234
+ comment: [
235
+ [/[^#\.]+/, "comment"],
236
+ [/#>/, "comment", "@pop"],
237
+ [/(\.)(@helpKeywords)(?!\w)/, { token: "comment.keyword.$2" }],
238
+ [/[\.#]/, "comment"]
239
+ ]
240
+ }
241
+ };
242
+ export {
243
+ e as conf,
244
+ n as language
245
+ };
@@ -0,0 +1,426 @@
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 = ["true", "false"], t = {
8
+ comments: {
9
+ lineComment: "//",
10
+ blockComment: ["/*", "*/"]
11
+ },
12
+ brackets: [
13
+ ["{", "}"],
14
+ ["[", "]"],
15
+ ["(", ")"],
16
+ ["<", ">"]
17
+ ],
18
+ surroundingPairs: [
19
+ { open: "{", close: "}" },
20
+ { open: "[", close: "]" },
21
+ { open: "(", close: ")" },
22
+ { open: "<", close: ">" },
23
+ { open: '"', close: '"' },
24
+ { open: "'", close: "'" }
25
+ ],
26
+ autoClosingPairs: [
27
+ { open: "{", close: "}" },
28
+ { open: "[", close: "]" },
29
+ { open: "(", close: ")" },
30
+ { open: "<", close: ">" },
31
+ { open: '"', close: '"', notIn: ["string"] },
32
+ { open: "'", close: "'", notIn: ["string"] }
33
+ ],
34
+ autoCloseBefore: `.,=}])>'
35
+ `,
36
+ indentationRules: {
37
+ increaseIndentPattern: new RegExp("^((?!\\/\\/).)*(\\{[^}\"'`]*|\\([^)\"'`]*|\\[[^\\]\"'`]*)$"),
38
+ decreaseIndentPattern: new RegExp("^((?!.*?\\/\\*).*\\*/)?\\s*[\\}\\]].*$")
39
+ }
40
+ }, n = {
41
+ defaultToken: "",
42
+ tokenPostfix: ".proto",
43
+ brackets: [
44
+ { open: "{", close: "}", token: "delimiter.curly" },
45
+ { open: "[", close: "]", token: "delimiter.square" },
46
+ { open: "(", close: ")", token: "delimiter.parenthesis" },
47
+ { open: "<", close: ">", token: "delimiter.angle" }
48
+ ],
49
+ symbols: /[=><!~?:&|+\-*/^%]+/,
50
+ keywords: [
51
+ "syntax",
52
+ "import",
53
+ "weak",
54
+ "public",
55
+ "package",
56
+ "option",
57
+ "repeated",
58
+ "oneof",
59
+ "map",
60
+ "reserved",
61
+ "to",
62
+ "max",
63
+ "enum",
64
+ "message",
65
+ "service",
66
+ "rpc",
67
+ "stream",
68
+ "returns",
69
+ "package",
70
+ "optional",
71
+ "true",
72
+ "false"
73
+ ],
74
+ builtinTypes: [
75
+ "double",
76
+ "float",
77
+ "int32",
78
+ "int64",
79
+ "uint32",
80
+ "uint64",
81
+ "sint32",
82
+ "sint64",
83
+ "fixed32",
84
+ "fixed64",
85
+ "sfixed32",
86
+ "sfixed64",
87
+ "bool",
88
+ "string",
89
+ "bytes"
90
+ ],
91
+ operators: ["=", "+", "-"],
92
+ namedLiterals: e,
93
+ escapes: "\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\|'|\\${)",
94
+ identifier: /[a-zA-Z]\w*/,
95
+ fullIdentifier: /@identifier(?:\s*\.\s*@identifier)*/,
96
+ optionName: /(?:@identifier|\(\s*@fullIdentifier\s*\))(?:\s*\.\s*@identifier)*/,
97
+ messageName: /@identifier/,
98
+ enumName: /@identifier/,
99
+ messageType: /\.?\s*(?:@identifier\s*\.\s*)*@messageName/,
100
+ enumType: /\.?\s*(?:@identifier\s*\.\s*)*@enumName/,
101
+ floatLit: /[0-9]+\s*\.\s*[0-9]*(?:@exponent)?|[0-9]+@exponent|\.[0-9]+(?:@exponent)?/,
102
+ exponent: /[eE]\s*[+-]?\s*[0-9]+/,
103
+ boolLit: /true\b|false\b/,
104
+ decimalLit: /[1-9][0-9]*/,
105
+ octalLit: /0[0-7]*/,
106
+ hexLit: /0[xX][0-9a-fA-F]+/,
107
+ type: /double|float|int32|int64|uint32|uint64|sint32|sint64|fixed32|fixed64|sfixed32|sfixed64|bool|string|bytes|@messageType|@enumType/,
108
+ keyType: /int32|int64|uint32|uint64|sint32|sint64|fixed32|fixed64|sfixed32|sfixed64|bool|string/,
109
+ tokenizer: {
110
+ root: [
111
+ { include: "@whitespace" },
112
+ [/syntax/, "keyword"],
113
+ [/=/, "operators"],
114
+ [/;/, "delimiter"],
115
+ [
116
+ /(")(proto3)(")/,
117
+ ["string.quote", "string", { token: "string.quote", switchTo: "@topLevel.proto3" }]
118
+ ],
119
+ [
120
+ /(")(proto2)(")/,
121
+ ["string.quote", "string", { token: "string.quote", switchTo: "@topLevel.proto2" }]
122
+ ],
123
+ [
124
+ // If no `syntax` provided, regarded as proto2
125
+ /.*?/,
126
+ { token: "", switchTo: "@topLevel.proto2" }
127
+ ]
128
+ ],
129
+ topLevel: [
130
+ // whitespace
131
+ { include: "@whitespace" },
132
+ { include: "@constant" },
133
+ [/=/, "operators"],
134
+ [/[;.]/, "delimiter"],
135
+ [
136
+ /@fullIdentifier/,
137
+ {
138
+ cases: {
139
+ option: { token: "keyword", next: "@option.$S2" },
140
+ enum: { token: "keyword", next: "@enumDecl.$S2" },
141
+ message: { token: "keyword", next: "@messageDecl.$S2" },
142
+ service: { token: "keyword", next: "@serviceDecl.$S2" },
143
+ extend: {
144
+ cases: {
145
+ "$S2==proto2": { token: "keyword", next: "@extendDecl.$S2" }
146
+ }
147
+ },
148
+ "@keywords": "keyword",
149
+ "@default": "identifier"
150
+ }
151
+ }
152
+ ]
153
+ ],
154
+ enumDecl: [
155
+ { include: "@whitespace" },
156
+ [/@identifier/, "type.identifier"],
157
+ [/{/, { token: "@brackets", bracket: "@open", switchTo: "@enumBody.$S2" }]
158
+ ],
159
+ enumBody: [
160
+ { include: "@whitespace" },
161
+ { include: "@constant" },
162
+ [/=/, "operators"],
163
+ [/;/, "delimiter"],
164
+ [/option\b/, "keyword", "@option.$S2"],
165
+ [/@identifier/, "identifier"],
166
+ [/\[/, { token: "@brackets", bracket: "@open", next: "@options.$S2" }],
167
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
168
+ ],
169
+ messageDecl: [
170
+ { include: "@whitespace" },
171
+ [/@identifier/, "type.identifier"],
172
+ [/{/, { token: "@brackets", bracket: "@open", switchTo: "@messageBody.$S2" }]
173
+ ],
174
+ messageBody: [
175
+ { include: "@whitespace" },
176
+ { include: "@constant" },
177
+ [/=/, "operators"],
178
+ [/;/, "delimiter"],
179
+ [
180
+ "(map)(s*)(<)",
181
+ ["keyword", "white", { token: "@brackets", bracket: "@open", next: "@map.$S2" }]
182
+ ],
183
+ [
184
+ /@identifier/,
185
+ {
186
+ cases: {
187
+ option: { token: "keyword", next: "@option.$S2" },
188
+ enum: { token: "keyword", next: "@enumDecl.$S2" },
189
+ message: { token: "keyword", next: "@messageDecl.$S2" },
190
+ oneof: { token: "keyword", next: "@oneofDecl.$S2" },
191
+ extensions: {
192
+ cases: {
193
+ "$S2==proto2": { token: "keyword", next: "@reserved.$S2" }
194
+ }
195
+ },
196
+ reserved: { token: "keyword", next: "@reserved.$S2" },
197
+ "(?:repeated|optional)": { token: "keyword", next: "@field.$S2" },
198
+ required: {
199
+ cases: {
200
+ "$S2==proto2": { token: "keyword", next: "@field.$S2" }
201
+ }
202
+ },
203
+ "$S2==proto3": { token: "@rematch", next: "@field.$S2" }
204
+ }
205
+ }
206
+ ],
207
+ [/\[/, { token: "@brackets", bracket: "@open", next: "@options.$S2" }],
208
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
209
+ ],
210
+ extendDecl: [
211
+ { include: "@whitespace" },
212
+ [/@identifier/, "type.identifier"],
213
+ [/{/, { token: "@brackets", bracket: "@open", switchTo: "@extendBody.$S2" }]
214
+ ],
215
+ extendBody: [
216
+ { include: "@whitespace" },
217
+ { include: "@constant" },
218
+ [/;/, "delimiter"],
219
+ [/(?:repeated|optional|required)/, "keyword", "@field.$S2"],
220
+ [/\[/, { token: "@brackets", bracket: "@open", next: "@options.$S2" }],
221
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
222
+ ],
223
+ options: [
224
+ { include: "@whitespace" },
225
+ { include: "@constant" },
226
+ [/;/, "delimiter"],
227
+ [/@optionName/, "annotation"],
228
+ [/[()]/, "annotation.brackets"],
229
+ [/=/, "operator"],
230
+ [/\]/, { token: "@brackets", bracket: "@close", next: "@pop" }]
231
+ ],
232
+ option: [
233
+ { include: "@whitespace" },
234
+ [/@optionName/, "annotation"],
235
+ [/[()]/, "annotation.brackets"],
236
+ [/=/, "operator", "@pop"]
237
+ ],
238
+ oneofDecl: [
239
+ { include: "@whitespace" },
240
+ [/@identifier/, "identifier"],
241
+ [/{/, { token: "@brackets", bracket: "@open", switchTo: "@oneofBody.$S2" }]
242
+ ],
243
+ oneofBody: [
244
+ { include: "@whitespace" },
245
+ { include: "@constant" },
246
+ [/;/, "delimiter"],
247
+ [/(@identifier)(\s*)(=)/, ["identifier", "white", "delimiter"]],
248
+ [
249
+ /@fullIdentifier|\./,
250
+ {
251
+ cases: {
252
+ "@builtinTypes": "keyword",
253
+ "@default": "type.identifier"
254
+ }
255
+ }
256
+ ],
257
+ [/\[/, { token: "@brackets", bracket: "@open", next: "@options.$S2" }],
258
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
259
+ ],
260
+ reserved: [
261
+ { include: "@whitespace" },
262
+ [/,/, "delimiter"],
263
+ [/;/, "delimiter", "@pop"],
264
+ { include: "@constant" },
265
+ [/to\b|max\b/, "keyword"]
266
+ ],
267
+ map: [
268
+ { include: "@whitespace" },
269
+ [
270
+ /@fullIdentifier|\./,
271
+ {
272
+ cases: {
273
+ "@builtinTypes": "keyword",
274
+ "@default": "type.identifier"
275
+ }
276
+ }
277
+ ],
278
+ [/,/, "delimiter"],
279
+ [/>/, { token: "@brackets", bracket: "@close", switchTo: "identifier" }]
280
+ ],
281
+ field: [
282
+ { include: "@whitespace" },
283
+ [
284
+ "group",
285
+ {
286
+ cases: {
287
+ "$S2==proto2": { token: "keyword", switchTo: "@groupDecl.$S2" }
288
+ }
289
+ }
290
+ ],
291
+ [/(@identifier)(\s*)(=)/, ["identifier", "white", { token: "delimiter", next: "@pop" }]],
292
+ [
293
+ /@fullIdentifier|\./,
294
+ {
295
+ cases: {
296
+ "@builtinTypes": "keyword",
297
+ "@default": "type.identifier"
298
+ }
299
+ }
300
+ ]
301
+ ],
302
+ groupDecl: [
303
+ { include: "@whitespace" },
304
+ [/@identifier/, "identifier"],
305
+ ["=", "operator"],
306
+ [/{/, { token: "@brackets", bracket: "@open", switchTo: "@messageBody.$S2" }],
307
+ { include: "@constant" }
308
+ ],
309
+ type: [
310
+ { include: "@whitespace" },
311
+ [/@identifier/, "type.identifier", "@pop"],
312
+ [/./, "delimiter"]
313
+ ],
314
+ identifier: [{ include: "@whitespace" }, [/@identifier/, "identifier", "@pop"]],
315
+ serviceDecl: [
316
+ { include: "@whitespace" },
317
+ [/@identifier/, "identifier"],
318
+ [/{/, { token: "@brackets", bracket: "@open", switchTo: "@serviceBody.$S2" }]
319
+ ],
320
+ serviceBody: [
321
+ { include: "@whitespace" },
322
+ { include: "@constant" },
323
+ [/;/, "delimiter"],
324
+ [/option\b/, "keyword", "@option.$S2"],
325
+ [/rpc\b/, "keyword", "@rpc.$S2"],
326
+ [/\[/, { token: "@brackets", bracket: "@open", next: "@options.$S2" }],
327
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
328
+ ],
329
+ rpc: [
330
+ { include: "@whitespace" },
331
+ [/@identifier/, "identifier"],
332
+ [/\(/, { token: "@brackets", bracket: "@open", switchTo: "@request.$S2" }],
333
+ [/{/, { token: "@brackets", bracket: "@open", next: "@methodOptions.$S2" }],
334
+ [/;/, "delimiter", "@pop"]
335
+ ],
336
+ request: [
337
+ { include: "@whitespace" },
338
+ [
339
+ /@messageType/,
340
+ {
341
+ cases: {
342
+ stream: { token: "keyword", next: "@type.$S2" },
343
+ "@default": "type.identifier"
344
+ }
345
+ }
346
+ ],
347
+ [/\)/, { token: "@brackets", bracket: "@close", switchTo: "@returns.$S2" }]
348
+ ],
349
+ returns: [
350
+ { include: "@whitespace" },
351
+ [/returns\b/, "keyword"],
352
+ [/\(/, { token: "@brackets", bracket: "@open", switchTo: "@response.$S2" }]
353
+ ],
354
+ response: [
355
+ { include: "@whitespace" },
356
+ [
357
+ /@messageType/,
358
+ {
359
+ cases: {
360
+ stream: { token: "keyword", next: "@type.$S2" },
361
+ "@default": "type.identifier"
362
+ }
363
+ }
364
+ ],
365
+ [/\)/, { token: "@brackets", bracket: "@close", switchTo: "@rpc.$S2" }]
366
+ ],
367
+ methodOptions: [
368
+ { include: "@whitespace" },
369
+ { include: "@constant" },
370
+ [/;/, "delimiter"],
371
+ ["option", "keyword"],
372
+ [/@optionName/, "annotation"],
373
+ [/[()]/, "annotation.brackets"],
374
+ [/=/, "operator"],
375
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
376
+ ],
377
+ comment: [
378
+ [/[^\/*]+/, "comment"],
379
+ [/\/\*/, "comment", "@push"],
380
+ // nested comment
381
+ ["\\*/", "comment", "@pop"],
382
+ [/[\/*]/, "comment"]
383
+ ],
384
+ string: [
385
+ [/[^\\"]+/, "string"],
386
+ [/@escapes/, "string.escape"],
387
+ [/\\./, "string.escape.invalid"],
388
+ [/"/, { token: "string.quote", bracket: "@close", next: "@pop" }]
389
+ ],
390
+ stringSingle: [
391
+ [/[^\\']+/, "string"],
392
+ [/@escapes/, "string.escape"],
393
+ [/\\./, "string.escape.invalid"],
394
+ [/'/, { token: "string.quote", bracket: "@close", next: "@pop" }]
395
+ ],
396
+ constant: [
397
+ ["@boolLit", "keyword.constant"],
398
+ ["@hexLit", "number.hex"],
399
+ ["@octalLit", "number.octal"],
400
+ ["@decimalLit", "number"],
401
+ ["@floatLit", "number.float"],
402
+ [/("([^"\\]|\\.)*|'([^'\\]|\\.)*)$/, "string.invalid"],
403
+ // non-terminated string
404
+ [/"/, { token: "string.quote", bracket: "@open", next: "@string" }],
405
+ [/'/, { token: "string.quote", bracket: "@open", next: "@stringSingle" }],
406
+ [/{/, { token: "@brackets", bracket: "@open", next: "@prototext" }],
407
+ [/identifier/, "identifier"]
408
+ ],
409
+ whitespace: [
410
+ [/[ \t\r\n]+/, "white"],
411
+ [/\/\*/, "comment", "@comment"],
412
+ [/\/\/.*$/, "comment"]
413
+ ],
414
+ prototext: [
415
+ { include: "@whitespace" },
416
+ { include: "@constant" },
417
+ [/@identifier/, "identifier"],
418
+ [/[:;]/, "delimiter"],
419
+ [/}/, { token: "@brackets", bracket: "@close", next: "@pop" }]
420
+ ]
421
+ }
422
+ };
423
+ export {
424
+ t as conf,
425
+ n as language
426
+ };