@inspectr/ui 1.7.1 → 1.8.1

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 (90) hide show
  1. package/dist/abap-Bs8kvjsq.js +1398 -0
  2. package/dist/apex-Dspwrl5m.js +326 -0
  3. package/dist/azcli-k1BiOau1.js +68 -0
  4. package/dist/bat-BIP72KWc.js +100 -0
  5. package/dist/bicep-VhQeYhS3.js +102 -0
  6. package/dist/cameligo-DnuAXtHg.js +174 -0
  7. package/dist/clojure-BAuDPsal.js +761 -0
  8. package/dist/coffee-BV06qSnj.js +232 -0
  9. package/dist/cpp-Cz8Jeyrf.js +389 -0
  10. package/dist/csharp-F6hhlXFb.js +326 -0
  11. package/dist/csp-KzlEHCyI.js +53 -0
  12. package/dist/css-e4FKntZ3.js +187 -0
  13. package/dist/cssMode-CCxwJWiv.js +1571 -0
  14. package/dist/cypher-CpvDGKRr.js +263 -0
  15. package/dist/dart-DdHeFWR0.js +281 -0
  16. package/dist/dockerfile-aoNXDcio.js +130 -0
  17. package/dist/ecl-C4Q0DYuA.js +456 -0
  18. package/dist/editor.main-CP-oXbVe.js +110802 -0
  19. package/dist/elixir-C9X42b0T.js +569 -0
  20. package/dist/flow9-Bff42pfB.js +142 -0
  21. package/dist/freemarker2-BZveqxNO.js +989 -0
  22. package/dist/fsharp-C6vPAsHG.js +217 -0
  23. package/dist/go-DEr8zx9f.js +218 -0
  24. package/dist/graphql-BiNBBRFh.js +151 -0
  25. package/dist/handlebars-DFLvXTZ8.js +419 -0
  26. package/dist/hcl-2T9lKuFg.js +183 -0
  27. package/dist/html-DxXqfwFE.js +308 -0
  28. package/dist/htmlMode-C9gIo-LK.js +1581 -0
  29. package/dist/ini-CZGtssYM.js +71 -0
  30. package/dist/inspectr-ui.es.js +23538 -23271
  31. package/dist/inspectr-ui.umd.js +1184 -195
  32. package/dist/java-B260NeH3.js +232 -0
  33. package/dist/javascript-CYYD6pGr.js +70 -0
  34. package/dist/jsonMode-jVbIoPc6.js +1996 -0
  35. package/dist/julia-kuNLM9c5.js +511 -0
  36. package/dist/kotlin-Bz6kAefA.js +253 -0
  37. package/dist/less-AZUtS89I.js +162 -0
  38. package/dist/lexon-BcmgnyRb.js +157 -0
  39. package/dist/liquid-PYsubg5u.js +240 -0
  40. package/dist/lua-Dz1RbATg.js +162 -0
  41. package/dist/m3-CIMooLFn.js +210 -0
  42. package/dist/markdown-C1BsCK9P.js +229 -0
  43. package/dist/mdx-DRJsmowz.js +165 -0
  44. package/dist/mips-BovsnfLQ.js +198 -0
  45. package/dist/msdax-CiRB2ZB-.js +375 -0
  46. package/dist/mysql-BwdpPE19.js +878 -0
  47. package/dist/objective-c-D4nfHfso.js +183 -0
  48. package/dist/pascal--j5-PYtz.js +251 -0
  49. package/dist/pascaligo-C7TcJxNL.js +164 -0
  50. package/dist/perl-BzEWqUb5.js +626 -0
  51. package/dist/pgsql-B_KZ0mGX.js +851 -0
  52. package/dist/php-A19QHzQV.js +500 -0
  53. package/dist/pla-COeKY1hA.js +137 -0
  54. package/dist/postiats-BfMp7zJL.js +907 -0
  55. package/dist/powerquery-B0TS_5Gb.js +890 -0
  56. package/dist/powershell-5jSbKdYB.js +239 -0
  57. package/dist/protobuf-YgnOutn3.js +420 -0
  58. package/dist/pug-DLej6kn5.js +402 -0
  59. package/dist/python-M8MItOfu.js +301 -0
  60. package/dist/qsharp-AhjqtSHB.js +301 -0
  61. package/dist/r-D-F4P80w.js +243 -0
  62. package/dist/razor-CkROrZip.js +550 -0
  63. package/dist/redis-hwwIlMnV.js +302 -0
  64. package/dist/redshift-Bcm_kjEG.js +809 -0
  65. package/dist/restructuredtext-CrdzfPP-.js +174 -0
  66. package/dist/ruby-QC2UNm1s.js +511 -0
  67. package/dist/rust-5aqiQ3L5.js +343 -0
  68. package/dist/sb-B1g1ZfLJ.js +115 -0
  69. package/dist/scala-C2U4R5Gb.js +370 -0
  70. package/dist/scheme-DeFRbslr.js +108 -0
  71. package/dist/scss-RSTCiCmI.js +262 -0
  72. package/dist/shell-BpF-iNu8.js +221 -0
  73. package/dist/solidity-C00r2mbQ.js +1367 -0
  74. package/dist/sophia-DVW5ZKDB.js +199 -0
  75. package/dist/sparql-B0nmpxeX.js +201 -0
  76. package/dist/sql-CJwKPERn.js +853 -0
  77. package/dist/st-DPlKG5DT.js +416 -0
  78. package/dist/swift-YZBAbVHV.js +309 -0
  79. package/dist/systemverilog-CDQSaH63.js +576 -0
  80. package/dist/tcl-Dlu8sp6Q.js +232 -0
  81. package/dist/tsMode-D1me_v4f.js +886 -0
  82. package/dist/twig-C5TO7-kw.js +392 -0
  83. package/dist/typescript-D8U3Pc3R.js +343 -0
  84. package/dist/typespec-BsmjDEu7.js +117 -0
  85. package/dist/ui.css +1 -1
  86. package/dist/vb-ChHvIDrk.js +372 -0
  87. package/dist/wgsl-XEp1ju8c.js +439 -0
  88. package/dist/xml-CTIvZv70.js +95 -0
  89. package/dist/yaml-BgbINe9U.js +206 -0
  90. package/package.json +11 -12
