@verbatra/sdk 0.11.1 → 0.13.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.
@@ -0,0 +1,446 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://verbatra.kreitz-webdev.de/schema/v1/check-summary.json",
4
+ "title": "verbatra check summary",
5
+ "type": "object",
6
+ "properties": {
7
+ "inSync": {
8
+ "type": "boolean"
9
+ },
10
+ "locales": {
11
+ "type": "array",
12
+ "items": {
13
+ "type": "object",
14
+ "properties": {
15
+ "locale": {
16
+ "type": "string"
17
+ },
18
+ "missing": {
19
+ "type": "number"
20
+ },
21
+ "stale": {
22
+ "type": "number"
23
+ },
24
+ "upToDate": {
25
+ "type": "number"
26
+ },
27
+ "inSync": {
28
+ "type": "boolean"
29
+ },
30
+ "emptySource": {
31
+ "type": "number"
32
+ },
33
+ "provenance": {
34
+ "type": "object",
35
+ "properties": {
36
+ "byOrigin": {
37
+ "type": "object",
38
+ "propertyNames": {
39
+ "type": "string",
40
+ "enum": [
41
+ "machine",
42
+ "memory",
43
+ "fuzzy",
44
+ "agent",
45
+ "human",
46
+ "import",
47
+ "unknown",
48
+ "unrecorded",
49
+ "external"
50
+ ]
51
+ },
52
+ "additionalProperties": {
53
+ "type": "number"
54
+ },
55
+ "required": [
56
+ "machine",
57
+ "memory",
58
+ "fuzzy",
59
+ "agent",
60
+ "human",
61
+ "import",
62
+ "unknown",
63
+ "unrecorded",
64
+ "external"
65
+ ]
66
+ },
67
+ "byReviewState": {
68
+ "type": "object",
69
+ "propertyNames": {
70
+ "type": "string",
71
+ "enum": [
72
+ "unreviewed",
73
+ "approved",
74
+ "rejected"
75
+ ]
76
+ },
77
+ "additionalProperties": {
78
+ "type": "number"
79
+ },
80
+ "required": [
81
+ "unreviewed",
82
+ "approved",
83
+ "rejected"
84
+ ]
85
+ }
86
+ },
87
+ "required": [
88
+ "byOrigin",
89
+ "byReviewState"
90
+ ]
91
+ },
92
+ "protected": {
93
+ "type": "number"
94
+ },
95
+ "incompletePlurals": {
96
+ "type": "array",
97
+ "items": {
98
+ "type": "object",
99
+ "properties": {
100
+ "code": {
101
+ "type": "string",
102
+ "const": "PLURAL_CATEGORIES_INCOMPLETE"
103
+ },
104
+ "key": {
105
+ "type": "string"
106
+ },
107
+ "argument": {
108
+ "type": "string"
109
+ },
110
+ "ruleType": {
111
+ "type": "string",
112
+ "enum": [
113
+ "cardinal",
114
+ "ordinal"
115
+ ]
116
+ },
117
+ "missing": {
118
+ "type": "array",
119
+ "items": {
120
+ "type": "string",
121
+ "enum": [
122
+ "zero",
123
+ "one",
124
+ "two",
125
+ "few",
126
+ "many",
127
+ "other"
128
+ ]
129
+ }
130
+ }
131
+ },
132
+ "required": [
133
+ "code",
134
+ "key",
135
+ "ruleType",
136
+ "missing"
137
+ ]
138
+ }
139
+ },
140
+ "inconsistencies": {
141
+ "type": "array",
142
+ "items": {
143
+ "type": "object",
144
+ "properties": {
145
+ "source": {
146
+ "type": "string"
147
+ },
148
+ "context": {
149
+ "type": "string"
150
+ },
151
+ "description": {
152
+ "type": "string"
153
+ },
154
+ "meaning": {
155
+ "type": "string"
156
+ },
157
+ "isPlural": {
158
+ "type": "boolean"
159
+ },
160
+ "pluralForm": {
161
+ "type": "string"
162
+ },
163
+ "translations": {
164
+ "type": "array",
165
+ "items": {
166
+ "type": "object",
167
+ "properties": {
168
+ "value": {
169
+ "type": "string"
170
+ },
171
+ "keys": {
172
+ "type": "array",
173
+ "items": {
174
+ "type": "string"
175
+ }
176
+ }
177
+ },
178
+ "required": [
179
+ "value",
180
+ "keys"
181
+ ]
182
+ }
183
+ }
184
+ },
185
+ "required": [
186
+ "source",
187
+ "isPlural",
188
+ "translations"
189
+ ]
190
+ }
191
+ },
192
+ "qa": {
193
+ "type": "object",
194
+ "properties": {
195
+ "checked": {
196
+ "type": "number"
197
+ },
198
+ "errors": {
199
+ "type": "number"
200
+ },
201
+ "warnings": {
202
+ "type": "number"
203
+ },
204
+ "findings": {
205
+ "type": "array",
206
+ "items": {
207
+ "anyOf": [
208
+ {
209
+ "type": "object",
210
+ "properties": {
211
+ "key": {
212
+ "type": "string"
213
+ },
214
+ "severity": {
215
+ "type": "string",
216
+ "const": "error"
217
+ },
218
+ "reason": {
219
+ "type": "string",
220
+ "enum": [
221
+ "placeholder",
222
+ "markup",
223
+ "icu",
224
+ "degenerate",
225
+ "empty"
226
+ ]
227
+ },
228
+ "details": {
229
+ "type": "array",
230
+ "items": {
231
+ "type": "string"
232
+ }
233
+ }
234
+ },
235
+ "required": [
236
+ "key",
237
+ "severity",
238
+ "reason"
239
+ ]
240
+ },
241
+ {
242
+ "type": "object",
243
+ "properties": {
244
+ "key": {
245
+ "type": "string"
246
+ },
247
+ "severity": {
248
+ "type": "string",
249
+ "const": "warning"
250
+ },
251
+ "reason": {
252
+ "type": "string",
253
+ "enum": [
254
+ "LENGTH_RATIO_OUTLIER",
255
+ "MAX_LENGTH_EXCEEDED",
256
+ "EQUALS_SOURCE",
257
+ "GLOSSARY_TERM_MISSED",
258
+ "GLOSSARY_FORBIDDEN_TERM",
259
+ "INTEGRITY_REORDERED",
260
+ "PROVIDER_DEGRADED",
261
+ "FUZZY_CACHE_REUSE",
262
+ "FOREIGN_PLACEHOLDER_CHANGED",
263
+ "BIDI_CONTROLS_CHANGED"
264
+ ]
265
+ },
266
+ "details": {
267
+ "type": "array",
268
+ "items": {
269
+ "type": "string"
270
+ }
271
+ }
272
+ },
273
+ "required": [
274
+ "key",
275
+ "severity",
276
+ "reason"
277
+ ]
278
+ }
279
+ ]
280
+ }
281
+ }
282
+ },
283
+ "required": [
284
+ "checked",
285
+ "errors",
286
+ "warnings",
287
+ "findings"
288
+ ]
289
+ },
290
+ "review": {
291
+ "type": "object",
292
+ "properties": {
293
+ "unreviewed": {
294
+ "type": "array",
295
+ "items": {
296
+ "type": "string"
297
+ }
298
+ }
299
+ },
300
+ "required": [
301
+ "unreviewed"
302
+ ]
303
+ }
304
+ },
305
+ "required": [
306
+ "locale",
307
+ "missing",
308
+ "stale",
309
+ "upToDate",
310
+ "inSync"
311
+ ]
312
+ }
313
+ },
314
+ "qa": {
315
+ "type": "object",
316
+ "properties": {
317
+ "errors": {
318
+ "type": "number"
319
+ },
320
+ "warnings": {
321
+ "type": "number"
322
+ },
323
+ "invalidSourceKeys": {
324
+ "type": "array",
325
+ "items": {
326
+ "type": "string"
327
+ }
328
+ },
329
+ "limitsNotice": {
330
+ "type": "object",
331
+ "properties": {
332
+ "code": {
333
+ "type": "string",
334
+ "const": "LIMITS_FILE_IGNORED"
335
+ },
336
+ "message": {
337
+ "type": "string"
338
+ }
339
+ },
340
+ "required": [
341
+ "code",
342
+ "message"
343
+ ]
344
+ }
345
+ },
346
+ "required": [
347
+ "errors",
348
+ "warnings",
349
+ "invalidSourceKeys"
350
+ ]
351
+ },
352
+ "review": {
353
+ "type": "object",
354
+ "properties": {
355
+ "reviewed": {
356
+ "type": "boolean"
357
+ },
358
+ "unreviewed": {
359
+ "type": "number"
360
+ },
361
+ "code": {
362
+ "type": "string",
363
+ "enum": [
364
+ "REVIEW_REQUIRED",
365
+ "REVIEW_STATE_UNREADABLE"
366
+ ]
367
+ }
368
+ },
369
+ "required": [
370
+ "reviewed",
371
+ "unreviewed"
372
+ ]
373
+ },
374
+ "sensitive": {
375
+ "type": "object",
376
+ "properties": {
377
+ "findings": {
378
+ "type": "array",
379
+ "items": {
380
+ "type": "object",
381
+ "properties": {
382
+ "key": {
383
+ "type": "string"
384
+ },
385
+ "fields": {
386
+ "type": "array",
387
+ "items": {
388
+ "type": "string",
389
+ "enum": [
390
+ "key",
391
+ "value",
392
+ "description",
393
+ "meaning"
394
+ ]
395
+ }
396
+ },
397
+ "detectors": {
398
+ "type": "array",
399
+ "items": {
400
+ "anyOf": [
401
+ {
402
+ "type": "string",
403
+ "enum": [
404
+ "secret",
405
+ "email",
406
+ "iban",
407
+ "credit-card",
408
+ "phone",
409
+ "ip",
410
+ "private-host"
411
+ ]
412
+ },
413
+ {
414
+ "type": "string",
415
+ "const": "pattern"
416
+ },
417
+ {
418
+ "type": "string",
419
+ "pattern": "^pattern-timeout--?\\d+(?:\\.\\d+)?$"
420
+ }
421
+ ]
422
+ }
423
+ }
424
+ },
425
+ "required": [
426
+ "key",
427
+ "fields",
428
+ "detectors"
429
+ ]
430
+ }
431
+ },
432
+ "glossaryTerms": {
433
+ "type": "number"
434
+ }
435
+ },
436
+ "required": [
437
+ "findings",
438
+ "glossaryTerms"
439
+ ]
440
+ }
441
+ },
442
+ "required": [
443
+ "inSync",
444
+ "locales"
445
+ ]
446
+ }