@grexx/grexxlinter 0.2.1074 → 0.2.1088

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.
package/cli.js CHANGED
@@ -15206,7 +15206,7 @@ function isLintableYaml(text) {
15206
15206
  // src/cli.ts
15207
15207
  var PARALLEL_THRESHOLD = 200;
15208
15208
  var MAX_WORKERS = 8;
15209
- var VERSION = true ? "0.2.1074" : "0.0.0-dev";
15209
+ var VERSION = true ? "0.2.1088" : "0.0.0-dev";
15210
15210
  function isNewer(latest, current) {
15211
15211
  const a = latest.split(".").map(Number);
15212
15212
  const b = current.split(".").map(Number);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grexx/grexxlinter",
3
- "version": "0.2.1074",
3
+ "version": "0.2.1088",
4
4
  "description": "Lint Grexx Studio casetype YAML against the studio JSON Schemas.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -107,16 +107,90 @@
107
107
  "activityAttribute"
108
108
  ]
109
109
  },
110
+ "datasetCondition": {
111
+ "column": [
112
+ "datasetColumn"
113
+ ]
114
+ },
115
+ "forEach": {
116
+ "forDataset": [
117
+ "dataset"
118
+ ],
119
+ "for": [
120
+ "attribute"
121
+ ]
122
+ },
110
123
  "form": {
111
124
  "dataset": [
112
125
  "dataset"
113
126
  ]
114
127
  },
128
+ "formAction": {
129
+ "datafield": [
130
+ "attribute",
131
+ "platformAttribute"
132
+ ],
133
+ "formField": [
134
+ "formfield"
135
+ ],
136
+ "formButton": [
137
+ "formButton"
138
+ ],
139
+ "formGroup": [
140
+ "formGroup"
141
+ ],
142
+ "picklist": [
143
+ "picklist"
144
+ ],
145
+ "relatedPlugin": [
146
+ "plugin"
147
+ ]
148
+ },
149
+ "formfield": {
150
+ "addActivity": [
151
+ "activity"
152
+ ],
153
+ "attribute": [
154
+ "attribute",
155
+ "platformAttribute"
156
+ ],
157
+ "column": [
158
+ "datasetColumn"
159
+ ],
160
+ "dateProfile": [
161
+ "dateProfile"
162
+ ],
163
+ "multitaskPlatformAttribute": [
164
+ "platformAttribute"
165
+ ],
166
+ "picklist": [
167
+ "picklist"
168
+ ]
169
+ },
170
+ "gridColumn": {
171
+ "column": [
172
+ "datasetColumn"
173
+ ]
174
+ },
115
175
  "hasRoleCondition": {
116
176
  "roleName": [
117
177
  "roleName"
118
178
  ]
119
179
  },
180
+ "picklist": {
181
+ "deleteActivity": [
182
+ "activity"
183
+ ],
184
+ "editActivity": [
185
+ "activity"
186
+ ],
187
+ "dataset": [
188
+ "dataset"
189
+ ],
190
+ "template": [
191
+ "template"
192
+ ]
193
+ },
120
194
  "platformAttribute": {
121
195
  "attributeDataretentionProfiles": [
122
196
  "dataRetentionProfile"
@@ -131,6 +205,23 @@
131
205
  "casetype"
132
206
  ]
133
207
  },
208
+ "platformRole": {
209
+ "aiAgents": [
210
+ "agent"
211
+ ],
212
+ "attribute": [
213
+ "attribute"
214
+ ],
215
+ "indirectPlatformRole": [
216
+ "platformRole"
217
+ ],
218
+ "page": [
219
+ "casetype"
220
+ ],
221
+ "securityprofile": [
222
+ "securityProfile"
223
+ ]
224
+ },
134
225
  "plugin": {
135
226
  "pluginLibrary": [
136
227
  "pluginLibrary"
@@ -155,11 +246,47 @@
155
246
  "securityRequirement"
156
247
  ]
157
248
  },
249
+ "simpleCondition": {
250
+ "leftField": [
251
+ "formfield"
252
+ ],
253
+ "leftActivityAttribute": [
254
+ "activityAttribute"
255
+ ],
256
+ "rightField": [
257
+ "attribute",
258
+ "formfield"
259
+ ],
260
+ "rightActivityAttribute": [
261
+ "activityAttribute"
262
+ ]
263
+ },
158
264
  "taskQueue": {
159
265
  "rateLimitPerHourAttribute": [
160
266
  "attribute"
161
267
  ]
162
268
  },
