@adobe/design-data-spec 1.5.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 (124) 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 +8 -7
  7. package/schemas/component.schema.json +1 -1
  8. package/schemas/manifest.schema.json +1 -23
  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 +32 -32
  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/alignment.json +0 -15
  102. package/fields/anatomy.json +0 -15
  103. package/fields/color-scheme.json +0 -15
  104. package/fields/colorFamily.json +0 -15
  105. package/fields/component.json +0 -15
  106. package/fields/contrast.json +0 -15
  107. package/fields/density.json +0 -15
  108. package/fields/easing.json +0 -15
  109. package/fields/family.json +0 -15
  110. package/fields/motionRole.json +0 -15
  111. package/fields/object.json +0 -15
  112. package/fields/orientation.json +0 -15
  113. package/fields/position.json +0 -15
  114. package/fields/property.json +0 -15
  115. package/fields/scale.json +0 -15
  116. package/fields/scaleIndex.json +0 -15
  117. package/fields/shape.json +0 -15
  118. package/fields/size.json +0 -15
  119. package/fields/state.json +0 -15
  120. package/fields/structure.json +0 -15
  121. package/fields/style.json +0 -15
  122. package/fields/substructure.json +0 -15
  123. package/fields/variant.json +0 -15
  124. package/fields/weight.json +0 -15
