@salesforcedevs/dx-components 1.18.8 → 1.19.3-layoutfix-alpha1

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.
@@ -1,855 +0,0 @@
1
- {
2
- "name": "afscript",
3
- "scopeName": "source.afscript",
4
- "fileTypes": ["afscript"],
5
- "patterns": [
6
- {
7
- "name": "comment.line.afscript",
8
- "match": "#.*$"
9
- },
10
- {
11
- "name": "meta.config.afscript",
12
- "begin": "^(config):",
13
- "beginCaptures": {
14
- "1": { "name": "keyword.control.block.afscript" }
15
- },
16
- "end": "^(?=topic|variables|start_agent|system|$)",
17
- "patterns": [
18
- {
19
- "name": "keyword.config.key.afscript",
20
- "match": "^\\s+(model_provider|user_locale|locale|agent_id|agent_name|agent_version|agent_type|default_agent_user|language|developer_name|description)(?=:)"
21
- },
22
- {
23
- "name": "entity.name.config.afscript",
24
- "match": "^\\s+([a-zA-Z_][a-zA-Z0-9_]*)(?=:)"
25
- },
26
- { "include": "#values" }
27
- ]
28
- },
29
- {
30
- "name": "meta.variables.afscript",
31
- "begin": "^(variables):",
32
- "beginCaptures": {
33
- "1": { "name": "keyword.control.block.afscript" }
34
- },
35
- "end": "^(?=topic|config|start_agent|system|$)",
36
- "patterns": [
37
- {
38
- "name": "keyword.variable.metadata.afscript",
39
- "match": "^\\s{8}(description|source)(?=:)"
40
- },
41
- {
42
- "name": "variable.definition.afscript",
43
- "match": "^\\s+([a-zA-Z_][a-zA-Z0-9_]*)(?=:)"
44
- },
45
- {
46
- "name": "keyword.variable.source.afscript",
47
- "match": "\\b(custom|context)\\b"
48
- },
49
- {
50
- "name": "storage.type.afscript",
51
- "match": "\\b(string|number|boolean|object|date|timestamp|currency|id|list)\\b"
52
- },
53
- { "include": "#json-structures" },
54
- { "include": "#values" }
55
- ]
56
- },
57
- {
58
- "name": "meta.system.afscript",
59
- "begin": "^(system):",
60
- "beginCaptures": {
61
- "1": { "name": "keyword.control.block.afscript" }
62
- },
63
- "end": "^(?=topic|config|variables|start_agent|$)",
64
- "patterns": [
65
- {
66
- "name": "keyword.system.afscript",
67
- "match": "\\b(instructions|messages|prompt)(?=:)"
68
- },
69
- {
70
- "name": "keyword.system.message-type.afscript",
71
- "match": "\\b(error|welcome)(?=:)"
72
- },
73
- { "include": "#multiline-instructions" },
74
- { "include": "#values" }
75
- ]
76
- },
77
- {
78
- "name": "meta.topic.afscript",
79
- "begin": "^(topic)\\s+([a-zA-Z_][a-zA-Z0-9_]*):",
80
- "beginCaptures": {
81
- "1": { "name": "keyword.control.block.afscript" },
82
- "2": { "name": "entity.name.topic.afscript" }
83
- },
84
- "end": "^(?=topic|config|variables|start_agent|system|$)",
85
- "patterns": [
86
- { "include": "#action-definitions" },
87
- { "include": "#agent-task" },
88
- { "include": "#task-content" },
89
- { "include": "#override-instructions" },
90
- { "include": "#reasoning-instructions" },
91
- { "include": "#reasoning-actions" },
92
- { "include": "#directives" },
93
- {
94
- "name": "keyword.topic.section.afscript",
95
- "match": "\\b(actions|action_definitions|before_reasoning|after_reasoning|reasoning_actions|override|variables|instructions)(?=:)"
96
- },
97
- {
98
- "name": "keyword.topic.section.afscript",
99
- "match": "^\\s{4}(description)(?=:)"
100
- },
101
- {
102
- "name": "keyword.override.path.afscript",
103
- "match": "\\b(system\\.instructions)\\b"
104
- },
105
- {
106
- "name": "storage.type.afscript",
107
- "match": "\\b(string|number|boolean|object|date|timestamp|currency|id|list)\\b"
108
- },
109
- { "include": "#operators" },
110
- { "include": "#punctuation" },
111
- { "include": "#values" }
112
- ]
113
- },
114
- {
115
- "name": "meta.start-agent.afscript",
116
- "begin": "^(start_agent)(?:\\s+([a-zA-Z_][a-zA-Z0-9_]*))?",
117
- "beginCaptures": {
118
- "1": { "name": "keyword.control.block.afscript" },
119
- "2": { "name": "entity.name.agent.afscript" }
120
- },
121
- "end": "^(?=topic|config|variables|start_agent|system|$)",
122
- "patterns": [
123
- { "include": "#action-definitions" },
124
- { "include": "#agent-task" },
125
- { "include": "#task-content" },
126
- { "include": "#override-instructions" },
127
- { "include": "#reasoning-instructions" },
128
- { "include": "#reasoning-actions" },
129
- { "include": "#directives" },
130
- {
131
- "name": "keyword.topic.section.afscript",
132
- "match": "\\b(actions|action_definitions|before_reasoning|after_reasoning|reasoning_actions|override|variables|instructions)(?=:)"
133
- },
134
- {
135
- "name": "keyword.topic.section.afscript",
136
- "match": "^\\s{4}(description)(?=:)"
137
- },
138
- {
139
- "name": "storage.type.afscript",
140
- "match": "\\b(string|number|boolean|object|date|timestamp|currency|id|list)\\b"
141
- },
142
- { "include": "#operators" },
143
- { "include": "#punctuation" },
144
- { "include": "#values" }
145
- ]
146
- },
147
- {
148
- "name": "keyword.control.conditional.available.afscript",
149
- "match": "\\bavailable when\\b"
150
- },
151
- {
152
- "name": "meta.alias.assignment.afscript",
153
- "match": "\\b(as)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\b",
154
- "captures": {
155
- "1": { "name": "keyword.control.afscript" },
156
- "2": { "name": "entity.name.alias.afscript" }
157
- }
158
- },
159
- {
160
- "name": "keyword.control.afscript",
161
- "match": "\\b(if|else|run|set|with|and|or|implementation)\\b|\\btransition to\\b"
162
- },
163
- {
164
- "name": "constant.language.afscript",
165
- "match": "\\b(True|False)\\b"
166
- },
167
- {
168
- "name": "constant.other.timestamp.afscript",
169
- "match": "(?<=\\s|=|,|\\[)\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?Z?\\b"
170
- },
171
- {
172
- "name": "constant.other.date.afscript",
173
- "match": "(?<=\\s|=|,|\\[)\\d{4}-\\d{2}-\\d{2}(?!T)\\b"
174
- },
175
- {
176
- "name": "constant.numeric.afscript",
177
- "match": "\\b\\d+(\\.\\d+)?\\b"
178
- },
179
- {
180
- "name": "string.quoted.double.afscript",
181
- "begin": "\"",
182
- "end": "\"",
183
- "patterns": [
184
- { "include": "#template-expression" },
185
- {
186
- "name": "constant.character.escape.afscript",
187
- "match": "\\\\."
188
- }
189
- ]
190
- },
191
- {
192
- "name": "meta.utils.call.afscript",
193
- "match": "(@utils)(\\.)([a-zA-Z_][a-zA-Z0-9_]*)\\b",
194
- "captures": {
195
- "1": { "name": "support.class.afscript" },
196
- "2": { "name": "punctuation.accessor.dot.afscript" },
197
- "3": { "name": "entity.name.function.afscript" }
198
- }
199
- },
200
- {
201
- "name": "keyword.control.transition.afscript",
202
- "match": "\\s+to\\s+"
203
- },
204
- {
205
- "name": "meta.variable.reference.afscript",
206
- "match": "(@)(variable|result|input|topic|action)(\\.)([a-zA-Z_][a-zA-Z0-9_]*)",
207
- "captures": {
208
- "1": { "name": "support.class.afscript" },
209
- "2": { "name": "support.class.afscript" },
210
- "3": { "name": "punctuation.accessor.dot.afscript" },
211
- "4": { "name": "variable.other.member.afscript" }
212
- }
213
- },
214
- {
215
- "name": "support.class.afscript",
216
- "match": "@[a-zA-Z_][a-zA-Z0-9_]*"
217
- },
218
- {
219
- "name": "variable.other.member.afscript",
220
- "match": "(?<=@(?:variable|topic|input|action|result)\\.)\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"
221
- },
222
- {
223
- "name": "operator.arithmetic.afscript",
224
- "match": "[+\\-\\*/%]"
225
- },
226
- {
227
- "name": "operator.comparison.afscript",
228
- "match": "==|!=|<=|>=|<|>"
229
- },
230
- {
231
- "name": "operator.assignment.afscript",
232
- "match": "(?<![=!<>])=(?!=)"
233
- },
234
- {
235
- "name": "punctuation.definition.afscript",
236
- "match": "[{}\\[\\]()]"
237
- },
238
- { "include": "#punctuation" },
239
- { "include": "#template-expression" }
240
- ],
241
- "repository": {
242
- "values": {
243
- "patterns": [
244
- { "include": "#operators" },
245
- { "include": "#template-expression" },
246
- { "include": "#punctuation" },
247
- {
248
- "name": "string.quoted.double.afscript",
249
- "begin": "\"",
250
- "end": "\"",
251
- "patterns": [
252
- { "include": "#template-expression" },
253
- {
254
- "name": "constant.character.escape.afscript",
255
- "match": "\\\\."
256
- }
257
- ]
258
- },
259
- {
260
- "name": "constant.language.afscript",
261
- "match": "\\b(True|False)\\b"
262
- },
263
- {
264
- "name": "constant.other.timestamp.afscript",
265
- "match": "(?<=\\s|=|,|\\[)\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?Z?\\b"
266
- },
267
- {
268
- "name": "constant.other.date.afscript",
269
- "match": "(?<=\\s|=|,|\\[)\\d{4}-\\d{2}-\\d{2}(?!T)\\b"
270
- },
271
- {
272
- "name": "constant.numeric.afscript",
273
- "match": "\\b\\d+(\\.\\d+)?\\b"
274
- },
275
- {
276
- "name": "variable.other.member.afscript",
277
- "match": "(?<=@(?:variable|topic|input|action|result)\\.)\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"
278
- }
279
- ]
280
- },
281
- "json-structures": {
282
- "patterns": [
283
- {
284
- "name": "constant.language.json.afscript",
285
- "match": "=\\s*\\{\\}"
286
- },
287
- {
288
- "name": "meta.structure.dictionary.json.afscript",
289
- "begin": "=\\s*(\\{)",
290
- "beginCaptures": {
291
- "1": {
292
- "name": "punctuation.definition.dictionary.begin.json.afscript"
293
- }
294
- },
295
- "end": "(\\})",
296
- "endCaptures": {
297
- "1": {
298
- "name": "punctuation.definition.dictionary.end.json.afscript"
299
- }
300
- },
301
- "patterns": [{ "include": "#json-value" }]
302
- },
303
- {
304
- "name": "meta.structure.array.json.afscript",
305
- "begin": "=\\s*(\\[)",
306
- "beginCaptures": {
307
- "1": {
308
- "name": "punctuation.definition.array.begin.json.afscript"
309
- }
310
- },
311
- "end": "(\\])",
312
- "endCaptures": {
313
- "1": {
314
- "name": "punctuation.definition.array.end.json.afscript"
315
- }
316
- },
317
- "patterns": [{ "include": "#json-value" }]
318
- }
319
- ]
320
- },
321
- "multiline-instructions": {
322
- "name": "meta.multiline.instructions.afscript",
323
- "begin": "^(\\s+)(instructions:)\\s*$",
324
- "beginCaptures": {
325
- "2": { "name": "keyword.system.afscript" }
326
- },
327
- "end": "^(?=\\s{4}(messages|prompt)\\b)|^(?=\\S)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
328
- "patterns": [
329
- {
330
- "name": "string.heredoc.afscript",
331
- "begin": "(>>)\\s*$",
332
- "beginCaptures": {
333
- "1": { "name": "keyword.operator.heredoc.afscript" }
334
- },
335
- "end": "^(?=\\s{4}(messages|prompt)\\b)|^(?=\\S)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
336
- "patterns": [
337
- { "include": "#template-expression" },
338
- {
339
- "name": "string.unquoted.heredoc.afscript",
340
- "match": "."
341
- }
342
- ]
343
- },
344
- {
345
- "name": "string.unquoted.multiline.afscript",
346
- "begin": "^\\s+",
347
- "end": "^(?=\\s{4}(messages|prompt)\\b)|^(?=\\S)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
348
- "patterns": [
349
- { "include": "#template-expression" },
350
- {
351
- "name": "string.unquoted.instructions.afscript",
352
- "match": ".*"
353
- }
354
- ]
355
- }
356
- ]
357
- },
358
- "agent-task": {
359
- "patterns": [
360
- {
361
- "name": "string.heredoc.afscript",
362
- "begin": "(>>)\\s*$",
363
- "beginCaptures": {
364
- "1": { "name": "keyword.operator.heredoc.afscript" }
365
- },
366
- "end": "^(?=\\S)",
367
- "patterns": [
368
- { "include": "#template-expression" },
369
- {
370
- "name": "string.unquoted.heredoc.afscript",
371
- "match": ".*"
372
- }
373
- ]
374
- },
375
- {
376
- "name": "string.heredoc.quoted.afscript",
377
- "begin": "(>>)\\s*\"",
378
- "beginCaptures": {
379
- "1": { "name": "keyword.operator.heredoc.afscript" }
380
- },
381
- "end": "\"",
382
- "patterns": [
383
- { "include": "#template-expression" },
384
- {
385
- "name": "constant.character.escape.afscript",
386
- "match": "\\\\."
387
- }
388
- ]
389
- }
390
- ]
391
- },
392
- "task-content": {
393
- "name": "meta.task.content.afscript",
394
- "begin": "\\b(task):\\s*$",
395
- "beginCaptures": {
396
- "1": { "name": "keyword.topic.section.afscript" }
397
- },
398
- "end": "^(?=\\S)",
399
- "patterns": [
400
- { "include": "#template-expression" },
401
- {
402
- "name": "string.unquoted.task.afscript",
403
- "match": ".*"
404
- }
405
- ]
406
- },
407
- "override-instructions": {
408
- "name": "meta.override.instructions.afscript",
409
- "begin": "^(\\s+)(override system\\.instructions):\\s*$",
410
- "beginCaptures": {
411
- "2": { "name": "keyword.override.path.afscript" }
412
- },
413
- "end": "^(?=\\s{4}(reasoning_actions|actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
414
- "patterns": [
415
- {
416
- "name": "string.heredoc.afscript",
417
- "begin": "(>>)\\s*$",
418
- "beginCaptures": {
419
- "1": { "name": "keyword.operator.heredoc.afscript" }
420
- },
421
- "end": "^(?=\\s{4}(reasoning_actions|actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
422
- "patterns": [
423
- { "include": "#template-expression" },
424
- {
425
- "name": "string.unquoted.heredoc.afscript",
426
- "match": "."
427
- }
428
- ]
429
- },
430
- {
431
- "name": "string.heredoc.quoted.afscript",
432
- "begin": "(>>)\\s*\"",
433
- "beginCaptures": {
434
- "1": { "name": "keyword.operator.heredoc.afscript" }
435
- },
436
- "end": "\"",
437
- "patterns": [
438
- { "include": "#template-expression" },
439
- {
440
- "name": "string.unquoted.heredoc.afscript",
441
- "match": "."
442
- }
443
- ]
444
- },
445
- {
446
- "name": "string.unquoted.multiline.afscript",
447
- "begin": "^\\s+",
448
- "end": "^(?=\\s{4}(reasoning_actions|actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
449
- "patterns": [
450
- { "include": "#template-expression" },
451
- {
452
- "name": "string.unquoted.instructions.afscript",
453
- "match": ".*"
454
- }
455
- ]
456
- }
457
- ]
458
- },
459
- "reasoning-instructions": {
460
- "name": "meta.reasoning.instructions.afscript",
461
- "begin": "^(\\s+)(reasoning_instructions):\\s*$",
462
- "beginCaptures": {
463
- "2": { "name": "keyword.topic.section.afscript" }
464
- },
465
- "end": "^(?=\\s{4}(reasoning_actions|actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
466
- "patterns": [
467
- {
468
- "name": "string.heredoc.afscript",
469
- "begin": "(>>)\\s*$",
470
- "beginCaptures": {
471
- "1": { "name": "keyword.operator.heredoc.afscript" }
472
- },
473
- "end": "^(?=\\s{4}(reasoning_actions|actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
474
- "patterns": [
475
- { "include": "#template-expression" },
476
- {
477
- "name": "string.unquoted.heredoc.afscript",
478
- "match": "."
479
- }
480
- ]
481
- },
482
- {
483
- "name": "string.heredoc.quoted.afscript",
484
- "begin": "(>>)\\s*\"",
485
- "beginCaptures": {
486
- "1": { "name": "keyword.operator.heredoc.afscript" }
487
- },
488
- "end": "\"",
489
- "patterns": [
490
- { "include": "#template-expression" },
491
- {
492
- "name": "string.unquoted.heredoc.afscript",
493
- "match": "."
494
- }
495
- ]
496
- },
497
- {
498
- "name": "string.heredoc.afscript",
499
- "begin": "\"",
500
- "end": "\"",
501
- "patterns": [
502
- { "include": "#template-expression" },
503
- {
504
- "name": "string.unquoted.heredoc.afscript",
505
- "match": "."
506
- }
507
- ]
508
- }
509
- ]
510
- },
511
- "action-definitions": {
512
- "name": "meta.actions.afscript",
513
- "begin": "^(\\s+)(actions|action_definitions):",
514
- "beginCaptures": {
515
- "2": { "name": "keyword.topic.section.afscript" }
516
- },
517
- "end": "^(?=\\s{4}(reasoning_instructions|reasoning_actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
518
- "patterns": [
519
- {
520
- "name": "entity.name.action.afscript",
521
- "match": "^\\s{4,8}([a-zA-Z_][a-zA-Z0-9_]*)(?=:)"
522
- },
523
- {
524
- "name": "keyword.action.property.afscript",
525
- "match": "^\\s{12}(description|target|inputs|outputs|parameters|returns|implementation|label|require_user_confirmation|include_in_progress_indicator|progress_indicator_message|is_required|is_user_input|developer_name|complex_data_type_name|is_used_by_planner|is_displayable)(?=:)"
526
- },
527
- {
528
- "name": "storage.type.afscript",
529
- "match": "\\b(string|number|boolean|object|date|timestamp|currency|id|list)\\b"
530
- },
531
- { "include": "#operators" },
532
- { "include": "#punctuation" },
533
- { "include": "#values" }
534
- ]
535
- },
536
- "reasoning-actions": {
537
- "name": "meta.reasoning-actions.afscript",
538
- "begin": "^(\\s+)(reasoning_actions):",
539
- "beginCaptures": {
540
- "2": { "name": "keyword.topic.section.afscript" }
541
- },
542
- "end": "^(?=\\s{4}(reasoning_instructions|actions|before_reasoning|after_reasoning|description|variables|instructions|override)\\b)|^(?=\\s*$)|^(?=topic\\b|config\\b|variables\\b|start_agent\\b|system\\b)",
543
- "patterns": [
544
- { "include": "#directives" },
545
- {
546
- "name": "meta.utils.call.afscript",
547
- "match": "(@utils)(\\.)([a-zA-Z_][a-zA-Z0-9_]*)\\b",
548
- "captures": {
549
- "1": { "name": "support.class.afscript" },
550
- "2": { "name": "punctuation.accessor.dot.afscript" },
551
- "3": { "name": "entity.name.function.afscript" }
552
- }
553
- },
554
- {
555
- "name": "meta.variable.reference.afscript",
556
- "match": "(@)(action|topic|variable|result|input)(\\.)([a-zA-Z_][a-zA-Z0-9_]*)",
557
- "captures": {
558
- "1": { "name": "support.class.afscript" },
559
- "2": { "name": "support.class.afscript" },
560
- "3": { "name": "punctuation.accessor.dot.afscript" },
561
- "4": { "name": "variable.other.member.afscript" }
562
- }
563
- },
564
- {
565
- "name": "meta.alias.assignment.afscript",
566
- "match": "\\b(as)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\b",
567
- "captures": {
568
- "1": { "name": "keyword.control.afscript" },
569
- "2": { "name": "entity.name.alias.afscript" }
570
- }
571
- },
572
- {
573
- "name": "keyword.control.transition.reasoning.afscript",
574
- "match": "\\s+to\\s+"
575
- },
576
- {
577
- "name": "keyword.reasoning.description.afscript",
578
- "match": "^\\s{12}(description)(?=:)"
579
- },
580
- {
581
- "name": "keyword.control.afscript",
582
- "match": "\\b(setVariables)\\b"
583
- },
584
- {
585
- "name": "entity.name.action.afscript",
586
- "match": "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"
587
- },
588
- { "include": "#values" }
589
- ]
590
- },
591
- "directives": {
592
- "patterns": [
593
- {
594
- "name": "keyword.control.conditional.available.afscript",
595
- "match": "\\bavailable when\\b"
596
- },
597
- {
598
- "name": "meta.alias.assignment.afscript",
599
- "match": "\\b(as)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\b",
600
- "captures": {
601
- "1": { "name": "keyword.control.afscript" },
602
- "2": { "name": "entity.name.alias.afscript" }
603
- }
604
- },
605
- {
606
- "name": "keyword.control.directive.afscript",
607
- "match": "\\b(run|set|if|else|after|with|and|or)\\b|\\btransition to\\b"
608
- },
609
- {
610
- "name": "keyword.action-call.afscript",
611
- "match": "(@action)(\\.)",
612
- "captures": {
613
- "1": { "name": "support.class.afscript" },
614
- "2": { "name": "punctuation.accessor.dot.afscript" }
615
- }
616
- },
617
- {
618
- "name": "keyword.variable-set.afscript",
619
- "match": "(@variable)(\\.)",
620
- "captures": {
621
- "1": { "name": "support.class.afscript" },
622
- "2": { "name": "punctuation.accessor.dot.afscript" }
623
- }
624
- },
625
- {
626
- "name": "keyword.topic-ref.afscript",
627
- "match": "(@topic)(\\.)",
628
- "captures": {
629
- "1": { "name": "support.class.afscript" },
630
- "2": { "name": "punctuation.accessor.dot.afscript" }
631
- }
632
- },
633
- {
634
- "name": "keyword.result-ref.afscript",
635
- "match": "(@result)(\\.)",
636
- "captures": {
637
- "1": { "name": "support.class.afscript" },
638
- "2": { "name": "punctuation.accessor.dot.afscript" }
639
- }
640
- },
641
- {
642
- "name": "keyword.input-ref.afscript",
643
- "match": "(@input)(\\.)",
644
- "captures": {
645
- "1": { "name": "support.class.afscript" },
646
- "2": { "name": "punctuation.accessor.dot.afscript" }
647
- }
648
- },
649
- {
650
- "name": "variable.other.member.afscript",
651
- "match": "(?<=@(?:variable|topic|input|action|result)\\.)\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"
652
- },
653
- { "include": "#operators" },
654
- { "include": "#values" }
655
- ]
656
- },
657
- "template-expression": {
658
- "name": "meta.template.expression.afscript",
659
- "begin": "\\{\\{",
660
- "beginCaptures": {
661
- "0": {
662
- "name": "punctuation.definition.template.begin.afscript"
663
- }
664
- },
665
- "end": "\\}\\}",
666
- "endCaptures": {
667
- "0": { "name": "punctuation.definition.template.end.afscript" }
668
- },
669
- "patterns": [
670
- {
671
- "name": "string.quoted.single.expression.afscript",
672
- "begin": "'",
673
- "end": "'",
674
- "patterns": [
675
- {
676
- "name": "constant.character.escape.afscript",
677
- "match": "\\\\."
678
- }
679
- ]
680
- },
681
- {
682
- "name": "string.quoted.double.expression.afscript",
683
- "begin": "\"",
684
- "end": "\"",
685
- "patterns": [
686
- {
687
- "name": "constant.character.escape.afscript",
688
- "match": "\\\\."
689
- }
690
- ]
691
- },
692
- {
693
- "name": "constant.numeric.expression.afscript",
694
- "match": "\\b\\d+(\\.\\d+)?\\b"
695
- },
696
- {
697
- "name": "constant.language.expression.afscript",
698
- "match": "\\b(True|False)\\b"
699
- },
700
- {
701
- "name": "keyword.operator.expression.afscript",
702
- "match": "\\b(and|or|if|else)\\b"
703
- },
704
- {
705
- "name": "operator.comparison.expression.afscript",
706
- "match": "==|!=|<=|>=|<|>"
707
- },
708
- {
709
- "name": "operator.arithmetic.expression.afscript",
710
- "match": "[+\\-\\*/%]"
711
- },
712
- {
713
- "name": "meta.variable.reference.expression.afscript",
714
- "match": "(@)([a-zA-Z_][a-zA-Z0-9_]*)(\\.)([a-zA-Z_][a-zA-Z0-9_]*)\\b",
715
- "captures": {
716
- "1": { "name": "support.class.afscript" },
717
- "2": { "name": "support.class.afscript" },
718
- "3": { "name": "punctuation.accessor.dot.afscript" },
719
- "4": { "name": "variable.other.member.afscript" }
720
- }
721
- },
722
- {
723
- "name": "variable.other.expression.afscript",
724
- "match": "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"
725
- },
726
- {
727
- "name": "punctuation.definition.expression.afscript",
728
- "match": "[()\\[\\]@.,]"
729
- }
730
- ]
731
- },
732
- "json-value": {
733
- "patterns": [
734
- {
735
- "name": "constant.language.json.afscript",
736
- "match": "\\b(true|false|null)\\b"
737
- },
738
- {
739
- "name": "constant.numeric.json.afscript",
740
- "match": "-?\\d+(\\.\\d+)?([eE][+-]?\\d+)?"
741
- },
742
- {
743
- "name": "string.quoted.double.json.afscript",
744
- "begin": "\"",
745
- "end": "\"",
746
- "patterns": [
747
- {
748
- "name": "constant.character.escape.json.afscript",
749
- "match": "\\\\."
750
- }
751
- ]
752
- },
753
- {
754
- "name": "meta.structure.dictionary.json.afscript",
755
- "begin": "\\{",
756
- "beginCaptures": {
757
- "0": {
758
- "name": "punctuation.definition.dictionary.begin.json.afscript"
759
- }
760
- },
761
- "end": "\\}",
762
- "endCaptures": {
763
- "0": {
764
- "name": "punctuation.definition.dictionary.end.json.afscript"
765
- }
766
- },
767
- "patterns": [
768
- {
769
- "name": "meta.structure.dictionary.key.json.afscript",
770
- "begin": "\"",
771
- "end": "\"",
772
- "patterns": [
773
- {
774
- "name": "constant.character.escape.json.afscript",
775
- "match": "\\\\."
776
- }
777
- ]
778
- },
779
- {
780
- "name": "punctuation.separator.dictionary.key-value.json.afscript",
781
- "match": ":"
782
- },
783
- {
784
- "name": "punctuation.separator.dictionary.pair.json.afscript",
785
- "match": ","
786
- },
787
- { "include": "#json-value" }
788
- ]
789
- },
790
- {
791
- "name": "meta.structure.array.json.afscript",
792
- "begin": "\\[",
793
- "beginCaptures": {
794
- "0": {
795
- "name": "punctuation.definition.array.begin.json.afscript"
796
- }
797
- },
798
- "end": "\\]",
799
- "endCaptures": {
800
- "0": {
801
- "name": "punctuation.definition.array.end.json.afscript"
802
- }
803
- },
804
- "patterns": [
805
- {
806
- "name": "punctuation.separator.array.json.afscript",
807
- "match": ","
808
- },
809
- { "include": "#json-value" }
810
- ]
811
- }
812
- ]
813
- },
814
- "punctuation": {
815
- "patterns": [
816
- {
817
- "name": "punctuation.separator.key-value.afscript",
818
- "match": ":"
819
- },
820
- {
821
- "name": "punctuation.separator.list.afscript",
822
- "match": ","
823
- },
824
- {
825
- "name": "punctuation.definition.brackets.afscript",
826
- "match": "[{}\\[\\]()]"
827
- },
828
- {
829
- "name": "punctuation.accessor.dot.afscript",
830
- "match": "\\."
831
- }
832
- ]
833
- },
834
- "operators": {
835
- "patterns": [
836
- {
837
- "name": "operator.comparison.afscript",
838
- "match": "==|!=|<=|>=|<|>"
839
- },
840
- {
841
- "name": "operator.assignment.afscript",
842
- "match": "\\s=\\s|\\s=(?=[\\{\\[\"\\d])|(?<=[a-zA-Z_])\\s*=\\s*"
843
- },
844
- {
845
- "name": "operator.arithmetic.afscript",
846
- "match": "[+\\-\\*%]"
847
- },
848
- {
849
- "name": "punctuation.separator.path.afscript",
850
- "match": "/"
851
- }
852
- ]
853
- }
854
- }
855
- }