@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,151 @@
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/standard-dialog.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "standard-dialog",
6
+ "displayName": "Standard dialog",
7
+ "description": "Standard dialogs display important information that users need to acknowledge. They appear over the interface and block further interactions until an action is selected.",
8
+ "meta": {
9
+ "category": "feedback",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/standard-dialog/"
11
+ },
12
+ "options": {
13
+ "title": {
14
+ "type": "string"
15
+ },
16
+ "description": {
17
+ "type": "string"
18
+ },
19
+ "hideImage": {
20
+ "type": "boolean",
21
+ "default": false,
22
+ "description": "Optional image to display in dialog."
23
+ },
24
+ "size": {
25
+ "type": "string",
26
+ "enum": ["s", "m", "l"],
27
+ "default": "m"
28
+ },
29
+ "hideCloseButton": {
30
+ "type": "boolean",
31
+ "default": false
32
+ },
33
+ "footerContent": {
34
+ "type": "string",
35
+ "description": "Optional footer content to display in the dialog footer like a checkbox."
36
+ },
37
+ "primaryActionLabel": {
38
+ "type": "string"
39
+ },
40
+ "secondaryActionLabel": {
41
+ "type": "string",
42
+ "description": "If undefined, this button does not appear."
43
+ },
44
+ "cancelActionLabel": {
45
+ "type": "string",
46
+ "default": "cancel",
47
+ "description": "If undefined, this button does not appear."
48
+ }
49
+ },
50
+ "lifecycle": {
51
+ "introduced": "1.0.0-draft"
52
+ },
53
+ "tokenBindings": [
54
+ {
55
+ "token": "standard-dialog-maximum-width-small",
56
+ "context": "Maximum width"
57
+ },
58
+ {
59
+ "token": "standard-dialog-maximum-width-medium",
60
+ "context": "Maximum width"
61
+ },
62
+ {
63
+ "token": "standard-dialog-maximum-width-large",
64
+ "context": "Maximum width"
65
+ },
66
+ {
67
+ "token": "standard-dialog-minimum-width",
68
+ "context": "Minimum width"
69
+ },
70
+ {
71
+ "token": "corner-radius-extra-large-default",
72
+ "context": "Rounding"
73
+ },
74
+ {
75
+ "token": "spacing-500",
76
+ "context": "Spacing (edge to content)"
77
+ },
78
+ {
79
+ "token": "spacing-400",
80
+ "context": "Spacing (edge to content)"
81
+ },
82
+ {
83
+ "token": "spacing-300",
84
+ "context": "Spacing (title to description)"
85
+ },
86
+ {
87
+ "token": "spacing-200",
88
+ "context": "Spacing (edge to close button)"
89
+ },
90
+ {
91
+ "token": "background-color-layer2",
92
+ "context": "Background"
93
+ },
94
+ {
95
+ "token": "overlay-color",
96
+ "context": "Overlay"
97
+ },
98
+ {
99
+ "token": "overlay-opacity",
100
+ "context": "Overlay"
101
+ },
102
+ {
103
+ "token": "title-sans-serif-font-family",
104
+ "context": "Title"
105
+ },
106
+ {
107
+ "token": "title-sans-serif-font-weight",
108
+ "context": "Title"
109
+ },
110
+ {
111
+ "token": "title-sans-serif-font-style",
112
+ "context": "Title"
113
+ },
114
+ {
115
+ "token": "standard-dialog-title-font-size",
116
+ "context": "Title"
117
+ },
118
+ {
119
+ "token": "title-line-height",
120
+ "context": "Title"
121
+ },
122
+ {
123
+ "token": "heading-color",
124
+ "context": "Title"
125
+ },
126
+ {
127
+ "token": "body-sans-serif-font-family",
128
+ "context": "Description"
129
+ },
130
+ {
131
+ "token": "body-sans-serif-font-weight",
132
+ "context": "Description"
133
+ },
134
+ {
135
+ "token": "body-sans-serif-font-style",
136
+ "context": "Description"
137
+ },
138
+ {
139
+ "token": "standard-dialog-body-font-size",
140
+ "context": "Description"
141
+ },
142
+ {
143
+ "token": "line-height-200",
144
+ "context": "Description"
145
+ },
146
+ {
147
+ "token": "body-color",
148
+ "context": "Description"
149
+ }
150
+ ]
151
+ }
@@ -0,0 +1,53 @@
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/standard-panel.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "standard-panel",
6
+ "displayName": "Standard Panel",
7
+ "description": "Standard Panels provide a flexible container for grouping related content and actions.",
8
+ "meta": {
9
+ "category": "containers",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/standard-panel/"
11
+ },
12
+ "options": {
13
+ "container": {
14
+ "type": "string",
15
+ "enum": ["anchored", "floating", "dragged"],
16
+ "default": "anchored"
17
+ },
18
+ "label": {
19
+ "type": "string"
20
+ },
21
+ "description": {
22
+ "type": "string"
23
+ },
24
+ "value": {
25
+ "type": "string"
26
+ },
27
+ "density": {
28
+ "type": "string",
29
+ "enum": ["compact", "regular", "spacious"],
30
+ "default": "regular"
31
+ },
32
+ "style": {
33
+ "type": "string",
34
+ "enum": ["primary", "secondary"],
35
+ "default": "primary"
36
+ },
37
+ "hideGripper": {
38
+ "type": "boolean",
39
+ "default": false
40
+ },
41
+ "hideCloseButton": {
42
+ "type": "boolean",
43
+ "default": false
44
+ },
45
+ "hideDivider": {
46
+ "type": "boolean",
47
+ "default": false
48
+ }
49
+ },
50
+ "lifecycle": {
51
+ "introduced": "1.0.0-draft"
52
+ }
53
+ }
@@ -0,0 +1,272 @@
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/status-light.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "status-light",
6
+ "displayName": "Status light",
7
+ "description": "Status lights describe the condition of an entity. They can be used to convey semantic meaning, such as statuses and categories.",
8
+ "meta": {
9
+ "category": "status",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/status-light/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "variant": {
17
+ "type": "string",
18
+ "enum": [
19
+ "informative",
20
+ "neutral",
21
+ "positive",
22
+ "notice",
23
+ "negative",
24
+ "indigo",
25
+ "celery",
26
+ "chartreuse",
27
+ "yellow",
28
+ "magenta",
29
+ "fuchsia",
30
+ "purple",
31
+ "seafoam",
32
+ "pink",
33
+ "turquoise",
34
+ "cinnamon",
35
+ "brown",
36
+ "silver",
37
+ "gray",
38
+ "red",
39
+ "orange",
40
+ "green",
41
+ "cyan"
42
+ ],
43
+ "default": "informative"
44
+ },
45
+ "size": {
46
+ "type": "string",
47
+ "enum": ["s", "m", "l", "xl"],
48
+ "default": "m"
49
+ }
50
+ },
51
+ "lifecycle": {
52
+ "introduced": "1.0.0-draft"
53
+ },
54
+ "tokenBindings": [
55
+ {
56
+ "token": "component-height-75",
57
+ "context": "Height"
58
+ },
59
+ {
60
+ "token": "component-height-100",
61
+ "context": "Height"
62
+ },
63
+ {
64
+ "token": "component-height-200",
65
+ "context": "Height"
66
+ },
67
+ {
68
+ "token": "component-height-300",
69
+ "context": "Height"
70
+ },
71
+ {
72
+ "token": "status-light-dot-size-small",
73
+ "context": "Dot size"
74
+ },
75
+ {
76
+ "token": "status-light-dot-size-medium",
77
+ "context": "Dot size"
78
+ },
79
+ {
80
+ "token": "status-light-dot-size-large",
81
+ "context": "Dot size"
82
+ },
83
+ {
84
+ "token": "status-light-dot-extra-large",
85
+ "context": "Dot size"
86
+ },
87
+ {
88
+ "token": "status-light-text-to-visual-75",
89
+ "context": "Spacing (dot to label) "
90
+ },
91
+ {
92
+ "token": "status-light-text-to-visual-100",
93
+ "context": "Spacing (dot to label) "
94
+ },
95
+ {
96
+ "token": "status-light-text-to-visual-200",
97
+ "context": "Spacing (dot to label) "
98
+ },
99
+ {
100
+ "token": "status-light-text-to-visual-300",
101
+ "context": "Spacing (dot to label) "
102
+ },
103
+ {
104
+ "token": "status-light-top-to-dot-small",
105
+ "context": "Spacing (top edge to dot) "
106
+ },
107
+ {
108
+ "token": "status-light-top-to-dot-medium",
109
+ "context": "Spacing (top edge to dot) "
110
+ },
111
+ {
112
+ "token": "status-light-top-to-dot-large",
113
+ "context": "Spacing (top edge to dot) "
114
+ },
115
+ {
116
+ "token": "status-light-top-to-dot-extra-large",
117
+ "context": "Spacing (top edge to dot) "
118
+ },
119
+ {
120
+ "token": "component-top-to-text-75",
121
+ "context": "Spacing (top/bottom edge to label)"
122
+ },
123
+ {
124
+ "token": "component-top-to-text-100",
125
+ "context": "Spacing (top/bottom edge to label)"
126
+ },
127
+ {
128
+ "token": "component-top-to-text-200",
129
+ "context": "Spacing (top/bottom edge to label)"
130
+ },
131
+ {
132
+ "token": "component-top-to-text-300",
133
+ "context": "Spacing (top/bottom edge to label)"
134
+ },
135
+ {
136
+ "token": "component-bottom-to-text-75",
137
+ "context": "Spacing (top/bottom edge to label)"
138
+ },
139
+ {
140
+ "token": "component-bottom-to-text-100",
141
+ "context": "Spacing (top/bottom edge to label)"
142
+ },
143
+ {
144
+ "token": "component-bottom-to-text-200",
145
+ "context": "Spacing (top/bottom edge to label)"
146
+ },
147
+ {
148
+ "token": "component-bottom-to-text-300",
149
+ "context": "Spacing (top/bottom edge to label)"
150
+ },
151
+ {
152
+ "token": "default-font-family",
153
+ "context": "Label"
154
+ },
155
+ {
156
+ "token": "regular-font-weight",
157
+ "context": "Label"
158
+ },
159
+ {
160
+ "token": "default-font-style",
161
+ "context": "Label"
162
+ },
163
+ {
164
+ "token": "font-size-75",
165
+ "context": "Label"
166
+ },
167
+ {
168
+ "token": "font-size-100",
169
+ "context": "Label"
170
+ },
171
+ {
172
+ "token": "font-size-200",
173
+ "context": "Label"
174
+ },
175
+ {
176
+ "token": "font-size-300",
177
+ "context": "Label"
178
+ },
179
+ {
180
+ "token": "line-height-100",
181
+ "context": "Label"
182
+ },
183
+ {
184
+ "token": "cjk-line-height-100",
185
+ "context": "Label"
186
+ },
187
+ {
188
+ "token": "informative-visual-color",
189
+ "context": "Semantic (Dot) "
190
+ },
191
+ {
192
+ "token": "neutral-visual-color",
193
+ "context": "Semantic (Dot) "
194
+ },
195
+ {
196
+ "token": "positive-visual-color",
197
+ "context": "Semantic (Dot) "
198
+ },
199
+ {
200
+ "token": "notice-visual-color",
201
+ "context": "Semantic (Dot) "
202
+ },
203
+ {
204
+ "token": "negative-visual-color",
205
+ "context": "Semantic (Dot) "
206
+ },
207
+ {
208
+ "token": "celery-visual-color",
209
+ "context": "Non-semantic (Dot) "
210
+ },
211
+ {
212
+ "token": "chartreuse-visual-color",
213
+ "context": "Non-semantic (Dot) "
214
+ },
215
+ {
216
+ "token": "cyan-visual-color",
217
+ "context": "Non-semantic (Dot) "
218
+ },
219
+ {
220
+ "token": "fuchsia-visual-color",
221
+ "context": "Non-semantic (Dot) "
222
+ },
223
+ {
224
+ "token": "purple-visual-color",
225
+ "context": "Non-semantic (Dot) "
226
+ },
227
+ {
228
+ "token": "magenta-visual-color",
229
+ "context": "Non-semantic (Dot) "
230
+ },
231
+ {
232
+ "token": "indigo-visual-color",
233
+ "context": "Non-semantic (Dot) "
234
+ },
235
+ {
236
+ "token": "seafoam-visual-color",
237
+ "context": "Non-semantic (Dot) "
238
+ },
239
+ {
240
+ "token": "yellow-visual-color",
241
+ "context": "Non-semantic (Dot) "
242
+ },
243
+ {
244
+ "token": "pink-visual-color",
245
+ "context": "Non-semantic (Dot) "
246
+ },
247
+ {
248
+ "token": "turquoise-visual-color",
249
+ "context": "Non-semantic (Dot) "
250
+ },
251
+ {
252
+ "token": "cinnamon-visual-color",
253
+ "context": "Non-semantic (Dot) "
254
+ },
255
+ {
256
+ "token": "brown-visual-color",
257
+ "context": "Non-semantic (Dot) "
258
+ },
259
+ {
260
+ "token": "silver-visual-color",
261
+ "context": "Non-semantic (Dot) "
262
+ },
263
+ {
264
+ "token": "gray-600",
265
+ "context": "Label"
266
+ },
267
+ {
268
+ "token": "neutral-content-color-default",
269
+ "context": "Label"
270
+ }
271
+ ]
272
+ }