Skip to content

Commit bdc7f3d

Browse files
heatherlarsenLilithJames-HDSshleewhite
authored
Flyout: Fix restrictive language and formatting issues (#3228)
Co-authored-by: Lilith James <[email protected]> Co-authored-by: Lee White <[email protected]>
1 parent 5ffeba4 commit bdc7f3d

File tree

1 file changed

+33
-45
lines changed

1 file changed

+33
-45
lines changed

website/docs/components/flyout/partials/guidelines/guidelines.md

Lines changed: 33 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,20 @@
88

99
### When not to use
1010

11-
- When requesting minimal information or feedback from the user through a form. Instead, use a [Modal](/components/modal).
12-
- When displaying or collecting overly complex information, consider moving the content to its own page.
11+
- When requesting minimal information or feedback from the user, use a [Modal](/components/modal).
12+
- When displaying or collecting complex information, consider moving the content to its own page.
1313

1414
### Flyout vs Modal
1515

1616
While similar in functionality and interaction, the Flyout and [Modal](/components/modal) are meant to be used in different scenarios and to express different types of content. There is a fair amount of overlap in their usage but they differ in complexity, status and messaging, speed and regularity, and experience hierarchy.
1717

1818
#### Complexity
1919

20-
A Flyout is useful for more complex read-only content, given the space it occupies in the viewport, while Modals are useful for less complex content that can be interacted with quickly. Complexity of content is relative. Use your own judgment to determine if the content or function is overly complex and consider moving it to its own page.
20+
A Flyout is useful for more complex read-only content, given the space it occupies in the viewport, while Modals are useful for less complex content that can be interacted with quickly. Use your judgment to determine if the content or function is overly complex and consider moving it to its own page.
2121

2222
#### Status and messaging
2323

24-
Flyouts are useful when displaying detailed content that relates to the page, while Modals are useful for messaging status, e.g., confirming a destructive action or warning about the effects of a change.
24+
Flyouts are useful when displaying detailed content that relates to the main page, while Modals are useful for messaging status, e.g., confirming a destructive action or warning about the effects of a change.
2525

2626
#### Speed and regularity
2727

@@ -35,13 +35,11 @@ While each of these components is triggered by a user action, where they exist i
3535
- A Flyout extends or "branches" off from the main flow to add detail and highlight secondary features and functions (Fig 1.1).
3636
- Rather than blocking the user from continuing in the main flow, a Flyout enhances and adds detail to the flow to aid in the completion of a function.
3737

38-
**Fig. 1.0:** Hierarchy representation of a Modal blocking the user progression through a flow.
38+
![User flow for modal: the user's action triggers the modal, then the user confirms or cancels and continues in the flow.](/assets/components/flyout/flyout-vs-modal-01.png)
39+
<Doc::ImageCaption @text="Fig. 1.0: Hierarchy representation of a Modal blocking the user progression through a flow."/>
3940

40-
![Modal Hierarchy in the user flow](/assets/components/flyout/flyout-vs-modal-01.png)
41-
42-
**Fig. 1.1:** Hierarchy representation of the Flyout relative to the user flow.
43-
44-
![Flyout hierarchy in the user flow](/assets/components/flyout/flyout-vs-modal-02.png)
41+
![User flow for flyout: the user's action triggers the flyout to provide additional information for a task. Then the user continues in the flow.](/assets/components/flyout/flyout-vs-modal-02.png)
42+
<Doc::ImageCaption @text="Fig. 1.1: Hierarchy representation of the Flyout relative to the user flow."/>
4543

4644
### Usage examples
4745

@@ -67,7 +65,7 @@ While code snippets and terminal scripts are usually detailed, they are well sui
6765

6866
#### Forms
6967

70-
Don't use a form in a Flyout, whether the function is creating an object, or updating an existing one. This type of content is often complex and more appropriate on its own page, or in the case of a simple form, within a [Modal](/components/modal).
68+
Avoid using a form in a Flyout, whether the function is creating an object, or updating an existing one. This type of content is often complex and more appropriate on its own page, or in the case of a simple form, within a [Modal](/components/modal).
7169

7270
!!! Dont
7371

@@ -91,19 +89,15 @@ The Flyout header features several properties to better communicate the purpose
9189

9290
### Title icon
9391

94-
**With title icon**
92+
An icon paired with the title can help reinforce the purpose and function of the Flyout while also drawing the eye to the header and title area.
9593

96-
![Flyout header title with icon and dismiss button](/assets/components/dialog-primitives/dialog-primitives-header-icon-and-title.jpg)
94+
The purpose and function of the Flyout should not rely solely on an icon, instead the title should be explicit and pragmatic while the icon provides visual support.
9795

98-
**Without title icon**
96+
![Flyout header title with icon and dismiss button](/assets/components/dialog-primitives/dialog-primitives-header-icon-and-title.jpg)
97+
<Doc::ImageCaption @text="With title icon"/>
9998

10099
![Flyout header title only and dismiss button](/assets/components/dialog-primitives/dialog-primitives-header-title-only.jpg)
101-
102-
#### Usage
103-
104-
An icon paired with the title can help reinforce the purpose and function of the Flyout while also drawing the eye to the header and title area.
105-
106-
The purpose and function of the Flyout should not rely solely on an icon, instead the title should be explicit and pragmatic while the icon provides visual support.
100+
<Doc::ImageCaption @text="Without title icon"/>
107101

108102
### Tagline
109103

@@ -112,29 +106,25 @@ The purpose and function of the Flyout should not rely solely on an icon, instea
112106
Even though adding a title icon and tagline can help the user better understand the content, both elements add visual weight which might not be suitable or necessary for all Flyouts.
113107
!!!
114108

115-
**With tagline**
109+
A tagline helps the user maintain the context of the main page where the Flyout was triggered. Since a Flyout disables and obscures the main page content, adding a tagline can help the user understand the relationship between the Flyout and the main page.
116110

117-
![Flyout header tagline, title, and dismiss button](/assets/components/dialog-primitives/dialog-primitives-header-tagline-and-title.jpg)
111+
The tagline should directly reference the page, feature title, or object to reinforce the purpose of the Flyout.
118112

119-
**With tagline and icon**
113+
![Flyout header tagline, title, and dismiss button](/assets/components/dialog-primitives/dialog-primitives-header-tagline-and-title.jpg)
114+
<Doc::ImageCaption @text="With tagline"/>
120115

121116
![Flyout header title icon, tagline, title, and dismiss button](/assets/components/dialog-primitives/dialog-primitives-header-tagline-and-icon-and-title.jpg)
122-
123-
A **tagline** helps the user maintain the context of the main page the Flyout was triggered from. Since a Flyout disables and obscures the main page content, adding a tagline can help the user understand the relationship between the Flyout and the main page.
124-
125-
The **tagline** should directly reference the page, feature title, or object to reinforce the purpose of the Flyout.
117+
<Doc::ImageCaption @text="With tagline and icon"/>
126118

127119
### Description
128120

129-
A **description** provides additional information about the Flyout.
130-
131-
**With description**
121+
A description provides additional information about the Flyout.
132122

133123
![Flyout header title and dismiss button with description](/assets/components/dialog-primitives/dialog-primitives-header-title-only-and-description.jpg)
134-
135-
**With description and icon**
124+
<Doc::ImageCaption @text="With description"/>
136125

137126
![Flyout header title and dismiss button with description](/assets/components/dialog-primitives/dialog-primitives-header-icon-and-title-and-description.jpg)
127+
<Doc::ImageCaption @text="With description and icon"/>
138128

139129
## Flyout body
140130

@@ -151,13 +141,11 @@ The Ember and Figma components account for the footer in slightly different ways
151141
- The Ember component is a generic container that yields elements passed to it.
152142
- The Figma component consists of a variant for the number of actions, as well as support for generic content via an instance swap property.
153143

154-
**With one action**
155-
156144
![Flyout footer with one action](/assets/components/dialog-primitives/dialog-primitives-footer-actions-one.png)
157-
158-
**With two actions**
145+
<Doc::ImageCaption @text="With one action"/>
159146

160147
![Flyout footer with two actions](/assets/components/dialog-primitives/dialog-primitives-footer-actions-two.png)
148+
<Doc::ImageCaption @text="With two actions"/>
161149

162150
For more guidance and details around organizing buttons and actions, refer to the [Button organization](/patterns/button-organization) pattern documentation.
163151

@@ -170,9 +158,9 @@ A Flyout supports actions within the footer allowing for basic functions to be p
170158

171159
!!! Do
172160

173-
Use a Flyout for actions like batch selection that are secondary to the main page.
161+
A Flyout can be used for actions like batch selection that are secondary to the main page.
174162

175-
![Simple actions within a Flyout](/assets/components/flyout/flyout-simple-actions.png)
163+
![Flyout with links to get support or submit feedback.](/assets/components/flyout/flyout-simple-actions.png)
176164
!!!
177165

178166
!!! Do
@@ -184,9 +172,9 @@ Use a Flyout for simple declarative content like text and links that enhance the
184172

185173
!!! Dont
186174

187-
Don't use a Flyout for editing or creating objects. These are generally considered primary functions and should be handled on their own page or within a Modal in simple scenarios.
175+
Avoid using a Flyout for editing or creating objects. These are generally considered primary functions and should be handled on their own page or within a Modal in simple scenarios.
188176

189-
![Complex actions within a Flyout](/assets/components/flyout/flyout-complex-actions.png)
177+
![Flyout with a form to create a new user and assign them to groups, which includes a table with checkboxes for each group.](/assets/components/flyout/flyout-complex-actions.png)
190178
!!!
191179

192180
## Dismissal
@@ -207,19 +195,19 @@ Multiple dismissal options are available that can be customized in production wi
207195

208196
**Figma tip**
209197

210-
In Figma, the Flyout should be paired with the [Overlay](https://www.figma.com/design/iweq3r2Pi8xiJfD9e6lOhF/HDS-Components-v2.0?node-id=67216-32335&t=gWdKy44MzTP4cTRo-1) component which obscures the main page content the Flyout sits on top of. Using the Flyout without the overlay is currently not supported and helps to communicate visually the `inert` nature of the main page.
198+
In Figma, the Flyout should be paired with the [Overlay](https://www.figma.com/design/iweq3r2Pi8xiJfD9e6lOhF/HDS-Components-v2.0?node-id=67216-32335&t=gWdKy44MzTP4cTRo-1) component which obscures the main page and helps to visually communicate the `inert` nature of the content. Using the Flyout without the overlay is **not supported**.
211199

212-
We publish a [[Template] Flyout](https://www.figma.com/design/iweq3r2Pi8xiJfD9e6lOhF/HDS-Components-v2.0?node-id=67212-27152&t=gWdKy44MzTP4cTRo-1) component coupling these two components together that can be imported into your design file and detached.
200+
A [[Template] Flyout](https://www.figma.com/design/iweq3r2Pi8xiJfD9e6lOhF/HDS-Components-v2.0?node-id=67212-27152&t=gWdKy44MzTP4cTRo-1) component couples these two components so they can be added to your design together.
213201
!!!
214202

215-
A Flyout should slide out from the right side of the viewport on top of the main page content and occupy 100% of the viewport height.
203+
A Flyout should slide out from the right side of the viewport on top of the main page and occupy 100% of the viewport height.
216204

217205
- This is true regardless of whether there is a sidebar or navigational element that persists on the page.
218-
- A Flyout should overlay all content and block/disable interaction on the main page.
206+
- A Flyout should overlay all content and disable interaction on the main page.
219207

220208
![Flyout in a desktop viewport](/assets/components/flyout/flyout-sizing.png)
221209

222-
On smaller viewports, the Flyout should occupy 100% of the viewport width minus half the size of the minimized SideNav width from the viewport edge.
210+
On smaller viewports, the Flyout should occupy 100% of the viewport width minus half the size of the minimized `SideNav` or `AppSideNav` width from the viewport edge.
223211

224212
- If the body content of the Flyout exceeds the maximum height of the viewport, a scroll will be introduced.
225213
- The Flyout header is not included in the scrolling section, only the body content. The header should always be visible to help the user understand the Flyout content and how it relates to the main page.

0 commit comments

Comments
 (0)