269
+ "trigger": {
270
+ "activityTo": [
271
+ "activity"
272
+ ],
273
+ "activityTag": [
274
+ "tag"
275
+ ],
276
+ "caseTo": [
277
+ "attribute",
278
+ "platformAttribute"
279
+ ],
280
+ "datasetTo": [
281
+ "dataset"
282
+ ],
283
+ "forEachTo": [
284
+ "forEach"
285
+ ],
286
+ "toPage": [
287
+ "casetype"
288
+ ]
289
+ },
163
290
  "view": {
164
291
  "css": [
165
292
  "template"
@@ -185,5 +312,46 @@
185
312
  "topNavigationItems": [
186
313
  "menuItem"
187
314
  ]
315
+ },
316
+ "widget": {
317
+ "activities": [
318
+ "activity"
319
+ ],
320
+ "widgetAgent": [
321
+ "agent"
322
+ ],
323
+ "caseAttribute": [
324
+ "attribute"
325
+ ],
326
+ "dataset": [
327
+ "dataset"
328
+ ],
329
+ "form": [
330
+ "form"
331
+ ],
332
+ "selectionTemplate": [
333
+ "template"
334
+ ],
335
+ "activity": [
336
+ "activity"
337
+ ],
338
+ "masterWidget": [
339
+ "widget"
340
+ ],
341
+ "platformWidget": [
342
+ "widget"
343
+ ],
344
+ "widgetPlugin": [
345
+ "plugin"
346
+ ],
347
+ "template": [
348
+ "template"
349
+ ],
350
+ "templateOnEmpty": [
351
+ "template"
352
+ ],
353
+ "view": [
354
+ "view"
355
+ ]
188
356
  }
189
357
  }
@@ -2332,6 +2332,20 @@
2332
2332
  },
2333
2333
  "covered": false,
2334
2334
  "reason": "condition not expressible as JSON Schema"
2335
+ },
2336
+ {
2337
+ "modality": "MAY",
2338
+ "when": {
2339
+ "op": "cmp",
2340
+ "field": null,
2341
+ "fieldName": "«template»",
2342
+ "operator": "notin",
2343
+ "value": "«[\"json\", \"datasetrow\", \"inlinetemplate\", \"point2d\", \"poly…»",
2344
+ "valueIsField": false,
2345
+ "isEmpty": false
2346
+ },
2347
+ "covered": false,
2348
+ "reason": "condition not expressible as JSON Schema"
2335
2349
  }
2336
2350
  ]
2337
2351
  },
@@ -5733,7 +5747,7 @@
5733
5747
  "schema": "forEach.schema.json",
