online-compiler-widget 0.0.4 → 1.0.2

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.
Files changed (161) hide show
  1. package/dist/abap-CrvW7_qN.js +1398 -0
  2. package/dist/apex-BAOI8p1v.js +327 -0
  3. package/dist/assets/css.worker-Cb0JI69t.js +93 -0
  4. package/dist/assets/html.worker-BNFZMwEc.js +470 -0
  5. package/dist/assets/json.worker-BCybXpia.js +58 -0
  6. package/dist/assets/ts.worker-DAVh1bw1.js +67731 -0
  7. package/dist/azcli-BlCk_UqW.js +68 -0
  8. package/dist/bat-DPoEelVx.js +100 -0
  9. package/dist/bicep-Cp1F394l.js +102 -0
  10. package/dist/cameligo-CWqtSlQs.js +174 -0
  11. package/dist/clojure-CKBp32Gf.js +761 -0
  12. package/dist/coffee-CDo6vc-J.js +232 -0
  13. package/dist/cpp-DokufPgf.js +389 -0
  14. package/dist/csharp-BQi3szM0.js +326 -0
  15. package/dist/csp-BSGtCCZ-.js +53 -0
  16. package/dist/css-DEPFDJfb.js +187 -0
  17. package/dist/cssMode-nHrB9Mnr.js +141 -0
  18. package/dist/cypher-DAb1vOxS.js +263 -0
  19. package/dist/dart-C8p4jewR.js +281 -0
  20. package/dist/dockerfile-DP0iLFPN.js +130 -0
  21. package/dist/ecl-BDQHA6fi.js +456 -0
  22. package/dist/elixir-D4II6kDM.js +569 -0
  23. package/dist/flow9-StcnL-VB.js +142 -0
  24. package/dist/freemarker2-BoiXdkJM.js +982 -0
  25. package/dist/fsharp-DdUVp3EN.js +217 -0
  26. package/dist/go-D1-I258M.js +218 -0
  27. package/dist/graphql-DWkL3f8U.js +151 -0
  28. package/dist/handlebars-C7PJzkmo.js +412 -0
  29. package/dist/hcl-D_0MNifv.js +183 -0
  30. package/dist/html-D_xe_tUa.js +301 -0
  31. package/dist/htmlMode-Dk_luXu_.js +152 -0
  32. package/dist/index-Ds0EJmOd.js +129200 -0
  33. package/dist/index.js +14 -0
  34. package/dist/ini-C4I2-MT7.js +71 -0
  35. package/dist/java-OBvaP_SS.js +232 -0
  36. package/dist/javascript-CUK67ITD.js +70 -0
  37. package/dist/jsonMode-BIAYTpVF.js +569 -0
  38. package/dist/julia-BmDH8Kkf.js +511 -0
  39. package/dist/kotlin-Dhu5AGOD.js +252 -0
  40. package/dist/less-CzmjXREq.js +162 -0
  41. package/dist/lexon-CV2c4pN9.js +157 -0
  42. package/dist/liquid-Cgsk8EmK.js +233 -0
  43. package/dist/lspLanguageFeatures-HqO1l9Me.js +1458 -0
  44. package/dist/lua-CFY5U8qF.js +162 -0
  45. package/dist/m3-BL_AnZVh.js +210 -0
  46. package/dist/markdown-CWKQPXCv.js +229 -0
  47. package/dist/mdx-QboWmT4M.js +158 -0
  48. package/dist/mips-ButYmJ5E.js +198 -0
  49. package/dist/msdax-C3cnXqDh.js +375 -0
  50. package/dist/mysql-YlSHaf6G.js +878 -0
  51. package/dist/objective-c-Dwnlproe.js +183 -0
  52. package/dist/pascal-UzGbSWEN.js +251 -0
  53. package/dist/pascaligo-CslTgu68.js +164 -0
  54. package/dist/perl-oj6r_mgw.js +626 -0
  55. package/dist/pgsql-DSBO0Mev.js +851 -0
  56. package/dist/php-YzCD--7j.js +500 -0
  57. package/dist/pla-CmylB8vQ.js +137 -0
  58. package/dist/postiats-CLFW5gNY.js +907 -0
  59. package/dist/powerquery-CmOWUvlh.js +890 -0
  60. package/dist/powershell-fHQcmBLK.js +239 -0
  61. package/dist/protobuf-p5BArb-9.js +420 -0
  62. package/dist/pug-gVdUDvqf.js +402 -0
  63. package/dist/python-kIZaMFF7.js +294 -0
  64. package/dist/qsharp-DnrWSUlt.js +301 -0
  65. package/dist/r-Cv309K2z.js +243 -0
  66. package/dist/razor-ms2cCMGp.js +543 -0
  67. package/dist/redis-DTcS4wMj.js +302 -0
  68. package/dist/redshift-hLxZVESM.js +809 -0
  69. package/dist/restructuredtext-C898lK4f.js +174 -0
  70. package/dist/ruby-CgKtnJIQ.js +511 -0
  71. package/dist/rust-bj8oxVnh.js +343 -0
  72. package/dist/sb-DWynz26l.js +115 -0
  73. package/dist/scala-BL5z1UEd.js +370 -0
  74. package/dist/scheme-DUJsH6VU.js +108 -0
  75. package/dist/scss-CxjmhvaL.js +262 -0
  76. package/dist/shell-D14Zs1dF.js +221 -0
  77. package/dist/solidity-WyRm-BGK.js +1367 -0
  78. package/dist/sophia-CKk-_Oa5.js +199 -0
  79. package/dist/sparql-DHtmINMZ.js +201 -0
  80. package/dist/sql-Dqaj5JHC.js +853 -0
  81. package/dist/st-Bj2IIaop.js +416 -0
  82. package/dist/style.css +1 -0
  83. package/dist/swift-DwxP72iM.js +312 -0
  84. package/dist/systemverilog-D7wJfuql.js +576 -0
  85. package/dist/tcl-0ApMt-eC.js +232 -0
  86. package/dist/tsMode-BiXWAJYS.js +946 -0
  87. package/dist/twig-DxwbdmvQ.js +392 -0
  88. package/dist/typescript-ByMmjZ38.js +336 -0
  89. package/dist/typespec-Fd-JwSuS.js +117 -0
  90. package/dist/vb-CxuyYE1I.js +372 -0
  91. package/dist/wgsl-DoEGc31J.js +439 -0
  92. package/dist/xml-iOXTZgNN.js +88 -0
  93. package/dist/yaml-RRlyy-QW.js +199 -0
  94. package/package.json +41 -36
  95. package/FileStorage/obj/FileStorage.csproj.EntityFrameworkCore.targets +0 -28
  96. package/README.md +0 -1
  97. package/eslint.config.js +0 -26
  98. package/index.html +0 -13
  99. package/index.tsx +0 -3
  100. package/openapitools.json +0 -7
  101. package/pnpm-workspace.yaml +0 -2
  102. package/public/vite.svg +0 -1
  103. package/src/App.css +0 -49
  104. package/src/App.tsx +0 -84
  105. package/src/api/.openapi-generator/FILES +0 -25
  106. package/src/api/.openapi-generator/VERSION +0 -1
  107. package/src/api/.openapi-generator-ignore +0 -23
  108. package/src/api/api.ts +0 -1312
  109. package/src/api/base.ts +0 -62
  110. package/src/api/common.ts +0 -113
  111. package/src/api/configuration.ts +0 -121
  112. package/src/api/docs/CompilationError.md +0 -26
  113. package/src/api/docs/CompileRequest.md +0 -22
  114. package/src/api/docs/CompileResult.md +0 -28
  115. package/src/api/docs/CompilerApi.md +0 -263
  116. package/src/api/docs/CreateFileDto.md +0 -22
  117. package/src/api/docs/CreateProjectRequest.md +0 -20
  118. package/src/api/docs/FileApi.md +0 -274
  119. package/src/api/docs/ProcessStatus.md +0 -28
  120. package/src/api/docs/ProjectApi.md +0 -362
  121. package/src/api/docs/ProjectInfo.md +0 -24
  122. package/src/api/docs/ProjectStats.md +0 -28
  123. package/src/api/docs/RenameFileDto.md +0 -20
  124. package/src/api/docs/RenameProjectRequest.md +0 -20
  125. package/src/api/docs/RunRequest.md +0 -24
  126. package/src/api/docs/RunResult.md +0 -30
  127. package/src/api/docs/RunningProjectInfo.md +0 -26
  128. package/src/api/docs/UpdateFileDto.md +0 -20
  129. package/src/api/git_push.sh +0 -57
  130. package/src/api/index.ts +0 -18
  131. package/src/assets/Badge.svg +0 -17
  132. package/src/assets/closeIcon.svg +0 -20
  133. package/src/assets/documentIcon.svg +0 -11
  134. package/src/assets/history.svg +0 -11
  135. package/src/assets/output.svg +0 -12
  136. package/src/assets/plus.svg +0 -20
  137. package/src/assets/react.svg +0 -1
  138. package/src/assets/save-icon.svg +0 -11
  139. package/src/assets/shield.svg +0 -10
  140. package/src/assets/start.svg +0 -11
  141. package/src/assets/stop.svg +0 -11
  142. package/src/components/CompilerWidget.module.scss +0 -169
  143. package/src/components/CompilerWidget.tsx +0 -331
  144. package/src/components/FileExplorer.module.scss +0 -372
  145. package/src/components/FileExplorer.tsx +0 -285
  146. package/src/components/MonacoEditorWrapper.module.scss +0 -29
  147. package/src/components/MonacoEditorWrapper.tsx +0 -74
  148. package/src/components/OutputPanel.module.scss +0 -123
  149. package/src/components/OutputPanel.tsx +0 -53
  150. package/src/components/RunContainer.module.scss +0 -150
  151. package/src/components/RunContainer.tsx +0 -34
  152. package/src/hooks/useCompiler.ts +0 -228
  153. package/src/hooks/useInitialNodes.ts +0 -0
  154. package/src/index.css +0 -78
  155. package/src/main.tsx +0 -8
  156. package/src/types/EditorDocument.ts +0 -8
  157. package/swagger.json +0 -1020
  158. package/tsconfig.app.json +0 -29
  159. package/tsconfig.json +0 -7
  160. package/tsconfig.node.json +0 -26
  161. package/vite.config.ts +0 -8
