Draft: feat(GlDrawer): change drawer layout concept
What does this MR do?
This MR resolves #1964 (moved)
As a follow-up of this comment
It makes header sticky by default and reorganise drawer layout.
Drawer is not scrollable anymore, only drawer-body.
It helps keep header and footer sticky and scrim becomes a pseudo element
of a drawer-body
Does this MR meet the acceptance criteria?
Conformity
-
Code review guidelines. -
GitLab UI's contributing guidlines. -
If it changes a Pajamas-compliant component's look & feel, the MR has been reviewed by a UX designer. -
If it changes GitLab UI's documentation guidelines, the MR has been reviewed by a Technical Writer. -
If the MR changes a component's API, integration MR(s) have been opened in the following projects to ensure that the @gitlab/uipackage can be upgraded quickly after the changes are released:-
GitLab: mr_url -
CustomersDot: mr_url -
Status Page: mr_url
-
-
Added the ~"component:*"label(s) if applicable.
Screenshots
Here is a list of components in gitlab using drawer
GlDrawer uses in GitLab
~/pipeline_editor/components/drawer/pipeline_editor_drawer.vue~/crm/components/form.vue~/whats_new/components/app.vue~/boards/components/board_content_sidebar.vue~/boards/components/board_settings_sidebar.vueee/roadmap/components/roadmap_settings.vueee/security_orchestration/components/policy_drawer/policy_drawer.vueee/requirements/components/requirement_form.vueee/boards/components/epic_board_content_sidebar.vue-
ee/security_configuration/dast_profiles/dast_profiles_sidebar/dast_profiles_sidebar.vue- This is the only one currently opting in to a stick header.
ee/compliance_dashboard/components/drawer.vue
| Drawer | Screenshot after padding change |
|---|---|
| ~/pipeline_editor/components/drawer/pipeline_editor_drawer.vue | ![]() |
| ~/crm/components/form.vue | ![]() |
| ~/whats_new/components/app.vue |
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec -
Security reports checked/validated by a reviewer from the AppSec team
Accessibility
If this MR adds or modifies a component, take a few moments to review the following:
-
All actions and functionality can be done with a keyboard. -
Links, buttons, and controls have a visible focus state. -
All content is presented in text or with a text equivalent. For example, alt text for SVG, or aria-labelfor icons that have meaning or perform actions. -
Changes in a component’s state are announced by a screen reader. For example, changing aria-expanded="false"toaria-expanded="true"when an accordion is expanded. -
Color combinations have sufficient contrast.
Closes #1964 (moved)
Edited by Artur Fedorov

