@adobe/design-data-spec 0.3.0 → 0.5.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 (92) hide show
  1. package/components/accordion.json +517 -0
  2. package/components/action-bar.json +203 -0
  3. package/components/action-button.json +481 -0
  4. package/components/action-group.json +82 -0
  5. package/components/alert-banner.json +111 -0
  6. package/components/alert-dialog.json +152 -0
  7. package/components/avatar-group.json +140 -0
  8. package/components/avatar.json +184 -0
  9. package/components/badge.json +502 -0
  10. package/components/body.json +29 -0
  11. package/components/bottom-navigation-android.json +41 -0
  12. package/components/breadcrumbs.json +263 -0
  13. package/components/button-group.json +47 -0
  14. package/components/button.json +466 -8
  15. package/components/calendar.json +104 -0
  16. package/components/cards.json +512 -0
  17. package/components/checkbox-group.json +54 -0
  18. package/components/checkbox.json +303 -0
  19. package/components/close-button.json +170 -0
  20. package/components/coach-indicator.json +76 -0
  21. package/components/coach-mark.json +157 -0
  22. package/components/code.json +25 -0
  23. package/components/color-area.json +115 -0
  24. package/components/color-handle.json +85 -0
  25. package/components/color-loupe.json +74 -0
  26. package/components/color-slider.json +121 -0
  27. package/components/color-wheel.json +94 -0
  28. package/components/combo-box.json +480 -0
  29. package/components/contextual-help.json +162 -0
  30. package/components/date-picker.json +439 -0
  31. package/components/detail.json +30 -0
  32. package/components/divider.json +73 -0
  33. package/components/drop-zone.json +211 -0
  34. package/components/field-label.json +189 -0
  35. package/components/heading.json +33 -0
  36. package/components/help-text.json +186 -0
  37. package/components/illustrated-message.json +155 -0
  38. package/components/in-field-progress-button.json +44 -0
  39. package/components/in-field-progress-circle.json +80 -0
  40. package/components/in-line-alert.json +201 -0
  41. package/components/link.json +135 -0
  42. package/components/list-view.json +355 -0
  43. package/components/menu.json +542 -0
  44. package/components/meter.json +162 -0
  45. package/components/number-field.json +468 -0
  46. package/components/opacity-checkerboard.json +43 -0
  47. package/components/picker.json +522 -0
  48. package/components/popover.json +119 -0
  49. package/components/progress-bar.json +182 -0
  50. package/components/progress-circle.json +99 -0
  51. package/components/radio-button.json +285 -0
  52. package/components/radio-group.json +63 -0
  53. package/components/rating.json +145 -0
  54. package/components/scroll-zoom-bar.json +53 -0
  55. package/components/search-field.json +306 -0
  56. package/components/segmented-control.json +210 -0
  57. package/components/select-box.json +248 -0
  58. package/components/side-navigation.json +293 -0
  59. package/components/slider.json +370 -0
  60. package/components/standard-dialog.json +151 -0
  61. package/components/standard-panel.json +53 -0
  62. package/components/status-light.json +272 -0
  63. package/components/steplist.json +270 -0
  64. package/components/swatch-group.json +62 -0
  65. package/components/swatch.json +193 -0
  66. package/components/switch.json +305 -0
  67. package/components/tab-bar-ios.json +41 -0
  68. package/components/table.json +392 -0
  69. package/components/tabs.json +229 -0
  70. package/components/tag-field.json +203 -0
  71. package/components/tag-group.json +53 -0
  72. package/components/tag.json +376 -0
  73. package/components/takeover-dialog.json +92 -0
  74. package/components/text-area.json +485 -0
  75. package/components/text-field.json +501 -0
  76. package/components/thumbnail.json +109 -0
  77. package/components/title.json +39 -0
  78. package/components/toast.json +131 -0
  79. package/components/tooltip.json +140 -0
  80. package/components/tray.json +21 -0
  81. package/components/tree-view.json +341 -0
  82. package/conformance/invalid/SPEC-027/dataset.json +25 -0
  83. package/conformance/invalid/SPEC-027/expected-errors.json +10 -0
  84. package/conformance/valid/token-bindings.json +27 -0
  85. package/package.json +2 -1
  86. package/rules/rules.yaml +9 -0
  87. package/schemas/component.schema.json +24 -2
  88. package/schemas/token.schema.json +27 -0
  89. package/spec/agent-surface.md +39 -9
  90. package/spec/component-format.md +41 -16
  91. package/spec/token-format.md +18 -0
  92. package/src/validate.js +27 -3