@@ -0,0 +1,262 @@
1
+ const e = {
2
+ wordPattern: /(#?-?\d*\.\d\w*%?)|([@$#!.:]?[\w-?]+%?)|[@#!.]/g,
3
+ comments: {
4
+ blockComment: ["/*", "*/"],
5
+ lineComment: "//"
6
+ },
7
+ brackets: [
8
+ ["{", "}"],
9
+ ["[", "]"],
10
+ ["(", ")"]
11
+ ],
12
+ autoClosingPairs: [
13
+ { open: "{", close: "}", notIn: ["string", "comment"] },
14
+ { open: "[", close: "]", notIn: ["string", "comment"] },
15
+ { open: "(", close: ")", notIn: ["string", "comment"] },
16
+ { open: '"', close: '"', notIn: ["string", "comment"] },
17
+ { open: "'", close: "'", notIn: ["string", "comment"] }
18
+ ],
19
+ surroundingPairs: [
20
+ { open: "{", close: "}" },
21
+ { open: "[", close: "]" },
22
+ { open: "(", close: ")" },
23
+ { open: '"', close: '"' },
24
+ { open: "'", close: "'" }
25
+ ],
26
+ folding: {
27
+ markers: {
28
+ start: new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),
29
+ end: new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")
30
+ }
31
+ }
32
+ }, t = {
33
+ defaultToken: "",
34
+ tokenPostfix: ".scss",
35
+ ws: `[
36
+ \r\f]*`,
37
+ // whitespaces (referenced in several rules)
38
+ identifier: "-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",
39
+ brackets: [
40
+ { open: "{", close: "}", token: "delimiter.curly" },
41
+ { open: "[", close: "]", token: "delimiter.bracket" },
42
+ { open: "(", close: ")", token: "delimiter.parenthesis" },
43
+ { open: "<", close: ">", token: "delimiter.angle" }
44
+ ],
45
+ tokenizer: {
46
+ root: [{ include: "@selector" }],
47
+ selector: [
48
+ { include: "@comments" },
49
+ { include: "@import" },
50
+ { include: "@variabledeclaration" },
51
+ { include: "@warndebug" },
52
+ // sass: log statements
53
+ ["[@](include)", { token: "keyword", next: "@includedeclaration" }],
54
+ // sass: include statement
55
+ [
56
+ "[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",
57
+ { token: "keyword", next: "@keyframedeclaration" }
58
+ ],
59
+ ["[@](page|content|font-face|-moz-document)", { token: "keyword" }],
60
+ // sass: placeholder for includes
61
+ ["[@](charset|namespace)", { token: "keyword", next: "@declarationbody" }],
62
+ ["[@](function)", { token: "keyword", next: "@functiondeclaration" }],
63
+ ["[@](mixin)", { token: "keyword", next: "@mixindeclaration" }],
64
+ ["url(\\-prefix)?\\(", { token: "meta", next: "@urldeclaration" }],
65
+ { include: "@controlstatement" },
66
+ // sass control statements
67
+ { include: "@selectorname" },
68
+ ["[&\\*]", "tag"],
69
+ // selector symbols
70
+ ["[>\\+,]", "delimiter"],
71
+ // selector operators
72
+ ["\\[", { token: "delimiter.bracket", next: "@selectorattribute" }],
73
+ ["{", { token: "delimiter.curly", next: "@selectorbody" }]
74
+ ],
75
+ selectorbody: [
76
+ ["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))", "attribute.name", "@rulevalue"],
77
+ // rule definition: to distinguish from a nested selector check for whitespace, number or a semicolon
78
+ { include: "@selector" },
79
+ // sass: nested selectors
80
+ ["[@](extend)", { token: "keyword", next: "@extendbody" }],
81
+ // sass: extend other selectors
82
+ ["[@](return)", { token: "keyword", next: "@declarationbody" }],
83
+ ["}", { token: "delimiter.curly", next: "@pop" }]
84
+ ],
85
+ selectorname: [
86
+ ["#{", { token: "meta", next: "@variableinterpolation" }],
87
+ // sass: interpolation
88
+ ["(\\.|#(?=[^{])|%|(@identifier)|:)+", "tag"]
89
+ // selector (.foo, div, ...)
90
+ ],
91
+ selectorattribute: [{ include: "@term" }, ["]", { token: "delimiter.bracket", next: "@pop" }]],
92
+ term: [
93
+ { include: "@comments" },
94
+ ["url(\\-prefix)?\\(", { token: "meta", next: "@urldeclaration" }],
95
+ { include: "@functioninvocation" },
96
+ { include: "@numbers" },
97
+ { include: "@strings" },
98
+ { include: "@variablereference" },
99
+ ["(and\\b|or\\b|not\\b)", "operator"],
100
+ { include: "@name" },
101
+ ["([<>=\\+\\-\\*\\/\\^\\|\\~,])", "operator"],
102
+ [",", "delimiter"],
103
+ ["!default", "literal"],
104
+ ["\\(", { token: "delimiter.parenthesis", next: "@parenthizedterm" }]
105
+ ],
106
+ rulevalue: [
107
+ { include: "@term" },
108
+ ["!important", "literal"],
109
+ [";", "delimiter", "@pop"],
110
+ ["{", { token: "delimiter.curly", switchTo: "@nestedproperty" }],
111
+ // sass: nested properties
112
+ ["(?=})", { token: "", next: "@pop" }]
113
+ // missing semicolon
114
+ ],
115
+ nestedproperty: [
116
+ ["[*_]?@identifier@ws:", "attribute.name", "@rulevalue"],
117
+ { include: "@comments" },
118
+ ["}", { token: "delimiter.curly", next: "@pop" }]
119
+ ],
120
+ warndebug: [["[@](warn|debug)", { token: "keyword", next: "@declarationbody" }]],
121
+ import: [["[@](import)", { token: "keyword", next: "@declarationbody" }]],
122
+ variabledeclaration: [
123
+ // sass variables
124
+ ["\\$@identifier@ws:", "variable.decl", "@declarationbody"]
125
+ ],
126
+ urldeclaration: [
127
+ { include: "@strings" },
128
+ [`[^)\r
129
+ ]+`, "string"],
130
+ ["\\)", { token: "meta", next: "@pop" }]
131
+ ],
132
+ parenthizedterm: [
133
+ { include: "@term" },
134
+ ["\\)", { token: "delimiter.parenthesis", next: "@pop" }]
135
+ ],
136
+ declarationbody: [
137
+ { include: "@term" },
138
+ [";", "delimiter", "@pop"],
139
+ ["(?=})", { token: "", next: "@pop" }]
140
+ // missing semicolon
141
+ ],
142
+ extendbody: [
143
+ { include: "@selectorname" },
144
+ ["!optional", "literal"],
145
+ [";", "delimiter", "@pop"],
146
+ ["(?=})", { token: "", next: "@pop" }]
147
+ // missing semicolon
148
+ ],
149
+ variablereference: [
150
+ // sass variable reference
151
+ ["\\$@identifier", "variable.ref"],
152
+ ["\\.\\.\\.", "operator"],
153
+ // var args in reference
154
+ ["#{", { token: "meta", next: "@variableinterpolation" }]
155
+ // sass var resolve
156
+ ],
157
+ variableinterpolation: [
158
+ { include: "@variablereference" },
159
+ ["}", { token: "meta", next: "@pop" }]
160
+ ],
161
+ comments: [
162
+ ["\\/\\*", "comment", "@comment"],
163
+ ["\\/\\/+.*", "comment"]
164
+ ],
165
+ comment: [
166
+ ["\\*\\/", "comment", "@pop"],
167
+ [".", "comment"]
168
+ ],
169
+ name: [["@identifier", "attribute.value"]],
170
+ numbers: [
171
+ ["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?", { token: "number", next: "@units" }],
172
+ ["#[0-9a-fA-F_]+(?!\\w)", "number.hex"]
173
+ ],
174
+ units: [
175
+ [
176
+ "(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?",
177
+ "number",
178
+ "@pop"
179
+ ]
180
+ ],
181
+ functiondeclaration: [
182
+ ["@identifier@ws\\(", { token: "meta", next: "@parameterdeclaration" }],
183
+ ["{", { token: "delimiter.curly", switchTo: "@functionbody" }]
184
+ ],
185
+ mixindeclaration: [
186
+ // mixin with parameters
187
+ ["@identifier@ws\\(", { token: "meta", next: "@parameterdeclaration" }],
188
+ // mixin without parameters
189
+ ["@identifier", "meta"],
190
+ ["{", { token: "delimiter.curly", switchTo: "@selectorbody" }]
191
+ ],
192
+ parameterdeclaration: [
193
+ ["\\$@identifier@ws:", "variable.decl"],
194
+ ["\\.\\.\\.", "operator"],
195
+ // var args in declaration
196
+ [",", "delimiter"],
197
+ { include: "@term" },
198
+ ["\\)", { token: "meta", next: "@pop" }]
199
+ ],
200
+ includedeclaration: [
201
+ { include: "@functioninvocation" },
202
+ ["@identifier", "meta"],
203
+ [";", "delimiter", "@pop"],
204
+ ["(?=})", { token: "", next: "@pop" }],
205
+ // missing semicolon
206
+ ["{", { token: "delimiter.curly", switchTo: "@selectorbody" }]
207
+ ],
208
+ keyframedeclaration: [
209
+ ["@identifier", "meta"],
210
+ ["{", { token: "delimiter.curly", switchTo: "@keyframebody" }]
211
+ ],
212
+ keyframebody: [
213
+ { include: "@term" },
214
+ ["{", { token: "delimiter.curly", next: "@selectorbody" }],
215
+ ["}", { token: "delimiter.curly", next: "@pop" }]
216
+ ],
217
+ controlstatement: [
218
+ [
219
+ "[@](if|else|for|while|each|media)",
220
+ { token: "keyword.flow", next: "@controlstatementdeclaration" }
221
+ ]
222
+ ],
223
+ controlstatementdeclaration: [
224
+ ["(in|from|through|if|to)\\b", { token: "keyword.flow" }],
225
+ { include: "@term" },
226
+ ["{", { token: "delimiter.curly", switchTo: "@selectorbody" }]
227
+ ],
228
+ functionbody: [
229
+ ["[@](return)", { token: "keyword" }],
230
+ { include: "@variabledeclaration" },
231
+ { include: "@term" },
232
+ { include: "@controlstatement" },
233
+ [";", "delimiter"],
234
+ ["}", { token: "delimiter.curly", next: "@pop" }]
235
+ ],
236
+ functioninvocation: [["@identifier\\(", { token: "meta", next: "@functionarguments" }]],
237
+ functionarguments: [
238
+ ["\\$@identifier@ws:", "attribute.name"],
239
+ ["[,]", "delimiter"],
240
+ { include: "@term" },
241
+ ["\\)", { token: "meta", next: "@pop" }]
242
+ ],
243
+ strings: [
244
+ ['~?"', { token: "string.delimiter", next: "@stringenddoublequote" }],
245
+ ["~?'", { token: "string.delimiter", next: "@stringendquote" }]
246
+ ],
247
+ stringenddoublequote: [
248
+ ["\\\\.", "string"],
249
+ ['"', { token: "string.delimiter", next: "@pop" }],
250
+ [".", "string"]
251
+ ],
252
+ stringendquote: [
253
+ ["\\\\.", "string"],
254
+ ["'", { token: "string.delimiter", next: "@pop" }],
255
+ [".", "string"]
256
+ ]
257
+ }
258
+ };
259
+ export {
260
+ e as conf,
261
+ t as language
262
+ };
@@ -0,0 +1,221 @@
1
+ const e = {
2
+ comments: {
3
+ lineComment: "#"
4
+ },
5
+ brackets: [
6
+ ["{", "}"],
7
+ ["[", "]"],
8
+ ["(", ")"]
9
+ ],
10
+ autoClosingPairs: [
11
+ { open: "{", close: "}" },
12
+ { open: "[", close: "]" },
13
+ { open: "(", close: ")" },
14
+ { open: '"', close: '"' },
15
+ { open: "'", close: "'" },
16
+ { open: "`", close: "`" }
17
+ ],
18
+ surroundingPairs: [
19
+ { open: "{", close: "}" },
20
+ { open: "[", close: "]" },
21
+ { open: "(", close: ")" },
22
+ { open: '"', close: '"' },
23
+ { open: "'", close: "'" },
24
+ { open: "`", close: "`" }
25
+ ]
26
+ }, r = {
27
+ defaultToken: "",
28
+ ignoreCase: !0,
29
+ tokenPostfix: ".shell",
30
+ brackets: [
31
+ { token: "delimiter.bracket", open: "{", close: "}" },
32
+ { token: "delimiter.parenthesis", open: "(", close: ")" },
33
+ { token: "delimiter.square", open: "[", close: "]" }
34
+ ],
35
+ keywords: [
36
+ "if",
37
+ "then",
38
+ "do",
39
+ "else",
40
+ "elif",
41
+ "while",
42
+ "until",
43
+ "for",
44
+ "in",
45
+ "esac",
46
+ "fi",
47
+ "fin",
48
+ "fil",
49
+ "done",
50
+ "exit",
51
+ "set",
52
+ "unset",
53
+ "export",
54
+ "function"
55
+ ],
56
+ builtins: [
57
+ "ab",
58
+ "awk",
59
+ "bash",
60
+ "beep",
61
+ "cat",
62
+ "cc",
63
+ "cd",
64
+ "chown",
65
+ "chmod",
66
+ "chroot",
67
+ "clear",
68
+ "cp",
69
+ "curl",
70
+ "cut",
71
+ "diff",
72
+ "echo",
73
+ "find",
74
+ "gawk",
75
+ "gcc",
76
+ "get",
77
+ "git",
78
+ "grep",
79
+ "hg",
80
+ "kill",
81
+ "killall",
82
+ "ln",
83
+ "ls",
84
+ "make",
85
+ "mkdir",
86
+ "openssl",
87
+ "mv",
88
+ "nc",
89
+ "node",
90
+ "npm",
91
+ "ping",
92
+ "ps",
93
+ "restart",
94
+ "rm",
95
+ "rmdir",
96
+ "sed",
97
+ "service",
98
+ "sh",
99
+ "shopt",
100
+ "shred",
101
+ "source",
102
+ "sort",
103
+ "sleep",
104
+ "ssh",
105
+ "start",
106
+ "stop",
107
+ "su",
108
+ "sudo",
109
+ "svn",
110
+ "tee",
111
+ "telnet",
112
+ "top",
113
+ "touch",
114
+ "vi",
115
+ "vim",
116
+ "wall",
117
+ "wc",
118
+ "wget",
119
+ "who",
120
+ "write",
121
+ "yes",
122
+ "zsh"
123
+ ],
124
+ startingWithDash: /\-+\w+/,
125
+ identifiersWithDashes: /[a-zA-Z]\w+(?:@startingWithDash)+/,
126
+ // we include these common regular expressions
127
+ symbols: /[=><!~?&|+\-*\/\^;\.,]+/,
128
+ // The main tokenizer for our languages
129
+ tokenizer: {
130
+ root: [
131
+ [/@identifiersWithDashes/, ""],
132
+ [/(\s)((?:@startingWithDash)+)/, ["white", "attribute.name"]],
133
+ [
134
+ /[a-zA-Z]\w*/,
135
+ {
136
+ cases: {
137
+ "@keywords": "keyword",
138
+ "@builtins": "type.identifier",
139
+ "@default": ""
140
+ }
141
+ }
142
+ ],
143
+ { include: "@whitespace" },
144
+ { include: "@strings" },
145
+ { include: "@parameters" },
146
+ { include: "@heredoc" },
147
+ [/[{}\[\]()]/, "@brackets"],
148
+ [/@symbols/, "delimiter"],
149
+ { include: "@numbers" },
150
+ [/[,;]/, "delimiter"]
151
+ ],
152
+ whitespace: [
153
+ [/\s+/, "white"],
154
+ [/(^#!.*$)/, "metatag"],
155
+ [/(^#.*$)/, "comment"]
156
+ ],
157
+ numbers: [
158
+ [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
159
+ [/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/, "number.hex"],
160
+ [/\d+/, "number"]
161
+ ],
162
+ // Recognize strings, including those broken across lines
163
+ strings: [
164
+ [/'/, "string", "@stringBody"],
165
+ [/"/, "string", "@dblStringBody"]
166
+ ],
167
+ stringBody: [
168
+ [/'/, "string", "@popall"],
169
+ [/./, "string"]
170
+ ],
171
+ dblStringBody: [
172
+ [/"/, "string", "@popall"],
173
+ [/./, "string"]
174
+ ],
175
+ heredoc: [
176
+ [
177
+ /(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,
178
+ [
179
+ "constants",
180
+ "white",
181
+ "string.heredoc.delimiter",
182
+ "string.heredoc",
183
+ "string.heredoc.delimiter"
184
+ ]
185
+ ]
186
+ ],
187
+ parameters: [
188
+ [/\$\d+/, "variable.predefined"],
189
+ [/\$\w+/, "variable"],
190
+ [/\$[*@#?\-$!0_]/, "variable"],
191
+ [/\$'/, "variable", "@parameterBodyQuote"],
192
+ [/\$"/, "variable", "@parameterBodyDoubleQuote"],
193
+ [/\$\(/, "variable", "@parameterBodyParen"],
194
+ [/\$\{/, "variable", "@parameterBodyCurlyBrace"]
195
+ ],
196
+ parameterBodyQuote: [
197
+ [/[^#:%*@\-!_']+/, "variable"],
198
+ [/[#:%*@\-!_]/, "delimiter"],
199
+ [/[']/, "variable", "@pop"]
200
+ ],
201
+ parameterBodyDoubleQuote: [
202
+ [/[^#:%*@\-!_"]+/, "variable"],
203
+ [/[#:%*@\-!_]/, "delimiter"],
204
+ [/["]/, "variable", "@pop"]
205
+ ],
206
+ parameterBodyParen: [
207
+ [/[^#:%*@\-!_)]+/, "variable"],
208
+ [/[#:%*@\-!_]/, "delimiter"],
209
+ [/[)]/, "variable", "@pop"]
210
+ ],
211
+ parameterBodyCurlyBrace: [
212
+ [/[^#:%*@\-!_}]+/, "variable"],
213
+ [/[#:%*@\-!_]/, "delimiter"],
214
+ [/[}]/, "variable", "@pop"]
215
+ ]
216
+ }
217
+ };
218
+ export {
219
+ e as conf,
220
+ r as language
221
+ };