@adobe/spectrum-design-data 0.0.0-size-token-taxonomy-20260929225107
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/LICENSE +201 -0
- package/README.md +75 -0
- package/components/accordion.json +185 -0
- package/components/action-bar.json +89 -0
- package/components/action-button.json +167 -0
- package/components/action-group.json +190 -0
- package/components/alert-banner.json +148 -0
- package/components/alert-dialog.json +124 -0
- package/components/avatar-group.json +82 -0
- package/components/avatar.json +162 -0
- package/components/badge.json +227 -0
- package/components/bar-panel.json +14 -0
- package/components/body.json +54 -0
- package/components/bottom-navigation-android.json +72 -0
- package/components/breadcrumbs.json +213 -0
- package/components/button-group.json +122 -0
- package/components/button.json +239 -0
- package/components/calendar.json +196 -0
- package/components/card-horizontal.json +14 -0
- package/components/card.json +22 -0
- package/components/cards.json +117 -0
- package/components/checkbox-group.json +128 -0
- package/components/checkbox.json +171 -0
- package/components/close-button.json +116 -0
- package/components/coach-indicator.json +109 -0
- package/components/coach-mark.json +151 -0
- package/components/code.json +44 -0
- package/components/collection-card.json +13 -0
- package/components/color-area.json +150 -0
- package/components/color-control.json +14 -0
- package/components/color-handle.json +79 -0
- package/components/color-loupe.json +49 -0
- package/components/color-slider.json +189 -0
- package/components/color-wheel.json +137 -0
- package/components/combo-box.json +319 -0
- package/components/contextual-help.json +186 -0
- package/components/date-field.json +13 -0
- package/components/date-picker.json +297 -0
- package/components/detail.json +53 -0
- package/components/divider.json +62 -0
- package/components/double-calendar.json +13 -0
- package/components/drop-zone.json +102 -0
- package/components/field-label.json +125 -0
- package/components/field.json +13 -0
- package/components/floating-action-button.json +13 -0
- package/components/form-item.json +13 -0
- package/components/heading.json +68 -0
- package/components/help-text.json +117 -0
- package/components/illustrated-message.json +159 -0
- package/components/in-field-button.json +14 -0
- package/components/in-field-progress-button.json +88 -0
- package/components/in-field-progress-circle.json +62 -0
- package/components/in-line-alert.json +109 -0
- package/components/link.json +127 -0
- package/components/list-view.json +233 -0
- package/components/menu.json +310 -0
- package/components/meter.json +127 -0
- package/components/number-field.json +264 -0
- package/components/opacity-checkerboard.json +51 -0
- package/components/picker.json +287 -0
- package/components/popover.json +182 -0
- package/components/progress-bar.json +177 -0
- package/components/progress-circle.json +108 -0
- package/components/radio-button.json +130 -0
- package/components/radio-group.json +202 -0
- package/components/rating.json +120 -0
- package/components/scroll-zoom-bar.json +82 -0
- package/components/search-field.json +206 -0
- package/components/segmented-control.json +184 -0
- package/components/segmented-text-field.json +13 -0
- package/components/select-box.json +165 -0
- package/components/side-navigation.json +185 -0
- package/components/single-calendar.json +13 -0
- package/components/slider.json +238 -0
- package/components/stack-item.json +23 -0
- package/components/standard-dialog.json +155 -0
- package/components/standard-panel.json +135 -0
- package/components/status-light.json +175 -0
- package/components/steplist.json +127 -0
- package/components/swatch-group.json +126 -0
- package/components/swatch.json +153 -0
- package/components/switch.json +156 -0
- package/components/table.json +273 -0
- package/components/tabs.json +163 -0
- package/components/tag-field.json +147 -0
- package/components/tag-group.json +111 -0
- package/components/tag.json +123 -0
- package/components/takeover-dialog.json +129 -0
- package/components/text-area.json +299 -0
- package/components/text-field.json +263 -0
- package/components/thumbnail.json +109 -0
- package/components/time-field.json +13 -0
- package/components/title.json +53 -0
- package/components/toast.json +136 -0
- package/components/tooltip.json +171 -0
- package/components/tray.json +32 -0
- package/components/tree-view.json +270 -0
- package/components/triple-calendar.json +13 -0
- package/components/user-card.json +14 -0
- package/fields/alignment.json +15 -0
- package/fields/anatomy.json +15 -0
- package/fields/color-scheme.json +16 -0
- package/fields/colorFamily.json +16 -0
- package/fields/colorRole.json +16 -0
- package/fields/component.json +15 -0
- package/fields/contrast.json +16 -0
- package/fields/density.json +15 -0
- package/fields/easing.json +15 -0
- package/fields/emphasis.json +16 -0
- package/fields/family.json +16 -0
- package/fields/from.json +16 -0
- package/fields/icon.json +15 -0
- package/fields/motionRole.json +15 -0
- package/fields/object.json +15 -0
- package/fields/orientation.json +15 -0
- package/fields/position.json +15 -0
- package/fields/property.json +15 -0
- package/fields/qualifier.json +15 -0
- package/fields/referenceScaleIndex.json +16 -0
- package/fields/role.json +15 -0
- package/fields/scale.json +16 -0
- package/fields/scaleIndex.json +16 -0
- package/fields/script.json +16 -0
- package/fields/shape.json +15 -0
- package/fields/size.json +15 -0
- package/fields/state.json +15 -0
- package/fields/structure.json +16 -0
- package/fields/style.json +15 -0
- package/fields/substructure.json +15 -0
- package/fields/to.json +16 -0
- package/fields/variant.json +15 -0
- package/fields/weight.json +15 -0
- package/guidelines/app-frame-content-area.json +81 -0
- package/guidelines/app-frame-creating-bluelines.json +58 -0
- package/guidelines/app-frame-header.json +72 -0
- package/guidelines/app-frame-overview.json +167 -0
- package/guidelines/app-frame-side-navigation.json +138 -0
- package/guidelines/attention-hierarchy.json +42 -0
- package/guidelines/background-layers.json +38 -0
- package/guidelines/brand.json +50 -0
- package/guidelines/colors.json +62 -0
- package/guidelines/containers.json +62 -0
- package/guidelines/developer-overview.json +35 -0
- package/guidelines/faqs.json +35 -0
- package/guidelines/fonts.json +58 -0
- package/guidelines/grays.json +66 -0
- package/guidelines/icon-fundamentals.json +45 -0
- package/guidelines/illustrations.json +111 -0
- package/guidelines/introduction.json +31 -0
- package/guidelines/manifest.json +204 -0
- package/guidelines/motion.json +41 -0
- package/guidelines/object-styles.json +102 -0
- package/guidelines/principles.json +30 -0
- package/guidelines/resources.json +59 -0
- package/guidelines/spacing.json +25 -0
- package/guidelines/states.json +34 -0
- package/guidelines/typography-fundamentals.json +142 -0
- package/guidelines/using-icons.json +107 -0
- package/mode-sets/color-scheme.json +8 -0
- package/mode-sets/contrast.json +8 -0
- package/mode-sets/scale.json +8 -0
- package/package.json +68 -0
- package/registry/alignments.json +22 -0
- package/registry/anatomy-terms.json +860 -0
- package/registry/categories.json +55 -0
- package/registry/color-families.json +177 -0
- package/registry/color-roles.json +47 -0
- package/registry/components.json +472 -0
- package/registry/densities.json +17 -0
- package/registry/easing-curves.json +42 -0
- package/registry/glossary.json +181 -0
- package/registry/icon-terms.json +104 -0
- package/registry/motion-roles.json +32 -0
- package/registry/navigation-terms.json +241 -0
- package/registry/orientations.json +17 -0
- package/registry/platform-extensions/web-components-states.json +58 -0
- package/registry/platforms.json +37 -0
- package/registry/positions.json +70 -0
- package/registry/property-terms.json +352 -0
- package/registry/qualifiers.json +47 -0
- package/registry/roles.json +17 -0
- package/registry/scale-values.json +133 -0
- package/registry/scripts.json +12 -0
- package/registry/shapes.json +27 -0
- package/registry/sizes.json +78 -0
- package/registry/states.json +187 -0
- package/registry/structures.json +67 -0
- package/registry/substructures.json +12 -0
- package/registry/token-objects.json +32 -0
- package/registry/token-terminology.json +925 -0
- package/registry/typography-emphasis.json +32 -0
- package/registry/typography-families.json +22 -0
- package/registry/typography-styles.json +22 -0
- package/registry/typography-weights.json +37 -0
- package/registry/variants.json +366 -0
- package/tokens/color-aliases.tokens.json +5579 -0
- package/tokens/color-component.tokens.json +1 -0
- package/tokens/color-palette.tokens.json +13458 -0
- package/tokens/icons.tokens.json +2777 -0
- package/tokens/layout-component.tokens.json +3121 -0
- package/tokens/layout.tokens.json +8741 -0
- package/tokens/semantic-color-palette.tokens.json +1246 -0
- package/tokens/typography.tokens.json +1447 -0
|
@@ -0,0 +1,49 @@
|
|
|
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/color-loupe.json",
|
|
4
|
+
"specVersion": "1.0.0-draft",
|
|
5
|
+
"name": "color-loupe",
|
|
6
|
+
"displayName": "Color loupe",
|
|
7
|
+
"description": "A color loupe shows the output color that would otherwise be covered by a cursor, stylus, or finger during color selection.",
|
|
8
|
+
"meta": {
|
|
9
|
+
"category": "feedback",
|
|
10
|
+
"documentationUrl": "https://spectrum.adobe.com/page/color-loupe/"
|
|
11
|
+
},
|
|
12
|
+
"documentBlocks": [
|
|
13
|
+
{
|
|
14
|
+
"type": "purpose",
|
|
15
|
+
"content": "A color loupe shows the output color that would otherwise be covered by a cursor, stylus, or finger during color selection."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"type": "guideline",
|
|
19
|
+
"content": "Color loupe.\n\nThe loupe is a floating element positioned above the handle. It provides a preview that reflects the color currently sampled by its parent color component and disappears when the interaction ends."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"type": "guideline",
|
|
23
|
+
"content": "Transparent colors.\n\nWhen using transparent colors, the loupe displays an opacity checkerboard background to clearly show the level of transparency."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "guideline",
|
|
27
|
+
"content": "Keyboard focus.\n\nThe loupe is a visual-only element and should not receive focus since it does not provide interactive functionality."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"type": "guideline",
|
|
31
|
+
"content": "Display combined values.\n\nColor selection usually happens using a variety of input methods (color area, color slider, color wheel). The color loupe should display the final output color: the combined values from multiple color inputs.\n\nThe number of input methods is determined by the color space (or \"mode\"), for example:\n\n* 2 controls: HSL using color wheel (hue) and color area (saturation and lightness)\n* 3 controls: RGB using unique color sliders for Red, Green, and Blue\n* 4 controls: RGBa using unique color sliders for Red, Green, Blue, and Alpha"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"type": "guideline",
|
|
35
|
+
"content": "Color loupe on down/touch state.\n\nThe color loupe component can be used above the handle to show the selected color that would otherwise be covered by a cursor, stylus, or finger on the down/touch state. This can be customized to appear only on finger-input, or always appear regardless of input type."
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"options": {
|
|
39
|
+
"value": {
|
|
40
|
+
"$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/hex-color.json"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"lifecycle": {
|
|
44
|
+
"introduced": "1.0.0-draft"
|
|
45
|
+
},
|
|
46
|
+
"accessibility": {
|
|
47
|
+
"focusable": false
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
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/color-slider.json",
|
|
4
|
+
"specVersion": "1.0.0-draft",
|
|
5
|
+
"name": "color-slider",
|
|
6
|
+
"displayName": "Color slider",
|
|
7
|
+
"description": "A color slider lets users visually change an individual channel of a color.",
|
|
8
|
+
"meta": {
|
|
9
|
+
"category": "inputs",
|
|
10
|
+
"documentationUrl": "https://spectrum.adobe.com/page/color-slider/"
|
|
11
|
+
},
|
|
12
|
+
"documentBlocks": [
|
|
13
|
+
{
|
|
14
|
+
"type": "purpose",
|
|
15
|
+
"content": "A color slider lets users visually change an individual channel of a color."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"type": "guideline",
|
|
19
|
+
"content": "Color sliders adjust a single channel of a color. They’re often used in combination with other color controls to provide fine-tuned visual selection."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"type": "guideline",
|
|
23
|
+
"content": "A color slider in a disabled state shows that an input exists, but is not available in that circumstance. This can be used to maintain layout continuity and communicate that a slider may become available later."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "guideline",
|
|
27
|
+
"content": "The slider’s length can be customized based on its context, while its thickness stays fixed for consistency and usability."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"type": "guideline",
|
|
31
|
+
"content": "Color sliders can be either in horizontal or vertical orientation. By default, a color slider is horizontal and should be used when vertical space is more limited. The vertical orientation is used when horizontal space is more limited."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"type": "guideline",
|
|
35
|
+
"content": "The step refers to the increment by which these values increase or decrease. A step value of 1 (default) allows a user to only select whole numbers within the min and max range."
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"type": "guideline",
|
|
39
|
+
"content": "The min and max values also can be customized appropriately for what the color slider is being used for (such as 0 to 360 for hue). By default, the min value starts at 0 and max value is set to 100."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"type": "guideline",
|
|
43
|
+
"content": "The value is the number selected within the color slider’s range, from the min value to max value."
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"type": "guideline",
|
|
47
|
+
"content": "Controls a single color channel — such as hue, lightness, or alpha—at a time. The track’s gradient visualizes the full range of values for that channel."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"type": "guideline",
|
|
51
|
+
"content": "The background of the color slider is a visual representation of the range of values a user can select from. This can represent color properties such as hues, color channel values (such as RGB or CMYK levels), or opacity. The exact format this background property takes will depend on what implementation you are working with. Some examples of the format include image, canvas, and gradient."
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"type": "guideline",
|
|
55
|
+
"content": "The keyboard focus state enlarges the handle to become twice as large. The loupe is a visual-only element and should not receive focus since it does not provide interactive functionality."
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"type": "guideline",
|
|
59
|
+
"content": "Unlike the slider itself, the color slider’s handle can slide all the way to the edge of the track. It always displays the selected color inside the handle and never gets cut off by the track or any container."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"type": "guideline",
|
|
63
|
+
"content": "A color slider’s minimum length is 80 px on desktop, 100 px on mobile."
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"type": "guideline",
|
|
67
|
+
"content": "Color sliders should be labeled and, when applicable, paired with text fields. If labeling each individual slider is redundant, label the group of sliders instead (for example, “RGB” or “HSB”)."
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"type": "guideline",
|
|
71
|
+
"content": "When using color sliders, it’s important to clearly display the color selection in real time. It can be in a color swatch, directly on the canvas, or both."
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"type": "guideline",
|
|
75
|
+
"content": "The color loupe component can be used above the handle to show the selected color that would otherwise be covered by a cursor, stylus, or finger on the down/touch state. This can be customized to appear only on finger-input, or always appear regardless of input type."
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"options": {
|
|
79
|
+
"background": {
|
|
80
|
+
"type": "string",
|
|
81
|
+
"description": "This will vary depending on implementation."
|
|
82
|
+
},
|
|
83
|
+
"channel": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"default": "hue",
|
|
86
|
+
"description": "Which channel of the color this slider controls. Use 'alpha' for opacity.",
|
|
87
|
+
"values": [
|
|
88
|
+
{
|
|
89
|
+
"value": "hue"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"value": "saturation"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"value": "lightness"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"value": "red"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"value": "green"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"value": "blue"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"value": "alpha"
|
|
108
|
+
}
|
|
109
|
+
]
|
|
110
|
+
},
|
|
111
|
+
"value": {
|
|
112
|
+
"type": "number",
|
|
113
|
+
"description": "Number (from minValue to maxValue)."
|
|
114
|
+
},
|
|
115
|
+
"minValue": {
|
|
116
|
+
"type": "number",
|
|
117
|
+
"default": 0
|
|
118
|
+
},
|
|
119
|
+
"maxValue": {
|
|
120
|
+
"type": "number",
|
|
121
|
+
"default": 100
|
|
122
|
+
},
|
|
123
|
+
"step": {
|
|
124
|
+
"type": "number",
|
|
125
|
+
"default": 1
|
|
126
|
+
},
|
|
127
|
+
"orientation": {
|
|
128
|
+
"type": "string",
|
|
129
|
+
"default": "horizontal",
|
|
130
|
+
"values": [
|
|
131
|
+
{
|
|
132
|
+
"value": "horizontal"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"value": "vertical"
|
|
136
|
+
}
|
|
137
|
+
]
|
|
138
|
+
},
|
|
139
|
+
"length": {
|
|
140
|
+
"type": "number",
|
|
141
|
+
"default": 192,
|
|
142
|
+
"description": "units: px"
|
|
143
|
+
},
|
|
144
|
+
"isDisabled": {
|
|
145
|
+
"type": "boolean",
|
|
146
|
+
"default": false
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
"states": [
|
|
150
|
+
{
|
|
151
|
+
"name": "hover",
|
|
152
|
+
"trigger": "interaction"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"name": "down",
|
|
156
|
+
"trigger": "interaction"
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"name": "keyboard-focus",
|
|
160
|
+
"trigger": "interaction"
|
|
161
|
+
}
|
|
162
|
+
],
|
|
163
|
+
"lifecycle": {
|
|
164
|
+
"introduced": "1.0.0-draft"
|
|
165
|
+
},
|
|
166
|
+
"accessibility": {
|
|
167
|
+
"role": "slider",
|
|
168
|
+
"intents": ["choose"],
|
|
169
|
+
"focusable": true,
|
|
170
|
+
"keyboardIntents": ["increment", "decrement"],
|
|
171
|
+
"wcag": [
|
|
172
|
+
{
|
|
173
|
+
"criterion": "1.3.1",
|
|
174
|
+
"level": "A",
|
|
175
|
+
"title": "Info and Relationships"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"criterion": "2.1.1",
|
|
179
|
+
"level": "A",
|
|
180
|
+
"title": "Keyboard"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"criterion": "4.1.2",
|
|
184
|
+
"level": "A",
|
|
185
|
+
"title": "Name, Role, Value"
|
|
186
|
+
}
|
|
187
|
+
]
|
|
188
|
+
}
|
|
189
|
+
}
|
|
@@ -0,0 +1,137 @@
|
|
|
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/color-wheel.json",
|
|
4
|
+
"specVersion": "1.0.0-draft",
|
|
5
|
+
"name": "color-wheel",
|
|
6
|
+
"displayName": "Color wheel",
|
|
7
|
+
"description": "A color wheel lets users visually change an individual channel of a color on a circular track.",
|
|
8
|
+
"meta": {
|
|
9
|
+
"category": "inputs",
|
|
10
|
+
"documentationUrl": "https://spectrum.adobe.com/page/color-wheel/"
|
|
11
|
+
},
|
|
12
|
+
"documentBlocks": [
|
|
13
|
+
{
|
|
14
|
+
"type": "purpose",
|
|
15
|
+
"content": "A color wheel lets users visually change an individual channel of a color on a circular track."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"type": "guideline",
|
|
19
|
+
"content": "Color wheels adjust a single color channel using a circular track. They offer a visual, radial interface often paired with other color selection tools for more precise control."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"type": "guideline",
|
|
23
|
+
"content": "A color wheel in a disabled state shows that an input exists, but is not available in that circumstance. This can be used to maintain layout continuity and communicate that the wheel may become available later."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "guideline",
|
|
27
|
+
"content": "A color wheel’s size can be customized appropriately for its context."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"type": "guideline",
|
|
31
|
+
"content": "The step refers to the increment by which these values increase or decrease. A step value of 1 (default) allows a user to only select whole numbers within the min and max range."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"type": "guideline",
|
|
35
|
+
"content": "The min and max values can also be customized appropriately for what the color wheel is being used for. By default, the min value starts at 0 and max value is set to 360."
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"type": "guideline",
|
|
39
|
+
"content": "The value is the number selected within the color wheel’s range, from the minimum value to the maximum value."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"type": "guideline",
|
|
43
|
+
"content": "The background of the color wheel is a visual representation of the range of values that a user can select from. It can represent color properties such as hues or color channel values (such as RGB or CMYK levels). The exact format this background property takes will depend on what implementation you are working with. Some examples of the format include image, canvas, and gradient."
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"type": "guideline",
|
|
47
|
+
"content": "A color wheel can be navigated using a keyboard. The keyboard focus state enlarges the handle to become twice as large."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"type": "guideline",
|
|
51
|
+
"content": "Minimum sizing ensures that the component remains clear, usable, and visually consistent, even in flexible or responsive layouts."
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"type": "guideline",
|
|
55
|
+
"content": "The color wheel is often used together with the color area component for color selection. When placing the color area inside the color wheel, make sure to leave enough of a margin between the two components to ensure there’s enough space for the both the handles."
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"type": "guideline",
|
|
59
|
+
"content": "When using color areas, it’s important to clearly display the color selection in real time. It can be in a color swatch, directly on the canvas, or both."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"type": "guideline",
|
|
63
|
+
"content": "The color loupe component can be used above the handle to show the selected color that would otherwise be covered by a cursor, stylus, or finger on the down/touch state. This can be customized to appear only on finger-input, or always appear regardless of input type."
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"options": {
|
|
67
|
+
"background": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"description": "This will vary depending on implementation."
|
|
70
|
+
},
|
|
71
|
+
"value": {
|
|
72
|
+
"type": "number",
|
|
73
|
+
"description": "Number (from minValue to maxValue)"
|
|
74
|
+
},
|
|
75
|
+
"minValue": {
|
|
76
|
+
"type": "number",
|
|
77
|
+
"default": 0
|
|
78
|
+
},
|
|
79
|
+
"maxValue": {
|
|
80
|
+
"type": "number",
|
|
81
|
+
"default": 360
|
|
82
|
+
},
|
|
83
|
+
"step": {
|
|
84
|
+
"type": "number",
|
|
85
|
+
"default": 1
|
|
86
|
+
},
|
|
87
|
+
"size": {
|
|
88
|
+
"type": "number",
|
|
89
|
+
"default": 192,
|
|
90
|
+
"description": "units: px"
|
|
91
|
+
},
|
|
92
|
+
"isDisabled": {
|
|
93
|
+
"type": "boolean",
|
|
94
|
+
"default": false
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"states": [
|
|
98
|
+
{
|
|
99
|
+
"name": "hover",
|
|
100
|
+
"trigger": "interaction"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"name": "down",
|
|
104
|
+
"trigger": "interaction"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"name": "keyboard-focus",
|
|
108
|
+
"trigger": "interaction"
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
"lifecycle": {
|
|
112
|
+
"introduced": "1.0.0-draft"
|
|
113
|
+
},
|
|
114
|
+
"accessibility": {
|
|
115
|
+
"role": "slider",
|
|
116
|
+
"intents": ["choose"],
|
|
117
|
+
"focusable": true,
|
|
118
|
+
"keyboardIntents": ["increment", "decrement"],
|
|
119
|
+
"wcag": [
|
|
120
|
+
{
|
|
121
|
+
"criterion": "1.3.1",
|
|
122
|
+
"level": "A",
|
|
123
|
+
"title": "Info and Relationships"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"criterion": "2.1.1",
|
|
127
|
+
"level": "A",
|
|
128
|
+
"title": "Keyboard"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"criterion": "4.1.2",
|
|
132
|
+
"level": "A",
|
|
133
|
+
"title": "Name, Role, Value"
|
|
134
|
+
}
|
|
135
|
+
]
|
|
136
|
+
}
|
|
137
|
+
}
|