@adobe/design-data-spec 1.4.0 → 2.0.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 (123) hide show
  1. package/conformance/invalid/SPEC-009/expected-errors.json +1 -1
  2. package/conformance/invalid/SPEC-018/dataset.json +8 -1
  3. package/conformance/invalid/SPEC-034/expected-errors.json +1 -1
  4. package/conformance/invalid/SPEC-035/expected-errors.json +1 -1
  5. package/package.json +5 -6
  6. package/rules/rules.yaml +14 -10
  7. package/schemas/component.schema.json +1 -1
  8. package/schemas/manifest.schema.json +1 -22
  9. package/schemas/platform-extension.json +79 -0
  10. package/schemas/registry-value.json +230 -0
  11. package/schemas/token.schema.json +1 -1
  12. package/spec/agent-surface.md +16 -14
  13. package/spec/anatomy-format.md +1 -1
  14. package/spec/cascade.md +1 -1
  15. package/spec/index.md +5 -5
  16. package/spec/mode-sets.md +1 -1
  17. package/spec/registry.md +6 -8
  18. package/spec/taxonomy.md +96 -30
  19. package/spec/token-format.md +11 -3
  20. package/components/accordion.json +0 -557
  21. package/components/action-bar.json +0 -214
  22. package/components/action-button.json +0 -522
  23. package/components/action-group.json +0 -134
  24. package/components/alert-banner.json +0 -134
  25. package/components/alert-dialog.json +0 -180
  26. package/components/avatar-group.json +0 -166
  27. package/components/avatar.json +0 -246
  28. package/components/badge.json +0 -594
  29. package/components/body.json +0 -54
  30. package/components/bottom-navigation-android.json +0 -72
  31. package/components/breadcrumbs.json +0 -307
  32. package/components/button-group.json +0 -86
  33. package/components/button.json +0 -586
  34. package/components/calendar.json +0 -133
  35. package/components/cards.json +0 -541
  36. package/components/checkbox-group.json +0 -91
  37. package/components/checkbox.json +0 -339
  38. package/components/close-button.json +0 -208
  39. package/components/coach-indicator.json +0 -105
  40. package/components/coach-mark.json +0 -169
  41. package/components/code.json +0 -44
  42. package/components/color-area.json +0 -138
  43. package/components/color-handle.json +0 -111
  44. package/components/color-loupe.json +0 -77
  45. package/components/color-slider.json +0 -165
  46. package/components/color-wheel.json +0 -117
  47. package/components/combo-box.json +0 -543
  48. package/components/contextual-help.json +0 -230
  49. package/components/date-picker.json +0 -471
  50. package/components/detail.json +0 -53
  51. package/components/divider.json +0 -93
  52. package/components/drop-zone.json +0 -238
  53. package/components/field-label.json +0 -219
  54. package/components/heading.json +0 -68
  55. package/components/help-text.json +0 -209
  56. package/components/illustrated-message.json +0 -175
  57. package/components/in-field-progress-button.json +0 -88
  58. package/components/in-field-progress-circle.json +0 -116
  59. package/components/in-line-alert.json +0 -233
  60. package/components/link.json +0 -167
  61. package/components/list-view.json +0 -382
  62. package/components/menu.json +0 -597
  63. package/components/meter.json +0 -199
  64. package/components/number-field.json +0 -518
  65. package/components/opacity-checkerboard.json +0 -69
  66. package/components/picker.json +0 -579
  67. package/components/popover.json +0 -174
  68. package/components/progress-bar.json +0 -229
  69. package/components/progress-circle.json +0 -132
  70. package/components/radio-button.json +0 -308
  71. package/components/radio-group.json +0 -113
  72. package/components/rating.json +0 -168
  73. package/components/scroll-zoom-bar.json +0 -82
  74. package/components/search-field.json +0 -346
  75. package/components/segmented-control.json +0 -248
  76. package/components/select-box.json +0 -272
  77. package/components/side-navigation.json +0 -320
  78. package/components/slider.json +0 -407
  79. package/components/standard-dialog.json +0 -179
  80. package/components/standard-panel.json +0 -83
  81. package/components/status-light.json +0 -334
  82. package/components/steplist.json +0 -294
  83. package/components/swatch-group.json +0 -114
  84. package/components/swatch.json +0 -240
  85. package/components/switch.json +0 -336
  86. package/components/tab-bar-ios.json +0 -72
  87. package/components/table.json +0 -435
  88. package/components/tabs.json +0 -253
  89. package/components/tag-field.json +0 -243
  90. package/components/tag-group.json +0 -87
  91. package/components/tag.json +0 -393
  92. package/components/takeover-dialog.json +0 -117
  93. package/components/text-area.json +0 -555
  94. package/components/text-field.json +0 -555
  95. package/components/thumbnail.json +0 -149
  96. package/components/title.json +0 -91
  97. package/components/toast.json +0 -156
  98. package/components/tooltip.json +0 -179
  99. package/components/tray.json +0 -32
  100. package/components/tree-view.json +0 -393
  101. package/fields/anatomy.json +0 -15
  102. package/fields/color-scheme.json +0 -15
  103. package/fields/colorFamily.json +0 -15
  104. package/fields/component.json +0 -15
  105. package/fields/contrast.json +0 -15
  106. package/fields/density.json +0 -15
  107. package/fields/easing.json +0 -15
  108. package/fields/family.json +0 -15
  109. package/fields/motionRole.json +0 -15
  110. package/fields/object.json +0 -15
  111. package/fields/orientation.json +0 -15
  112. package/fields/position.json +0 -15
  113. package/fields/property.json +0 -15
  114. package/fields/scale.json +0 -15
  115. package/fields/scaleIndex.json +0 -15
  116. package/fields/shape.json +0 -15
  117. package/fields/size.json +0 -15
  118. package/fields/state.json +0 -15
  119. package/fields/structure.json +0 -15
  120. package/fields/style.json +0 -15
  121. package/fields/substructure.json +0 -15
  122. package/fields/variant.json +0 -15
  123. package/fields/weight.json +0 -15
