feat(shared): add Modal component

Native <dialog>+showModal() wrapper with imperative open()/close() via ref,
body scroll lock, and backdrop-click/keyboard-close behaviors. Exposes
onCancel and onBackdropClose escape hatches for consumers that need to
wrap the close path (e.g. in a view transition).
This commit is contained in:
Ilia Mashkov
2026-05-23 09:50:42 +03:00
parent c4002ebb4f
commit 82933dedf8
5 changed files with 324 additions and 0 deletions
+1
View File
@@ -9,6 +9,7 @@ export { InlineSvg } from './InlineSvg';
export { Input, Textarea } from './Input';
export type { LinkVariant } from './Link';
export { Link } from './Link';
export { Modal, type ModalHandle } from './Modal';
export { RichText } from './RichText';
export type { ContainerSize, SectionBackground } from './Section';
export { Container, Section } from './Section';