@adobe/spectrum-design-data 0.4.0 → 0.7.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 (96) hide show
  1. package/components/accordion.json +108 -194
  2. package/components/action-bar.json +64 -97
  3. package/components/action-button.json +95 -230
  4. package/components/action-group.json +88 -86
  5. package/components/alert-banner.json +104 -76
  6. package/components/alert-dialog.json +78 -126
  7. package/components/avatar-group.json +61 -119
  8. package/components/avatar.json +98 -212
  9. package/components/badge.json +138 -256
  10. package/components/breadcrumbs.json +95 -89
  11. package/components/button-group.json +57 -48
  12. package/components/button.json +151 -368
  13. package/components/calendar.json +97 -34
  14. package/components/cards.json +109 -250
  15. package/components/checkbox-group.json +50 -58
  16. package/components/checkbox.json +121 -186
  17. package/components/close-button.json +61 -124
  18. package/components/coach-indicator.json +63 -72
  19. package/components/coach-mark.json +89 -93
  20. package/components/color-area.json +68 -94
  21. package/components/color-handle.json +39 -79
  22. package/components/color-loupe.json +35 -52
  23. package/components/color-slider.json +95 -116
  24. package/components/color-wheel.json +67 -73
  25. package/components/combo-box.json +243 -331
  26. package/components/contextual-help.json +86 -175
  27. package/components/date-picker.json +139 -179
  28. package/components/divider.json +30 -69
  29. package/components/drop-zone.json +51 -92
  30. package/components/field-label.json +75 -117
  31. package/components/help-text.json +81 -105
  32. package/components/illustrated-message.json +106 -73
  33. package/components/in-line-alert.json +50 -83
  34. package/components/link.json +63 -85
  35. package/components/list-view.json +107 -146
  36. package/components/menu.json +180 -274
  37. package/components/meter.json +72 -118
  38. package/components/number-field.json +213 -305
  39. package/components/picker.json +208 -320
  40. package/components/popover.json +94 -129
  41. package/components/progress-bar.json +94 -131
  42. package/components/progress-circle.json +45 -72
  43. package/components/radio-button.json +87 -156
  44. package/components/radio-group.json +107 -74
  45. package/components/rating.json +66 -99
  46. package/components/search-field.json +132 -202
  47. package/components/segmented-control.json +94 -109
  48. package/components/select-box.json +119 -179
  49. package/components/side-navigation.json +108 -118
  50. package/components/slider.json +143 -228
  51. package/components/standard-dialog.json +96 -114
  52. package/components/standard-panel.json +105 -53
  53. package/components/status-light.json +104 -240
  54. package/components/steplist.json +77 -161
  55. package/components/swatch-group.json +42 -58
  56. package/components/swatch.json +75 -162
  57. package/components/switch.json +101 -189
  58. package/components/table.json +97 -102
  59. package/components/tabs.json +77 -104
  60. package/components/tag-field.json +86 -150
  61. package/components/tag-group.json +50 -44
  62. package/components/tag.json +81 -198
  63. package/components/takeover-dialog.json +59 -57
  64. package/components/text-area.json +200 -323
  65. package/components/text-field.json +183 -304
  66. package/components/thumbnail.json +63 -105
  67. package/components/toast.json +97 -83
  68. package/components/tooltip.json +104 -96
  69. package/components/tree-view.json +169 -181
  70. package/guidelines/app-frame-content-area.json +81 -0
  71. package/guidelines/app-frame-creating-bluelines.json +58 -0
  72. package/guidelines/app-frame-header.json +72 -0
  73. package/guidelines/app-frame-overview.json +167 -0
  74. package/guidelines/app-frame-side-navigation.json +138 -0
  75. package/guidelines/attention-hierarchy.json +42 -0
  76. package/guidelines/background-layers.json +38 -0
  77. package/guidelines/brand.json +50 -0
  78. package/guidelines/colors.json +62 -0
  79. package/guidelines/containers.json +62 -0
  80. package/guidelines/developer-overview.json +35 -0
  81. package/guidelines/faqs.json +35 -0
  82. package/guidelines/fonts.json +58 -0
  83. package/guidelines/grays.json +66 -0
  84. package/guidelines/icon-fundamentals.json +45 -0
  85. package/guidelines/illustrations.json +111 -0
  86. package/guidelines/introduction.json +31 -0
  87. package/guidelines/manifest.json +204 -0
  88. package/guidelines/motion.json +41 -0
  89. package/guidelines/object-styles.json +102 -0
  90. package/guidelines/principles.json +30 -0
  91. package/guidelines/resources.json +59 -0
  92. package/guidelines/spacing.json +25 -0
  93. package/guidelines/states.json +34 -0
  94. package/guidelines/typography-fundamentals.json +142 -0
  95. package/guidelines/using-icons.json +107 -0
  96. package/package.json +4 -2
