@adobe/design-system-registry 3.3.0 → 5.0.1
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.
- package/CHANGELOG.md +25 -0
- package/index.js +39 -139
- package/moon.yml +2 -29
- package/package.json +5 -34
- package/AUTHORING.md +0 -290
- package/PLATFORM_EXTENSIONS.md +0 -315
- package/ava.config.js +0 -21
- package/registry/alignments.json +0 -22
- package/registry/anatomy-terms.json +0 -739
- package/registry/categories.json +0 -55
- package/registry/color-families.json +0 -177
- package/registry/components.json +0 -277
- package/registry/densities.json +0 -17
- package/registry/easing-curves.json +0 -42
- package/registry/glossary.json +0 -181
- package/registry/motion-roles.json +0 -32
- package/registry/navigation-terms.json +0 -241
- package/registry/orientations.json +0 -17
- package/registry/platform-extensions/ios-states.json +0 -59
- package/registry/platform-extensions/web-components-states.json +0 -58
- package/registry/platforms.json +0 -37
- package/registry/positions.json +0 -32
- package/registry/property-terms.json +0 -212
- package/registry/scale-values.json +0 -126
- package/registry/shapes.json +0 -12
- package/registry/sizes.json +0 -71
- package/registry/states.json +0 -184
- package/registry/structures.json +0 -57
- package/registry/substructures.json +0 -12
- package/registry/token-objects.json +0 -32
- package/registry/token-terminology.json +0 -925
- package/registry/typography-families.json +0 -27
- package/registry/typography-styles.json +0 -22
- package/registry/typography-weights.json +0 -37
- package/registry/variants.json +0 -282
- package/schemas/platform-extension.json +0 -79
- package/schemas/registry-value.json +0 -230
- package/scripts/validate-registry.js +0 -134
- package/test/registry.test.js +0 -417
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "property-term",
|
|
4
|
-
"description": "CSS/styling attributes or design-system abstractions thereof, assigned to token name objects via the `property` field. Not all entries are valid CSS property identifiers — some (e.g. padding-horizontal, overlay-color, size) are design-system-level abstractions. Not anatomy parts (which belong in anatomy-terms.json) and not styling surfaces (which belong in token-objects.json). Examples: color, width, padding, font-size.",
|
|
5
|
-
"values": [
|
|
6
|
-
{
|
|
7
|
-
"id": "color",
|
|
8
|
-
"label": "Color",
|
|
9
|
-
"description": "Text or foreground color"
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"id": "background-color",
|
|
13
|
-
"label": "Background Color",
|
|
14
|
-
"description": "Background fill color"
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"id": "border-color",
|
|
18
|
-
"label": "Border Color",
|
|
19
|
-
"description": "Border or outline color"
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
"id": "fill-color",
|
|
23
|
-
"label": "Fill Color",
|
|
24
|
-
"description": "SVG or icon fill color"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"id": "icon-color",
|
|
28
|
-
"label": "Icon Color",
|
|
29
|
-
"description": "Foreground color of an icon"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"id": "shadow-color",
|
|
33
|
-
"label": "Shadow Color",
|
|
34
|
-
"description": "Drop shadow color component"
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
"id": "overlay-color",
|
|
38
|
-
"label": "Overlay Color",
|
|
39
|
-
"description": "Overlay or scrim tint color"
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"id": "outline-color",
|
|
43
|
-
"label": "Outline Color",
|
|
44
|
-
"description": "CSS outline color"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"id": "opacity",
|
|
48
|
-
"label": "Opacity",
|
|
49
|
-
"description": "Element transparency level"
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"id": "border-opacity",
|
|
53
|
-
"label": "Border Opacity",
|
|
54
|
-
"description": "Border transparency level"
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"id": "overlay-opacity",
|
|
58
|
-
"label": "Overlay Opacity",
|
|
59
|
-
"description": "Overlay or scrim transparency level"
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
"id": "width",
|
|
63
|
-
"label": "Width",
|
|
64
|
-
"description": "Element width"
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
"id": "height",
|
|
68
|
-
"label": "Height",
|
|
69
|
-
"description": "Element height"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
"id": "min-width",
|
|
73
|
-
"label": "Min Width",
|
|
74
|
-
"description": "Minimum element width"
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"id": "max-width",
|
|
78
|
-
"label": "Max Width",
|
|
79
|
-
"description": "Maximum element width"
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
"id": "min-height",
|
|
83
|
-
"label": "Min Height",
|
|
84
|
-
"description": "Minimum element height"
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
"id": "max-height",
|
|
88
|
-
"label": "Max Height",
|
|
89
|
-
"description": "Maximum element height"
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
"id": "size",
|
|
93
|
-
"label": "Size",
|
|
94
|
-
"description": "General dimension size (non-directional)"
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
"id": "padding",
|
|
98
|
-
"label": "Padding",
|
|
99
|
-
"description": "Internal spacing on all sides"
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
"id": "padding-horizontal",
|
|
103
|
-
"label": "Horizontal Padding",
|
|
104
|
-
"description": "Internal horizontal (left/right) spacing"
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
"id": "padding-vertical",
|
|
108
|
-
"label": "Vertical Padding",
|
|
109
|
-
"description": "Internal vertical (top/bottom) spacing"
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
"id": "gap",
|
|
113
|
-
"label": "Gap",
|
|
114
|
-
"description": "Space between flex or grid children"
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
"id": "spacing",
|
|
118
|
-
"label": "Spacing",
|
|
119
|
-
"description": "General spacing between elements"
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
"id": "border-width",
|
|
123
|
-
"label": "Border Width",
|
|
124
|
-
"description": "Border or stroke thickness"
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
"id": "border-radius",
|
|
128
|
-
"label": "Border Radius",
|
|
129
|
-
"description": "Corner rounding radius"
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
"id": "outline-width",
|
|
133
|
-
"label": "Outline Width",
|
|
134
|
-
"description": "CSS outline thickness"
|
|
135
|
-
},
|
|
136
|
-
{
|
|
137
|
-
"id": "blur",
|
|
138
|
-
"label": "Blur",
|
|
139
|
-
"description": "Blur radius (backdrop or drop shadow)"
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
"id": "shadow",
|
|
143
|
-
"label": "Shadow",
|
|
144
|
-
"description": "Full box or drop shadow definition"
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
"id": "font-size",
|
|
148
|
-
"label": "Font Size",
|
|
149
|
-
"description": "Typeface size"
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
"id": "font-weight",
|
|
153
|
-
"label": "Font Weight",
|
|
154
|
-
"description": "Typeface weight (boldness)"
|
|
155
|
-
},
|
|
156
|
-
{
|
|
157
|
-
"id": "font-family",
|
|
158
|
-
"label": "Font Family",
|
|
159
|
-
"description": "Typeface family name"
|
|
160
|
-
},
|
|
161
|
-
{
|
|
162
|
-
"id": "font-style",
|
|
163
|
-
"label": "Font Style",
|
|
164
|
-
"description": "Typeface style (normal, italic, oblique)"
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
"id": "line-height",
|
|
168
|
-
"label": "Line Height",
|
|
169
|
-
"description": "Vertical spacing between lines of text"
|
|
170
|
-
},
|
|
171
|
-
{
|
|
172
|
-
"id": "letter-spacing",
|
|
173
|
-
"label": "Letter Spacing",
|
|
174
|
-
"description": "Horizontal spacing between characters"
|
|
175
|
-
},
|
|
176
|
-
{
|
|
177
|
-
"id": "text-align",
|
|
178
|
-
"label": "Text Align",
|
|
179
|
-
"description": "Horizontal alignment of text content"
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
"id": "duration",
|
|
183
|
-
"label": "Duration",
|
|
184
|
-
"description": "Animation or transition duration"
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
"id": "easing",
|
|
188
|
-
"label": "Easing",
|
|
189
|
-
"description": "Animation or transition easing function"
|
|
190
|
-
},
|
|
191
|
-
{
|
|
192
|
-
"id": "margin",
|
|
193
|
-
"label": "Margin",
|
|
194
|
-
"description": "External spacing on all sides (used for typography block margin multipliers)"
|
|
195
|
-
},
|
|
196
|
-
{
|
|
197
|
-
"id": "margin-top",
|
|
198
|
-
"label": "Margin Top",
|
|
199
|
-
"description": "External spacing above a block element"
|
|
200
|
-
},
|
|
201
|
-
{
|
|
202
|
-
"id": "margin-bottom",
|
|
203
|
-
"label": "Margin Bottom",
|
|
204
|
-
"description": "External spacing below a block element"
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
"id": "line-height-multiplier",
|
|
208
|
-
"label": "Line Height Multiplier",
|
|
209
|
-
"description": "Unitless line-height ratio (multiplier), distinct from the absolute px line-height paired with a specific font-size tier"
|
|
210
|
-
}
|
|
211
|
-
]
|
|
212
|
-
}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "scale",
|
|
4
|
-
"description": "Numeric scale values used in design tokens",
|
|
5
|
-
"values": [
|
|
6
|
-
{
|
|
7
|
-
"id": "50",
|
|
8
|
-
"label": "Scale 50",
|
|
9
|
-
"value": 50,
|
|
10
|
-
"category": "common",
|
|
11
|
-
"usedIn": ["tokens"]
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"id": "75",
|
|
15
|
-
"label": "Scale 75",
|
|
16
|
-
"value": 75,
|
|
17
|
-
"category": "common",
|
|
18
|
-
"usedIn": ["tokens"]
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"id": "100",
|
|
22
|
-
"label": "Scale 100",
|
|
23
|
-
"value": 100,
|
|
24
|
-
"category": "common",
|
|
25
|
-
"usedIn": ["tokens"]
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"id": "200",
|
|
29
|
-
"label": "Scale 200",
|
|
30
|
-
"value": 200,
|
|
31
|
-
"category": "common",
|
|
32
|
-
"usedIn": ["tokens"]
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
"id": "300",
|
|
36
|
-
"label": "Scale 300",
|
|
37
|
-
"value": 300,
|
|
38
|
-
"category": "common",
|
|
39
|
-
"usedIn": ["tokens"]
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"id": "400",
|
|
43
|
-
"label": "Scale 400",
|
|
44
|
-
"value": 400,
|
|
45
|
-
"category": "common",
|
|
46
|
-
"usedIn": ["tokens"]
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
"id": "500",
|
|
50
|
-
"label": "Scale 500",
|
|
51
|
-
"value": 500,
|
|
52
|
-
"category": "common",
|
|
53
|
-
"usedIn": ["tokens"]
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
"id": "600",
|
|
57
|
-
"label": "Scale 600",
|
|
58
|
-
"value": 600,
|
|
59
|
-
"category": "extended",
|
|
60
|
-
"usedIn": ["tokens"]
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"id": "700",
|
|
64
|
-
"label": "Scale 700",
|
|
65
|
-
"value": 700,
|
|
66
|
-
"category": "extended",
|
|
67
|
-
"usedIn": ["tokens"]
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
"id": "800",
|
|
71
|
-
"label": "Scale 800",
|
|
72
|
-
"value": 800,
|
|
73
|
-
"category": "extended",
|
|
74
|
-
"usedIn": ["tokens"]
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"id": "900",
|
|
78
|
-
"label": "Scale 900",
|
|
79
|
-
"value": 900,
|
|
80
|
-
"category": "extended",
|
|
81
|
-
"usedIn": ["tokens"]
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
"id": "1000",
|
|
85
|
-
"label": "Scale 1000",
|
|
86
|
-
"value": 1000,
|
|
87
|
-
"category": "extended",
|
|
88
|
-
"usedIn": ["tokens"]
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
"id": "1100",
|
|
92
|
-
"label": "Scale 1100",
|
|
93
|
-
"value": 1100,
|
|
94
|
-
"category": "extended",
|
|
95
|
-
"usedIn": ["component-schemas"]
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"id": "1200",
|
|
99
|
-
"label": "Scale 1200",
|
|
100
|
-
"value": 1200,
|
|
101
|
-
"category": "extended",
|
|
102
|
-
"usedIn": ["component-schemas"]
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
"id": "1300",
|
|
106
|
-
"label": "Scale 1300",
|
|
107
|
-
"value": 1300,
|
|
108
|
-
"category": "extended",
|
|
109
|
-
"usedIn": ["component-schemas"]
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
"id": "1400",
|
|
113
|
-
"label": "Scale 1400",
|
|
114
|
-
"value": 1400,
|
|
115
|
-
"category": "extended",
|
|
116
|
-
"usedIn": ["component-schemas"]
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
"id": "1500",
|
|
120
|
-
"label": "Scale 1500",
|
|
121
|
-
"value": 1500,
|
|
122
|
-
"category": "extended",
|
|
123
|
-
"usedIn": ["component-schemas"]
|
|
124
|
-
}
|
|
125
|
-
]
|
|
126
|
-
}
|
package/registry/shapes.json
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "shape",
|
|
4
|
-
"description": "Terms relative to the overall shape of a component. This is a starting vocabulary — new shape terms should be added here as design system patterns are identified.",
|
|
5
|
-
"values": [
|
|
6
|
-
{
|
|
7
|
-
"id": "uniform",
|
|
8
|
-
"label": "Uniform",
|
|
9
|
-
"description": "Equal proportions (e.g., 1:1 ratio between horizontal and vertical padding)"
|
|
10
|
-
}
|
|
11
|
-
]
|
|
12
|
-
}
|
package/registry/sizes.json
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "size",
|
|
4
|
-
"description": "Semantic t-shirt size values used across Spectrum. Numeric scale values belong in scale-values.json.",
|
|
5
|
-
"values": [
|
|
6
|
-
{
|
|
7
|
-
"id": "xxxs",
|
|
8
|
-
"label": "3X Small",
|
|
9
|
-
"aliases": ["3x-small"],
|
|
10
|
-
"tokenName": "3x-small",
|
|
11
|
-
"usedIn": ["tokens"]
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"id": "xxs",
|
|
15
|
-
"label": "2X Small",
|
|
16
|
-
"aliases": ["2x-small"],
|
|
17
|
-
"tokenName": "2x-small",
|
|
18
|
-
"usedIn": ["tokens"]
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"id": "xs",
|
|
22
|
-
"label": "Extra Small",
|
|
23
|
-
"aliases": ["extra-small"],
|
|
24
|
-
"tokenName": "extra-small",
|
|
25
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"id": "s",
|
|
29
|
-
"label": "Small",
|
|
30
|
-
"aliases": ["small"],
|
|
31
|
-
"tokenName": "small",
|
|
32
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
"id": "m",
|
|
36
|
-
"label": "Medium",
|
|
37
|
-
"aliases": ["medium"],
|
|
38
|
-
"tokenName": "medium",
|
|
39
|
-
"default": true,
|
|
40
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
"id": "l",
|
|
44
|
-
"label": "Large",
|
|
45
|
-
"aliases": ["large"],
|
|
46
|
-
"tokenName": "large",
|
|
47
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
"id": "xl",
|
|
51
|
-
"label": "Extra Large",
|
|
52
|
-
"aliases": ["extra-large"],
|
|
53
|
-
"tokenName": "extra-large",
|
|
54
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"id": "xxl",
|
|
58
|
-
"label": "2X Large",
|
|
59
|
-
"aliases": ["2x-large"],
|
|
60
|
-
"tokenName": "2x-large",
|
|
61
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"id": "xxxl",
|
|
65
|
-
"label": "3X Large",
|
|
66
|
-
"aliases": ["3x-large"],
|
|
67
|
-
"tokenName": "3x-large",
|
|
68
|
-
"usedIn": ["tokens", "component-options", "component-schemas"]
|
|
69
|
-
}
|
|
70
|
-
]
|
|
71
|
-
}
|
package/registry/states.json
DELETED
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "state",
|
|
4
|
-
"description": "Interaction states for components",
|
|
5
|
-
"allowCustom": true,
|
|
6
|
-
"customPattern": "^[a-z][a-z0-9-]*(\\s\\+\\s[a-z][a-z0-9-]*)*$",
|
|
7
|
-
"values": [
|
|
8
|
-
{
|
|
9
|
-
"id": "default",
|
|
10
|
-
"label": "Default",
|
|
11
|
-
"description": "The default, resting state of a component",
|
|
12
|
-
"default": true,
|
|
13
|
-
"usedIn": ["tokens", "component-options", "component-schemas"],
|
|
14
|
-
"definition": {
|
|
15
|
-
"superordinate": "interaction state",
|
|
16
|
-
"description": "The initial, resting state of a user interface component before any user interaction occurs",
|
|
17
|
-
"essentialCharacteristics": [
|
|
18
|
-
"Represents the component's appearance without user interaction",
|
|
19
|
-
"The baseline state from which all other states transition",
|
|
20
|
-
"Should communicate the component's purpose and interactivity at a glance"
|
|
21
|
-
]
|
|
22
|
-
},
|
|
23
|
-
"terminology": {
|
|
24
|
-
"conceptType": "term",
|
|
25
|
-
"namingRationale": "Industry-standard term used consistently across design systems and platforms"
|
|
26
|
-
},
|
|
27
|
-
"sources": [
|
|
28
|
-
{
|
|
29
|
-
"type": "industry-standard",
|
|
30
|
-
"reference": "Common UI design terminology",
|
|
31
|
-
"date": "2025-01-12"
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
"governance": {
|
|
35
|
-
"owner": "Spectrum Core Team",
|
|
36
|
-
"reviewDate": "2025-01-12",
|
|
37
|
-
"status": "approved"
|
|
38
|
-
},
|
|
39
|
-
"relatedTerms": ["hover", "focus", "disabled"]
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"id": "hover",
|
|
43
|
-
"label": "Hover",
|
|
44
|
-
"description": "Mouse hover state",
|
|
45
|
-
"usedIn": ["tokens", "component-options", "component-schemas"],
|
|
46
|
-
"definition": {
|
|
47
|
-
"superordinate": "interaction state",
|
|
48
|
-
"description": "The state when a pointer device (such as a mouse cursor) is positioned over a component's interactive area without pressing",
|
|
49
|
-
"essentialCharacteristics": [
|
|
50
|
-
"Triggered by pointer positioning, not by clicking or pressing",
|
|
51
|
-
"Provides visual feedback that the element is interactive",
|
|
52
|
-
"Should be subtle enough not to distract from the overall interface",
|
|
53
|
-
"Reversible when the pointer moves away"
|
|
54
|
-
]
|
|
55
|
-
},
|
|
56
|
-
"platforms": {
|
|
57
|
-
"web": {
|
|
58
|
-
"term": "hover",
|
|
59
|
-
"notes": "CSS :hover pseudo-class",
|
|
60
|
-
"reference": "https://developer.mozilla.org/en-US/docs/Web/CSS/:hover"
|
|
61
|
-
},
|
|
62
|
-
"iOS": {
|
|
63
|
-
"term": "highlighted",
|
|
64
|
-
"notes": "iOS uses 'highlighted' for similar visual feedback on touch devices with pointer support",
|
|
65
|
-
"reference": "UIControl.State.highlighted"
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
"terminology": {
|
|
69
|
-
"conceptType": "term",
|
|
70
|
-
"namingRationale": "Standard interaction design term describing pointer-based feedback"
|
|
71
|
-
},
|
|
72
|
-
"sources": [
|
|
73
|
-
{
|
|
74
|
-
"type": "industry-standard",
|
|
75
|
-
"reference": "W3C CSS specification",
|
|
76
|
-
"url": "https://www.w3.org/TR/selectors-4/#hover-pseudo",
|
|
77
|
-
"date": "2025-01-12"
|
|
78
|
-
}
|
|
79
|
-
],
|
|
80
|
-
"governance": {
|
|
81
|
-
"owner": "Spectrum Core Team",
|
|
82
|
-
"reviewDate": "2025-01-12",
|
|
83
|
-
"status": "approved"
|
|
84
|
-
},
|
|
85
|
-
"relatedTerms": ["default", "active", "focus"]
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"id": "active",
|
|
89
|
-
"label": "Active",
|
|
90
|
-
"description": "Active or pressed state",
|
|
91
|
-
"usedIn": ["component-options", "component-schemas"]
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
"id": "focus",
|
|
95
|
-
"label": "Focus",
|
|
96
|
-
"description": "Focused state (generic)",
|
|
97
|
-
"usedIn": ["component-options", "component-schemas"]
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
"id": "keyboard-focus",
|
|
101
|
-
"label": "Keyboard Focus",
|
|
102
|
-
"aliases": ["keyboard focus", "key-focus"],
|
|
103
|
-
"description": "Focused via keyboard navigation",
|
|
104
|
-
"usedIn": ["tokens", "component-options", "component-schemas"],
|
|
105
|
-
"definition": {
|
|
106
|
-
"superordinate": "interaction state",
|
|
107
|
-
"description": "The state when a component receives focus through keyboard navigation, indicating it will respond to keyboard input",
|
|
108
|
-
"essentialCharacteristics": [
|
|
109
|
-
"Specifically indicates focus achieved through keyboard interaction (Tab, arrow keys)",
|
|
110
|
-
"Requires prominent visual indicator for accessibility (WCAG 2.4.7)",
|
|
111
|
-
"Different from generic focus to support :focus-visible patterns",
|
|
112
|
-
"Critical for keyboard-only users to understand their current position"
|
|
113
|
-
]
|
|
114
|
-
},
|
|
115
|
-
"platforms": {
|
|
116
|
-
"web": {
|
|
117
|
-
"term": "keyboard-focus",
|
|
118
|
-
"notes": "Often implemented with :focus-visible pseudo-class",
|
|
119
|
-
"reference": "https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible"
|
|
120
|
-
},
|
|
121
|
-
"iOS": {
|
|
122
|
-
"term": "focused",
|
|
123
|
-
"notes": "UIFocusSystem for keyboard and pointer navigation",
|
|
124
|
-
"reference": "UIFocusSystem"
|
|
125
|
-
}
|
|
126
|
-
},
|
|
127
|
-
"terminology": {
|
|
128
|
-
"conceptType": "term",
|
|
129
|
-
"namingRationale": "Distinguishes keyboard-based focus from programmatic focus, following modern accessibility standards"
|
|
130
|
-
},
|
|
131
|
-
"sources": [
|
|
132
|
-
{
|
|
133
|
-
"type": "industry-standard",
|
|
134
|
-
"reference": "WCAG 2.4.7 Focus Visible",
|
|
135
|
-
"url": "https://www.w3.org/WAI/WCAG21/Understanding/focus-visible.html",
|
|
136
|
-
"date": "2025-01-12"
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
"type": "industry-standard",
|
|
140
|
-
"reference": "W3C :focus-visible specification",
|
|
141
|
-
"url": "https://www.w3.org/TR/selectors-4/#the-focus-visible-pseudo",
|
|
142
|
-
"date": "2025-01-12"
|
|
143
|
-
}
|
|
144
|
-
],
|
|
145
|
-
"governance": {
|
|
146
|
-
"owner": "Spectrum Core Team",
|
|
147
|
-
"reviewDate": "2025-01-12",
|
|
148
|
-
"status": "approved"
|
|
149
|
-
},
|
|
150
|
-
"relatedTerms": ["focus", "default", "hover"]
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
"id": "disabled",
|
|
154
|
-
"label": "Disabled",
|
|
155
|
-
"description": "Disabled or inactive state",
|
|
156
|
-
"usedIn": ["component-options", "component-schemas"]
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
"id": "down",
|
|
160
|
-
"label": "Down",
|
|
161
|
-
"description": "Pressed or down state (mouse button down)",
|
|
162
|
-
"usedIn": ["tokens", "component-schemas"]
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
"id": "pending",
|
|
166
|
-
"label": "Pending",
|
|
167
|
-
"description": "Loading or pending state",
|
|
168
|
-
"usedIn": ["tokens"]
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
"id": "selected",
|
|
172
|
-
"label": "Selected",
|
|
173
|
-
"description": "Selected or chosen state",
|
|
174
|
-
"usedIn": ["component-schemas"]
|
|
175
|
-
},
|
|
176
|
-
{
|
|
177
|
-
"id": "drag-and-drop",
|
|
178
|
-
"label": "Drag and Drop",
|
|
179
|
-
"aliases": ["drag and drop"],
|
|
180
|
-
"description": "Being dragged or drag target state",
|
|
181
|
-
"usedIn": ["component-schemas"]
|
|
182
|
-
}
|
|
183
|
-
]
|
|
184
|
-
}
|
package/registry/structures.json
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "structure",
|
|
4
|
-
"description": "Reusable visual patterns or object categories that occur across many varieties of components. Distinct from components, which are specific UI elements.",
|
|
5
|
-
"values": [
|
|
6
|
-
{
|
|
7
|
-
"id": "base",
|
|
8
|
-
"label": "Base",
|
|
9
|
-
"description": "Foundation structure shared across components"
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"id": "container",
|
|
13
|
-
"label": "Container",
|
|
14
|
-
"description": "Enclosing structure that holds child elements"
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"id": "list",
|
|
18
|
-
"label": "List",
|
|
19
|
-
"description": "Ordered or unordered collection of items"
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
"id": "accessory",
|
|
23
|
-
"label": "Accessory",
|
|
24
|
-
"description": "Supplementary element attached to a primary structure"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"id": "group",
|
|
28
|
-
"label": "Group",
|
|
29
|
-
"description": "Collection of similar UI elements or related controls"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"id": "banner",
|
|
33
|
-
"label": "Banner",
|
|
34
|
-
"description": "Prominent element for displaying non-permanent information or actions"
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
"id": "table",
|
|
38
|
-
"label": "Table",
|
|
39
|
-
"description": "Tabular layout of rows and columns for structured data"
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"id": "body",
|
|
43
|
-
"label": "Body",
|
|
44
|
-
"description": "Body text typography scale — used for standard paragraph and UI text"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"id": "detail",
|
|
48
|
-
"label": "Detail",
|
|
49
|
-
"description": "Detail text typography scale — used for captions, labels, and supporting text"
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"id": "heading",
|
|
53
|
-
"label": "Heading",
|
|
54
|
-
"description": "Heading text typography scale — used for section and page headings"
|
|
55
|
-
}
|
|
56
|
-
]
|
|
57
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/registry-value.json",
|
|
3
|
-
"type": "substructure",
|
|
4
|
-
"description": "Structures that only exist within the context of a parent structure (e.g., item within a list).",
|
|
5
|
-
"values": [
|
|
6
|
-
{
|
|
7
|
-
"id": "item",
|
|
8
|
-
"label": "Item",
|
|
9
|
-
"description": "Individual element within a parent structure (e.g., list item)"
|
|
10
|
-
}
|
|
11
|
-
]
|
|
12
|
-
}
|