@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,305 @@
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/switch.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "switch",
6
+ "displayName": "Switch",
7
+ "description": "Switches allow users to turn an individual option on or off. They are usually used to activate or deactivate a specific setting.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/switch/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "isSelected": {
17
+ "type": "boolean",
18
+ "default": false
19
+ },
20
+ "size": {
21
+ "type": "string",
22
+ "enum": ["s", "m", "l", "xl"],
23
+ "default": "m"
24
+ },
25
+ "isEmphasized": {
26
+ "type": "boolean",
27
+ "default": false
28
+ },
29
+ "isDisabled": {
30
+ "type": "boolean",
31
+ "default": false
32
+ },
33
+ "isReadOnly": {
34
+ "type": "boolean",
35
+ "default": false
36
+ }
37
+ },
38
+ "states": [
39
+ {
40
+ "name": "hover",
41
+ "trigger": "interaction"
42
+ },
43
+ {
44
+ "name": "down",
45
+ "trigger": "interaction"
46
+ },
47
+ {
48
+ "name": "keyboard-focus",
49
+ "trigger": "interaction"
50
+ }
51
+ ],
52
+ "lifecycle": {
53
+ "introduced": "1.0.0-draft"
54
+ },
55
+ "tokenBindings": [
56
+ {
57
+ "token": "component-height-75",
58
+ "context": "Minimum height"
59
+ },
60
+ {
61
+ "token": "component-height-100",
62
+ "context": "Minimum height"
63
+ },
64
+ {
65
+ "token": "component-height-200",
66
+ "context": "Minimum height"
67
+ },
68
+ {
69
+ "token": "component-height-300",
70
+ "context": "Minimum height"
71
+ },
72
+ {
73
+ "token": "corner-radius-full",
74
+ "context": "Rounding"
75
+ },
76
+ {
77
+ "token": "switch-control-width-small",
78
+ "context": "Track (size)"
79
+ },
80
+ {
81
+ "token": "switch-control-width-medium",
82
+ "context": "Track (size)"
83
+ },
84
+ {
85
+ "token": "switch-control-width-large",
86
+ "context": "Track (size)"
87
+ },
88
+ {
89
+ "token": "switch-control-width-extra-large",
90
+ "context": "Track (size)"
91
+ },
92
+ {
93
+ "token": "switch-control-height-small",
94
+ "context": "Track (size)"
95
+ },
96
+ {
97
+ "token": "switch-control-height-medium",
98
+ "context": "Track (size)"
99
+ },
100
+ {
101
+ "token": "switch-control-height-large",
102
+ "context": "Track (size)"
103
+ },
104
+ {
105
+ "token": "switch-control-height-extra-large",
106
+ "context": "Track (size)"
107
+ },
108
+ {
109
+ "token": "border-width-200",
110
+ "context": "Track (border)"
111
+ },
112
+ {
113
+ "token": "switch-handle-size-small",
114
+ "context": "Handle (size)"
115
+ },
116
+ {
117
+ "token": "switch-handle-size-medium",
118
+ "context": "Handle (size)"
119
+ },
120
+ {
121
+ "token": "switch-handle-size-large",
122
+ "context": "Handle (size)"
123
+ },
124
+ {
125
+ "token": "switch-handle-size-extra-large",
126
+ "context": "Handle (size)"
127
+ },
128
+ {
129
+ "token": "switch-handle-selected-size-small",
130
+ "context": "Handle (size)"
131
+ },
132
+ {
133
+ "token": "switch-handle-selected-size-medium",
134
+ "context": "Handle (size)"
135
+ },
136
+ {
137
+ "token": "switch-handle-selected-size-large",
138
+ "context": "Handle (size)"
139
+ },
140
+ {
141
+ "token": "switch-handle-selected-size-extra-large",
142
+ "context": "Handle (size)"
143
+ },
144
+ {
145
+ "token": "text-to-control-75",
146
+ "context": "Spacing (control to label)"
147
+ },
148
+ {
149
+ "token": "text-to-control-100",
150
+ "context": "Spacing (control to label)"
151
+ },
152
+ {
153
+ "token": "text-to-control-200",
154
+ "context": "Spacing (control to label)"
155
+ },
156
+ {
157
+ "token": "text-to-control-300",
158
+ "context": "Spacing (control to label)"
159
+ },
160
+ {
161
+ "token": "switch-top-to-control-small",
162
+ "context": "Spacing (top edge to control)"
163
+ },
164
+ {
165
+ "token": "switch-top-to-control-medium",
166
+ "context": "Spacing (top edge to control)"
167
+ },
168
+ {
169
+ "token": "switch-top-to-control-large",
170
+ "context": "Spacing (top edge to control)"
171
+ },
172
+ {
173
+ "token": "switch-top-to-control-extra-large",
174
+ "context": "Spacing (top edge to control)"
175
+ },
176
+ {
177
+ "token": "component-top-to-text-75",
178
+ "context": "Spacing (top/bottom edge to label)"
179
+ },
180
+ {
181
+ "token": "component-top-to-text-100",
182
+ "context": "Spacing (top/bottom edge to label)"
183
+ },
184
+ {
185
+ "token": "component-top-to-text-200",
186
+ "context": "Spacing (top/bottom edge to label)"
187
+ },
188
+ {
189
+ "token": "component-top-to-text-300",
190
+ "context": "Spacing (top/bottom edge to label)"
191
+ },
192
+ {
193
+ "token": "component-bottom-to-text-75",
194
+ "context": "Spacing (top/bottom edge to label)"
195
+ },
196
+ {
197
+ "token": "component-bottom-to-text-100",
198
+ "context": "Spacing (top/bottom edge to label)"
199
+ },
200
+ {
201
+ "token": "component-bottom-to-text-200",
202
+ "context": "Spacing (top/bottom edge to label)"
203
+ },
204
+ {
205
+ "token": "component-bottom-to-text-300",
206
+ "context": "Spacing (top/bottom edge to label)"
207
+ },
208
+ {
209
+ "token": "focus-indicator-thickness",
210
+ "context": "Focus indicator"
211
+ },
212
+ {
213
+ "token": "focus-indicator-gap",
214
+ "context": "Focus indicator"
215
+ },
216
+ {
217
+ "token": "component-size-difference-down",
218
+ "context": "Component size (down)"
219
+ },
220
+ {
221
+ "token": "component-size-width-ratio-down",
222
+ "context": "Component size (down)"
223
+ },
224
+ {
225
+ "token": "component-size-minimum-perspective-down",
226
+ "context": "Component size (down)"
227
+ },
228
+ {
229
+ "token": "font-size-75",
230
+ "context": "Font size"
231
+ },
232
+ {
233
+ "token": "font-size-100",
234
+ "context": "Font size"
235
+ },
236
+ {
237
+ "token": "font-size-200",
238
+ "context": "Font size"
239
+ },
240
+ {
241
+ "token": "font-size-300",
242
+ "context": "Font size"
243
+ },
244
+ {
245
+ "token": "default-font-family",
246
+ "context": "Font size"
247
+ },
248
+ {
249
+ "token": "regular-font-weight",
250
+ "context": "Font size"
251
+ },
252
+ {
253
+ "token": "line-height-100",
254
+ "context": "Font size"
255
+ },
256
+ {
257
+ "token": "cjk-line-height-100",
258
+ "context": "Font size"
259
+ },
260
+ {
261
+ "token": "neutral-content-color-default",
262
+ "context": "Label"
263
+ },
264
+ {
265
+ "token": "neutral-content-color-hover",
266
+ "context": "Label"
267
+ },
268
+ {
269
+ "token": "neutral-content-color-down",
270
+ "context": "Label"
271
+ },
272
+ {
273
+ "token": "neutral-content-color-key-focus",
274
+ "context": "Label"
275
+ },
276
+ {
277
+ "token": "gray-25",
278
+ "context": "Control"
279
+ },
280
+ {
281
+ "token": "accent-content-color-default",
282
+ "context": "Control (selected, emphasized)"
283
+ },
284
+ {
285
+ "token": "accent-content-color-hover",
286
+ "context": "Control (selected, emphasized)"
287
+ },
288
+ {
289
+ "token": "accent-content-color-down",
290
+ "context": "Control (selected, emphasized)"
291
+ },
292
+ {
293
+ "token": "accent-content-color-key-focus",
294
+ "context": "Control (selected, emphasized)"
295
+ },
296
+ {
297
+ "token": "disabled-content-color",
298
+ "context": "Label (disabled)"
299
+ },
300
+ {
301
+ "token": "focus-indicator-color",
302
+ "context": "Focus indicator"
303
+ }
304
+ ]
305
+ }
@@ -0,0 +1,41 @@
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
+ "enum": ["bottom", "side"],
19
+ "default": "bottom"
20
+ },
21
+ "icon": {
22
+ "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/workflow-icon.json"
23
+ },
24
+ "background": {
25
+ "type": "string",
26
+ "enum": ["primary", "secondary"],
27
+ "default": "primary"
28
+ },
29
+ "hasBadge": {
30
+ "type": "boolean",
31
+ "default": false
32
+ },
33
+ "isDisabled": {
34
+ "type": "boolean",
35
+ "default": false
36
+ }
37
+ },
38
+ "lifecycle": {
39
+ "introduced": "1.0.0-draft"
40
+ }
41
+ }