@adobe/spectrum-design-data 3.3.0 → 3.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.
- package/components/accordion.json +32 -102
- package/components/action-bar.json +9 -23
- package/components/action-button.json +52 -92
- package/components/action-group.json +18 -129
- package/components/alert-banner.json +8 -27
- package/components/alert-dialog.json +45 -55
- package/components/avatar-group.json +20 -50
- package/components/avatar.json +44 -123
- package/components/badge.json +66 -160
- package/components/breadcrumbs.json +26 -100
- package/components/button-group.json +32 -63
- package/components/button.json +74 -105
- package/components/calendar.json +8 -67
- package/components/cards.json +31 -46
- package/components/checkbox-group.json +22 -84
- package/components/checkbox.json +33 -96
- package/components/close-button.json +31 -73
- package/components/coach-indicator.json +14 -44
- package/components/coach-mark.json +8 -26
- package/components/color-area.json +20 -93
- package/components/color-handle.json +25 -38
- package/components/color-loupe.json +18 -18
- package/components/color-slider.json +26 -122
- package/components/color-wheel.json +17 -84
- package/components/combo-box.json +56 -188
- package/components/contextual-help.json +87 -126
- package/components/date-picker.json +24 -120
- package/components/divider.json +25 -38
- package/components/drop-zone.json +25 -37
- package/components/field-label.json +22 -59
- package/components/help-text.json +16 -53
- package/components/illustrated-message.json +21 -72
- package/components/in-line-alert.json +13 -53
- package/components/link.json +31 -63
- package/components/list-view.json +15 -73
- package/components/menu.json +51 -180
- package/components/meter.json +35 -76
- package/components/number-field.json +34 -168
- package/components/picker.json +48 -187
- package/components/popover.json +47 -123
- package/components/progress-bar.json +33 -105
- package/components/progress-circle.json +25 -55
- package/components/radio-button.json +14 -67
- package/components/radio-group.json +34 -131
- package/components/rating.json +9 -38
- package/components/search-field.json +40 -125
- package/components/segmented-control.json +27 -69
- package/components/select-box.json +29 -96
- package/components/side-navigation.json +28 -69
- package/components/slider.json +45 -154
- package/components/standard-dialog.json +16 -88
- package/components/status-light.json +51 -133
- package/components/steplist.json +5 -24
- package/components/swatch-group.json +19 -55
- package/components/swatch.json +24 -79
- package/components/switch.json +42 -79
- package/components/table.json +26 -73
- package/components/tabs.json +35 -52
- package/components/tag-field.json +14 -60
- package/components/tag-group.json +22 -55
- package/components/tag.json +27 -77
- package/components/takeover-dialog.json +10 -61
- package/components/text-area.json +55 -204
- package/components/text-field.json +48 -169
- package/components/thumbnail.json +22 -63
- package/components/toast.json +30 -47
- package/components/tooltip.json +37 -84
- package/components/tree-view.json +51 -146
- package/fields/structure.json +1 -2
- package/guidelines/ai-resource-guide.json +42 -0
- package/guidelines/app-frame-overview.json +45 -44
- package/guidelines/applying-the-type-system.json +71 -0
- package/guidelines/attention-hierarchy.json +13 -22
- package/guidelines/background-layers.json +84 -10
- package/guidelines/bi-directionality.json +57 -0
- package/guidelines/border-width.json +70 -0
- package/guidelines/brand.json +24 -12
- package/guidelines/cognitive.json +229 -0
- package/guidelines/colors.json +55 -17
- package/guidelines/component-spacing.json +65 -0
- package/guidelines/contact-us.json +27 -0
- package/guidelines/containers.json +21 -28
- package/guidelines/content-area-browsing-context.json +73 -0
- package/guidelines/creating-bluelines-browsing-context.json +71 -0
- package/guidelines/design-tokens.json +186 -0
- package/guidelines/developer-overview.json +33 -9
- package/guidelines/drop-shadow.json +76 -0
- package/guidelines/faqs.json +100 -9
- package/guidelines/fonts.json +33 -14
- package/guidelines/grammar-and-mechanics.json +276 -0
- package/guidelines/grays.json +17 -44
- package/guidelines/header-browsing-context.json +40 -0
- package/guidelines/icon-fundamentals.json +7 -18
- package/guidelines/illustration.json +120 -0
- package/guidelines/in-product-word-list.json +25 -0
- package/guidelines/inclusive-design.json +101 -0
- package/guidelines/inclusive-ux-writing.json +34 -0
- package/guidelines/internationalization.json +103 -0
- package/guidelines/layout-spacing.json +39 -0
- package/guidelines/manifest.json +280 -16
- package/guidelines/motion.json +18 -13
- package/guidelines/object-styles-overview.json +17 -0
- package/guidelines/principles.json +7 -8
- package/guidelines/resources.json +29 -15
- package/guidelines/rounding.json +85 -0
- package/guidelines/side-navigation-browsing-context.json +74 -0
- package/guidelines/spacing-overview.json +78 -0
- package/guidelines/states.json +16 -11
- package/guidelines/support.json +125 -0
- package/guidelines/typography-overview.json +39 -0
- package/guidelines/typography-system.json +212 -0
- package/guidelines/using-icons.json +32 -47
- package/guidelines/voice-and-tone.json +51 -0
- package/guidelines/whats-new.json +21 -0
- package/guidelines/writing-about-people.json +99 -0
- package/guidelines/writing-for-errors.json +140 -0
- package/guidelines/writing-for-onboarding.json +123 -0
- package/guidelines/writing-for-readability.json +66 -0
- package/guidelines/writing-with-visuals.json +78 -0
- package/llms.txt +27 -0
- package/package.json +3 -2
- package/tokens/layout.tokens.json +88 -0
|
@@ -16,27 +16,11 @@
|
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
18
|
"type": "guideline",
|
|
19
|
-
"content": "
|
|
19
|
+
"content": "Text overflow.\n\nWhen the title of an in-line alert is too long for the available horizontal space, it wraps to form another line. The optional icon in the top-right corner stays aligned to the top."
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
22
|
"type": "guideline",
|
|
23
|
-
"content": "
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
"type": "guideline",
|
|
27
|
-
"content": "Heading is optional for in-line alerts."
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"type": "guideline",
|
|
31
|
-
"content": "The outline style is the default for in-line alerts."
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
"type": "guideline",
|
|
35
|
-
"content": "There are five semantic variants:"
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"type": "guideline",
|
|
39
|
-
"content": "When the title of an in-line alert is too long for the available horizontal space, it wraps to form another line. The optional icon in the top-right corner stays aligned to the top."
|
|
23
|
+
"content": "RTL.\n\nFor RTL (right-to-left) languages, the layout of the in-line alert is mirrored. The icon and dismiss button are both left-aligned."
|
|
40
24
|
}
|
|
41
25
|
],
|
|
42
26
|
"options": {
|
|
@@ -44,24 +28,12 @@
|
|
|
44
28
|
"type": "string",
|
|
45
29
|
"default": "neutral",
|
|
46
30
|
"values": [
|
|
47
|
-
{
|
|
48
|
-
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
{
|
|
54
|
-
"value": "positive"
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"value": "notice"
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
"value": "negative"
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"value": "accent"
|
|
64
|
-
}
|
|
31
|
+
{ "value": "neutral" },
|
|
32
|
+
{ "value": "informative" },
|
|
33
|
+
{ "value": "positive" },
|
|
34
|
+
{ "value": "notice" },
|
|
35
|
+
{ "value": "negative" },
|
|
36
|
+
{ "value": "accent" }
|
|
65
37
|
]
|
|
66
38
|
},
|
|
67
39
|
"style": {
|
|
@@ -69,15 +41,9 @@
|
|
|
69
41
|
"default": "outline",
|
|
70
42
|
"description": "The visual style of the alert.",
|
|
71
43
|
"values": [
|
|
72
|
-
{
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
{
|
|
76
|
-
"value": "subtle"
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
"value": "outline"
|
|
80
|
-
}
|
|
44
|
+
{ "value": "bold" },
|
|
45
|
+
{ "value": "subtle" },
|
|
46
|
+
{ "value": "outline" }
|
|
81
47
|
]
|
|
82
48
|
},
|
|
83
49
|
"href": {
|
|
@@ -93,17 +59,11 @@
|
|
|
93
59
|
"description": "If undefined, this button does not appear."
|
|
94
60
|
}
|
|
95
61
|
},
|
|
96
|
-
"lifecycle": {
|
|
97
|
-
"introduced": "1.0.0-draft"
|
|
98
|
-
},
|
|
62
|
+
"lifecycle": { "introduced": "1.0.0-draft" },
|
|
99
63
|
"accessibility": {
|
|
100
64
|
"focusable": false,
|
|
101
65
|
"wcag": [
|
|
102
|
-
{
|
|
103
|
-
"criterion": "4.1.3",
|
|
104
|
-
"level": "AA",
|
|
105
|
-
"title": "Status Messages"
|
|
106
|
-
}
|
|
66
|
+
{ "criterion": "4.1.3", "level": "AA", "title": "Status Messages" }
|
|
107
67
|
]
|
|
108
68
|
}
|
|
109
69
|
}
|
package/components/link.json
CHANGED
|
@@ -9,13 +9,6 @@
|
|
|
9
9
|
"category": "actions",
|
|
10
10
|
"documentationUrl": "https://spectrum.adobe.com/page/link/"
|
|
11
11
|
},
|
|
12
|
-
"implementations": [
|
|
13
|
-
{
|
|
14
|
-
"platform": "web",
|
|
15
|
-
"componentName": "Link",
|
|
16
|
-
"package": "@react-spectrum/s2"
|
|
17
|
-
}
|
|
18
|
-
],
|
|
19
12
|
"documentBlocks": [
|
|
20
13
|
{
|
|
21
14
|
"type": "purpose",
|
|
@@ -23,112 +16,87 @@
|
|
|
23
16
|
},
|
|
24
17
|
{
|
|
25
18
|
"type": "guideline",
|
|
26
|
-
"content": "
|
|
19
|
+
"content": "Use links in body copy.\n\nLinks are for usage in body copy and are not appropriate in titles. Consider using a different component if you're looking for a larger or more prominent call to action, such as a button."
|
|
27
20
|
},
|
|
28
21
|
{
|
|
29
22
|
"type": "guideline",
|
|
30
|
-
"content": "
|
|
23
|
+
"content": "Support screen readers.\n\nBe mindful of link placement and language, and create experiences that are inclusive of users navigating with screen readers. Screen readers pull a list of links — only the link text, and not including other surrounding language — to determine the content of the page. People using screen readers may tab between links without getting the text in between, so very generic link wording like \"learn more\" or \"click here\" doesn't communicate any context from elsewhere in the experience. Identify the target of each link directly in the link text to communicate context and set clear expectations about where the link will go."
|
|
31
24
|
},
|
|
32
25
|
{
|
|
33
26
|
"type": "guideline",
|
|
34
|
-
"content": "
|
|
27
|
+
"content": "When to use quiet links.\n\nQuiet links are less accessible, so don't use them for links that are critical to an experience. Quiet links are commonly used in website footers, where there are several lists of links that are shortcuts to other pages."
|
|
35
28
|
},
|
|
36
29
|
{
|
|
37
30
|
"type": "guideline",
|
|
38
|
-
"content": "
|
|
31
|
+
"content": "Standalone links are not full sentences, and do not have punctuation at the end. Treat these like calls-to-action by writing them as short verb phrases. Since standalone links are at the end of a sentence or paragraph, they're often perceived by users as optional or supplementary to surrounding content."
|
|
39
32
|
},
|
|
40
33
|
{
|
|
41
34
|
"type": "guideline",
|
|
42
|
-
"content": "
|
|
35
|
+
"content": "Links within sentences.\n\nLinks within — or as — sentences are written just like they're part of a paragraph. Make sure you include enough context in the link text to communicate the value and expectation of the landing experience. This approach can draw a user's focus to the linked text, such as for need-to-know updates or high-signal information. If the link leads to more content, it can be helpful to write it as a descriptive noun (e.g., \"survey feedback\"). If the link launches a task or action, start it with a verb (e.g., \"Share your feedback\"). Keep in mind that it's easier to localize links that are entire sentences, rather than sentence fragments. This is because, depending on which part of a sentence is included as a link, the word and link order may be re-arranged when translated."
|
|
43
36
|
},
|
|
44
37
|
{
|
|
45
38
|
"type": "guideline",
|
|
46
|
-
"content": "
|
|
39
|
+
"content": "Avoid generic language.\n\nAvoid overly generic link language like \"learn more,\" \"click here,\" \"more information,\" or \"continue reading.\" It's more accessible and inclusive to write link text as unique descriptions of the navigational target or function. Links need to be descriptive enough that they make sense without any other context. Generic links don't make sense out of context, and don't communicate where they go or what happens if a user interacts with them. Unique link language is essential for screen reader and magnification users who may not have the supplementary language around a link, or may not follow the content order of an experience. Try to avoid using a series of generic, standalone links that say \"learn more\" at the end of multiple sentences or paragraphs as a truncation strategy."
|
|
47
40
|
},
|
|
48
41
|
{
|
|
49
42
|
"type": "guideline",
|
|
50
|
-
"content": "
|
|
43
|
+
"content": "Write specific and descriptive link text.\n\nLinks act as wayfinding tools that offer contextual clues about how to navigate an experience. Write link text so that, even if someone were not able to view any surrounding context, they could still understand a link's purpose and what they should expect by interacting with it. Try to front load the link with the most important word(s)."
|
|
51
44
|
},
|
|
52
45
|
{
|
|
53
46
|
"type": "guideline",
|
|
54
|
-
"content": "
|
|
47
|
+
"content": "Be conscious about repetition.\n\nDon't use the same link text to link to different information in the same view. If link text needs to be duplicated within a single page or view, find ways to make each link unique, such as using accessibility labels or other text alternatives. It's OK to incorporate multiple links into the same sentence as long as the links are contextual and relevant. Do not overload sentences and pages with links purely for SEO purposes."
|
|
55
48
|
},
|
|
56
49
|
{
|
|
57
50
|
"type": "guideline",
|
|
58
|
-
"content": "
|
|
51
|
+
"content": "Create intuitive landing experiences.\n\nDon't place a generic \"Learn more\" link in design specs without thinking through what happens when a user interacts with that link. The landing experience needs to work in partnership with how the link text is written. Identify exactly where that link will go or what it will do, then ensure the link text reflects that. Use anchor links whenever possible to ensure that users can quickly find the most helpful next steps after interacting with a link. Collaborate with help content writers or customer service representatives to determine the most natural and intuitive content to supplement your experience."
|
|
59
52
|
},
|
|
60
53
|
{
|
|
61
54
|
"type": "guideline",
|
|
62
|
-
"content": "
|
|
55
|
+
"content": "Keyboard interactions.\n\nKey Interaction Tab Moves focus onto or off of the link component. Enter Executes the link and moves the focus to the link target."
|
|
63
56
|
},
|
|
64
57
|
{
|
|
65
58
|
"type": "guideline",
|
|
66
|
-
"content": "
|
|
59
|
+
"content": "Cursor guidelines.\n\nCursor Usage Pointer Use the pointer cursor for interactive components like links."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"type": "guideline",
|
|
63
|
+
"content": "WCAG 2.2 compliance.\n\nAny criterion not mention in the below table are not applicable to this component or are resolved with underlying requirements, engineering, and styles of the entire system. 1. Perceivable Requirement Criterion Level Compliance Info and relationships, Identify purpose 1.3.1, 1.3.6 A, AAA Links should be understandable by assistive technologies like screen readers. This means using the proper semantic HTML or ARIA role should be utilized. Use of color 1.4.1 A Color is never used as the sole way to convey that text is a link. Links are paired with an additional visual indicator, such as an underline, so the link purpose is communicated without relying on color alone. Text contrast 1.4.3 AA Large text has a contrast ratio of at least 3:1, and small text has a contrast ratio of at least 4.5:1. Incidental text such as disabled, hidden, or decorative text has no contrast requirement. Visual presentation 1.4.8 AAA The width of text blocks is no more than 80 characters (40 for CJK languages), and text is never justified. Non-text contrast 1.4.11 AA The visual presentation of link states has a contrast ratio of at least 3:1. Text spacing 1.4.12 AA Line height of text is at least 1.5x the font size. 2. Operable Requirement Criterion Level Compliance Keyboard 2.1.1, 2.1.3 A, AAA All functionality of the component is operable through a keyboard without specific timing for keystrokes. Keyboard traps 2.1.2 A Focus can be moved away from the component using only a keyboard. Seizures and physical reactions 2.3.1, 2.3.2, 2.3.3 A, AAA, AAA There is no flashing content or unnecessary motion or animation in this component. Focus order 2.4.3 A Navigation sequences receive focus in an order that preserves meaning and operability. Focus visible 2.4.7 AA Keyboard states use an indicator that is visible with at least 3:1 contrast."
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"implementations": [
|
|
67
|
+
{
|
|
68
|
+
"platform": "web",
|
|
69
|
+
"componentName": "Link",
|
|
70
|
+
"package": "@react-spectrum/s2"
|
|
67
71
|
}
|
|
68
72
|
],
|
|
69
73
|
"options": {
|
|
70
74
|
"variant": {
|
|
71
75
|
"type": "string",
|
|
72
76
|
"default": "primary",
|
|
73
|
-
"values": [
|
|
74
|
-
{
|
|
75
|
-
"value": "primary"
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
"value": "secondary"
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
},
|
|
82
|
-
"isQuiet": {
|
|
83
|
-
"type": "boolean",
|
|
84
|
-
"default": false
|
|
77
|
+
"values": [{ "value": "primary" }, { "value": "secondary" }]
|
|
85
78
|
},
|
|
79
|
+
"isQuiet": { "type": "boolean", "default": false },
|
|
86
80
|
"staticColor": {
|
|
87
81
|
"type": "string",
|
|
88
82
|
"description": "Static color must not be set for the default version of this component.",
|
|
89
|
-
"values": [
|
|
90
|
-
{
|
|
91
|
-
"value": "white"
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
"value": "black"
|
|
95
|
-
}
|
|
96
|
-
]
|
|
83
|
+
"values": [{ "value": "white" }, { "value": "black" }]
|
|
97
84
|
}
|
|
98
85
|
},
|
|
99
86
|
"states": [
|
|
100
|
-
{
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
"name": "down",
|
|
106
|
-
"trigger": "interaction"
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
"name": "keyboard-focus",
|
|
110
|
-
"trigger": "interaction"
|
|
111
|
-
}
|
|
87
|
+
{ "name": "hover", "trigger": "interaction" },
|
|
88
|
+
{ "name": "down", "trigger": "interaction" },
|
|
89
|
+
{ "name": "keyboard-focus", "trigger": "interaction" }
|
|
112
90
|
],
|
|
113
|
-
"lifecycle": {
|
|
114
|
-
"introduced": "1.0.0-draft"
|
|
115
|
-
},
|
|
91
|
+
"lifecycle": { "introduced": "1.0.0-draft" },
|
|
116
92
|
"accessibility": {
|
|
117
93
|
"role": "link",
|
|
118
94
|
"intents": ["navigate"],
|
|
119
95
|
"focusable": true,
|
|
120
96
|
"keyboardIntents": ["activate"],
|
|
121
97
|
"wcag": [
|
|
122
|
-
{
|
|
123
|
-
|
|
124
|
-
"level": "A",
|
|
125
|
-
"title": "Keyboard"
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
"criterion": "4.1.2",
|
|
129
|
-
"level": "A",
|
|
130
|
-
"title": "Name, Role, Value"
|
|
131
|
-
}
|
|
98
|
+
{ "criterion": "2.1.1", "level": "A", "title": "Keyboard" },
|
|
99
|
+
{ "criterion": "4.1.2", "level": "A", "title": "Name, Role, Value" }
|
|
132
100
|
]
|
|
133
101
|
}
|
|
134
102
|
}
|
|
@@ -23,67 +23,31 @@
|
|
|
23
23
|
},
|
|
24
24
|
{
|
|
25
25
|
"type": "guideline",
|
|
26
|
-
"content": "
|
|
26
|
+
"content": "Navigation.\n\nIn the highlight selection style for touch interactions, tapping anywhere on the item will navigate to its contents. For mouse-based interactions, double-clicking anywhere on the item or single-clicking the navigation icon will do the same. In the checkbox selection style, clicking or tapping the label area or navigation icon of a list view item will navigate to its contents."
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
29
|
"type": "guideline",
|
|
30
|
-
"content": "
|
|
30
|
+
"content": "Selection.\n\nSingle-clicking or tapping anywhere on a list view item will select the item, except the label in checkbox selection style. For checkbox selection style, clicking the label will navigate to the item."
|
|
31
31
|
},
|
|
32
32
|
{
|
|
33
33
|
"type": "guideline",
|
|
34
|
-
"content": "
|
|
34
|
+
"content": "Touch navigation and selection.\n\nIn touch experiences, the list view default is navigation only with the highlight selection style. Users enter a selection mode by a touch and hold gesture on any list view item. Selection mode in touch uses the checkbox selection style and suppresses navigation. Users can exit selection mode by pressing the Escape key or deselecting all items."
|
|
35
35
|
},
|
|
36
36
|
{
|
|
37
37
|
"type": "guideline",
|
|
38
|
-
"content": "
|
|
38
|
+
"content": "Drag and drop.\n\nList view items can be dragged and dropped to reorder or restructure the list. Multiple items can be dragged at a time and shifted from one level of hierarchy to another. List views can also accept dropped items from outside the component, to modify the list. Keyboard-based drag and drop When using this option for a list view, the drag icon receives keyboard focus in order to allow for a keyboard-based drag and drop interaction. Touch-based drag and drop The drag and drop interaction is initiated by a touch and hold gesture, followed by drag gesture. If a user performs a touch and hold gesture without dragging, the list view enters a selection mode."
|
|
39
39
|
},
|
|
40
40
|
{
|
|
41
41
|
"type": "guideline",
|
|
42
|
-
"content": "
|
|
42
|
+
"content": "Text overflow.\n\nA list view item's label or description will truncate if the text is longer than the available horizontal space. Display the full label or description text in a tooltip on hover and focus states."
|
|
43
43
|
},
|
|
44
44
|
{
|
|
45
45
|
"type": "guideline",
|
|
46
|
-
"content": "
|
|
46
|
+
"content": "Actions overflow.\n\nWhen more than two actions are available for a list view item, the actions are nested within an action menu."
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
49
|
"type": "guideline",
|
|
50
|
-
"content": "
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
"type": "guideline",
|
|
54
|
-
"content": "In touch experiences, the list view default is navigation only with the highlight selection style. Users enter a selection mode by a touch and hold gesture on any list view item."
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"type": "guideline",
|
|
58
|
-
"content": "Selection mode in touch uses the checkbox selection style and suppresses navigation. Users can exit selection mode by pressing the Escape key or deselecting all items."
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
"type": "guideline",
|
|
62
|
-
"content": "List view items can be dragged and dropped to reorder or restructure the list."
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
"type": "guideline",
|
|
66
|
-
"content": "Multiple items can be dragged at a time and shifted from one level of hierarchy to another."
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"type": "guideline",
|
|
70
|
-
"content": "List views can also accept dropped items from outside the component, to modify the list."
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
"type": "guideline",
|
|
74
|
-
"content": "A list view item's label or description will truncate if the text is longer than the available horizontal space. Display the full label or description text in a tooltip on hover and focus states."
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"type": "guideline",
|
|
78
|
-
"content": "When more than two actions are available for a list view item, the actions are nested within an action menu."
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
"type": "guideline",
|
|
82
|
-
"content": "List views work best for flat collections of items that share the same hierarchy level."
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
"type": "guideline",
|
|
86
|
-
"content": "Tree views are ideal for displaying nested or hierarchical relationships."
|
|
50
|
+
"content": "When to use a List view vs. Tree view.\n\nList views work best for flat collections of items that share the same hierarchy level. Tree views are ideal for displaying nested or hierarchical relationships."
|
|
87
51
|
}
|
|
88
52
|
],
|
|
89
53
|
"options": {
|
|
@@ -92,15 +56,9 @@
|
|
|
92
56
|
"default": "single",
|
|
93
57
|
"description": "Defines how many items can be selected at once.",
|
|
94
58
|
"values": [
|
|
95
|
-
{
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
{
|
|
99
|
-
"value": "single"
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
"value": "multiple"
|
|
103
|
-
}
|
|
59
|
+
{ "value": "none" },
|
|
60
|
+
{ "value": "single" },
|
|
61
|
+
{ "value": "multiple" }
|
|
104
62
|
]
|
|
105
63
|
},
|
|
106
64
|
"isQuiet": {
|
|
@@ -159,10 +117,7 @@
|
|
|
159
117
|
"default": "none",
|
|
160
118
|
"description": "Defines the border radius of the list view item."
|
|
161
119
|
},
|
|
162
|
-
"isEmphasized": {
|
|
163
|
-
"type": "boolean",
|
|
164
|
-
"default": false
|
|
165
|
-
},
|
|
120
|
+
"isEmphasized": { "type": "boolean", "default": false },
|
|
166
121
|
"state": {
|
|
167
122
|
"type": "string",
|
|
168
123
|
"enum": ["default", "hover", "dragged"],
|
|
@@ -192,10 +147,7 @@
|
|
|
192
147
|
"name": "checkbox",
|
|
193
148
|
"description": "Checkbox control for a list view item in checkbox selection style."
|
|
194
149
|
},
|
|
195
|
-
{
|
|
196
|
-
"name": "icon",
|
|
197
|
-
"description": "Leading icon of a list view item."
|
|
198
|
-
},
|
|
150
|
+
{ "name": "icon", "description": "Leading icon of a list view item." },
|
|
199
151
|
{
|
|
200
152
|
"name": "thumbnail",
|
|
201
153
|
"description": "Thumbnail image of a list view item."
|
|
@@ -217,24 +169,14 @@
|
|
|
217
169
|
"description": "Icon indicating a list view item navigates to a new context."
|
|
218
170
|
}
|
|
219
171
|
],
|
|
220
|
-
"lifecycle": {
|
|
221
|
-
"introduced": "1.0.0-draft"
|
|
222
|
-
},
|
|
172
|
+
"lifecycle": { "introduced": "1.0.0-draft" },
|
|
223
173
|
"accessibility": {
|
|
224
174
|
"intents": ["select", "navigate"],
|
|
225
175
|
"focusable": true,
|
|
226
176
|
"keyboardIntents": ["navigate-items", "activate", "select-all"],
|
|
227
177
|
"wcag": [
|
|
228
|
-
{
|
|
229
|
-
|
|
230
|
-
"level": "A",
|
|
231
|
-
"title": "Keyboard"
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
"criterion": "4.1.2",
|
|
235
|
-
"level": "A",
|
|
236
|
-
"title": "Name, Role, Value"
|
|
237
|
-
}
|
|
178
|
+
{ "criterion": "2.1.1", "level": "A", "title": "Keyboard" },
|
|
179
|
+
{ "criterion": "4.1.2", "level": "A", "title": "Name, Role, Value" }
|
|
238
180
|
]
|
|
239
181
|
}
|
|
240
182
|
}
|