@@ -0,0 +1,402 @@
1
+ var e = {
2
+ comments: {
3
+ lineComment: "//"
4
+ },
5
+ brackets: [
6
+ ["{", "}"],
7
+ ["[", "]"],
8
+ ["(", ")"]
9
+ ],
10
+ autoClosingPairs: [
11
+ { open: '"', close: '"', notIn: ["string", "comment"] },
12
+ { open: "'", close: "'", notIn: ["string", "comment"] },
13
+ { open: "{", close: "}", notIn: ["string", "comment"] },
14
+ { open: "[", close: "]", notIn: ["string", "comment"] },
15
+ { open: "(", close: ")", notIn: ["string", "comment"] }
16
+ ],
17
+ folding: {
18
+ offSide: !0
19
+ }
20
+ }, t = {
21
+ defaultToken: "",
22
+ tokenPostfix: ".pug",
23
+ ignoreCase: !0,
24
+ brackets: [
25
+ { token: "delimiter.curly", open: "{", close: "}" },
26
+ { token: "delimiter.array", open: "[", close: "]" },
27
+ { token: "delimiter.parenthesis", open: "(", close: ")" }
28
+ ],
29
+ keywords: [
30
+ "append",
31
+ "block",
32
+ "case",
33
+ "default",
34
+ "doctype",
35
+ "each",
36
+ "else",
37
+ "extends",
38
+ "for",
39
+ "if",
40
+ "in",
41
+ "include",
42
+ "mixin",
43
+ "typeof",
44
+ "unless",
45
+ "var",
46
+ "when"
47
+ ],
48
+ tags: [
49
+ "a",
50
+ "abbr",
51
+ "acronym",
52
+ "address",
53
+ "area",
54
+ "article",
55
+ "aside",
56
+ "audio",
57
+ "b",
58
+ "base",
59
+ "basefont",
60
+ "bdi",
61
+ "bdo",
62
+ "blockquote",
63
+ "body",
64
+ "br",
65
+ "button",
66
+ "canvas",
67
+ "caption",
68
+ "center",
69
+ "cite",
70
+ "code",
71
+ "col",
72
+ "colgroup",
73
+ "command",
74
+ "datalist",
75
+ "dd",
76
+ "del",
77
+ "details",
78
+ "dfn",
79
+ "div",
80
+ "dl",
81
+ "dt",
82
+ "em",
83
+ "embed",
84
+ "fieldset",
85
+ "figcaption",
86
+ "figure",
87
+ "font",
88
+ "footer",
89
+ "form",
90
+ "frame",
91
+ "frameset",
92
+ "h1",
93
+ "h2",
94
+ "h3",
95
+ "h4",
96
+ "h5",
97
+ "h6",
98
+ "head",
99
+ "header",
100
+ "hgroup",
101
+ "hr",
102
+ "html",
103
+ "i",
104
+ "iframe",
105
+ "img",
106
+ "input",
107
+ "ins",
108
+ "keygen",
109
+ "kbd",
110
+ "label",
111
+ "li",
112
+ "link",
113
+ "map",
114
+ "mark",
115
+ "menu",
116
+ "meta",
117
+ "meter",
118
+ "nav",
119
+ "noframes",
120
+ "noscript",
121
+ "object",
122
+ "ol",
123
+ "optgroup",
124
+ "option",
125
+ "output",
126
+ "p",
127
+ "param",
128
+ "pre",
129
+ "progress",
130
+ "q",
131
+ "rp",
132
+ "rt",
133
+ "ruby",
134
+ "s",
135
+ "samp",
136
+ "script",
137
+ "section",
138
+ "select",
139
+ "small",
140
+ "source",
141
+ "span",
142
+ "strike",
143
+ "strong",
144
+ "style",
145
+ "sub",
146
+ "summary",
147
+ "sup",
148
+ "table",
149
+ "tbody",
150
+ "td",
151
+ "textarea",
152
+ "tfoot",
153
+ "th",
154
+ "thead",
155
+ "time",
156
+ "title",
157
+ "tr",
158
+ "tracks",
159
+ "tt",
160
+ "u",
161
+ "ul",
162
+ "video",
163
+ "wbr"
164
+ ],
165
+ // we include these common regular expressions
166
+ symbols: /[\+\-\*\%\&\|\!\=\/\.\,\:]+/,
167
+ escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
168
+ tokenizer: {
169
+ root: [
170
+ // Tag or a keyword at start
171
+ [
172
+ /^(\s*)([a-zA-Z_-][\w-]*)/,
173
+ {
174
+ cases: {
175
+ "$2@tags": {
176
+ cases: {
177
+ "@eos": ["", "tag"],
178
+ "@default": ["", { token: "tag", next: "@tag.$1" }]
179
+ }
180
+ },
181
+ "$2@keywords": ["", { token: "keyword.$2" }],
182
+ "@default": ["", ""]
183
+ }
184
+ }
185
+ ],
186
+ // id
187
+ [
188
+ /^(\s*)(#[a-zA-Z_-][\w-]*)/,
189
+ {
190
+ cases: {
191
+ "@eos": ["", "tag.id"],
192
+ "@default": ["", { token: "tag.id", next: "@tag.$1" }]
193
+ }
194
+ }
195
+ ],
196
+ // class
197
+ [
198
+ /^(\s*)(\.[a-zA-Z_-][\w-]*)/,
199
+ {
200
+ cases: {
201
+ "@eos": ["", "tag.class"],
202
+ "@default": ["", { token: "tag.class", next: "@tag.$1" }]
203
+ }
204
+ }
205
+ ],
206
+ // plain text with pipe
207
+ [/^(\s*)(\|.*)$/, ""],
208
+ { include: "@whitespace" },
209
+ // keywords
210
+ [
211
+ /[a-zA-Z_$][\w$]*/,
212
+ {
213
+ cases: {
214
+ "@keywords": { token: "keyword.$0" },
215
+ "@default": ""
216
+ }
217
+ }
218
+ ],
219
+ // delimiters and operators
220
+ [/[{}()\[\]]/, "@brackets"],
221
+ [/@symbols/, "delimiter"],
222
+ // numbers
223
+ [/\d+\.\d+([eE][\-+]?\d+)?/, "number.float"],
224
+ [/\d+/, "number"],
225
+ // strings:
226
+ [/"/, "string", '@string."'],
227
+ [/'/, "string", "@string.'"]
228
+ ],
229
+ tag: [
230
+ [/(\.)(\s*$)/, [{ token: "delimiter", next: "@blockText.$S2." }, ""]],
231
+ [/\s+/, { token: "", next: "@simpleText" }],
232
+ // id
233
+ [
234
+ /#[a-zA-Z_-][\w-]*/,
235
+ {
236
+ cases: {
237
+ "@eos": { token: "tag.id", next: "@pop" },
238
+ "@default": "tag.id"
239
+ }
240
+ }
241
+ ],
242
+ // class
243
+ [
244
+ /\.[a-zA-Z_-][\w-]*/,
245
+ {
246
+ cases: {
247
+ "@eos": { token: "tag.class", next: "@pop" },
248
+ "@default": "tag.class"
249
+ }
250
+ }
251
+ ],
252
+ // attributes
253
+ [/\(/, { token: "delimiter.parenthesis", next: "@attributeList" }]
254
+ ],
255
+ simpleText: [
256
+ [/[^#]+$/, { token: "", next: "@popall" }],
257
+ [/[^#]+/, { token: "" }],
258
+ // interpolation
259
+ [
260
+ /(#{)([^}]*)(})/,
261
+ {
262
+ cases: {
263
+ "@eos": [
264
+ "interpolation.delimiter",
265
+ "interpolation",
266
+ {
267
+ token: "interpolation.delimiter",
268
+ next: "@popall"
269
+ }
270
+ ],
271
+ "@default": ["interpolation.delimiter", "interpolation", "interpolation.delimiter"]
272
+ }
273
+ }
274
+ ],
275
+ [/#$/, { token: "", next: "@popall" }],
276
+ [/#/, ""]
277
+ ],
278
+ attributeList: [
279
+ [/\s+/, ""],
280
+ [
281
+ /(\w+)(\s*=\s*)("|')/,
282
+ ["attribute.name", "delimiter", { token: "attribute.value", next: "@value.$3" }]
283
+ ],
284
+ [/\w+/, "attribute.name"],
285
+ [
286
+ /,/,
287
+ {
288
+ cases: {
289
+ "@eos": {
290
+ token: "attribute.delimiter",
291
+ next: "@popall"
292
+ },
293
+ "@default": "attribute.delimiter"
294
+ }
295
+ }
296
+ ],
297
+ [/\)$/, { token: "delimiter.parenthesis", next: "@popall" }],
298
+ [/\)/, { token: "delimiter.parenthesis", next: "@pop" }]
299
+ ],
300
+ whitespace: [
301
+ [/^(\s*)(\/\/.*)$/, { token: "comment", next: "@blockText.$1.comment" }],
302
+ [/[ \t\r\n]+/, ""],
303
+ [/<!--/, { token: "comment", next: "@comment" }]
304
+ ],
305
+ blockText: [
306
+ [
307
+ /^\s+.*$/,
308
+ {
309
+ cases: {
310
+ "($S2\\s+.*$)": { token: "$S3" },
311
+ "@default": { token: "@rematch", next: "@popall" }
312
+ }
313
+ }
314
+ ],
315
+ [/./, { token: "@rematch", next: "@popall" }]
316
+ ],
317
+ comment: [
318
+ [/[^<\-]+/, "comment.content"],
319
+ [/-->/, { token: "comment", next: "@pop" }],
320
+ [/<!--/, "comment.content.invalid"],
321
+ [/[<\-]/, "comment.content"]
322
+ ],
323
+ string: [
324
+ [
325
+ /[^\\"'#]+/,
326
+ {
327
+ cases: {
328
+ "@eos": { token: "string", next: "@popall" },
329
+ "@default": "string"
330
+ }
331
+ }
332
+ ],
333
+ [
334
+ /@escapes/,
335
+ {
336
+ cases: {
337
+ "@eos": { token: "string.escape", next: "@popall" },
338
+ "@default": "string.escape"
339
+ }
340
+ }
341
+ ],
342
+ [
343
+ /\\./,
344
+ {
345
+ cases: {
346
+ "@eos": {
347
+ token: "string.escape.invalid",
348
+ next: "@popall"
349
+ },
350
+ "@default": "string.escape.invalid"
351
+ }
352
+ }
353
+ ],
354
+ // interpolation
355
+ [/(#{)([^}]*)(})/, ["interpolation.delimiter", "interpolation", "interpolation.delimiter"]],
356
+ [/#/, "string"],
357
+ [
358
+ /["']/,
359
+ {
360
+ cases: {
361
+ "$#==$S2": { token: "string", next: "@pop" },
362
+ "@default": { token: "string" }
363
+ }
364
+ }
365
+ ]
366
+ ],
367
+ // Almost identical to above, except for escapes and the output token
368
+ value: [
369
+ [
370
+ /[^\\"']+/,
371
+ {
372
+ cases: {
373
+ "@eos": { token: "attribute.value", next: "@popall" },
374
+ "@default": "attribute.value"
375
+ }
376
+ }
377
+ ],
378
+ [
379
+ /\\./,
380
+ {
381
+ cases: {
382
+ "@eos": { token: "attribute.value", next: "@popall" },
383
+ "@default": "attribute.value"
384
+ }
385
+ }
386
+ ],
387
+ [
388
+ /["']/,
389
+ {
390
+ cases: {
391
+ "$#==$S2": { token: "attribute.value", next: "@pop" },
392
+ "@default": { token: "attribute.value" }
393
+ }
394
+ }
395
+ ]
396
+ ]
397
+ }
398
+ };
399
+ export {
400
+ e as conf,
401
+ t as language
402
+ };
@@ -0,0 +1,301 @@
1
+ import { m as o } from "./editor.main-CP-oXbVe.js";
2
+ var a = Object.defineProperty, l = Object.getOwnPropertyDescriptor, p = Object.getOwnPropertyNames, c = Object.prototype.hasOwnProperty, g = (t, e, n, s) => {
3
+ if (e && typeof e == "object" || typeof e == "function")
4
+ for (let r of p(e))
5
+ !c.call(t, r) && r !== n && a(t, r, { get: () => e[r], enumerable: !(s = l(e, r)) || s.enumerable });
6
+ return t;
7
+ }, d = (t, e, n) => (g(t, e, "default"), n), i = {};
8
+ d(i, o);
9
+ var m = {
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
+ onEnterRules: [
34
+ {
35
+ beforeText: new RegExp(
36
+ "^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async|match|case).*?:\\s*$"
37
+ ),
38
+ action: { indentAction: i.languages.IndentAction.Indent }
39
+ }
40
+ ],
41
+ folding: {
42
+ offSide: !0,
43
+ markers: {
44
+ start: new RegExp("^\\s*#region\\b"),
45
+ end: new RegExp("^\\s*#endregion\\b")
46
+ }
47
+ }
48
+ }, f = {
49
+ defaultToken: "",
50
+ tokenPostfix: ".python",
51
+ keywords: [
52
+ // This section is the result of running
53
+ // `import keyword; for k in sorted(keyword.kwlist + keyword.softkwlist): print(" '" + k + "',")`
54
+ // in a Python REPL,
55
+ // though note that the output from Python 3 is not a strict superset of the
56
+ // output from Python 2.
57
+ "False",
58
+ // promoted to keyword.kwlist in Python 3
59
+ "None",
60
+ // promoted to keyword.kwlist in Python 3
61
+ "True",
62
+ // promoted to keyword.kwlist in Python 3
63
+ "_",
64
+ // new in Python 3.10
65
+ "and",
66
+ "as",
67
+ "assert",
68
+ "async",
69
+ // new in Python 3
70
+ "await",
71
+ // new in Python 3
72
+ "break",
73
+ "case",
74
+ // new in Python 3.10
75
+ "class",
76
+ "continue",
77
+ "def",
78
+ "del",
79
+ "elif",
80
+ "else",
81
+ "except",
82
+ "exec",
83
+ // Python 2, but not 3.
84
+ "finally",
85
+ "for",
86
+ "from",
87
+ "global",
88
+ "if",
89
+ "import",
90
+ "in",
91
+ "is",
92
+ "lambda",
93
+ "match",
94
+ // new in Python 3.10
95
+ "nonlocal",
96
+ // new in Python 3
97
+ "not",
98
+ "or",
99
+ "pass",
100
+ "print",
101
+ // Python 2, but not 3.
102
+ "raise",
103
+ "return",
104
+ "try",
105
+ "type",
106
+ // new in Python 3.12
107
+ "while",
108
+ "with",
109
+ "yield",
110
+ "int",
111
+ "float",
112
+ "long",
113
+ "complex",
114
+ "hex",
115
+ "abs",
116
+ "all",
117
+ "any",
118
+ "apply",
119
+ "basestring",
120
+ "bin",
121
+ "bool",
122
+ "buffer",
123
+ "bytearray",
124
+ "callable",
125
+ "chr",
126
+ "classmethod",
127
+ "cmp",
128
+ "coerce",
129
+ "compile",
130
+ "complex",
131
+ "delattr",
132
+ "dict",
133
+ "dir",
134
+ "divmod",
135
+ "enumerate",
136
+ "eval",
137
+ "execfile",
138
+ "file",
139
+ "filter",
140
+ "format",
141
+ "frozenset",
142
+ "getattr",
143
+ "globals",
144
+ "hasattr",
145
+ "hash",
146
+ "help",
147
+ "id",
148
+ "input",
149
+ "intern",
150
+ "isinstance",
151
+ "issubclass",
152
+ "iter",
153
+ "len",
154
+ "locals",
155
+ "list",
156
+ "map",
157
+ "max",
158
+ "memoryview",
159
+ "min",
160
+ "next",
161
+ "object",
162
+ "oct",
163
+ "open",
164
+ "ord",
165
+ "pow",
166
+ "print",
167
+ "property",
168
+ "reversed",
169
+ "range",
170
+ "raw_input",
171
+ "reduce",
172
+ "reload",
173
+ "repr",
174
+ "reversed",
175
+ "round",
176
+ "self",
177
+ "set",
178
+ "setattr",
179
+ "slice",
180
+ "sorted",
181
+ "staticmethod",
182
+ "str",
183
+ "sum",
184
+ "super",
185
+ "tuple",
186
+ "type",
187
+ "unichr",
188
+ "unicode",
189
+ "vars",
190
+ "xrange",
191
+ "zip",
192
+ "__dict__",
193
+ "__methods__",
194
+ "__members__",
195
+ "__class__",
196
+ "__bases__",
197
+ "__name__",
198
+ "__mro__",
199
+ "__subclasses__",
200
+ "__init__",
201
+ "__import__"
202
+ ],
203
+ brackets: [
204
+ { open: "{", close: "}", token: "delimiter.curly" },
205
+ { open: "[", close: "]", token: "delimiter.bracket" },
206
+ { open: "(", close: ")", token: "delimiter.parenthesis" }
207
+ ],
208
+ tokenizer: {
209
+ root: [
210
+ { include: "@whitespace" },
211
+ { include: "@numbers" },
212
+ { include: "@strings" },
213
+ [/[,:;]/, "delimiter"],
214
+ [/[{}\[\]()]/, "@brackets"],
215
+ [/@[a-zA-Z_]\w*/, "tag"],
216
+ [
217
+ /[a-zA-Z_]\w*/,
218
+ {
219
+ cases: {
220
+ "@keywords": "keyword",
221
+ "@default": "identifier"
222
+ }
223
+ }
224
+ ]
225
+ ],
226
+ // Deal with white space, including single and multi-line comments
227
+ whitespace: [
228
+ [/\s+/, "white"],
229
+ [/(^#.*$)/, "comment"],
230
+ [/'''/, "string", "@endDocString"],
231
+ [/"""/, "string", "@endDblDocString"]
232
+ ],
233
+ endDocString: [
234
+ [/[^']+/, "string"],
235
+ [/\\'/, "string"],
236
+ [/'''/, "string", "@popall"],
237
+ [/'/, "string"]
238
+ ],
239
+ endDblDocString: [
240
+ [/[^"]+/, "string"],
241
+ [/\\"/, "string"],
242
+ [/"""/, "string", "@popall"],
243
+ [/"/, "string"]
244
+ ],
245
+ // Recognize hex, negatives, decimals, imaginaries, longs, and scientific notation
246
+ numbers: [
247
+ [/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/, "number.hex"],
248
+ [/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/, "number"]
249
+ ],
250
+ // Recognize strings, including those broken across lines with \ (but not without)
251
+ strings: [
252
+ [/'$/, "string.escape", "@popall"],
253
+ [/f'{1,3}/, "string.escape", "@fStringBody"],
254
+ [/'/, "string.escape", "@stringBody"],
255
+ [/"$/, "string.escape", "@popall"],
256
+ [/f"{1,3}/, "string.escape", "@fDblStringBody"],
257
+ [/"/, "string.escape", "@dblStringBody"]
258
+ ],
259
+ fStringBody: [
260
+ [/[^\\'\{\}]+$/, "string", "@popall"],
261
+ [/[^\\'\{\}]+/, "string"],
262
+ [/\{[^\}':!=]+/, "identifier", "@fStringDetail"],
263
+ [/\\./, "string"],
264
+ [/'/, "string.escape", "@popall"],
265
+ [/\\$/, "string"]
266
+ ],
267
+ stringBody: [
268
+ [/[^\\']+$/, "string", "@popall"],
269
+ [/[^\\']+/, "string"],
270
+ [/\\./, "string"],
271
+ [/'/, "string.escape", "@popall"],
272
+ [/\\$/, "string"]
273
+ ],
274
+ fDblStringBody: [
275
+ [/[^\\"\{\}]+$/, "string", "@popall"],
276
+ [/[^\\"\{\}]+/, "string"],
277
+ [/\{[^\}':!=]+/, "identifier", "@fStringDetail"],
278
+ [/\\./, "string"],
279
+ [/"/, "string.escape", "@popall"],
280
+ [/\\$/, "string"]
281
+ ],
282
+ dblStringBody: [
283
+ [/[^\\"]+$/, "string", "@popall"],
284
+ [/[^\\"]+/, "string"],
285
+ [/\\./, "string"],
286
+ [/"/, "string.escape", "@popall"],
287
+ [/\\$/, "string"]
288
+ ],
289
+ fStringDetail: [
290
+ [/[:][^}]+/, "string"],
291
+ [/[!][ars]/, "string"],
292
+ // only !a, !r, !s are supported by f-strings: https://docs.python.org/3/tutorial/inputoutput.html#formatted-string-literals
293
+ [/=/, "string"],
294
+ [/\}/, "identifier", "@pop"]
295
+ ]
296
+ }
297
+ };
298
+ export {
299
+ m as conf,
300
+ f as language
301
+ };