@grexx/grexxlinter 0.2.0

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 (137) hide show
  1. package/cli.js +14973 -0
  2. package/lsp.js +23977 -0
  3. package/package.json +19 -0
  4. package/schemas/.coverage.json +10987 -0
  5. package/schemas/abstract.schema.json +842 -0
  6. package/schemas/abstractAttribute.schema.json +38 -0
  7. package/schemas/abstractAttributeFormField.schema.json +50 -0
  8. package/schemas/abstractCondition.schema.json +74 -0
  9. package/schemas/abstractRight.schema.json +74 -0
  10. package/schemas/abstractRole.schema.json +50 -0
  11. package/schemas/abstractRule.schema.json +182 -0
  12. package/schemas/activity.schema.json +1328 -0
  13. package/schemas/activityAttribute.schema.json +73 -0
  14. package/schemas/activityRight.schema.json +64 -0
  15. package/schemas/agent.schema.json +179 -0
  16. package/schemas/agentTool.schema.json +118 -0
  17. package/schemas/attribute.schema.json +286 -0
  18. package/schemas/casetype.schema.json +256 -0
  19. package/schemas/catchBlock.schema.json +76 -0
  20. package/schemas/common.schema.json +63 -0
  21. package/schemas/conditionList.schema.json +67 -0
  22. package/schemas/container.schema.json +88 -0
  23. package/schemas/cssVariables.schema.json +90 -0
  24. package/schemas/customThrow.schema.json +73 -0
  25. package/schemas/dataRetentionProfile.schema.json +90 -0
  26. package/schemas/dataset.schema.json +579 -0
  27. package/schemas/datasetColumn.schema.json +423 -0
  28. package/schemas/datasetCondition.schema.json +409 -0
  29. package/schemas/datasetRight.schema.json +86 -0
  30. package/schemas/datasource.schema.json +73 -0
  31. package/schemas/dateProfile.schema.json +87 -0
  32. package/schemas/directRole.schema.json +71 -0
  33. package/schemas/fileUploadProfile.schema.json +75 -0
  34. package/schemas/forEach.schema.json +144 -0
  35. package/schemas/form.schema.json +119 -0
  36. package/schemas/formAction.schema.json +149 -0
  37. package/schemas/formActionAi.schema.json +81 -0
  38. package/schemas/formActionInlineJavascript.schema.json +66 -0
  39. package/schemas/formButton.schema.json +84 -0
  40. package/schemas/formGroup.schema.json +99 -0
  41. package/schemas/formRight.schema.json +86 -0
  42. package/schemas/formfield.schema.json +339 -0
  43. package/schemas/gridActivity.schema.json +80 -0
  44. package/schemas/gridColumn.schema.json +111 -0
  45. package/schemas/hasRoleCondition.schema.json +63 -0
  46. package/schemas/ifthenelse.schema.json +78 -0
  47. package/schemas/indirectRole.schema.json +74 -0
  48. package/schemas/job.schema.json +63 -0
  49. package/schemas/jobStep.schema.json +68 -0
  50. package/schemas/llmModel.schema.json +79 -0
  51. package/schemas/mapping.schema.json +690 -0
  52. package/schemas/menuItem.schema.json +519 -0
  53. package/schemas/menuItemRight.schema.json +64 -0
  54. package/schemas/metadata.schema.json +96 -0
  55. package/schemas/navigation.schema.json +86 -0
  56. package/schemas/notCondition.schema.json +60 -0
  57. package/schemas/parallelBlock.schema.json +75 -0
  58. package/schemas/picklist.schema.json +113 -0
  59. package/schemas/picklistItem.schema.json +71 -0
  60. package/schemas/platformAttribute.schema.json +300 -0
  61. package/schemas/platformRole.schema.json +191 -0
  62. package/schemas/platformconstants.schema.json +94 -0
  63. package/schemas/plugin.schema.json +99 -0
  64. package/schemas/pluginLibrary.schema.json +78 -0
  65. package/schemas/requestContext.schema.json +183 -0
  66. package/schemas/roleName.schema.json +115 -0
  67. package/schemas/ruleList.schema.json +72 -0
  68. package/schemas/securityProfile.schema.json +63 -0
  69. package/schemas/securityRequirement.schema.json +63 -0
  70. package/schemas/simpleCondition.schema.json +466 -0
  71. package/schemas/staticFile.schema.json +63 -0
  72. package/schemas/tag.schema.json +62 -0
  73. package/schemas/taskQueue.schema.json +69 -0
  74. package/schemas/template/activitymeta.schema.json +36 -0
  75. package/schemas/template/attribute.schema.json +31 -0
  76. package/schemas/template/calculate-dataset.schema.json +31 -0
  77. package/schemas/template/casemeta.schema.json +18 -0
  78. package/schemas/template/casetypemeta.schema.json +19 -0
  79. package/schemas/template/comment.schema.json +36 -0
  80. package/schemas/template/datasetColumn.schema.json +31 -0
  81. package/schemas/template/date-function.schema.json +232 -0
  82. package/schemas/template/definitionmeta.schema.json +73 -0
  83. package/schemas/template/file.schema.json +39 -0
  84. package/schemas/template/foreach.schema.json +67 -0
  85. package/schemas/template/formfield.schema.json +21 -0
  86. package/schemas/template/formula.schema.json +18 -0
  87. package/schemas/template/hasRole.schema.json +18 -0
  88. package/schemas/template/historic.schema.json +21 -0
  89. package/schemas/template/html.schema.json +165 -0
  90. package/schemas/template/icon.schema.json +18 -0
  91. package/schemas/template/if.schema.json +30 -0
  92. package/schemas/template/inlineTemplate.schema.json +26 -0
  93. package/schemas/template/isnull.schema.json +21 -0
  94. package/schemas/template/isofcasetype.schema.json +24 -0
  95. package/schemas/template/iterator.schema.json +61 -0
  96. package/schemas/template/json.schema.json +55 -0
  97. package/schemas/template/math.schema.json +210 -0
  98. package/schemas/template/meta.schema.json +164 -0
  99. package/schemas/template/metadefinitionmeta.schema.json +36 -0
  100. package/schemas/template/multivalue.schema.json +210 -0
  101. package/schemas/template/page.schema.json +21 -0
  102. package/schemas/template/parameter.schema.json +24 -0
  103. package/schemas/template/parameterDefinition.schema.json +27 -0
  104. package/schemas/template/parameterIdDefinition.schema.json +28 -0
  105. package/schemas/template/parseError.schema.json +48 -0
  106. package/schemas/template/picklist.schema.json +27 -0
  107. package/schemas/template/pseudoTemplate.schema.json +27 -0
  108. package/schemas/template/requestcontext.schema.json +52 -0
  109. package/schemas/template/returnType.schema.json +26 -0
  110. package/schemas/template/spacialMath.schema.json +77 -0
  111. package/schemas/template/special.schema.json +19 -0
  112. package/schemas/template/staticFile.schema.json +39 -0
  113. package/schemas/template/system.schema.json +22 -0
  114. package/schemas/template/systemconfig.schema.json +21 -0
  115. package/schemas/template/taskattribute.schema.json +21 -0
  116. package/schemas/template/taskdata.schema.json +24 -0
  117. package/schemas/template/taskmeta.schema.json +180 -0
  118. package/schemas/template/taskqueuemeta.schema.json +36 -0
  119. package/schemas/template/template.schema.json +27 -0
  120. package/schemas/template/templatePart.schema.json +638 -0
  121. package/schemas/template/text.schema.json +18 -0
  122. package/schemas/template/url.schema.json +77 -0
  123. package/schemas/template/urlParameter.schema.json +21 -0
  124. package/schemas/template/user.schema.json +36 -0
  125. package/schemas/template/userProperty.schema.json +22 -0
  126. package/schemas/template/usersession.schema.json +18 -0
  127. package/schemas/template/util.schema.json +434 -0
  128. package/schemas/template/xml.schema.json +55 -0
  129. package/schemas/template.schema.json +74 -0
  130. package/schemas/theme.schema.json +63 -0
  131. package/schemas/trigger.schema.json +413 -0
  132. package/schemas/tryBlock.schema.json +99 -0
  133. package/schemas/view.schema.json +159 -0
  134. package/schemas/webhook.schema.json +77 -0
  135. package/schemas/while.schema.json +130 -0
  136. package/schemas/widget.schema.json +1416 -0
  137. package/schemas/widgetRight.schema.json +85 -0
