Skip to main content

The Drawer frame

A container that slides in from the side of the viewport.

The Drawer frame is a container that slides into view when visible. You can add multiple instances of the Drawer frame that operate independently.

Try it out

Try out a demo of the Drawer frame.

Settings

Drawer includes the following configurable options when building apps in the IDE.

Expand contents to fitHide on escapeShow on desktopShow on mobileLoadingMaintain space when hiddenMarginClose when clicking outsideShow borderFooterShow borderHeaderShow borderAlways show in edit modeShow overlayStylesWidth

Properties

All properties for Drawer with supported data types or values. You can write JavaScript almost anywhere in Retool to manipulate or read property values.

Whether the container is in full bleed mode, where it can only contain a single component which expands to fit the available space.

footerPadding

string

The amount of padding used within the footer.

headerPadding

string

The amount of padding used within the header.

boolean

Whether the component is visible.

Whether to hide the dropdown when the Esc key is pressed.

id

string

The unique identifier.

Whether the component is visible in the desktop layout.

Whether the component is visible in the mobile layout.

loading

boolean

Whether to display a loading indicator.

Whether the component takes up space on the canvas if hidden is true.

The amount of margin to render outside.

Values
4px 8px

Normal margin.

0

No margin.

Whether to toggle hidden to true if the user clicks outside of the content area.

padding

number

The amount of padding to render inside.

pluginType

string

The plugin type.

Whether to show a border.

Whether to show a footer area.

Whether to show a border above the footer.

Whether to show a header area.

Whether to show a border under the header.

Whether to remain visible in the editor if hidden is true.

Whether to display a darkened overlay when visible.

style

object

Custom style options in use. Not all style options may be available for all components.

The width of the frame.

Values
small

240px.

medium

400px.

large

560px.

Methods

JavaScript API methods for interacting with Drawer. You can write JavaScript almost anywhere in Retool and use methods to manipulate data and property values.

hide

Hide the component.

drawer.hide()

scrollIntoView

Scrolls the canvas or parent container so that the selected component appears in the visible area.

drawer.scrollIntoView(scrollIntoViewOptions)
Parameters

scrollIntoViewOptions

object

The scroll options.

Properties

behavior

enum

The scroll behavior.

Values
auto

Scroll immediately to the specified position.

smooth

Scroll gradually to the specified position.

block

enum

The scroll position relative to the component.

Values
nearest

Scrolls only the minimum amount required for the component to appear in the visible area. Scrolling does not occur if the component is already in view.

start

Scrolls to position the component at the top of the visible area.

center

Scrolls to position the component in the middle of the visible area.

end

Scrolls to position the component at the bottom of the visible area.

setHidden

Set the hidden value to toggle whether the component is visible. Defaults to true without a parameter.

drawer.setHidden(hidden)
Parameters

boolean

Whether the component is visible.

show

Show the component.

drawer.show()

showFooter

Set the showFooter value to toggle whether the component footer is visible.

drawer.showFooter(showFooter)
Parameters

Whether to show a footer area.

showHeader

Set the showHeader value to toggle whether the component header is visible.

drawer.showHeader(showHeader)
Parameters

Whether to show a header area.

toggleHidden

Toggle the hidden value between true and false.

drawer.toggleHidden()