@@ -1,586 +0,0 @@
1
- {
2
- "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
- "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/button.json",
4
- "specVersion": "1.0.0-draft",
5
- "name": "button",
6
- "displayName": "Button",
7
- "description": "Buttons allow users to perform an action or to navigate to another page.",
8
- "meta": {
9
- "category": "actions",
10
- "documentationUrl": "https://spectrum.adobe.com/page/button/"
11
- },
12
- "options": {
13
- "variant": {
14
- "type": "string",
15
- "default": "accent",
16
- "description": "Visual emphasis level.",
17
- "values": [
18
- {
19
- "value": "accent"
20
- },
21
- {
22
- "value": "negative"
23
- },
24
- {
25
- "value": "primary"
26
- },
27
- {
28
- "value": "secondary"
29
- }
30
- ]
31
- },
32
- "style": {
33
- "type": "string",
34
- "default": "fill",
35
- "values": [
36
- {
37
- "value": "fill"
38
- },
39
- {
40
- "value": "outline"
41
- }
42
- ]
43
- },
44
- "size": {
45
- "type": "string",
46
- "default": "m",
47
- "values": [
48
- {
49
- "value": "s"
50
- },
51
- {
52
- "value": "m"
53
- },
54
- {
55
- "value": "l"
56
- },
57
- {
58
- "value": "xl"
59
- }
60
- ]
61
- },
62
- "isDisabled": {
63
- "type": "boolean",
64
- "default": false
65
- },
66
- "isPending": {
67
- "type": "boolean",
68
- "default": false
69
- },
70
- "isLabelHidden": {
71
- "type": "boolean",
72
- "default": false
73
- },
74
- "icon": {
75
- "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/workflow-icon.json",
76
- "description": "Icon placed at the start of the button. Required when isLabelHidden is true."
77
- },
78
- "staticColor": {
79
- "type": "string",
80
- "description": "Static color for use on colored backgrounds.",
81
- "values": [
82
- {
83
- "value": "white"
84
- },
85
- {
86
- "value": "black"
87
- }
88
- ]
89
- }
90
- },
91
- "slots": [
92
- {
93
- "name": "default",
94
- "description": "Text label of the button.",
95
- "required": false
96
- },
97
- {
98
- "name": "icon",
99
- "description": "Icon placed at the start of the button."
100
- }
101
- ],
102
- "anatomy": [
103
- {
104
- "name": "icon",
105
- "description": "Leading icon."
106
- },
107
- {
108
- "name": "label",
109
- "description": "Button text.",
110
- "required": true
111
- }
112
- ],
113
- "states": [
114
- {
115
- "name": "hover",
116
- "trigger": "interaction",
117
- "precedence": 50
118
- },
119
- {
120
- "name": "focus",
121
- "trigger": "interaction",
122
- "precedence": 60,
123
- "layered": true
124
- },
125
- {
126
- "name": "disabled",
127
- "trigger": "prop",
128
- "precedence": 100
129
- }
130
- ],
131
- "lifecycle": {
132
- "introduced": "1.0.0-draft"
133
- },
134
- "tokenBindings": [
135
- {
136
- "token": "component-height-75",
137
- "context": "Minimum height"
138
- },
139
- {
140
- "token": "component-height-100",
141
- "context": "Minimum height"
142
- },
143
- {
144
- "token": "component-height-200",
145
- "context": "Minimum height"
146
- },
147
- {
148
- "token": "component-height-300",
149
- "context": "Minimum height"
150
- },
151
- {
152
- "token": "corner-radius-full",
153
- "context": "Rounding"
154
- },
155
- {
156
- "token": "corner-radius-button-small",
157
- "context": "Rounding (with wrapping)"
158
- },
159
- {
160
- "token": "corner-radius-extra-large-default",
161
- "context": "Rounding (with wrapping)"
162
- },
163
- {
164
- "token": "corner-radius-button-large",
165
- "context": "Rounding (with wrapping)"
166
- },
167
- {
168
- "token": "corner-radius-button-extra-large",
169
- "context": "Rounding (with wrapping)"
170
- },
171
- {
172
- "token": "button-minimum-width-multiplier",
173
- "context": "Minimum width (with label)"
174
- },
175
- {
176
- "token": "component-size-difference-down",
177
- "context": "Component size (down)"
178
- },
179
- {
180
- "token": "component-size-width-ratio-down",
181
- "context": "Component size (down)"
182
- },
183
- {
184
- "token": "component-size-minimum-perspective-down",
185
- "context": "Component size (down)"
186
- },
187
- {
188
- "token": "workflow-icon-size-75",
189
- "context": "Icon"
190
- },
191
- {
192
- "token": "workflow-icon-size-100",
193
- "context": "Icon"
194
- },
195
- {
196
- "token": "workflow-icon-size-200",
197
- "context": "Icon"
198
- },
199
- {
200
- "token": "workflow-icon-size-300",
201
- "context": "Icon"
202
- },
203
- {
204
- "token": "component-pill-edge-to-visual-75",
205
- "context": "Spacing (start/end edges)"
206
- },
207
- {
208
- "token": "component-pill-edge-to-visual-100",
209
- "context": "Spacing (start/end edges)"
210
- },
211
- {
212
- "token": "component-pill-edge-to-visual-200",
213
- "context": "Spacing (start/end edges)"
214
- },
215
- {
216
- "token": "component-pill-edge-to-visual-300",
217
- "context": "Spacing (start/end edges)"
218
- },
219
- {
220
- "token": "component-pill-edge-to-text-75",
221
- "context": "Spacing (start/end edges)"
222
- },
223
- {
224
- "token": "component-pill-edge-to-text-100",
225
- "context": "Spacing (start/end edges)"
226
- },
227
- {
228
- "token": "component-pill-edge-to-text-200",
229
- "context": "Spacing (start/end edges)"
230
- },
231
- {
232
- "token": "component-pill-edge-to-text-300",
233
- "context": "Spacing (start/end edges)"
234
- },
235
- {
236
- "token": "component-pill-edge-to-visual-only-75",
237
- "context": "Spacing (start/end edges, icon only)"
238
- },
239
- {
240
- "token": "component-pill-edge-to-visual-only-100",
241
- "context": "Spacing (start/end edges, icon only)"
242
- },
243
- {
244
- "token": "component-pill-edge-to-visual-only-200",
245
- "context": "Spacing (start/end edges, icon only)"
246
- },
247
- {
248
- "token": "component-pill-edge-to-visual-only-300",
249
- "context": "Spacing (start/end edges, icon only)"
250
- },
251
- {
252
- "token": "text-to-visual-75",
253
- "context": "Spacing (icon to label)"
254
- },
255
- {
256
- "token": "text-to-visual-100",
257
- "context": "Spacing (icon to label)"
258
- },
259
- {
260
- "token": "text-to-visual-200",
261
- "context": "Spacing (icon to label)"
262
- },
263
- {
264
- "token": "text-to-visual-300",
265
- "context": "Spacing (icon to label)"
266
- },
267
- {
268
- "token": "component-top-to-workflow-icon-75",
269
- "context": "Spacing (top edge to icon)"
270
- },
271
- {
272
- "token": "component-top-to-workflow-icon-100",
273
- "context": "Spacing (top edge to icon)"
274
- },
275
- {
276
- "token": "component-top-to-workflow-icon-200",
277
- "context": "Spacing (top edge to icon)"
278
- },
279
- {
280
- "token": "component-top-to-workflow-icon-300",
281
- "context": "Spacing (top edge to icon)"
282
- },
283
- {
284
- "token": "component-top-to-text-75",
285
- "context": "Spacing (top/bottom edge to label)"
286
- },
287
- {
288
- "token": "component-top-to-text-100",
289
- "context": "Spacing (top/bottom edge to label)"
290
- },
291
- {
292
- "token": "component-top-to-text-200",
293
- "context": "Spacing (top/bottom edge to label)"
294
- },
295
- {
296
- "token": "component-top-to-text-300",
297
- "context": "Spacing (top/bottom edge to label)"
298
- },
299
- {
300
- "token": "component-bottom-to-text-75",
301
- "context": "Spacing (top/bottom edge to label)"
302
- },
303
- {
304
- "token": "component-bottom-to-text-100",
305
- "context": "Spacing (top/bottom edge to label)"
306
- },
307
- {
308
- "token": "component-bottom-to-text-200",
309
- "context": "Spacing (top/bottom edge to label)"
310
- },
311
- {
312
- "token": "component-bottom-to-text-300",
313
- "context": "Spacing (top/bottom edge to label)"
314
- },
315
- {
316
- "token": "border-width-200",
317
- "context": "Border"
318
- },
319
- {
320
- "token": "focus-indicator-thickness",
321
- "context": "Focus indicator"
322
- },
323
- {
324
- "token": "focus-indicator-gap",
325
- "context": "Focus indicator"
326
- },
327
- {
328
- "token": "default-font-family",
329
- "context": "Label"
330
- },
331
- {
332
- "token": "bold-font-weight",
333
- "context": "Label"
334
- },
335
- {
336
- "token": "default-font-style",
337
- "context": "Label"
338
- },
339
- {
340
- "token": "font-size-75",
341
- "context": "Label"
342
- },
343
- {
344
- "token": "font-size-100",
345
- "context": "Label"
346
- },
347
- {
348
- "token": "font-size-200",
349
- "context": "Label"
350
- },
351
- {
352
- "token": "font-size-300",
353
- "context": "Label"
354
- },
355
- {
356
- "token": "line-height-100",
357
- "context": "Label"
358
- },
359
- {
360
- "token": "cjk-line-height-100",
361
- "context": "Label"
362
- },
363
- {
364
- "token": "accent-background-color-default",
365
- "context": "Background"
366
- },
367
- {
368
- "token": "accent-background-color-hover",
369
- "context": "Background"
370
- },
371
- {
372
- "token": "accent-background-color-down",
373
- "context": "Background"
374
- },
375
- {
376
- "token": "accent-background-color-key-focus",
377
- "context": "Background"
378
- },
379
- {
380
- "token": "white",
381
- "context": "Icon"
382
- },
383
- {
384
- "token": "negative-background-color-default",
385
- "context": "Background"
386
- },
387
- {
388
- "token": "negative-background-color-hover",
389
- "context": "Background"
390
- },
391
- {
392
- "token": "negative-background-color-down",
393
- "context": "Background"
394
- },
395
- {
396
- "token": "negative-background-color-key-focus",
397
- "context": "Background"
398
- },
399
- {
400
- "token": "neutral-background-color-default",
401
- "context": "Background"
402
- },
403
- {
404
- "token": "neutral-background-color-hover",
405
- "context": "Background"
406
- },
407
- {
408
- "token": "neutral-background-color-down",
409
- "context": "Background"
410
- },
411
- {
412
- "token": "neutral-background-color-key-focus",
413
- "context": "Background"
414
- },
415
- {
416
- "token": "gray-25",
417
- "context": "Icon"
418
- },
419
- {
420
- "token": "gray-100",
421
- "context": "Background"
422
- },
423
- {
424
- "token": "gray-800",
425
- "context": "Border"
426
- },
427
- {
428
- "token": "gray-900",
429
- "context": "Border"
430
- },
431
- {
432
- "token": "neutral-content-color-default",
433
- "context": "Icon"
434
- },
435
- {
436
- "token": "neutral-content-color-hover",
437
- "context": "Icon"
438
- },
439
- {
440
- "token": "neutral-content-color-down",
441
- "context": "Icon"
442
- },
443
- {
444
- "token": "neutral-content-color-key-focus",
445
- "context": "Icon"
446
- },
447
- {
448
- "token": "gray-200",
449
- "context": "Background"
450
- },
451
- {
452
- "token": "gray-300",
453
- "context": "Border"
454
- },
455
- {
456
- "token": "gray-400",
457
- "context": "Border"
458
- },
459
- {
460
- "token": "disabled-background-color",
461
- "context": "Fill"
462
- },
463
- {
464
- "token": "disabled-border-color",
465
- "context": "Outline"
466
- },
467
- {
468
- "token": "disabled-content-color",
469
- "context": "Icon"
470
- },
471
- {
472
- "token": "focus-indicator-color",
473
- "context": "Focus indicator"
474
- },
475
- {
476
- "token": "transparent-white-900",
477
- "context": "Background"
478
- },
479
- {
480
- "token": "transparent-white-1000",
481
- "context": "Background"
482
- },
483
- {
484
- "token": "black",
485
- "context": "Icon"
486
- },
487
- {
488
- "token": "transparent-white-25",
489
- "context": "Background"
490
- },
491
- {
492
- "token": "transparent-white-100",
493
- "context": "Background"
494
- },
495
- {
496
- "token": "transparent-white-200",
497
- "context": "Background"
498
- },
499
- {
500
- "token": "transparent-white-300",
501
- "context": "Border"
502
- },
503
- {
504
- "token": "transparent-white-400",
505
- "context": "Border"
506
- },
507
- {
508
- "token": "disabled-static-white-background-color",
509
- "context": "Background"
510
- },
511
- {
512
- "token": "disabled-static-white-content-color",
513
- "context": "Icon and label"
514
- },
515
- {
516
- "token": "disabled-static-white-border-color",
517
- "context": "Border"
518
- },
519
- {
520
- "token": "static-white-focus-indicator-color",
521
- "context": "Static white – Focus indicator"
522
- },
523
- {
524
- "token": "transparent-black-900",
525
- "context": "Background"
526
- },
527
- {
528
- "token": "transparent-black-1000",
529
- "context": "Background"
530
- },
531
- {
532
- "token": "transparent-black-25",
533
- "context": "Background"
534
- },
535
- {
536
- "token": "transparent-black-100",
537
- "context": "Background"
538
- },
539
- {
540
- "token": "transparent-black-200",
541
- "context": "Background"
542
- },
543
- {
544
- "token": "transparent-black-300",
545
- "context": "Border"
546
- },
547
- {
548
- "token": "transparent-black-400",
549
- "context": "Border"
550
- },
551
- {
552
- "token": "disabled-static-black-background-color",
553
- "context": "Background"
554
- },
555
- {
556
- "token": "disabled-static-black-content-color",
557
- "context": "Icon and label"
558
- },
559
- {
560
- "token": "disabled-static-black-border-color",
561
- "context": "Border"
562
- },
563
- {
564
- "token": "static-black-focus-indicator-color",
565
- "context": "Static black – Focus indicator"
566
- }
567
- ],
568
- "accessibility": {
569
- "role": "button",
570
- "intents": ["trigger"],
571
- "focusable": true,
572
- "keyboardIntents": ["activate"],
573
- "wcag": [
574
- {
575
- "criterion": "2.1.1",
576
- "level": "A",
577
- "title": "Keyboard"
578
- },
579
- {
580
- "criterion": "4.1.2",
581
- "level": "A",
582
- "title": "Name, Role, Value"
583
- }
584
- ]
585
- }
586
- }
@@ -1,133 +0,0 @@
1
- {
2
- "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
- "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/calendar.json",
4
- "specVersion": "1.0.0-draft",
5
- "name": "calendar",
6
- "displayName": "Calendar",
7
- "description": "Calendars display days, weeks, and months, allowing users to select dates or ranges.",
8
- "meta": {
9
- "category": "inputs",
10
- "documentationUrl": "https://spectrum.adobe.com/page/calendar/"
11
- },
12
- "options": {
13
- "currentMonth": {
14
- "type": "number",
15
- "minimum": 1,
16
- "maximum": 12,
17
- "description": "The month currently displayed in the calendar (1 = January, 12 = December)."
18
- },
19
- "currentYear": {
20
- "type": "number",
21
- "description": "The year currently displayed in the calendar (Gregorian year number)."
22
- },
23
- "selectionMode": {
24
- "type": "string",
25
- "default": "single",
26
- "description": "Controls whether the calendar allows selecting a single date or a date range.",
27
- "values": [
28
- {
29
- "value": "single"
30
- },
31
- {
32
- "value": "range"
33
- }
34
- ]
35
- },
36
- "isDisabled": {
37
- "type": "boolean",
38
- "default": false
39
- },
40
- "isError": {
41
- "type": "boolean",
42
- "default": false
43
- },
44
- "minValue": {
45
- "type": "string",
46
- "description": "The minimum allowed date that a user may select (ISO format string)."
47
- },
48
- "maxValue": {
49
- "type": "string",
50
- "description": "The maximum allowed date that a user may select (ISO format string)."
51
- },
52
- "showTimeZone": {
53
- "type": "boolean",
54
- "default": false,
55
- "description": "Whether to show a time zone indicator in the calendar."
56
- },
57
- "days": {
58
- "type": "array",
59
- "description": "An array of days displayed in the current calendar view.",
60
- "items": {
61
- "type": "object",
62
- "properties": {
63
- "date": {
64
- "type": "string",
65
- "description": "The date represented by this day (ISO format string)."
66
- },
67
- "isDisabled": {
68
- "type": "boolean",
69
- "default": false,
70
- "description": "Whether this day is disabled."
71
- },
72
- "isSelected": {
73
- "type": "boolean",
74
- "default": false,
75
- "description": "Whether this day is currently selected."
76
- },
77
- "isRangeStart": {
78
- "type": "boolean",
79
- "default": false,
80
- "description": "Whether this day is the start of a selected range."
81
- },
82
- "isRangeEnd": {
83
- "type": "boolean",
84
- "default": false,
85
- "description": "Whether this day is the end of a selected range."
86
- },
87
- "isUnavailable": {
88
- "type": "boolean",
89
- "default": false,
90
- "description": "Whether this day is unavailable for selection. If true, the day appears with a strikethrough."
91
- },
92
- "isToday": {
93
- "type": "boolean",
94
- "default": false,
95
- "description": "Whether this day represents the current date."
96
- },
97
- "state": {
98
- "type": "string",
99
- "enum": ["default", "hover", "keyboard focus"],
100
- "default": "default",
101
- "description": "The interaction state of the day cell."
102
- }
103
- },
104
- "required": ["date"]
105
- }
106
- }
107
- },
108
- "lifecycle": {
109
- "introduced": "1.0.0-draft"
110
- },
111
- "accessibility": {
112
- "intents": ["input", "choose"],
113
- "focusable": true,
114
- "keyboardIntents": ["navigate-items", "activate"],
115
- "wcag": [
116
- {
117
- "criterion": "1.3.1",
118
- "level": "A",
119
- "title": "Info and Relationships"
120
- },
121
- {
122
- "criterion": "2.1.1",
123
- "level": "A",
124
- "title": "Keyboard"
125
- },
126
- {
127
- "criterion": "4.1.2",
128
- "level": "A",
129
- "title": "Name, Role, Value"
130
- }
131
- ]
132
- }
133
- }