@@ -0,0 +1,519 @@
1
+ {
2
+ "$id": "https://grexx.net/studio-next/schemas/menuItem.schema.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "_id": {
7
+ "type": "string"
8
+ },
9
+ "_interfaceID": {
10
+ "type": "string"
11
+ },
12
+ "_isInterface": {
13
+ "type": "boolean"
14
+ },
15
+ "_knownIDs": {
16
+ "items": {
17
+ "type": "string"
18
+ },
19
+ "type": "array"
20
+ },
21
+ "_origin": {
22
+ "type": "string"
23
+ },
24
+ "_src": {
25
+ "type": "string"
26
+ },
27
+ "_type": {
28
+ "const": "menuItem"
29
+ },
30
+ "_uid": {
31
+ "description": "Deterministic UUID derived from case-ID.",
32
+ "format": "uuid",
33
+ "type": "string"
34
+ },
35
+ "condition": {
36
+ "$ref": "conditionList.schema.json"
37
+ },
38
+ "cssClass": {
39
+ "$ref": "template/inlineTemplate.schema.json"
40
+ },
41
+ "description": {
42
+ "$ref": "template/inlineTemplate.schema.json"
43
+ },
44
+ "dummyUnused": {
45
+ "items": {
46
+ "type": "string"
47
+ },
48
+ "type": "array"
49
+ },
50
+ "href": {
51
+ "$ref": "template/inlineTemplate.schema.json"
52
+ },
53
+ "icon": {
54
+ "$ref": "template/inlineTemplate.schema.json"
55
+ },
56
+ "inactive": {
57
+ "type": "boolean"
58
+ },
59
+ "interfaceStudioProduct": {
60
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
61
+ },
62
+ "menuItems": {
63
+ "items": {
64
+ "$ref": "menuItem.schema.json"
65
+ },
66
+ "type": "array"
67
+ },
68
+ "metaCaseToOtap": {
69
+ "type": "boolean"
70
+ },
71
+ "name": {
72
+ "$ref": "common.schema.json#/$defs/multilanguageStringStructure"
73
+ },
74
+ "ourProductId": {
75
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
76
+ },
77
+ "rights": {
78
+ "items": {
79
+ "$ref": "menuItemRight.schema.json"
80
+ },
81
+ "type": "array"
82
+ },
83
+ "subtext": {
84
+ "$ref": "template/inlineTemplate.schema.json"
85
+ },
86
+ "template": {
87
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
88
+ },
89
+ "text": {
90
+ "$ref": "template/inlineTemplate.schema.json"
91
+ },
92
+ "type": {
93
+ "type": "string"
94
+ }
95
+ },
96
+ "required": [
97
+ "_type",
98
+ "_uid",
99
+ "type"
100
+ ],
101
+ "title": "menuItem",
102
+ "type": "object",
103
+ "allOf": [
104
+ {
105
+ "if": {
106
+ "anyOf": [
107
+ {
108
+ "properties": {
109
+ "type": {
110
+ "const": "link"
111
+ }
112
+ },
113
+ "required": [
114
+ "type"
115
+ ]
116
+ },
117
+ {
118
+ "properties": {
119
+ "type": {
120
+ "const": "menu"
121
+ }
122
+ },
123
+ "required": [
124
+ "type"
125
+ ]
126
+ },
127
+ {
128
+ "properties": {
129
+ "type": {
130
+ "const": "text"
131
+ }
132
+ },
133
+ "required": [
134
+ "type"
135
+ ]
136
+ },
137
+ {
138
+ "properties": {
139
+ "type": {
140
+ "const": "title"
141
+ }
142
+ },
143
+ "required": [
144
+ "type"
145
+ ]
146
+ }
147
+ ]
148
+ },
149
+ "then": {},
150
+ "else": {
151
+ "properties": {
152
+ "cssClass": false
153
+ }
154
+ }
155
+ },
156
+ {
157
+ "if": {
158
+ "anyOf": [
159
+ {
160
+ "properties": {
161
+ "type": {
162
+ "const": "link"
163
+ }
164
+ },
165
+ "required": [
166
+ "type"
167
+ ]
168
+ },
169
+ {
170
+ "properties": {
171
+ "type": {
172
+ "const": "link"
173
+ }
174
+ },
175
+ "required": [
176
+ "type"
177
+ ]
178
+ },
179
+ {
180
+ "properties": {
181
+ "type": {
182
+ "const": "menu"
183
+ }
184
+ },
185
+ "required": [
186
+ "type"
187
+ ]
188
+ }
189
+ ]
190
+ },
191
+ "then": {},
192
+ "else": {
193
+ "properties": {
194
+ "href": false
195
+ }
196
+ }
197
+ },
198
+ {
199
+ "if": {
200
+ "anyOf": [
201
+ {
202
+ "properties": {
203
+ "type": {
204
+ "const": "link"
205
+ }
206
+ },
207
+ "required": [
208
+ "type"
209
+ ]
210
+ },
211
+ {
212
+ "properties": {
213
+ "type": {
214
+ "const": "menu"
215
+ }
216
+ },
217
+ "required": [
218
+ "type"
219
+ ]
220
+ },
221
+ {
222
+ "properties": {
223
+ "type": {
224
+ "const": "link"
225
+ }
226
+ },
227
+ "required": [
228
+ "type"
229
+ ]
230
+ },
231
+ {
232
+ "properties": {
233
+ "type": {
234
+ "const": "menu"
235
+ }
236
+ },
237
+ "required": [
238
+ "type"
239
+ ]
240
+ }
241
+ ]
242
+ },
243
+ "then": {},
244
+ "else": {
245
+ "properties": {
246
+ "icon": false
247
+ }
248
+ }
249
+ },
250
+ {
251
+ "if": {
252
+ "properties": {
253
+ "type": {
254
+ "const": "title"
255
+ }
256
+ },
257
+ "required": [
258
+ "type"
259
+ ]
260
+ },
261
+ "then": {},
262
+ "else": {
263
+ "properties": {
264
+ "subtext": false
265
+ }
266
+ }
267
+ },
268
+ {
269
+ "if": {
270
+ "anyOf": [
271
+ {
272
+ "properties": {
273
+ "type": {
274
+ "const": "template"
275
+ }
276
+ },
277
+ "required": [
278
+ "type"
279
+ ]
280
+ },
281
+ {
282
+ "properties": {
283
+ "type": {
284
+ "const": "template"
285
+ }
286
+ },
287
+ "required": [
288
+ "type"
289
+ ]
290
+ }
291
+ ]
292
+ },
293
+ "then": {},
294
+ "else": {
295
+ "properties": {
296
+ "template": false
297
+ }
298
+ }
299
+ },
300
+ {
301
+ "if": {
302
+ "anyOf": [
303
+ {
304
+ "properties": {
305
+ "type": {
306
+ "const": "html"
307
+ }
308
+ },
309
+ "required": [
310
+ "type"
311
+ ]
312
+ },
313
+ {
314
+ "properties": {
315
+ "type": {
316
+ "const": "link"
317
+ }
318
+ },
319
+ "required": [
320
+ "type"
321
+ ]
322
+ },
323
+ {
324
+ "properties": {
325
+ "type": {
326
+ "const": "menu"
327
+ }
328
+ },
329
+ "required": [
330
+ "type"
331
+ ]
332
+ },
333
+ {
334
+ "properties": {
335
+ "type": {
336
+ "const": "text"
337
+ }
338
+ },
339
+ "required": [
340
+ "type"
341
+ ]
342
+ },
343
+ {
344
+ "properties": {
345
+ "type": {
346
+ "const": "title"
347
+ }
348
+ },
349
+ "required": [
350
+ "type"
351
+ ]
352
+ },
353
+ {
354
+ "properties": {
355
+ "type": {
356
+ "const": "html"
357
+ }
358
+ },
359
+ "required": [
360
+ "type"
361
+ ]
362
+ },
363
+ {
364
+ "properties": {
365
+ "type": {
366
+ "const": "link"
367
+ }
368
+ },
369
+ "required": [
370
+ "type"
371
+ ]
372
+ },
373
+ {
374
+ "properties": {
375
+ "type": {
376
+ "const": "menu"
377
+ }
378
+ },
379
+ "required": [
380
+ "type"
381
+ ]
382
+ },
383
+ {
384
+ "properties": {
385
+ "type": {
386
+ "const": "text"
387
+ }
388
+ },
389
+ "required": [
390
+ "type"
391
+ ]
392
+ },
393
+ {
394
+ "properties": {
395
+ "type": {
396
+ "const": "title"
397
+ }
398
+ },
399
+ "required": [
400
+ "type"
401
+ ]
402
+ }
403
+ ]
404
+ },
405
+ "then": {},
406
+ "else": {
407
+ "properties": {
408
+ "text": false
409
+ }
410
+ }
411
+ },
412
+ {
413
+ "if": {
414
+ "properties": {
415
+ "type": {
416
+ "const": "link"
417
+ }
418
+ },
419
+ "required": [
420
+ "type"
421
+ ]
422
+ },
423
+ "then": {
424
+ "required": [
425
+ "href",
426
+ "icon",
427
+ "text"
428
+ ]
429
+ }
430
+ },
431
+ {
432
+ "if": {
433
+ "properties": {
434
+ "type": {
435
+ "const": "menu"
436
+ }
437
+ },
438
+ "required": [
439
+ "type"
440
+ ]
441
+ },
442
+ "then": {
443
+ "required": [
444
+ "icon",
445
+ "text"
446
+ ]
447
+ }
448
+ },
449
+ {
450
+ "if": {
451
+ "properties": {
452
+ "type": {
453
+ "const": "template"
454
+ }
455
+ },
456
+ "required": [
457
+ "type"
458
+ ]
459
+ },
460
+ "then": {
461
+ "required": [
462
+ "template"
463
+ ]
464
+ }
465
+ },
466
+ {
467
+ "if": {
468
+ "properties": {
469
+ "type": {
470
+ "const": "html"
471
+ }
472
+ },
473
+ "required": [
474
+ "type"
475
+ ]
476
+ },
477
+ "then": {
478
+ "required": [
479
+ "text"
480
+ ]
481
+ }
482
+ },
483
+ {
484
+ "if": {
485
+ "properties": {
486
+ "type": {
487
+ "const": "text"
488
+ }
489
+ },
490
+ "required": [
491
+ "type"
492
+ ]
493
+ },
494
+ "then": {
495
+ "required": [
496
+ "text"
497
+ ]
498
+ }
499
+ },
500
+ {
501
+ "if": {
502
+ "properties": {
503
+ "type": {
504
+ "const": "title"
505
+ }
506
+ },
507
+ "required": [
508
+ "type"
509
+ ]
510
+ },
511
+ "then": {
512
+ "required": [
513
+ "text"
514
+ ]
515
+ }
516
+ }
517
+ ],
518
+ "$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/menuItem.json."
519
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "$id" : "https://grexx.net/studio-next/schemas/menuItemRight.schema.json",
3
+ "$schema" : "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties" : false,
5
+ "properties" : {
6
+ "_id" : {
7
+ "type" : "string"
8
+ },
9
+ "_interfaceID" : {
10
+ "type" : "string"
11
+ },
12
+ "_isInterface" : {
13
+ "type" : "boolean"
14
+ },
15
+ "_knownIDs" : {
16
+ "items" : {
17
+ "type" : "string"
18
+ },
19
+ "type" : "array"
20
+ },
21
+ "_origin" : {
22
+ "type" : "string"
23
+ },
24
+ "_src" : {
25
+ "type" : "string"
26
+ },
27
+ "_type" : {
28
+ "const" : "menuItemRight"
29
+ },
30
+ "_uid" : {
31
+ "description" : "Deterministic UUID derived from case-ID.",
32
+ "format" : "uuid",
33
+ "type" : "string"
34
+ },
35
+ "condition" : {
36
+ "$ref" : "abstractCondition.schema.json"
37
+ },
38
+ "description" : {
39
+ "$ref" : "template/inlineTemplate.schema.json"
40
+ },
41
+ "inactive" : {
42
+ "type" : "boolean"
43
+ },
44
+ "interfaceStudioProduct" : {
45
+ "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
46
+ },
47
+ "metaCaseToOtap" : {
48
+ "type" : "boolean"
49
+ },
50
+ "ourProductId" : {
51
+ "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
52
+ },
53
+ "roleName" : {
54
+ "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
55
+ },
56
+ "type" : {
57
+ "enum" : [ "widget_view", "activity_request", "activity_execute", "activity_trigger", "activity_agent_request", "activity_agent_execute", "activity_agent_suggest_request", "activity_agent_suggest_execute", "dataset_view", "form_view", "menuItem_view", "debug_action", "any_right" ],
58
+ "type" : "string"
59
+ }
60
+ },
61
+ "required" : [ "_type", "_uid" ],
62
+ "title" : "menuItemRight",
63
+ "type" : "object"
64
+ }
@@ -0,0 +1,96 @@
1
+ {
2
+ "$id": "https://grexx.net/studio-next/schemas/metadata.schema.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "_id": {
7
+ "type": "string"
8
+ },
9
+ "_interfaceID": {
10
+ "type": "string"
11
+ },
12
+ "_isInterface": {
13
+ "type": "boolean"
14
+ },
15
+ "_knownIDs": {
16
+ "items": {
17
+ "type": "string"
18
+ },
19
+ "type": "array"
20
+ },
21
+ "_origin": {
22
+ "type": "string"
23
+ },
24
+ "_src": {
25
+ "type": "string"
26
+ },
27
+ "_type": {
28
+ "const": "metadata"
29
+ },
30
+ "_uid": {
31
+ "description": "Deterministic UUID derived from case-ID.",
32
+ "format": "uuid",
33
+ "type": "string"
34
+ },
35
+ "always": {
36
+ "type": "boolean"
37
+ },
38
+ "description": {
39
+ "$ref": "template/inlineTemplate.schema.json"
40
+ },
41
+ "inactive": {
42
+ "type": "boolean"
43
+ },
44
+ "interfaceStudioProduct": {
45
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
46
+ },
47
+ "metaCaseToOtap": {
48
+ "type": "boolean"
49
+ },
50
+ "name": {
51
+ "$ref": "common.schema.json#/$defs/multilanguageStringStructure"
52
+ },
53
+ "ourProductId": {
54
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
55
+ },
56
+ "param1": {
57
+ "$ref": "template/inlineTemplate.schema.json"
58
+ },
59
+ "param2": {
60
+ "$ref": "template/inlineTemplate.schema.json"
61
+ },
62
+ "param3": {
63
+ "$ref": "template/inlineTemplate.schema.json"
64
+ },
65
+ "type": {
66
+ "type": "string"
67
+ },
68
+ "value": {
69
+ "$ref": "template/inlineTemplate.schema.json"
70
+ }
71
+ },
72
+ "required": [
73
+ "_type",
74
+ "_uid"
75
+ ],
76
+ "title": "metadata",
77
+ "type": "object",
78
+ "allOf": [
79
+ {
80
+ "properties": {
81
+ "param1": false
82
+ }
83
+ },
84
+ {
85
+ "properties": {
86
+ "param2": false
87
+ }
88
+ },
89
+ {
90
+ "properties": {
91
+ "value": false
92
+ }
93
+ }
94
+ ],
95
+ "$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/metadata.json."
96
+ }