@@ -1,72 +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/tab-bar-ios.json",
4
- "specVersion": "1.0.0-draft",
5
- "name": "tab-bar-ios",
6
- "displayName": "Tab bar (iOS)",
7
- "description": "Tab bar is a top-level navigation control for iOS apps.",
8
- "meta": {
9
- "category": "navigation",
10
- "documentationUrl": "https://spectrum.adobe.com/page/tab-bar-ios/"
11
- },
12
- "options": {
13
- "label": {
14
- "type": "string"
15
- },
16
- "labelPosition": {
17
- "type": "string",
18
- "default": "bottom",
19
- "values": [
20
- {
21
- "value": "bottom"
22
- },
23
- {
24
- "value": "side"
25
- }
26
- ]
27
- },
28
- "icon": {
29
- "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/workflow-icon.json"
30
- },
31
- "background": {
32
- "type": "string",
33
- "default": "primary",
34
- "values": [
35
- {
36
- "value": "primary"
37
- },
38
- {
39
- "value": "secondary"
40
- }
41
- ]
42
- },
43
- "hasBadge": {
44
- "type": "boolean",
45
- "default": false
46
- },
47
- "isDisabled": {
48
- "type": "boolean",
49
- "default": false
50
- }
51
- },
52
- "lifecycle": {
53
- "introduced": "1.0.0-draft"
54
- },
55
- "accessibility": {
56
- "intents": ["navigate"],
57
- "focusable": true,
58
- "keyboardIntents": ["navigate-items"],
59
- "wcag": [
60
- {
61
- "criterion": "2.1.1",
62
- "level": "A",
63
- "title": "Keyboard"
64
- },
65
- {
66
- "criterion": "4.1.2",
67
- "level": "A",
68
- "title": "Name, Role, Value"
69
- }
70
- ]
71
- }
72
- }
@@ -1,435 +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/table.json",
4
- "specVersion": "1.0.0-draft",
5
- "name": "table",
6
- "displayName": "Table",
7
- "description": "Tables display information in rows and columns, allowing users to compare and scan structured data.",
8
- "meta": {
9
- "category": "data-visualization",
10
- "documentationUrl": "https://spectrum.adobe.com/page/table/"
11
- },
12
- "options": {
13
- "size": {
14
- "type": "string",
15
- "default": "m",
16
- "description": "Controls the density of table rows.",
17
- "values": [
18
- {
19
- "value": "s"
20
- },
21
- {
22
- "value": "m"
23
- },
24
- {
25
- "value": "l"
26
- }
27
- ]
28
- },
29
- "hideHeader": {
30
- "type": "boolean",
31
- "default": false,
32
- "description": "If true, the table header is hidden."
33
- },
34
- "header": {
35
- "type": "object",
36
- "description": "Configuration for the table header row.",
37
- "properties": {
38
- "alignment": {
39
- "type": "string",
40
- "enum": ["left", "right"],
41
- "default": "left",
42
- "description": "Alignment of the table header text."
43
- },
44
- "state": {
45
- "type": "string",
46
- "enum": ["default", "hover", "down", "keyboard focus"],
47
- "default": "default",
48
- "description": "Interaction state of the header row."
49
- }
50
- }
51
- },
52
- "density": {
53
- "type": "string",
54
- "default": "regular",
55
- "values": [
56
- {
57
- "value": "compact"
58
- },
59
- {
60
- "value": "regular"
61
- },
62
- {
63
- "value": "spacious"
64
- }
65
- ]
66
- },
67
- "isQuiet": {
68
- "type": "boolean",
69
- "default": false,
70
- "description": "If true, the table uses a quiet visual style."
71
- },
72
- "isSortable": {
73
- "type": "boolean",
74
- "default": false,
75
- "description": "If true, table columns can be sorted."
76
- },
77
- "columns": {
78
- "type": "array",
79
- "description": "An array of column definitions for the table.",
80
- "items": {
81
- "type": "object",
82
- "properties": {
83
- "key": {
84
- "type": "string",
85
- "description": "Unique identifier for the column."
86
- },
87
- "label": {
88
- "type": "string",
89
- "description": "The header text displayed for the column."
90
- },
91
- "type": {
92
- "type": "string",
93
- "enum": [
94
- "text",
95
- "number",
96
- "avatar",
97
- "date",
98
- "sparkline",
99
- "select",
100
- "layout"
101
- ],
102
- "default": "text",
103
- "description": "Defines the data type for the column."
104
- },
105
- "resizing": {
106
- "type": "string",
107
- "enum": ["fluid", "fixed"],
108
- "default": "fluid",
109
- "description": "Defines whether the column width is fluid or fixed."
110
- },
111
- "summary placement": {
112
- "type": "string",
113
- "enum": ["top", "bottom"],
114
- "default": "bottom",
115
- "description": "Placement of the summary row for this column, if applicable."
116
- },
117
- "summary text": {
118
- "type": "string",
119
- "description": "Text to display in the summary row for this column, if applicable."
120
- },
121
- "isSortable": {
122
- "type": "boolean",
123
- "default": false,
124
- "description": "Whether this column is sortable."
125
- }
126
- },
127
- "required": ["key", "label", "type"]
128
- }
129
- },
130
- "rows": {
131
- "type": "array",
132
- "description": "An array of row data for the table.",
133
- "items": {
134
- "type": "object",
135
- "description": "Each object represents a single row, keyed by column IDs."
136
- }
137
- }
138
- },
139
- "lifecycle": {
140
- "introduced": "1.0.0-draft"
141
- },
142
- "tokenBindings": [
143
- {
144
- "token": "chevron-100",
145
- "context": "Header icons"
146
- },
147
- {
148
- "token": "corner-radius-medium-size-extra-small",
149
- "context": "Note: desktop 6px, mobile 6px;"
150
- },
151
- {
152
- "token": "component-height-100",
153
- "context": "Column header row height"
154
- },
155
- {
156
- "token": "table-column-header-row-top-to-text-medium",
157
- "context": "Spacing (column header row top/bottom to text)"
158
- },
159
- {
160
- "token": "table-column-header-row-bottom-to-text-medium",
161
- "context": "Spacing (column header row top/bottom to text)"
162
- },
163
- {
164
- "token": "table-row-height-medium-compact",
165
- "context": "Row height (minimum, compact density)"
166
- },
167
- {
168
- "token": "table-row-height-medium",
169
- "context": "Row height (minimum, regular density)"
170
- },
171
- {
172
- "token": "table-row-height-medium-spacious",
173
- "context": "Row height (minimum, spacious density)"
174
- },
175
- {
176
- "token": "table-row-top-to-text-medium-compact",
177
- "context": "Spacing (row top/bottom to text, compact density)"
178
- },
179
- {
180
- "token": "table-row-bottom-to-text-medium-compact",
181
- "context": "Spacing (row top/bottom to text, compact density)"
182
- },
183
- {
184
- "token": "table-row-top-to-text-medium",
185
- "context": "Note: desktop 11px, mobile 14px;"
186
- },
187
- {
188
- "token": "table-row-bottom-to-text-medium",
189
- "context": "Note: desktop 11px, mobile 14px;"
190
- },
191
- {
192
- "token": "table-row-top-to-text-medium-spacious",
193
- "context": "Spacing (row top/bottom to text, spacious density)"
194
- },
195
- {
196
- "token": "table-row-bottom-to-text-medium-spacious",
197
- "context": "Spacing (row top/bottom to text, spacious density)"
198
- },
199
- {
200
- "token": "table-edge-to-content",
201
- "context": "Spacing (text to start/end edge or divider)"
202
- },
203
- {
204
- "token": "text-to-visual-300",
205
- "context": "Note: desktop 8px, mobile 10px;\n\nThis applies to icon, avatar, and thumbnail."
206
- },
207
- {
208
- "token": "table-border-divider-width",
209
- "context": "Border and column divider width"
210
- },
211
- {
212
- "token": "table-checkbox-to-text",
213
- "context": "Spacing (checkbox to text)"
214
- },
215
- {
216
- "token": "table-header-row-checkbox-to-top-medium",
217
- "context": "Note: desktop 8px, mobile 11px;"
218
- },
219
- {
220
- "token": "table-row-checkbox-to-top-medium-compact",
221
- "context": "Note: desktop 8px, mobile 11px;"
222
- },
223
- {
224
- "token": "table-row-checkbox-to-top-medium",
225
- "context": "Note: desktop 12px, mobile 16px;"
226
- },
227
- {
228
- "token": "table-row-checkbox-to-top-medium-spacious",
229
- "context": "Note: desktop 16px, mobile 21px;"
230
- },
231
- {
232
- "token": "table-section-header-row-height-medium",
233
- "context": "Section header row height"
234
- },
235
- {
236
- "token": "component-top-to-text-100",
237
- "context": "Spacing (section header row top/bottom to text) "
238
- },
239
- {
240
- "token": "component-bottom-to-text-100",
241
- "context": "Spacing (section header row top/bottom to text) "
242
- },
243
- {
244
- "token": "accent-content-color-selected",
245
- "context": "Selection indicator"
246
- },
247
- {
248
- "token": "border-width-100",
249
- "context": "Note: 1px;"
250
- },
251
- {
252
- "token": "corner-radius-small-default",
253
- "context": "Focus indicator (cell)"
254
- },
255
- {
256
- "token": "side-focus-indicator",
257
- "context": "Focus indicator (row)"
258
- },
259
- {
260
- "token": "body-color",
261
- "context": "Column header and row (text)"
262
- },
263
- {
264
- "token": "neutral-subdued-content-color-default",
265
- "context": "Row: not selected"
266
- },
267
- {
268
- "token": "neutral-subdued-content-color-hover",
269
- "context": "Row: not selected"
270
- },
271
- {
272
- "token": "neutral-subdued-content-color-key-focus",
273
- "context": "Row: not selected"
274
- },
275
- {
276
- "token": "neutral-content-color-default",
277
- "context": "Row: selected, checkbox & highlight"
278
- },
279
- {
280
- "token": "neutral-content-color-default-hover",
281
- "context": "Row: selected, checkbox & highlight"
282
- },
283
- {
284
- "token": "neutral-content-color-default-down",
285
- "context": "Row: selected, checkbox & highlight"
286
- },
287
- {
288
- "token": "neutral-content-color-default-key-focus",
289
- "context": "Row: selected, checkbox & highlight"
290
- },
291
- {
292
- "token": "neutral-subdued-content-color-down",
293
- "context": "Sort UI icon asset"
294
- },
295
- {
296
- "token": "gray-25",
297
- "context": "Note: change applies to both desktop and mobile."
298
- },
299
- {
300
- "token": "gray-300",
301
- "context": "Column header and row (background, border and divider)"
302
- },
303
- {
304
- "token": "gray-75",
305
- "context": "Column header and row (background, border and divider)"
306
- },
307
- {
308
- "token": "gray-200",
309
- "context": "Summary row (background)"
310
- },
311
- {
312
- "token": "gray-100",
313
- "context": "Row (disabled)"
314
- },
315
- {
316
- "token": "gray-400",
317
- "context": "Row (disabled)"
318
- },
319
- {
320
- "token": "stack-item-background-color-hover",
321
- "context": "Row (not selected, hover)"
322
- },
323
- {
324
- "token": "stack-item-selected-background-color-default",
325
- "context": "Row (checkbox selection)"
326
- },
327
- {
328
- "token": "stack-item-selected-background-color-hover",
329
- "context": "Row (checkbox selection, hover)"
330
- },
331
- {
332
- "token": "stack-item-selected-background-color-down",
333
- "context": "Row (checkbox selection, down)"
334
- },
335
- {
336
- "token": "stack-item-selected-background-color-key-focus",
337
- "context": "Row (checkbox selection, keyboard focus)"
338
- },
339
- {
340
- "token": "table-selected-row-background-color-highlight",
341
- "context": "Selected row background (highlight selection)"
342
- },
343
- {
344
- "token": "table-selected-row-background-opacity-highlight",
345
- "context": "Selected row background (highlight selection)"
346
- },
347
- {
348
- "token": "table-selected-row-background-opacity-highlight-hover",
349
- "context": "Selected row background (highlight selection, hover)"
350
- },
351
- {
352
- "token": "focus-indicator-color",
353
- "context": "Focus indicator (cell)"
354
- },
355
- {
356
- "token": "default-font-family",
357
- "context": "Column header and row"
358
- },
359
- {
360
- "token": "bold-font-weight",
361
- "context": "Column header and row"
362
- },
363
- {
364
- "token": "default-font-style",
365
- "context": "Column header and row"
366
- },
367
- {
368
- "token": "font-size-100",
369
- "context": "Column header and row"
370
- },
371
- {
372
- "token": "line-height-100",
373
- "context": "Column header and row"
374
- },
375
- {
376
- "token": "cjk-line-height-100",
377
- "context": "Column header and row"
378
- },
379
- {
380
- "token": "regular-font-weight",
381
- "context": "Column header and row"
382
- },
383
- {
384
- "token": "table-row-hover-color;",
385
- "context": "S1 Row (not selected, hover)"
386
- },
387
- {
388
- "token": "table-row-hover-opacity",
389
- "context": "S1 Row (not selected, hover)"
390
- },
391
- {
392
- "token": "table-row-down-opacity",
393
- "context": "S1 Row (checkbox selection, down)"
394
- },
395
- {
396
- "token": "table-selected-row-background-opacity-hover-highlight",
397
- "context": "S2 Selected row background (highlight selection, hover)"
398
- },
399
- {
400
- "token": "table-selected-row-background-color",
401
- "context": "S1 Selected row background (highlight selection)"
402
- },
403
- {
404
- "token": "table-selected-row-background-opacity",
405
- "context": "S1 Selected row background (highlight selection)"
406
- },
407
- {
408
- "token": "table-selected-row-background-opacity-hover",
409
- "context": "S1 Selected row background (highlight selection, hover)"
410
- }
411
- ],
412
- "accessibility": {
413
- "role": "grid",
414
- "intents": ["select", "navigate"],
415
- "focusable": true,
416
- "keyboardIntents": ["navigate-items", "activate", "select-all"],
417
- "wcag": [
418
- {
419
- "criterion": "1.3.1",
420
- "level": "A",
421
- "title": "Info and Relationships"
422
- },
423
- {
424
- "criterion": "2.1.1",
425
- "level": "A",
426
- "title": "Keyboard"
427
- },
428
- {
429
- "criterion": "4.1.2",
430
- "level": "A",
431
- "title": "Name, Role, Value"
432
- }
433
- ]
434
- }
435
- }