Sheet Modal is a special overlay type. Such modal allows to create custom picker overlays with custom content.
There are following components included:
Sheet
- sheet modal elementName | Type | Default | Description |
---|---|---|---|
backdrop | boolean | true | Enables Sheet modal backdrop (dark semi transparent layer behind) |
colors | object | Object with Tailwind CSS colors classes | |
colors.bgIos | string | 'bg-ios-light-surface-1 dark:bg-ios-dark-surface-1' | |
colors.bgMaterial | string | 'bg-md-light-surface dark:bg-md-dark-surface' | |
component | string | 'div' | Component's HTML Element |
onBackdropClick | function(e) | Click handler on backdrop element | |
opened | boolean | false | Allows to open/close Sheet modal and set its initial state |
import React, { useState } from 'react';import {Page,Navbar,NavbarBackLink,Sheet,Block,Button,Toolbar,ToolbarPane,Link,} from 'konsta/react';import CloseIcon from '../components/CloseIcon';export default function SheetModalPage() {const [sheetOpened, setSheetOpened] = useState(false);return (<Page><Navbartitle="Sheet Modal"/><Block strong inset className="space-y-4"><p>Sheet Modals slide up from the bottom of the screen to reveal morecontent. Such modals allow to create custom overlays with customcontent.</p><p><Button rounded onClick={() => setSheetOpened(true)}>Open Sheet</Button></p></Block><SheetclassName="pb-safe"opened={sheetOpened}onBackdropClick={() => setSheetOpened(false)}><Toolbar top className="justify-end ios:pt-4"><div className="ios:hidden" /><ToolbarPane><Link iconOnly onClick={() => setSheetOpened(false)}><CloseIcon /></Link></ToolbarPane></Toolbar><Block className="ios:mt-4"><p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Harum adexcepturi nesciunt nobis aliquam. Quibusdam ducimus nequenecessitatibus, molestias cupiditate velit nihil alias incidunt,excepturi voluptatem dolore itaque sapiente dolores!</p><div className="mt-8"><Button large rounded onClick={() => setSheetOpened(false)}>Action</Button></div></Block></Sheet></Page>);}