Core
Modal
Route-aware modal shell with drafts, forms, and row actions.
Variants
CTA trigger
cta.tsx
<CTAButton
config={{
label: 'New invoice',
onClick: () => openInvoiceModal(),
}}
/>Dependencies
- framer-motion
- zustand
- zod
- @/components/ui/*
- @/hooks/use-media-query
- @/components/module/form-builder
Usage
Install
bun add framer-motion zustand zodUsage
import { ModalShell } from '@/components/module/modal'