@@ -9,169 +9,168 @@
9
9
  "category": "inputs",
10
10
  "documentationUrl": "https://spectrum.adobe.com/page/slider/"
11
11
  },
12
- "options": {
13
- "label": {
14
- "type": "string"
15
- },
16
- "labelPosition": {
17
- "type": "string",
18
- "default": "top",
19
- "values": [
20
- {
21
- "value": "top"
22
- },
23
- {
24
- "value": "side"
25
- }
26
- ]
27
- },
28
- "value": {
29
- "type": "number",
30
- "description": "from minValue to maxValue"
31
- },
32
- "minValue": {
33
- "type": "number",
34
- "default": 0
35
- },
36
- "maxValue": {
37
- "type": "number",
38
- "default": 100
39
- },
40
- "isRange": {
41
- "type": "boolean",
42
- "default": false,
43
- "description": "If true, the slider will allow selection of a range of values by displaying two handles."
12
+ "documentBlocks": [
13
+ {
14
+ "type": "purpose",
15
+ "content": "Sliders allow users to quickly select a value within a range. They should be used when the upper and lower bounds to the range are invariable."
44
16
  },
45
- "step": {
46
- "type": "number",
47
- "default": 1
17
+ {
18
+ "type": "guideline",
19
+ "content": "Sliders select a value along a continuous range. They’re ideal when upper and lower limits are fixed. Use when approximate or fast selection is more important than precision."
48
20
  },
49
- "valueFormat": {
50
- "type": "string",
51
- "description": "This will vary depending on implementation."
21
+ {
22
+ "type": "guideline",
23
+ "content": "Labels can be placed either on top or on the side. Top labels are the default and are recommended because they work better with long text, localization, and responsive layouts. Side labels are most useful when vertical space is limited."
52
24
  },
53
- "progressionScale": {
54
- "type": "string",
55
- "default": "linear",
56
- "values": [
57
- {
58
- "value": "linear"
59
- },
60
- {
61
- "value": "log"
62
- }
63
- ]
64
- },
65
- "width": {
66
- "type": "number"
67
- },
68
- "hasFill": {
69
- "type": "boolean",
70
- "default": false
25
+ {
26
+ "type": "guideline",
27
+ "content": "The value is the number selected within the slider’s range, from the min value to max value."
71
28
  },
72
- "fillStart": {
73
- "type": "number",
74
- "default": 0
29
+ {
30
+ "type": "guideline",
31
+ "content": "The min and max values can also be customized appropriately for whatever the slider is showing. By default, the min value starts at 0 and the max value is set to 100."
75
32
  },
76
- "hasGradient": {
77
- "type": "boolean",
78
- "default": false
33
+ {
34
+ "type": "guideline",
35
+ "content": "More information about a design scenario, to use this option in the component."
79
36
  },
80
- "isEditable": {
81
- "type": "boolean",
82
- "default": false
37
+ {
38
+ "type": "guideline",
39
+ "content": "The step is the increment by which these values increase or decrease. A step value of 1 (the default) lets a user only select whole numbers within the min and max range."
83
40
  },
84
- "isDisabled": {
85
- "type": "boolean",
86
- "default": false
87
- }
88
- },
89
- "states": [
90
41
  {
91
- "name": "hover",
92
- "trigger": "interaction"
42
+ "type": "guideline",
43
+ "content": "Sometimes a value needs to be formatted for localization or for clearer communication such as currencies or percentages. Formatting can involve rounding, mathematical transformations, number formatting, or displaying a prefix or suffix, such as “+/-” or “px.”"
93
44
  },
94
45
  {
95
- "name": "down",
96
- "trigger": "interaction"
46
+ "type": "guideline",
47
+ "content": "Sliders use a linear progression scale by default which means that value is directly correlated to the position of the handle along the track. In some cases, sliders can use a logarithmic (log) progression scale, which is helpful when users need finer control over small values."
97
48
  },
98
49
  {
99
- "name": "keyboard-focus",
100
- "trigger": "interaction"
101
- }
102
- ],
103
- "lifecycle": {
104
- "introduced": "1.0.0-draft"
105
- },
106
- "tokenBindings": [
50
+ "type": "guideline",
51
+ "content": "The width of a slider can be customized appropriately for its context."
52
+ },
107
53
  {
108
- "token": "field-default-width-small",
109
- "context": "Width (default)"
54
+ "type": "guideline",
55
+ "content": "The track of the slider can have a fill. By default, the fill originates from the left side of the track."
110
56
  },
111
57
  {
112
- "token": "field-default-width-medium",
113
- "context": "Width (default)"
58
+ "type": "guideline",
59
+ "content": "If the value represents an offset, the fill start can be set to represent the point of origin. This allows the slider fill to start from inside the track."
114
60
  },
115
61
  {
116
- "token": "field-default-width-large",
117
- "context": "Width (default)"
62
+ "type": "guideline",
63
+ "content": "A gradient can be added to the track of any slider to give more meaning to the range of values. Tracks with a gradient can also have a fill. A gradient track should not be used for choosing a precise color; use a color slider, color area, or color wheel instead."
118
64
  },
119
65
  {
120
- "token": "field-default-width-extra-large",
121
- "context": "Width (default)"
66
+ "type": "guideline",
67
+ "content": "In situations where users should be able to precisely input a value, the value can be editable within a text field."
122
68
  },
123
69
  {
124
- "token": "component-size-difference-down",
125
- "context": "Component size (down)"
70
+ "type": "guideline",
71
+ "content": "A disabled slider shows that an input exists but is not available in the current context. This helps maintain layout continuity and signals that the slider may become available later."
126
72
  },
127
73
  {
128
- "token": "component-size-width-ratio-down",
129
- "context": "Component size (down)"
74
+ "type": "guideline",
75
+ "content": "A slider can be navigated using a keyboard. The keyboard focus state takes the slider’s visual hover state and adds a blue ring to the slider handle in focus."
130
76
  },
131
77
  {
132
- "token": "component-size-minimum-perspective-down",
133
- "context": "Component size (down)"
78
+ "type": "guideline",
79
+ "content": "A slider representing multiple non-identical values appears as indeterminate, with an en dash (–) in place of the value. The handle position corresponds to the first selected value."
134
80
  },
135
81
  {
136
- "token": "slider-track-height-medium",
137
- "context": "Track (height)"
82
+ "type": "guideline",
83
+ "content": "When the label is too long for the available horizontal space, it wraps to form another line."
138
84
  },
139
85
  {
140
- "token": "slider-track-height-large",
141
- "context": "Track (height)"
86
+ "type": "guideline",
87
+ "content": "After a slider has been adjusted, it can be reset to the default value by double-clicking the handle."
142
88
  },
143
89
  {
144
- "token": "component-height-75",
145
- "context": "Height (slider control) "
90
+ "type": "guideline",
91
+ "content": "Every slider should have a label. A slider without a label is ambiguous and not accessible. Write the label in sentence case."
146
92
  },
147
93
  {
148
- "token": "component-height-100",
149
- "context": "Height (slider control) "
94
+ "type": "guideline",
95
+ "content": "In addition to dragging the handle, sliders can offer other ways to change the value, known as “hot text.” Users can click the value text and drag up or down, or scroll up or down while hovering over the value text."
150
96
  },
151
97
  {
152
- "token": "component-height-200",
153
- "context": "Height (slider control) "
98
+ "type": "guideline",
99
+ "content": "Slider values can include a unit when it adds context, such as “%” or “px.” When the value is shown within a text field, the unit disappears on focus."
154
100
  },
155
101
  {
156
- "token": "component-height-300",
157
- "context": "Height (slider control) "
102
+ "type": "guideline",
103
+ "content": "If the value ranges from negative to positive, prefix the value with a plus (+) or minus (-) sign. When the sign is shown within a text field, it remains visible on focus. When the sign is shown outside the text field, there should be a space between the sign and the numerical value for readability."
104
+ }
105
+ ],
106
+ "options": {
107
+ "label": { "type": "string" },
108
+ "labelPosition": {
109
+ "type": "string",
110
+ "default": "top",
111
+ "values": [{ "value": "top" }, { "value": "side" }]
112
+ },
113
+ "value": { "type": "number", "description": "from minValue to maxValue" },
114
+ "minValue": { "type": "number", "default": 0 },
115
+ "maxValue": { "type": "number", "default": 100 },
116
+ "isRange": {
117
+ "type": "boolean",
118
+ "default": false,
119
+ "description": "If true, the slider will allow selection of a range of values by displaying two handles."
158
120
  },
121
+ "step": { "type": "number", "default": 1 },
122
+ "valueFormat": {
123
+ "type": "string",
124
+ "description": "This will vary depending on implementation."
125
+ },
126
+ "progressionScale": {
127
+ "type": "string",
128
+ "default": "linear",
129
+ "values": [{ "value": "linear" }, { "value": "log" }]
130
+ },
131
+ "width": { "type": "number" },
132
+ "hasFill": { "type": "boolean", "default": false },
133
+ "fillStart": { "type": "number", "default": 0 },
134
+ "hasGradient": { "type": "boolean", "default": false },
135
+ "isEditable": { "type": "boolean", "default": false },
136
+ "isDisabled": { "type": "boolean", "default": false }
137
+ },
138
+ "states": [
139
+ { "name": "hover", "trigger": "interaction" },
140
+ { "name": "down", "trigger": "interaction" },
141
+ { "name": "keyboard-focus", "trigger": "interaction" }
142
+ ],
143
+ "lifecycle": { "introduced": "1.0.0-draft" },
144
+ "tokenBindings": [
145
+ { "token": "field-default-width-small", "context": "Width (default)" },
146
+ { "token": "field-default-width-medium", "context": "Width (default)" },
147
+ { "token": "field-default-width-large", "context": "Width (default)" },
159
148
  {
160
- "token": "slider-handle-small",
161
- "context": "Handle (size)"
149
+ "token": "field-default-width-extra-large",
150
+ "context": "Width (default)"
162
151
  },
163
152
  {
164
- "token": "slider-handle-medium",
165
- "context": "Handle (size)"
153
+ "token": "component-size-difference-down",
154
+ "context": "Component size (down)"
166
155
  },
167
156
  {
168
- "token": "slider-handle-large",
169
- "context": "Handle (size)"
157
+ "token": "component-size-width-ratio-down",
158
+ "context": "Component size (down)"
170
159
  },
171
160
  {
172
- "token": "slider-handle-extra-large",
173
- "context": "Handle (size)"
161
+ "token": "component-size-minimum-perspective-down",
162
+ "context": "Component size (down)"
174
163
  },
164
+ { "token": "slider-track-height-medium", "context": "Track (height)" },
165
+ { "token": "slider-track-height-large", "context": "Track (height)" },
166
+ { "token": "component-height-75", "context": "Height (slider control) " },
167
+ { "token": "component-height-100", "context": "Height (slider control) " },
168
+ { "token": "component-height-200", "context": "Height (slider control) " },
169
+ { "token": "component-height-300", "context": "Height (slider control) " },
170
+ { "token": "slider-handle-small", "context": "Handle (size)" },
171
+ { "token": "slider-handle-medium", "context": "Handle (size)" },
172
+ { "token": "slider-handle-large", "context": "Handle (size)" },
173
+ { "token": "slider-handle-extra-large", "context": "Handle (size)" },
175
174
  {
176
175
  "token": "slider-precision-handle-height-small",
177
176
  "context": "Handle (size)"
@@ -188,22 +187,10 @@
188
187
  "token": "slider-precision-handle-height-extra-large",
189
188
  "context": "Handle (size)"
190
189
  },
191
- {
192
- "token": "slider-precision-handle-width",
193
- "context": "Handle (size)"
194
- },
195
- {
196
- "token": "border-width-200",
197
- "context": "Handle (border)"
198
- },
199
- {
200
- "token": "focus-indicator-thickness",
201
- "context": "Focus ring"
202
- },
203
- {
204
- "token": "focus-indicator-gap",
205
- "context": "Focus ring"
206
- },
190
+ { "token": "slider-precision-handle-width", "context": "Handle (size)" },
191
+ { "token": "border-width-200", "context": "Handle (border)" },
192
+ { "token": "focus-indicator-thickness", "context": "Focus ring" },
193
+ { "token": "focus-indicator-gap", "context": "Focus ring" },
207
194
  {
208
195
  "token": "component-top-to-text-75",
209
196
  "context": "Spacing (top/bottom edge to label)"
@@ -300,86 +287,26 @@
300
287
  "token": "slider-control-to-text-field-extra-large",
301
288
  "context": "Spacing (slider to field)"
302
289
  },
303
- {
304
- "token": "neutral-subdued-content-color-default",
305
- "context": "Value"
306
- },
307
- {
308
- "token": "alias-track-default",
309
- "context": "Track"
310
- },
311
- {
312
- "token": "gray-700",
313
- "context": "Track"
314
- },
315
- {
316
- "token": "accent-content-color-default",
317
- "context": "Track"
318
- },
319
- {
320
- "token": "gray-800",
321
- "context": "Handle"
322
- },
323
- {
324
- "token": "gray-900",
325
- "context": "Handle"
326
- },
327
- {
328
- "token": "gray-25",
329
- "context": "Handle"
330
- },
331
- {
332
- "token": "focus-indicator-color",
333
- "context": "Focus ring"
334
- },
335
- {
336
- "token": "disabled-content-color",
337
- "context": "Disabled"
338
- },
339
- {
340
- "token": "disabled-background-color",
341
- "context": "Disabled"
342
- },
343
- {
344
- "token": "disabled-border-color",
345
- "context": "Disabled"
346
- },
347
- {
348
- "token": "default-font-family",
349
- "context": "Label"
350
- },
351
- {
352
- "token": "regular-font-weight",
353
- "context": "Label"
354
- },
355
- {
356
- "token": "default-font-style",
357
- "context": "Label"
358
- },
359
- {
360
- "token": "font-size-75",
361
- "context": "Label"
362
- },
363
- {
364
- "token": "font-size-100",
365
- "context": "Label"
366
- },
367
- {
368
- "token": "font-size-200",
369
- "context": "Label"
370
- },
371
- {
372
- "token": "font-size-300",
373
- "context": "Label"
374
- },
375
- {
376
- "token": "line-height-100",
377
- "context": "Label"
378
- },
379
- {
380
- "token": "cjk-line-height-100",
381
- "context": "Label"
382
- }
290
+ { "token": "neutral-subdued-content-color-default", "context": "Value" },
291
+ { "token": "alias-track-default", "context": "Track" },
292
+ { "token": "gray-700", "context": "Track" },
293
+ { "token": "accent-content-color-default", "context": "Track" },
294
+ { "token": "gray-800", "context": "Handle" },
295
+ { "token": "gray-900", "context": "Handle" },
296
+ { "token": "gray-25", "context": "Handle" },
297
+ { "token": "focus-indicator-color", "context": "Focus ring" },
298
+ { "token": "disabled-content-color", "context": "Disabled" },
299
+ { "token": "disabled-background-color", "context": "Disabled" },
300
+ { "token": "disabled-border-color", "context": "Disabled" },
301
+ { "token": "default-font-family", "context": "Label" },
302
+ { "token": "regular-font-weight", "context": "Label" },
303
+ { "token": "default-font-style", "context": "Label" },
304
+ { "token": "font-size-75", "context": "Label" },
305
+ { "token": "font-size-100", "context": "Label" },
306
+ { "token": "font-size-200", "context": "Label" },
307
+ { "token": "font-size-300", "context": "Label" },
308
+ { "token": "line-height-100", "context": "Label" },
309
+ { "token": "cjk-line-height-100", "context": "Label" }
383
310
  ],
384
311
  "accessibility": {
385
312
  "role": "slider",
@@ -387,21 +314,9 @@
387
314
  "focusable": true,
388
315
  "keyboardIntents": ["increment", "decrement"],
389
316
  "wcag": [
390
- {
391
- "criterion": "1.3.1",
392
- "level": "A",
393
- "title": "Info and Relationships"
394
- },
395
- {
396
- "criterion": "2.1.1",
397
- "level": "A",
398
- "title": "Keyboard"
399
- },
400
- {
401
- "criterion": "4.1.2",
402
- "level": "A",
403
- "title": "Name, Role, Value"
404
- }
317
+ { "criterion": "1.3.1", "level": "A", "title": "Info and Relationships" },
318
+ { "criterion": "2.1.1", "level": "A", "title": "Keyboard" },
319
+ { "criterion": "4.1.2", "level": "A", "title": "Name, Role, Value" }
405
320
  ]
406
321
  }
407
322
  }