Skip to main content
Glama
deleonio
by deleonio
controlled.tsx1.34 kB
import type { FC } from 'react'; import React, { useState } from 'react'; import { useSearchParams } from 'react-router-dom'; import type { AlignPropType } from '@public-ui/components'; import { KolButton, KolDrawer } from '@public-ui/react-v19'; import { SampleDescription } from '../SampleDescription'; import { DrawerRadioAlign } from './partials/align'; export const DrawerControlled: FC = () => { const [searchParams] = useSearchParams(); const defaultAlign = searchParams.get('align') as AlignPropType; const [open, setOpen] = useState(false); const [align, setAlign] = useState<AlignPropType>(defaultAlign || 'left'); return ( <div> <SampleDescription> <p> This sample shows the KolDrawer controlled by the property <code>_open</code> instead of methods. </p> </SampleDescription> <DrawerRadioAlign value={align} onChange={(_, value) => setAlign(value as AlignPropType)} /> <div className="flex flex-wrap gap-4"> <KolDrawer _open={open} _align={align} _label="I'm a controlled drawer" _on={{ onClose: () => setOpen(false) }}> <div> <p>Lorem ipsum dolor sit amet,</p> <KolButton _label="Close drawer" _on={{ onClick: () => setOpen(false) }} /> </div> </KolDrawer> <KolButton _label="Open drawer" _on={{ onClick: () => setOpen(true) }} /> </div> </div> ); };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/deleonio/public-ui-kolibri'

If you have feedback or need assistance with the MCP directory API, please join our Discord server