5734
5748
  "fields": {
5735
5749
  "forDataset": {
5736
- "baseline": null,
5750
+ "baseline": "MUST_NOT",
5737
5751
  "clauses": [
5738
5752
  {
5739
5753
  "modality": "MUST",
@@ -5799,7 +5813,7 @@
5799
5813
  ]
5800
5814
  },
5801
5815
  "for": {
5802
- "baseline": null,
5816
+ "baseline": "MUST_NOT",
5803
5817
  "clauses": [
5804
5818
  {
5805
5819
  "modality": "MUST",
@@ -5866,7 +5880,7 @@
5866
5880
  "baseline": "MUST_NOT",
5867
5881
  "clauses": [
5868
5882
  {
5869
- "modality": "MUST",
5883
+ "modality": "MAY",
5870
5884
  "when": {
5871
5885
  "op": "cmp",
5872
5886
  "field": "showProgress",
@@ -5889,20 +5903,6 @@
5889
5903
  "valueIsField": false,
5890
5904
  "isEmpty": false
5891
5905
  },
5892
- "covered": false,
5893
- "reason": "condition not expressible as JSON Schema"
5894
- },
5895
- {
5896
- "modality": "MAY",
5897
- "when": {
5898
- "op": "cmp",
5899
- "field": "showProgress",
5900
- "fieldName": "Show Progress",
5901
- "operator": "==",
5902
- "value": "true",
5903
- "valueIsField": false,
5904
- "isEmpty": false
5905
- },
5906
5906
  "covered": true
5907
5907
  }
5908
5908
  ]
@@ -5968,9 +5968,36 @@
5968
5968
  }
5969
5969
  ]
5970
5970
  },
5971
- "formfield": {
5971
+ "formField": {
5972
5972
  "baseline": "MAY",
5973
5973
  "clauses": [
5974
+ {
5975
+ "modality": "MUST_NOT",
5976
+ "when": {
5977
+ "op": "or",
5978
+ "items": [
5979
+ {
5980
+ "op": "cmp",
5981
+ "field": "type",
5982
+ "fieldName": "Type",
5983
+ "operator": "===",
5984
+ "value": "action.hidegroup",
5985
+ "valueIsField": false,
5986
+ "isEmpty": false
5987
+ },
5988
+ {
5989
+ "op": "cmp",
5990
+ "field": "type",
5991
+ "fieldName": "Type",
5992
+ "operator": "===",
5993
+ "value": "action.showgroup",
5994
+ "valueIsField": false,
5995
+ "isEmpty": false
5996
+ }
5997
+ ]
5998
+ },
5999
+ "covered": true
6000
+ },
5974
6001
  {
5975
6002
  "modality": "MAY",
5976
6003
  "when": {
@@ -6060,7 +6087,7 @@
6060
6087
  }
6061
6088
  ]
6062
6089
  },
6063
- "formgroup": {
6090
+ "formGroup": {
6064
6091
  "baseline": "MAY",
6065
6092
  "clauses": [
6066
6093
  {
@@ -8819,6 +8846,20 @@
8819
8846
  "attributeDefaultValue": {
8820
8847
  "baseline": "MAY",
8821
8848
  "clauses": [
8849
+ {
8850
+ "modality": "MAY",
8851
+ "when": {
8852
+ "op": "cmp",
8853
+ "field": "attributeDefaultValue",
8854
+ "fieldName": "Default attribute value",
8855
+ "operator": "!==",
8856
+ "value": "",
8857
+ "valueIsField": false,
8858
+ "isEmpty": true
8859
+ },
8860
+ "covered": false,
8861
+ "reason": "condition not expressible as JSON Schema"
8862
+ },
8822
8863
  {
8823
8864
  "modality": "MAY",
8824
8865
  "when": {
@@ -9851,25 +9892,6 @@
9851
9892
  }
9852
9893
  ]
9853
9894
  },
9854
- "parentCondition": {
9855
- "baseline": "MUST_NOT",
9856
- "clauses": [
9857
- {
9858
- "modality": "MAY",
9859
- "when": {
9860
- "op": "cmp",
9861
- "field": "parentCondition",
9862
- "fieldName": "Parent condition",
9863
- "operator": "==",
9864
- "value": "",
9865
- "valueIsField": false,
9866
- "isEmpty": true
9867
- },
9868
- "covered": false,
9869
- "reason": "condition not expressible as JSON Schema"
9870
- }
9871
- ]
9872
- },
9873
9895
  "rightField": {
9874
9896
  "baseline": null,
9875
9897
  "clauses": [
@@ -207,6 +207,48 @@
207
207
  }
208
208
  ],
209
209
  "optionsWhen": [
210
+ {
211
+ "when": {
212
+ "op": "or",
213
+ "items": [
214
+ {
215
+ "op": "cmp",
216
+ "field": null,
217
+ "fieldName": "Type of platform attribute",
218
+ "operator": "==",
219
+ "value": "boolean",
220
+ "valueIsField": false,
221
+ "isEmpty": false
222
+ },
223
+ {
224
+ "op": "cmp",
225
+ "field": "type",
226
+ "fieldName": "Type",
227
+ "operator": "==",
228
+ "value": "boolean",
229
+ "valueIsField": false,
230
+ "isEmpty": false
231
+ }
232
+ ]
233
+ },
234
+ "source": {
235
+ "kind": "static",
236
+ "options": [
237
+ {
238
+ "id": "false",
239
+ "label": "false"
240
+ },
241
+ {
242
+ "id": "true",
243
+ "label": "true"
244
+ },
245
+ {
246
+ "id": "null",
247
+ "label": "null"
248
+ }
249
+ ]
250
+ }
251
+ },
210
252
  {
211
253
  "when": {
212
254
  "op": "cmp",
@@ -513,6 +555,15 @@
513
555
  "value": "singlecurrencymoney",
514
556
  "valueIsField": false,
515
557
  "isEmpty": false
558
+ },
559
+ {
560
+ "op": "cmp",
561
+ "field": null,
562
+ "fieldName": "«template»",
563
+ "operator": "notin",
564
+ "value": "«[\"json\", \"datasetrow\", \"inlinetemplate\", \"point2d\", \"poly…»",
565
+ "valueIsField": false,
566
+ "isEmpty": false
516
567
  }
517
568
  ]
518
569
  },
@@ -26,5 +26,8 @@
26
26
  "isEmpty": false
27
27
  }
28
28
  ]
29
+ },
30
+ "messageType": {
31
+ "baseline": "MUST"
29
32
  }
30
33
  }
@@ -73,7 +73,8 @@
73
73
  },
74
74
  "required": [
75
75
  "_type",
76
- "_uid"
76
+ "_uid",
77
+ "messageType"
77
78
  ],
78
79
  "title": "customThrow",
79
80
  "type": "object",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "forDataset": {
3
- "baseline": "MAY",
3
+ "baseline": "MUST_NOT",
4
4
  "requiredWhen": [
5
5
  {
6
6
  "op": "cmp",
@@ -50,7 +50,7 @@
50
50
  ]
51
51
  },
52
52
  "for": {
53
- "baseline": "MAY",
53
+ "baseline": "MUST_NOT",
54
54
  "requiredWhen": [
55
55
  {
56
56
  "op": "cmp",
@@ -90,17 +90,6 @@
90
90
  },
91
91
  "progressTitle": {
92
92
  "baseline": "MUST_NOT",
93
- "requiredWhen": [
94
- {
95
- "op": "cmp",
96
- "field": "showProgress",
97
- "fieldName": "Show Progress",
98
- "operator": "==",
99
- "value": "true",
100
- "valueIsField": false,
101
- "isEmpty": false
102
- }
103
- ],
104
93
  "enabledWhen": [
105
94
  {
106
95
  "op": "cmp",
@@ -105,27 +105,13 @@
105
105
  },
106
106
  {
107
107
  "if": {
108
- "anyOf": [
109
- {
110
- "properties": {
111
- "showProgress": {
112
- "const": true
113
- }
114
- },
115
- "required": [
116
- "showProgress"
117
- ]
118
- },
119
- {
120
- "properties": {
121
- "showProgress": {
122
- "const": true
123
- }
124
- },
125
- "required": [
126
- "showProgress"
127
- ]
108
+ "properties": {
109
+ "showProgress": {
110
+ "const": true
128
111
  }
112
+ },
113
+ "required": [
114
+ "showProgress"
129
115
  ]
130
116
  },
131
117
  "then": {},
@@ -160,37 +146,6 @@
160
146
  }
161
147
  ]
162
148
  }
163
- },
164
- {
165
- "anyOf": [
166
- {
167
- "required": [
168
- "for"
169
- ]
170
- },
171
- {
172
- "required": [
173
- "forDataset"
174
- ]
175
- }
176
- ]
177
- },
178
- {
179
- "if": {
180
- "properties": {
181
- "showProgress": {
182
- "const": true
183
- }
184
- },
185
- "required": [
186
- "showProgress"
187
- ]
188
- },
189
- "then": {
190
- "required": [
191
- "progressTitle"
192
- ]
193
- }
194
149
  }
195
150
  ],
196
151
  "$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/forEach.json."
@@ -52,7 +52,7 @@
52
52
  }
53
53
  ]
54
54
  },
55
- "formfield": {
55
+ "formField": {
56
56
  "baseline": "MAY",
57
57
  "enabledWhen": [
58
58
  {
@@ -135,7 +135,7 @@
135
135
  }
136
136
  ]
137
137
  },
138
- "formgroup": {
138
+ "formGroup": {
139
139
  "baseline": "MAY",
140
140
  "enabledWhen": [
141
141
  {
@@ -117,6 +117,37 @@
117
117
  "title": "formAction",
118
118
  "type": "object",
119
119
  "allOf": [
120
+ {
121
+ "if": {
122
+ "anyOf": [
123
+ {
124
+ "properties": {
125
+ "type": {
126
+ "const": "action.hidegroup"
127
+ }
128
+ },
129
+ "required": [
130
+ "type"
131
+ ]
132
+ },
133
+ {
134
+ "properties": {
135
+ "type": {
136
+ "const": "action.showgroup"
137
+ }
138
+ },
139
+ "required": [
140
+ "type"
141
+ ]
142
+ }
143
+ ]
144
+ },
145
+ "then": {
146
+ "properties": {
147
+ "formField": false
148
+ }
149
+ }
150
+ },
120
151
  {
121
152
  "if": {
122
153
  "properties": {
@@ -0,0 +1,5 @@
1
+ {
2
+ "roleName": {
3
+ "baseline": "MUST"
4
+ }
5
+ }
@@ -1,63 +1,68 @@
1
1
  {
2
- "$id" : "https://grexx.net/studio-next/schemas/hasRoleCondition.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"
2
+ "$id": "https://grexx.net/studio-next/schemas/hasRoleCondition.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
18
  },
19
- "type" : "array"
19
+ "type": "array"
20
20
  },
21
- "_origin" : {
22
- "type" : "string"
21
+ "_origin": {
22
+ "type": "string"
23
23
  },
24
- "_src" : {
25
- "type" : "string"
24
+ "_src": {
25
+ "type": "string"
26
26
  },
27
- "_type" : {
28
- "const" : "hasRoleCondition"
27
+ "_type": {
28
+ "const": "hasRoleCondition"
29
29
  },
30
- "_uid" : {
31
- "description" : "Deterministic UUID derived from case-ID.",
32
- "format" : "uuid",
33
- "type" : "string"
30
+ "_uid": {
31
+ "description": "Deterministic UUID derived from case-ID.",
32
+ "format": "uuid",
33
+ "type": "string"
34
34
  },
35
- "description" : {
36
- "$ref" : "template/inlineTemplate.schema.json"
35
+ "description": {
36
+ "$ref": "template/inlineTemplate.schema.json"
37
37
  },
38
- "inactive" : {
39
- "type" : "boolean"
38
+ "inactive": {
39
+ "type": "boolean"
40
40
  },
41
- "interfaceStudioProduct" : {
42
- "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
41
+ "interfaceStudioProduct": {
42
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
43
43
  },
44
- "metaCaseToOtap" : {
45
- "type" : "boolean"
44
+ "metaCaseToOtap": {
45
+ "type": "boolean"
46
46
  },
47
- "negate" : {
48
- "type" : "boolean"
47
+ "negate": {
48
+ "type": "boolean"
49
49
  },
50
- "ourProductId" : {
51
- "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
50
+ "ourProductId": {
51
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
52
52
  },
53
- "roleName" : {
54
- "items" : {
55
- "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
53
+ "roleName": {
54
+ "items": {
55
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
56
56
  },
57
- "type" : "array"
57
+ "type": "array"
58
58
  }
59
59
  },
60
- "required" : [ "_type", "_uid" ],
61
- "title" : "hasRoleCondition",
62
- "type" : "object"
63
- }
60
+ "required": [
61
+ "_type",
62
+ "_uid",
63
+ "roleName"
64
+ ],
65
+ "title": "hasRoleCondition",
66
+ "type": "object",
67
+ "$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/hasRoleCondition.json."
68
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "label": {
3
+ "baseline": "MUST"
4
+ }
5
+ }
@@ -1,66 +1,71 @@
1
1
  {
2
- "$id" : "https://grexx.net/studio-next/schemas/picklistItem.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"
2
+ "$id": "https://grexx.net/studio-next/schemas/picklistItem.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
18
  },
19
- "type" : "array"
19
+ "type": "array"
20
20
  },
21
- "_origin" : {
22
- "type" : "string"
21
+ "_origin": {
22
+ "type": "string"
23
23
  },
24
- "_src" : {
25
- "type" : "string"
24
+ "_src": {
25
+ "type": "string"
26
26
  },
27
- "_type" : {
28
- "const" : "picklistItem"
27
+ "_type": {
28
+ "const": "picklistItem"
29
29
  },
30
- "_uid" : {
31
- "description" : "Deterministic UUID derived from case-ID.",
32
- "format" : "uuid",
33
- "type" : "string"
30
+ "_uid": {
31
+ "description": "Deterministic UUID derived from case-ID.",
32
+ "format": "uuid",
33
+ "type": "string"
34
34
  },
35
- "condition" : {
36
- "$ref" : "abstractCondition.schema.json"
35
+ "condition": {
36
+ "$ref": "abstractCondition.schema.json"
37
37
  },
38
- "description" : {
39
- "$ref" : "template/inlineTemplate.schema.json"
38
+ "description": {
39
+ "$ref": "template/inlineTemplate.schema.json"
40
40
  },
41
- "disabled" : {
42
- "type" : "boolean"
41
+ "disabled": {
42
+ "type": "boolean"
43
43
  },
44
- "inactive" : {
45
- "type" : "boolean"
44
+ "inactive": {
45
+ "type": "boolean"
46
46
  },
47
- "interfaceStudioProduct" : {
48
- "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
47
+ "interfaceStudioProduct": {
48
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
49
49
  },
50
- "label" : {
51
- "$ref" : "common.schema.json#/$defs/multilanguageStringStructure"
50
+ "label": {
51
+ "$ref": "common.schema.json#/$defs/multilanguageStringStructure"
52
52
  },
53
- "metaCaseToOtap" : {
54
- "type" : "boolean"
53
+ "metaCaseToOtap": {
54
+ "type": "boolean"
55
55
  },
56
- "ourProductId" : {
57
- "$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
56
+ "ourProductId": {
57
+ "$ref": "common.schema.json#/$defs/caseIdOrFileReference"
58
58
  },
59
- "value" : {
60
- "type" : "string"
59
+ "value": {
60
+ "type": "string"
61
61
  }
62
62
  },
63
- "required" : [ "_type", "_uid" ],
64
- "title" : "picklistItem",
65
- "type" : "object"
66
- }
63
+ "required": [
64
+ "_type",
65
+ "_uid",
66
+ "label"
67
+ ],
68
+ "title": "picklistItem",
69
+ "type": "object",
70
+ "$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/picklistItem.json."
71
+ }
@@ -131,6 +131,15 @@
131
131
  "attributeDefaultValue": {
132
132
  "baseline": "MAY",
133
133
  "enabledWhen": [
134
+ {
135
+ "op": "cmp",
136
+ "field": "attributeDefaultValue",
137
+ "fieldName": "Default attribute value",
138
+ "operator": "!==",
139
+ "value": "",
140
+ "valueIsField": false,
141
+ "isEmpty": true
142
+ },
134
143
  {
135
144
  "op": "cmp",
136
145
  "field": "type",
@@ -151,6 +160,32 @@
151
160
  }
152
161
  ],
153
162
  "messageWhen": [
163
+ {
164
+ "when": {
165
+ "op": "and",
166
+ "items": [
167
+ {
168
+ "op": "cmp",
169
+ "field": "attributeDefaultValue",
170
+ "fieldName": "Default attribute value",
171
+ "operator": "==",
172
+ "value": "",
173
+ "valueIsField": false,
174
+ "isEmpty": true
175
+ },
176
+ {
177
+ "op": "cmp",
178
+ "field": "type",
179
+ "fieldName": "Type platform attribute",
180
+ "operator": "==",
181
+ "value": "boolean",
182
+ "valueIsField": false,
183
+ "isEmpty": false
184
+ }
185
+ ]
186
+ },
187
+ "message": "Default is NULL"
188
+ },
154
189
  {
155
190
  "when": {
156
191
  "op": "cmp",
@@ -167,9 +167,6 @@
167
167
  }
168
168
  ]
169
169
  },
170
- "leftFieldStaticItem": {
171
- "baseline": "MUST_NOT"
172
- },
173
170
  "leftFieldType": {
174
171
  "baseline": "MAY",
175
172
  "optionsWhen": [
@@ -392,20 +389,6 @@
392
389
  }
393
390
  ]
394
391
  },
395
- "parentCondition": {
396
- "baseline": "MUST_NOT",
397
- "enabledWhen": [
398
- {
399
- "op": "cmp",
400
- "field": "parentCondition",
401
- "fieldName": "Parent condition",
402
- "operator": "==",
403
- "value": "",
404
- "valueIsField": false,
405
- "isEmpty": true
406
- }
407
- ]
408
- },
409
392
  "rightField": {
410
393
  "baseline": "MAY",
411
394
  "requiredWhen": [
@@ -193,11 +193,6 @@
193
193
  "title": "simpleCondition",
194
194
  "type": "object",
195
195
  "allOf": [
196
- {
197
- "properties": {
198
- "leftFieldStaticItem": false
199
- }
200
- },
201
196
  {
202
197
  "if": {
203
198
  "anyOf": [