@@ -0,0 +1,355 @@
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/list-view.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "list-view",
6
+ "displayName": "List view",
7
+ "description": "List views display rows of data or options that users can browse, select, and interact with.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/list-view/"
11
+ },
12
+ "options": {
13
+ "selectionMode": {
14
+ "type": "string",
15
+ "enum": ["none", "single", "multiple"],
16
+ "default": "single",
17
+ "description": "Defines how many items can be selected at once."
18
+ },
19
+ "isQuiet": {
20
+ "type": "boolean",
21
+ "default": false,
22
+ "description": "If true, the list view uses a quiet visual style."
23
+ },
24
+ "items": {
25
+ "type": "array",
26
+ "description": "An array of list view items.",
27
+ "items": {
28
+ "type": "object",
29
+ "properties": {
30
+ "label": {
31
+ "type": "string",
32
+ "description": "Primary text displayed for the item."
33
+ },
34
+ "description": {
35
+ "type": "string",
36
+ "description": "Secondary text displayed under the label (optional)."
37
+ },
38
+ "hideCheckbox": {
39
+ "type": "boolean",
40
+ "default": false,
41
+ "description": "If true, the checkbox is hidden."
42
+ },
43
+ "hideDragHandle": {
44
+ "type": "boolean",
45
+ "default": false,
46
+ "description": "If true, the drag handle is hidden."
47
+ },
48
+ "hideNavigationIndicator": {
49
+ "type": "boolean",
50
+ "default": false,
51
+ "description": "If true, the navigation indicator is hidden."
52
+ },
53
+ "isDisabled": {
54
+ "type": "boolean",
55
+ "default": false,
56
+ "description": "If true, the item is disabled."
57
+ },
58
+ "isSelected": {
59
+ "type": "boolean",
60
+ "default": false,
61
+ "description": "If true, the item is selected."
62
+ },
63
+ "overflowMode": {
64
+ "type": "string",
65
+ "enum": ["wrap", "truncate"],
66
+ "default": "truncate",
67
+ "description": "Defines how text should behave when it overflows the available space."
68
+ },
69
+ "itemRounding": {
70
+ "type": "string",
71
+ "enum": ["none", "top", "bottom"],
72
+ "default": "none",
73
+ "description": "Defines the border radius of the list view item."
74
+ },
75
+ "isEmphasized": {
76
+ "type": "boolean",
77
+ "default": false
78
+ },
79
+ "state": {
80
+ "type": "string",
81
+ "enum": ["default", "hover", "dragged"],
82
+ "default": "default",
83
+ "description": "The interaction state of the list view item."
84
+ }
85
+ },
86
+ "required": ["label"]
87
+ }
88
+ }
89
+ },
90
+ "lifecycle": {
91
+ "introduced": "1.0.0-draft"
92
+ },
93
+ "tokenBindings": [
94
+ {
95
+ "token": "(multi-select",
96
+ "context": "Variants"
97
+ },
98
+ {
99
+ "token": "multi-select)",
100
+ "context": "Variants"
101
+ },
102
+ {
103
+ "token": "workflow-icon-size-100",
104
+ "context": "Icon size"
105
+ },
106
+ {
107
+ "token": "list-view-minimum-height",
108
+ "context": "Component height"
109
+ },
110
+ {
111
+ "token": "list-view-minimum-width",
112
+ "context": "Component width"
113
+ },
114
+ {
115
+ "token": "corner-radius-medium-default",
116
+ "context": "Item rounding"
117
+ },
118
+ {
119
+ "token": "stack-item-start-edge-to-content",
120
+ "context": "Spacing (edge to drag handle)"
121
+ },
122
+ {
123
+ "token": "stack-item-drag-handle-to-control",
124
+ "context": "Spacing (drag handle to checkbox, to visual, to text)"
125
+ },
126
+ {
127
+ "token": "visual-to-control-100",
128
+ "context": "Spacing (drag handle to checkbox, to visual, to text)"
129
+ },
130
+ {
131
+ "token": "stack-item-text-to-control",
132
+ "context": "Spacing (drag handle to checkbox, to visual, to text)"
133
+ },
134
+ {
135
+ "token": "stack-item-edge-to-control",
136
+ "context": "Spacing (edge to checkbox, edge to visual, edge to text)"
137
+ },
138
+ {
139
+ "token": "stack-item-edge-to-visual",
140
+ "context": "Spacing (edge to checkbox, edge to visual, edge to text)"
141
+ },
142
+ {
143
+ "token": "component-edge-to-text",
144
+ "context": "Spacing (edge to checkbox, edge to visual, edge to text)"
145
+ },
146
+ {
147
+ "token": "text-to-visual-100",
148
+ "context": "Spacing (content items to text)"
149
+ },
150
+ {
151
+ "token": "stack-item-action-to-navigation",
152
+ "context": "Spacing (navigation indicator to edge, actions to edge)"
153
+ },
154
+ {
155
+ "token": "list-view-end-edge-to-content",
156
+ "context": "Spacing (edge to Navigation icon)"
157
+ },
158
+ {
159
+ "token": "vertical-align-items",
160
+ "context": "Spacing (vertical)"
161
+ },
162
+ {
163
+ "token": "stack-item-minimum-padding-vertical",
164
+ "context": "Spacing (vertical)"
165
+ },
166
+ {
167
+ "token": "label-to-description-0",
168
+ "context": "Spacing (navigation indicator)"
169
+ },
170
+ {
171
+ "token": "border-width-100",
172
+ "context": "Border width (selected - highlight)"
173
+ },
174
+ {
175
+ "token": "focus-indicator-thickness",
176
+ "context": "Focus"
177
+ },
178
+ {
179
+ "token": "focus-indicator-gap",
180
+ "context": "Focus (drag handle)"
181
+ },
182
+ {
183
+ "token": "drop-shadow-dragged-x",
184
+ "context": "Dragged shadow"
185
+ },
186
+ {
187
+ "token": "drop-shadow-dragged-y",
188
+ "context": "Dragged shadow"
189
+ },
190
+ {
191
+ "token": "drop-shadow-dragged-blur",
192
+ "context": "Dragged shadow"
193
+ },
194
+ {
195
+ "token": "drop-shadow-dragged-color",
196
+ "context": "Dragged shadow"
197
+ },
198
+ {
199
+ "token": "component-height-100",
200
+ "context": "Height"
201
+ },
202
+ {
203
+ "token": "stack-item-header-minimum-width",
204
+ "context": "Width"
205
+ },
206
+ {
207
+ "token": "component-edge-to-text-100",
208
+ "context": "Spacing (horizontal)"
209
+ },
210
+ {
211
+ "token": "top-to-text-100",
212
+ "context": "Spacing (vertical)"
213
+ },
214
+ {
215
+ "token": "bottom-to-text-100",
216
+ "context": "Spacing (vertical)"
217
+ },
218
+ {
219
+ "token": "component-top-to-workflow-icon-100",
220
+ "context": "Spacing (vertical)"
221
+ },
222
+ {
223
+ "token": "stack-item-header-to-item",
224
+ "context": "Spacing (vertically, between list view header to list view items)"
225
+ },
226
+ {
227
+ "token": "stack-item-item-to-item",
228
+ "context": "Spacing (vertically, between list view header to list view items)"
229
+ },
230
+ {
231
+ "token": "stack-item-background-color-hover",
232
+ "context": "Background"
233
+ },
234
+ {
235
+ "token": "stack-item-background-color-down",
236
+ "context": "Background"
237
+ },
238
+ {
239
+ "token": "stack-item-background-color-key-focus",
240
+ "context": "Background"
241
+ },
242
+ {
243
+ "token": "stack-item-selected-background-color-default",
244
+ "context": "Background (selected, checkbox)"
245
+ },
246
+ {
247
+ "token": "stack-item-selected-background-color-hover",
248
+ "context": "Background (selected, checkbox)"
249
+ },
250
+ {
251
+ "token": "stack-item-selected-background-color-down",
252
+ "context": "Background (selected, checkbox)"
253
+ },
254
+ {
255
+ "token": "stack-item-selected-background-color-key-focus",
256
+ "context": "Background (selected, checkbox)"
257
+ },
258
+ {
259
+ "token": "stack-item-selected-background-color-highlight",
260
+ "context": "Background (selected, highlight)"
261
+ },
262
+ {
263
+ "token": "stack-item-selected-background-opacity-highlight-hover",
264
+ "context": "Background (selected, highlight)"
265
+ },
266
+ {
267
+ "token": "accent-content-color-selected",
268
+ "context": "Border (selected, highlight)"
269
+ },
270
+ {
271
+ "token": "gray-300",
272
+ "context": "Border"
273
+ },
274
+ {
275
+ "token": "neutral-subdued-content-color-default",
276
+ "context": "Label and icon (non-selected)"
277
+ },
278
+ {
279
+ "token": "neutral-subdued-content-color-hover",
280
+ "context": "Label and icon (non-selected)"
281
+ },
282
+ {
283
+ "token": "neutral-subdued-content-color-down",
284
+ "context": "Label and icon (non-selected)"
285
+ },
286
+ {
287
+ "token": "neutral-subdued-content-color-key-focus",
288
+ "context": "Label and icon (non-selected)"
289
+ },
290
+ {
291
+ "token": "neutral-content-color-default",
292
+ "context": "Label and icon (selected, checkbox and highlight)"
293
+ },
294
+ {
295
+ "token": "neutral-content-color-hover",
296
+ "context": "Label and icon (selected, checkbox and highlight)"
297
+ },
298
+ {
299
+ "token": "neutral-content-color-down",
300
+ "context": "Label and icon (selected, checkbox and highlight)"
301
+ },
302
+ {
303
+ "token": "neutral-content-color-key-focus",
304
+ "context": "Label and icon (selected, checkbox and highlight)"
305
+ },
306
+ {
307
+ "token": "disabled-background-color",
308
+ "context": "Background (disabled)"
309
+ },
310
+ {
311
+ "token": "disabled-content-color",
312
+ "context": "Label and icon (disabled)"
313
+ },
314
+ {
315
+ "token": "focus-indicator-color",
316
+ "context": "Focus indicator"
317
+ },
318
+ {
319
+ "token": "title-color",
320
+ "context": "Title label and icon"
321
+ },
322
+ {
323
+ "token": "default-font-family",
324
+ "context": "Text (List view item)"
325
+ },
326
+ {
327
+ "token": "regular-font-weight",
328
+ "context": "Text (List view item)"
329
+ },
330
+ {
331
+ "token": "default-font-style",
332
+ "context": "Text (List view item)"
333
+ },
334
+ {
335
+ "token": "font-size-100",
336
+ "context": "Text (List view item)"
337
+ },
338
+ {
339
+ "token": "line-height-100",
340
+ "context": "Text (List view item)"
341
+ },
342
+ {
343
+ "token": "cjk-line-height-100",
344
+ "context": "Text (List view item)"
345
+ },
346
+ {
347
+ "token": "font-size-75",
348
+ "context": "Text (List view description)"
349
+ },
350
+ {
351
+ "token": "bold-font-weight",
352
+ "context": "Text (List view title)"
353
+ }
354
+ ]
355
+ }