Container component for housing other content such as navigation components, info callouts, overlay forms, other page sections.
The drawer would appear on the side of the screen and can be used in a number of different use cases.
Drawer should consider the following:
Permanent positioning
Expandable and collapsible
Anchored to viewport, or anchored to container.
Left, right, top, bottom position.
Scrolling behavior
Modality optionality
Affect on background content (push/overlay)
Responsive layout patterns
Multi-drawer behaviour
๐ฐ User value
This provides a common content container to achieve different layouts.
๐ User Stories
If relevant, describe the high-level functionality as user stories.
As an ICDS user:
I needSo that
๐ Acceptance Criteria
If relevant, describe in full detail the different interactions and edge cases that the component or patterns needs to fulfil.
Config
Given that a drawer component is being configured
When setting its properties
Then the following suggested properties can be set:
โข Position: Left, right, top, bottom
โข Size: SM, MD, LG
โข Expanded: True, false
โข Header: True, false
โข Button: True, false
โข Checkbox: True, false
ASSESSMENT CRITERIA
Sizing
Given that a drawer component is being implemented
When configuring it
Then its size can be set to SM, MD, or LG
And any body text labels should wrap onto multiple lines if then required
Given that a drawer component is being implemented as left/ right
When configuring it
Then its height can be set to the value of the container
And any body text labels should wrap onto multiple lines if then required
Given that a drawer component is being implemented as top/ bottom
When configuring it
Then its width can be set to the value of the container
And any body text labels should wrap onto multiple lines if then required
Content
Given that a drawer component is being implemented with a header
When configuring it
Then it is not expected to truncate text
And instead will limit line length in relation to the size of the Drawer
Animation/ transitions
Given that a drawer component is being implemented as a temporary item
When configuring it
Then it will expand upon click
And an overlay of 25% will be applied to the web page aside from the Drawer
โ Designs
If there's a Figma design file (or other mock-up), include it here.
Summary
Container component for housing other content such as navigation components, info callouts, overlay forms, other page sections.
The drawer would appear on the side of the screen and can be used in a number of different use cases.
Drawer should consider the following:
๐ฐ User value
This provides a common content container to achieve different layouts.
๐ User Stories
If relevant, describe the high-level functionality as user stories.
As an ICDS user: I need So that
๐ Acceptance Criteria
If relevant, describe in full detail the different interactions and edge cases that the component or patterns needs to fulfil.
Config Given that a drawer component is being configured When setting its properties Then the following suggested properties can be set: โข Position: Left, right, top, bottom โข Size: SM, MD, LG โข Expanded: True, false โข Header: True, false โข Button: True, false โข Checkbox: True, false
ASSESSMENT CRITERIA
Sizing Given that a drawer component is being implemented When configuring it Then its size can be set to SM, MD, or LG And any body text labels should wrap onto multiple lines if then required
Given that a drawer component is being implemented as left/ right When configuring it Then its height can be set to the value of the container And any body text labels should wrap onto multiple lines if then required
Given that a drawer component is being implemented as top/ bottom When configuring it Then its width can be set to the value of the container And any body text labels should wrap onto multiple lines if then required
Content Given that a drawer component is being implemented with a header When configuring it Then it is not expected to truncate text And instead will limit line length in relation to the size of the Drawer
Animation/ transitions Given that a drawer component is being implemented as a temporary item When configuring it Then it will expand upon click And an overlay of 25% will be applied to the web page aside from the Drawer
โ Designs
If there's a Figma design file (or other mock-up), include it here.
ย ๐งพ Guidance
Guidance on design file in Teams.