@brijbyte/agentic-ui 0.0.1-beta → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +808 -0
- package/dist/accordion/accordion.css +85 -0
- package/dist/accordion/accordion.d.ts +28 -0
- package/dist/accordion/accordion.d.ts.map +1 -0
- package/dist/accordion/accordion.js +51 -0
- package/dist/accordion/accordion.js.map +1 -0
- package/dist/accordion/accordion.module.css.d.ts +2 -0
- package/dist/accordion/accordion.module.js +14 -0
- package/dist/accordion/accordion.module.js.map +1 -0
- package/dist/accordion/index.d.ts +3 -0
- package/dist/accordion/index.js +4 -0
- package/dist/accordion/parts.d.ts +28 -0
- package/dist/accordion/parts.d.ts.map +1 -0
- package/dist/accordion/parts.js +55 -0
- package/dist/accordion/parts.js.map +1 -0
- package/dist/alert-dialog/alert-dialog.css +84 -0
- package/dist/alert-dialog/alert-dialog.d.ts +44 -0
- package/dist/alert-dialog/alert-dialog.d.ts.map +1 -0
- package/dist/alert-dialog/alert-dialog.js +46 -0
- package/dist/alert-dialog/alert-dialog.js.map +1 -0
- package/dist/alert-dialog/alert-dialog.module.css.d.ts +2 -0
- package/dist/alert-dialog/alert-dialog.module.js +14 -0
- package/dist/alert-dialog/alert-dialog.module.js.map +1 -0
- package/dist/alert-dialog/index.d.ts +3 -0
- package/dist/alert-dialog/index.js +4 -0
- package/dist/alert-dialog/parts.d.ts +28 -0
- package/dist/alert-dialog/parts.d.ts.map +1 -0
- package/dist/alert-dialog/parts.js +62 -0
- package/dist/alert-dialog/parts.js.map +1 -0
- package/dist/badge/badge.css +66 -0
- package/dist/badge/badge.d.ts +20 -0
- package/dist/badge/badge.d.ts.map +1 -0
- package/dist/badge/badge.js +21 -0
- package/dist/badge/badge.js.map +1 -0
- package/dist/badge/badge.module.css.d.ts +2 -0
- package/dist/badge/badge.module.js +16 -0
- package/dist/badge/badge.module.js.map +1 -0
- package/dist/badge/index.d.ts +2 -0
- package/dist/badge/index.js +3 -0
- package/dist/button/button.css +242 -0
- package/dist/button/button.d.ts +28 -0
- package/dist/button/button.d.ts.map +1 -0
- package/dist/button/button.js +34 -0
- package/dist/button/button.js.map +1 -0
- package/dist/button/button.module.css.d.ts +2 -0
- package/dist/button/button.module.js +27 -0
- package/dist/button/button.module.js.map +1 -0
- package/dist/button/index.d.ts +2 -0
- package/dist/button/index.js +3 -0
- package/dist/card/card.css +64 -0
- package/dist/card/card.d.ts +41 -0
- package/dist/card/card.d.ts.map +1 -0
- package/dist/card/card.js +50 -0
- package/dist/card/card.js.map +1 -0
- package/dist/card/card.module.css.d.ts +2 -0
- package/dist/card/card.module.js +15 -0
- package/dist/card/card.module.js.map +1 -0
- package/dist/card/index.d.ts +2 -0
- package/dist/card/index.js +3 -0
- package/dist/checkbox/checkbox.css +72 -0
- package/dist/checkbox/checkbox.d.ts +29 -0
- package/dist/checkbox/checkbox.d.ts.map +1 -0
- package/dist/checkbox/checkbox.js +40 -0
- package/dist/checkbox/checkbox.js.map +1 -0
- package/dist/checkbox/checkbox.module.css.d.ts +2 -0
- package/dist/checkbox/checkbox.module.js +11 -0
- package/dist/checkbox/checkbox.module.js.map +1 -0
- package/dist/checkbox/index.d.ts +3 -0
- package/dist/checkbox/index.js +4 -0
- package/dist/checkbox/parts.d.ts +20 -0
- package/dist/checkbox/parts.d.ts.map +1 -0
- package/dist/checkbox/parts.js +51 -0
- package/dist/checkbox/parts.js.map +1 -0
- package/dist/collapsible/collapsible.css +88 -0
- package/dist/collapsible/collapsible.d.ts +24 -0
- package/dist/collapsible/collapsible.d.ts.map +1 -0
- package/dist/collapsible/collapsible.js +44 -0
- package/dist/collapsible/collapsible.js.map +1 -0
- package/dist/collapsible/collapsible.module.css.d.ts +2 -0
- package/dist/collapsible/collapsible.module.js +12 -0
- package/dist/collapsible/collapsible.module.js.map +1 -0
- package/dist/collapsible/index.d.ts +3 -0
- package/dist/collapsible/index.js +4 -0
- package/dist/collapsible/parts.d.ts +23 -0
- package/dist/collapsible/parts.d.ts.map +1 -0
- package/dist/collapsible/parts.js +44 -0
- package/dist/collapsible/parts.js.map +1 -0
- package/dist/context-menu/context-menu.css +151 -0
- package/dist/context-menu/context-menu.d.ts +36 -0
- package/dist/context-menu/context-menu.d.ts.map +1 -0
- package/dist/context-menu/context-menu.js +54 -0
- package/dist/context-menu/context-menu.js.map +1 -0
- package/dist/context-menu/context-menu.module.css.d.ts +2 -0
- package/dist/context-menu/context-menu.module.js +18 -0
- package/dist/context-menu/context-menu.module.js.map +1 -0
- package/dist/context-menu/index.d.ts +3 -0
- package/dist/context-menu/index.js +4 -0
- package/dist/context-menu/parts.d.ts +38 -0
- package/dist/context-menu/parts.d.ts.map +1 -0
- package/dist/context-menu/parts.js +91 -0
- package/dist/context-menu/parts.js.map +1 -0
- package/dist/dialog/dialog.css +125 -0
- package/dist/dialog/dialog.d.ts +40 -0
- package/dist/dialog/dialog.d.ts.map +1 -0
- package/dist/dialog/dialog.js +57 -0
- package/dist/dialog/dialog.js.map +1 -0
- package/dist/dialog/dialog.module.css.d.ts +2 -0
- package/dist/dialog/dialog.module.js +17 -0
- package/dist/dialog/dialog.module.js.map +1 -0
- package/dist/dialog/index.d.ts +3 -0
- package/dist/dialog/index.js +4 -0
- package/dist/dialog/parts.d.ts +38 -0
- package/dist/dialog/parts.d.ts.map +1 -0
- package/dist/dialog/parts.js +75 -0
- package/dist/dialog/parts.js.map +1 -0
- package/dist/drawer/drawer.css +253 -0
- package/dist/drawer/drawer.d.ts +38 -0
- package/dist/drawer/drawer.d.ts.map +1 -0
- package/dist/drawer/drawer.js +87 -0
- package/dist/drawer/drawer.js.map +1 -0
- package/dist/drawer/drawer.module.css.d.ts +2 -0
- package/dist/drawer/drawer.module.js +20 -0
- package/dist/drawer/drawer.module.js.map +1 -0
- package/dist/drawer/index.d.ts +3 -0
- package/dist/drawer/index.js +4 -0
- package/dist/drawer/parts.d.ts +58 -0
- package/dist/drawer/parts.d.ts.map +1 -0
- package/dist/drawer/parts.js +107 -0
- package/dist/drawer/parts.js.map +1 -0
- package/dist/index.css +2701 -0
- package/dist/index.d.ts +39 -0
- package/dist/index.js +62 -0
- package/dist/input/index.d.ts +2 -0
- package/dist/input/index.js +3 -0
- package/dist/input/input.css +103 -0
- package/dist/input/input.d.ts +17 -0
- package/dist/input/input.d.ts.map +1 -0
- package/dist/input/input.js +37 -0
- package/dist/input/input.js.map +1 -0
- package/dist/input/input.module.css.d.ts +2 -0
- package/dist/input/input.module.js +18 -0
- package/dist/input/input.module.js.map +1 -0
- package/dist/layer-order.css +22 -0
- package/dist/menu/index.d.ts +4 -0
- package/dist/menu/index.js +5 -0
- package/dist/menu/menu.css +154 -0
- package/dist/menu/menu.d.ts +50 -0
- package/dist/menu/menu.d.ts.map +1 -0
- package/dist/menu/menu.js +69 -0
- package/dist/menu/menu.js.map +1 -0
- package/dist/menu/menu.module.css.d.ts +2 -0
- package/dist/menu/menu.module.js +19 -0
- package/dist/menu/menu.module.js.map +1 -0
- package/dist/menu/menuitemshortcut.d.ts +9 -0
- package/dist/menu/menuitemshortcut.d.ts.map +1 -0
- package/dist/menu/menuitemshortcut.js +15 -0
- package/dist/menu/menuitemshortcut.js.map +1 -0
- package/dist/menu/parts.d.ts +39 -0
- package/dist/menu/parts.d.ts.map +1 -0
- package/dist/menu/parts.js +76 -0
- package/dist/menu/parts.js.map +1 -0
- package/dist/number-field/index.d.ts +3 -0
- package/dist/number-field/index.js +4 -0
- package/dist/number-field/number-field.css +111 -0
- package/dist/number-field/number-field.d.ts +31 -0
- package/dist/number-field/number-field.d.ts.map +1 -0
- package/dist/number-field/number-field.js +78 -0
- package/dist/number-field/number-field.js.map +1 -0
- package/dist/number-field/number-field.module.css.d.ts +2 -0
- package/dist/number-field/number-field.module.js +16 -0
- package/dist/number-field/number-field.module.js.map +1 -0
- package/dist/number-field/parts.d.ts +38 -0
- package/dist/number-field/parts.d.ts.map +1 -0
- package/dist/number-field/parts.js +74 -0
- package/dist/number-field/parts.js.map +1 -0
- package/dist/progress/index.d.ts +3 -0
- package/dist/progress/index.js +4 -0
- package/dist/progress/parts.d.ts +20 -0
- package/dist/progress/parts.d.ts.map +1 -0
- package/dist/progress/parts.js +42 -0
- package/dist/progress/parts.js.map +1 -0
- package/dist/progress/progress.css +71 -0
- package/dist/progress/progress.d.ts +27 -0
- package/dist/progress/progress.d.ts.map +1 -0
- package/dist/progress/progress.js +27 -0
- package/dist/progress/progress.js.map +1 -0
- package/dist/progress/progress.module.css.d.ts +2 -0
- package/dist/progress/progress.module.js +19 -0
- package/dist/progress/progress.module.js.map +1 -0
- package/dist/reset.css +91 -0
- package/dist/select/index.d.ts +3 -0
- package/dist/select/index.js +4 -0
- package/dist/select/parts.d.ts +65 -0
- package/dist/select/parts.d.ts.map +1 -0
- package/dist/select/parts.js +134 -0
- package/dist/select/parts.js.map +1 -0
- package/dist/select/select.css +157 -0
- package/dist/select/select.d.ts +41 -0
- package/dist/select/select.d.ts.map +1 -0
- package/dist/select/select.js +89 -0
- package/dist/select/select.js.map +1 -0
- package/dist/select/select.module.css.d.ts +2 -0
- package/dist/select/select.module.js +17 -0
- package/dist/select/select.module.js.map +1 -0
- package/dist/separator/index.d.ts +2 -0
- package/dist/separator/index.js +3 -0
- package/dist/separator/separator.css +16 -0
- package/dist/separator/separator.d.ts +16 -0
- package/dist/separator/separator.d.ts.map +1 -0
- package/dist/separator/separator.js +17 -0
- package/dist/separator/separator.js.map +1 -0
- package/dist/separator/separator.module.css.d.ts +2 -0
- package/dist/separator/separator.module.js +6 -0
- package/dist/separator/separator.module.js.map +1 -0
- package/dist/slider/index.d.ts +3 -0
- package/dist/slider/index.js +4 -0
- package/dist/slider/parts.d.ts +38 -0
- package/dist/slider/parts.d.ts.map +1 -0
- package/dist/slider/parts.js +69 -0
- package/dist/slider/parts.js.map +1 -0
- package/dist/slider/slider.css +97 -0
- package/dist/slider/slider.d.ts +38 -0
- package/dist/slider/slider.d.ts.map +1 -0
- package/dist/slider/slider.js +41 -0
- package/dist/slider/slider.js.map +1 -0
- package/dist/slider/slider.module.css.d.ts +2 -0
- package/dist/slider/slider.module.js +15 -0
- package/dist/slider/slider.module.js.map +1 -0
- package/dist/styles/reset.css +69 -0
- package/dist/styles/tokens.css +276 -0
- package/dist/switch/index.d.ts +3 -0
- package/dist/switch/index.js +4 -0
- package/dist/switch/parts.d.ts +18 -0
- package/dist/switch/parts.d.ts.map +1 -0
- package/dist/switch/parts.js +39 -0
- package/dist/switch/parts.js.map +1 -0
- package/dist/switch/switch.css +64 -0
- package/dist/switch/switch.d.ts +28 -0
- package/dist/switch/switch.d.ts.map +1 -0
- package/dist/switch/switch.js +26 -0
- package/dist/switch/switch.js.map +1 -0
- package/dist/switch/switch.module.css.d.ts +2 -0
- package/dist/switch/switch.module.js +11 -0
- package/dist/switch/switch.module.js.map +1 -0
- package/dist/tabs/index.d.ts +3 -0
- package/dist/tabs/index.js +4 -0
- package/dist/tabs/parts.d.ts +23 -0
- package/dist/tabs/parts.d.ts.map +1 -0
- package/dist/tabs/parts.js +48 -0
- package/dist/tabs/parts.js.map +1 -0
- package/dist/tabs/tabs.css +86 -0
- package/dist/tabs/tabs.d.ts +28 -0
- package/dist/tabs/tabs.d.ts.map +1 -0
- package/dist/tabs/tabs.js +30 -0
- package/dist/tabs/tabs.js.map +1 -0
- package/dist/tabs/tabs.module.css.d.ts +2 -0
- package/dist/tabs/tabs.module.js +11 -0
- package/dist/tabs/tabs.module.js.map +1 -0
- package/dist/tailwind-theme.css +142 -0
- package/dist/toast/index.d.ts +3 -0
- package/dist/toast/index.js +4 -0
- package/dist/toast/parts.d.ts +33 -0
- package/dist/toast/parts.d.ts.map +1 -0
- package/dist/toast/parts.js +62 -0
- package/dist/toast/parts.js.map +1 -0
- package/dist/toast/toast.css +207 -0
- package/dist/toast/toast.d.ts +43 -0
- package/dist/toast/toast.d.ts.map +1 -0
- package/dist/toast/toast.js +156 -0
- package/dist/toast/toast.js.map +1 -0
- package/dist/toast/toast.module.css.d.ts +2 -0
- package/dist/toast/toast.module.js +25 -0
- package/dist/toast/toast.module.js.map +1 -0
- package/dist/tokens.css +404 -0
- package/dist/tooltip/index.d.ts +3 -0
- package/dist/tooltip/index.js +4 -0
- package/dist/tooltip/parts.d.ts +23 -0
- package/dist/tooltip/parts.d.ts.map +1 -0
- package/dist/tooltip/parts.js +53 -0
- package/dist/tooltip/parts.js.map +1 -0
- package/dist/tooltip/tooltip.css +60 -0
- package/dist/tooltip/tooltip.d.ts +22 -0
- package/dist/tooltip/tooltip.d.ts.map +1 -0
- package/dist/tooltip/tooltip.js +23 -0
- package/dist/tooltip/tooltip.js.map +1 -0
- package/dist/tooltip/tooltip.module.css.d.ts +2 -0
- package/dist/tooltip/tooltip.module.js +10 -0
- package/dist/tooltip/tooltip.module.js.map +1 -0
- package/package.json +153 -4
- package/src/accordion/accordion.module.css +75 -0
- package/src/accordion/accordion.tsx +50 -0
- package/src/accordion/index.ts +6 -0
- package/src/accordion/parts.tsx +68 -0
- package/src/alert-dialog/alert-dialog.module.css +91 -0
- package/src/alert-dialog/alert-dialog.tsx +69 -0
- package/src/alert-dialog/index.ts +7 -0
- package/src/alert-dialog/parts.tsx +73 -0
- package/src/badge/badge.module.css +60 -0
- package/src/badge/badge.tsx +19 -0
- package/src/badge/index.ts +3 -0
- package/src/button/button.module.css +229 -0
- package/src/button/button.tsx +67 -0
- package/src/button/index.ts +3 -0
- package/src/card/card.module.css +56 -0
- package/src/card/card.tsx +54 -0
- package/src/card/index.ts +3 -0
- package/src/checkbox/checkbox.module.css +69 -0
- package/src/checkbox/checkbox.tsx +38 -0
- package/src/checkbox/index.ts +6 -0
- package/src/checkbox/parts.tsx +54 -0
- package/src/collapsible/collapsible.module.css +81 -0
- package/src/collapsible/collapsible.tsx +38 -0
- package/src/collapsible/index.ts +6 -0
- package/src/collapsible/parts.tsx +52 -0
- package/src/context-menu/context-menu.module.css +168 -0
- package/src/context-menu/context-menu.tsx +75 -0
- package/src/context-menu/index.ts +21 -0
- package/src/context-menu/parts.tsx +99 -0
- package/src/css.d.ts +8 -0
- package/src/dialog/dialog.module.css +116 -0
- package/src/dialog/dialog.tsx +73 -0
- package/src/dialog/index.ts +13 -0
- package/src/dialog/parts.tsx +96 -0
- package/src/drawer/drawer.module.css +240 -0
- package/src/drawer/drawer.tsx +96 -0
- package/src/drawer/index.ts +24 -0
- package/src/drawer/parts.tsx +122 -0
- package/src/index.ts +237 -0
- package/src/input/index.ts +3 -0
- package/src/input/input.module.css +93 -0
- package/src/input/input.tsx +39 -0
- package/src/menu/index.ts +7 -0
- package/src/menu/menu.module.css +142 -0
- package/src/menu/menu.tsx +108 -0
- package/src/menu/menuitemshortcut.tsx +9 -0
- package/src/menu/parts.tsx +90 -0
- package/src/number-field/index.ts +20 -0
- package/src/number-field/number-field.module.css +98 -0
- package/src/number-field/number-field.tsx +75 -0
- package/src/number-field/parts.tsx +91 -0
- package/src/progress/index.ts +6 -0
- package/src/progress/parts.tsx +51 -0
- package/src/progress/progress.module.css +61 -0
- package/src/progress/progress.tsx +42 -0
- package/src/select/index.ts +30 -0
- package/src/select/parts.tsx +171 -0
- package/src/select/select.module.css +146 -0
- package/src/select/select.tsx +98 -0
- package/src/separator/index.ts +3 -0
- package/src/separator/separator.module.css +14 -0
- package/src/separator/separator.tsx +20 -0
- package/src/slider/index.ts +14 -0
- package/src/slider/parts.tsx +90 -0
- package/src/slider/slider.module.css +110 -0
- package/src/slider/slider.tsx +68 -0
- package/src/styles/layer-order.css +22 -0
- package/src/styles/reset.css +91 -0
- package/src/styles/tailwind-theme.css +142 -0
- package/src/styles/tokens.css +404 -0
- package/src/switch/index.ts +6 -0
- package/src/switch/parts.tsx +44 -0
- package/src/switch/switch.module.css +57 -0
- package/src/switch/switch.tsx +33 -0
- package/src/tabs/index.ts +6 -0
- package/src/tabs/parts.tsx +48 -0
- package/src/tabs/tabs.module.css +79 -0
- package/src/tabs/tabs.tsx +48 -0
- package/src/toast/index.ts +6 -0
- package/src/toast/parts.tsx +76 -0
- package/src/toast/toast.module.css +212 -0
- package/src/toast/toast.tsx +129 -0
- package/src/tooltip/index.ts +6 -0
- package/src/tooltip/parts.tsx +62 -0
- package/src/tooltip/tooltip.module.css +56 -0
- package/src/tooltip/tooltip.tsx +30 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawer.js","names":["styles","Drawer","BaseDrawer"],"sources":["../../src/drawer/drawer.tsx"],"sourcesContent":["import type { ReactNode, ReactElement } from \"react\";\nimport { Drawer as BaseDrawer } from \"@base-ui/react/drawer\";\nimport styles from \"./drawer.module.css\";\n\nexport type DrawerSide = \"left\" | \"right\" | \"bottom\" | \"top\";\n\nexport interface DrawerProps {\n /** Element that triggers the drawer — rendered as a `Drawer.Trigger`. */\n trigger?: ReactElement;\n /** Which edge the drawer slides in from. @default \"right\" */\n side?: DrawerSide;\n title?: ReactNode;\n description?: ReactNode;\n children?: ReactNode;\n footer?: ReactNode;\n /** Show a drag handle bar (useful for bottom/top drawers). @default true for bottom/top */\n handleBar?: boolean;\n /** Show a close button in the top-right corner. @default true */\n dismissible?: boolean;\n\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n}\n\nfunction XIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" aria-hidden>\n <path d=\"M2 2L10 10M10 2L2 10\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n </svg>\n );\n}\n\n/** Map side → swipe direction for dismiss gesture */\nconst SWIPE_DIR: Record<DrawerSide, \"left\" | \"right\" | \"up\" | \"down\"> = {\n right: \"right\",\n left: \"left\",\n bottom: \"down\",\n top: \"up\",\n};\n\n/** Popup CSS classes by side */\nconst POPUP_CLASS: Record<DrawerSide, string> = {\n right: styles[\"popup-right\"] as string,\n left: styles[\"popup-left\"] as string,\n bottom: styles[\"popup-bottom\"] as string,\n top: styles[\"popup-top\"] as string,\n};\n\nexport function Drawer({\n trigger,\n side = \"right\",\n title,\n description,\n children,\n footer,\n handleBar,\n dismissible = true,\n onOpenChange,\n ...props\n}: DrawerProps) {\n const showHandle = handleBar ?? (side === \"bottom\" || side === \"top\");\n const popupClass = `${styles.popup} ${POPUP_CLASS[side]}`;\n\n return (\n <BaseDrawer.Root swipeDirection={SWIPE_DIR[side]} onOpenChange={onOpenChange as never} {...props}>\n {trigger && <BaseDrawer.Trigger render={trigger} />}\n <BaseDrawer.Portal>\n <BaseDrawer.Backdrop className={styles.backdrop} />\n <BaseDrawer.Viewport className={styles.viewport} data-side={side}>\n <BaseDrawer.Popup className={popupClass} style={{ position: \"relative\" }}>\n {/* handle bar sits above content in bottom drawers */}\n {showHandle && side !== \"top\" && <div className={styles[\"handle-bar\"]} aria-hidden />}\n\n <BaseDrawer.Content className={styles.content}>\n {title && <BaseDrawer.Title className={styles.title}>{title}</BaseDrawer.Title>}\n {description && <BaseDrawer.Description className={styles.description}>{description}</BaseDrawer.Description>}\n {children}\n {footer && <div className={styles.footer}>{footer}</div>}\n </BaseDrawer.Content>\n\n {/* handle bar sits below content in top drawers */}\n {showHandle && side === \"top\" && <div className={styles[\"handle-bar\"]} aria-hidden />}\n\n {dismissible && (\n <BaseDrawer.Close className={styles.close} aria-label=\"Close drawer\">\n <XIcon />\n </BaseDrawer.Close>\n )}\n </BaseDrawer.Popup>\n </BaseDrawer.Viewport>\n </BaseDrawer.Portal>\n </BaseDrawer.Root>\n );\n}\nexport { styles as DrawerStyles };\n"],"mappings":";;;;AAyBA,SAAS,QAAQ;AACf,QACE,oBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;EAAO,eAAA;YAC1D,oBAAC,QAAD;GAAM,GAAE;GAAuB,QAAO;GAAe,aAAY;GAAM,eAAc;GAAU,CAAA;EAC3F,CAAA;;;AAKV,MAAM,YAAkE;CACtE,OAAO;CACP,MAAM;CACN,QAAQ;CACR,KAAK;CACN;;AAGD,MAAM,cAA0C;CAC9C,OAAOA,sBAAO;CACd,MAAMA,sBAAO;CACb,QAAQA,sBAAO;CACf,KAAKA,sBAAO;CACb;AAED,SAAgBC,SAAO,EACrB,SACA,OAAO,SACP,OACA,aACA,UACA,QACA,WACA,cAAc,MACd,cACA,GAAG,SACW;CACd,MAAM,aAAa,cAAc,SAAS,YAAY,SAAS;CAC/D,MAAM,aAAa,GAAGD,sBAAO,MAAM,GAAG,YAAY;AAElD,QACE,qBAACE,OAAW,MAAZ;EAAiB,gBAAgB,UAAU;EAAqB;EAAuB,GAAI;YAA3F,CACG,WAAW,oBAACA,OAAW,SAAZ,EAAoB,QAAQ,SAAW,CAAA,EACnD,qBAACA,OAAW,QAAZ,EAAA,UAAA,CACE,oBAACA,OAAW,UAAZ,EAAqB,WAAWF,sBAAO,UAAY,CAAA,EACnD,oBAACE,OAAW,UAAZ;GAAqB,WAAWF,sBAAO;GAAU,aAAW;aAC1D,qBAACE,OAAW,OAAZ;IAAkB,WAAW;IAAY,OAAO,EAAE,UAAU,YAAY;cAAxE;KAEG,cAAc,SAAS,SAAS,oBAAC,OAAD;MAAK,WAAWF,sBAAO;MAAe,eAAA;MAAc,CAAA;KAErF,qBAACE,OAAW,SAAZ;MAAoB,WAAWF,sBAAO;gBAAtC;OACG,SAAS,oBAACE,OAAW,OAAZ;QAAkB,WAAWF,sBAAO;kBAAQ;QAAyB,CAAA;OAC9E,eAAe,oBAACE,OAAW,aAAZ;QAAwB,WAAWF,sBAAO;kBAAc;QAAqC,CAAA;OAC5G;OACA,UAAU,oBAAC,OAAD;QAAK,WAAWA,sBAAO;kBAAS;QAAa,CAAA;OACrC;;KAGpB,cAAc,SAAS,SAAS,oBAAC,OAAD;MAAK,WAAWA,sBAAO;MAAe,eAAA;MAAc,CAAA;KAEpF,eACC,oBAACE,OAAW,OAAZ;MAAkB,WAAWF,sBAAO;MAAO,cAAW;gBACpD,oBAAC,OAAD,EAAS,CAAA;MACQ,CAAA;KAEJ;;GACC,CAAA,CACJ,EAAA,CAAA,CACJ"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region src/drawer/drawer.module.css
|
|
2
|
+
var drawer_module_default = {
|
|
3
|
+
"backdrop": "backdrop_JNKGQq",
|
|
4
|
+
"close": "close_JNKGQq",
|
|
5
|
+
"content": "content_JNKGQq",
|
|
6
|
+
"description": "description_JNKGQq",
|
|
7
|
+
"footer": "footer_JNKGQq",
|
|
8
|
+
"handle-bar": "handle-bar_JNKGQq",
|
|
9
|
+
"popup": "popup_JNKGQq",
|
|
10
|
+
"popup-bottom": "popup-bottom_JNKGQq",
|
|
11
|
+
"popup-left": "popup-left_JNKGQq",
|
|
12
|
+
"popup-right": "popup-right_JNKGQq",
|
|
13
|
+
"popup-top": "popup-top_JNKGQq",
|
|
14
|
+
"title": "title_JNKGQq",
|
|
15
|
+
"viewport": "viewport_JNKGQq"
|
|
16
|
+
};
|
|
17
|
+
//#endregion
|
|
18
|
+
export { drawer_module_default as default };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=drawer.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawer.module.js","names":[],"sources":["../../src/drawer/drawer.module.css"],"sourcesContent":["@layer components {\n /* ── Backdrop ──────────────────────────────────────────────────── */\n .backdrop {\n --backdrop-opacity: 0.48;\n position: fixed;\n inset: 0;\n min-height: 100dvh;\n background-color: black;\n opacity: calc(var(--backdrop-opacity) * (1 - var(--drawer-swipe-progress)));\n z-index: var(--z-overlay);\n transition-property: opacity;\n transition-duration: 450ms;\n transition-timing-function: cubic-bezier(0.32, 0.72, 0, 1);\n /* iOS 26+: cover the full visual viewport even when scrolled */\n @supports (-webkit-touch-callout: none) {\n position: absolute;\n }\n }\n .backdrop[data-starting-style],\n .backdrop[data-ending-style] {\n opacity: 0;\n }\n .backdrop[data-swiping] {\n transition-duration: 0ms;\n }\n .backdrop[data-ending-style] {\n transition-duration: calc(var(--drawer-swipe-strength) * 400ms);\n }\n /* ── Viewport ──────────────────────────────────────────────────── */\n .viewport {\n position: fixed;\n inset: 0;\n z-index: var(--z-modal);\n display: flex;\n }\n /* side drawers sit against their respective edge */\n .viewport[data-side=\"left\"] {\n justify-content: flex-start;\n align-items: stretch;\n }\n .viewport[data-side=\"right\"] {\n justify-content: flex-end;\n align-items: stretch;\n }\n .viewport[data-side=\"bottom\"] {\n align-items: flex-end;\n justify-content: center;\n }\n .viewport[data-side=\"top\"] {\n align-items: flex-start;\n justify-content: center;\n }\n /* iOS rounded inset padding */\n @supports (-webkit-touch-callout: none) {\n .viewport[data-side=\"left\"],\n .viewport[data-side=\"right\"] {\n padding: 0.625rem;\n }\n .viewport[data-side=\"bottom\"] {\n padding: 0 0.625rem 0.625rem;\n }\n .viewport[data-side=\"top\"] {\n padding: 0.625rem 0.625rem 0;\n }\n }\n /* ── Popup — shared ────────────────────────────────────────────── */\n .popup {\n box-sizing: border-box;\n background-color: var(--color-elevated);\n border: var(--border-width-base) solid var(--color-line);\n outline: none;\n overflow-y: auto;\n overscroll-behavior: contain;\n touch-action: auto;\n will-change: transform;\n transition-timing-function: cubic-bezier(0.32, 0.72, 0, 1);\n transition-duration: 450ms;\n }\n .popup[data-swiping] {\n user-select: none;\n transition-duration: 0ms;\n }\n .popup[data-ending-style] {\n transition-duration: calc(var(--drawer-swipe-strength) * 400ms);\n }\n /* ── Popup — right side (default) ─────────────────────────────── */\n .popup-right {\n --bleed: 3rem;\n height: 100%;\n width: calc(var(--drawer-width, 20rem) + var(--bleed));\n max-width: calc(100vw - 3rem + var(--bleed));\n padding: var(--space-6);\n padding-right: calc(var(--space-6) + var(--bleed));\n margin-right: calc(-1 * var(--bleed));\n transform: translateX(var(--drawer-swipe-movement-x));\n transition-property: transform;\n @supports (-webkit-touch-callout: none) {\n --bleed: 0px;\n margin-right: 0;\n border-radius: var(--radius-xl);\n }\n }\n .popup-right[data-starting-style],\n .popup-right[data-ending-style] {\n transform: translateX(calc(100% - var(--bleed) + 2px));\n }\n /* ── Popup — left side ─────────────────────────────────────────── */\n .popup-left {\n --bleed: 3rem;\n height: 100%;\n width: calc(var(--drawer-width, 20rem) + var(--bleed));\n max-width: calc(100vw - 3rem + var(--bleed));\n padding: var(--space-6);\n padding-left: calc(var(--space-6) + var(--bleed));\n margin-left: calc(-1 * var(--bleed));\n transform: translateX(var(--drawer-swipe-movement-x));\n transition-property: transform;\n @supports (-webkit-touch-callout: none) {\n --bleed: 0px;\n margin-left: 0;\n border-radius: var(--radius-xl);\n }\n }\n .popup-left[data-starting-style],\n .popup-left[data-ending-style] {\n transform: translateX(calc(-100% + var(--bleed) - 2px));\n }\n /* ── Popup — bottom ────────────────────────────────────────────── */\n .popup-bottom {\n width: 100%;\n max-width: var(--drawer-max-width, 480px);\n max-height: 90dvh;\n padding: var(--space-5) var(--space-5) calc(var(--space-5) + env(safe-area-inset-bottom, 0px));\n border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;\n border-bottom: none;\n transform: translateY(var(--drawer-swipe-movement-y));\n transition-property: transform;\n @supports (-webkit-touch-callout: none) {\n border-radius: var(--radius-2xl);\n }\n }\n .popup-bottom[data-starting-style],\n .popup-bottom[data-ending-style] {\n transform: translateY(calc(100% + 2px));\n }\n /* ── Popup — top ───────────────────────────────────────────────── */\n .popup-top {\n width: 100%;\n max-width: var(--drawer-max-width, 480px);\n max-height: 90dvh;\n padding: calc(var(--space-5) + env(safe-area-inset-top, 0px)) var(--space-5) var(--space-5);\n border-radius: 0 0 var(--radius-2xl) var(--radius-2xl);\n border-top: none;\n transform: translateY(var(--drawer-swipe-movement-y));\n transition-property: transform;\n @supports (-webkit-touch-callout: none) {\n border-radius: var(--radius-2xl);\n }\n }\n .popup-top[data-starting-style],\n .popup-top[data-ending-style] {\n transform: translateY(calc(-100% - 2px));\n }\n /* ── Handle bar (bottom/top drawers) ───────────────────────────── */\n .handle-bar {\n width: 2.5rem;\n height: 4px;\n border-radius: 9999px;\n background-color: var(--color-line-strong);\n margin: 0 auto var(--space-4);\n flex-shrink: 0;\n }\n .popup-top .handle-bar {\n margin: var(--space-4) auto 0;\n order: 1; /* push to bottom in top drawer */\n }\n /* ── Content ───────────────────────────────────────────────────── */\n .content {\n display: flex;\n flex-direction: column;\n gap: var(--space-4);\n height: 100%;\n }\n /* ── Title ─────────────────────────────────────────────────────── */\n .title {\n font-family: var(--font-mono);\n font-size: var(--font-size-lg);\n font-weight: var(--font-weight-semibold);\n color: var(--color-primary);\n line-height: var(--line-height-tight);\n letter-spacing: var(--letter-spacing-tight);\n margin: 0;\n padding-right: var(--space-6);\n }\n /* ── Description ───────────────────────────────────────────────── */\n .description {\n font-family: var(--font-mono);\n font-size: var(--font-size-sm);\n color: var(--color-secondary);\n line-height: var(--line-height-relaxed);\n margin: 0;\n }\n /* ── Close button ──────────────────────────────────────────────── */\n .close {\n position: absolute;\n top: var(--space-4);\n right: var(--space-4);\n width: 24px;\n height: 24px;\n border-radius: var(--radius-sm);\n border: none;\n background: transparent;\n color: var(--color-tertiary);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n outline: none;\n transition:\n background-color var(--duration-fast) var(--easing-standard),\n color var(--duration-fast) var(--easing-standard);\n }\n .close:hover {\n background-color: var(--color-hover);\n color: var(--color-primary);\n }\n .close:focus-visible {\n box-shadow: var(--shadow-focus);\n }\n /* ── Footer ────────────────────────────────────────────────────── */\n .footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--space-2);\n padding-top: var(--space-4);\n margin-top: auto;\n border-top: var(--border-width-base) solid var(--color-line-subtle);\n }\n}\n"],"mappings":";AA0BA,IAAA,wBAAe;CAAA,YAAU;CAAkB,SAAM;CAAkB,WAAA;CAAA,eAAA;CAAA,UAAA;CAAA,cAAA;CAAA,SAAA;CAAA,gBAAA;CAAA,cAAA;CAAA,eAAA;CAAA,aAAA;CAAA,SAAA;CAAA,YAAA;CAAA"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { Drawer, DrawerProps, DrawerSide, styles } from "./drawer.js";
|
|
2
|
+
import { DrawerBackdrop, DrawerBackdropProps, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerHandleBar, DrawerPopup, DrawerPopupProps, DrawerTitle, DrawerTitleProps, DrawerViewport, DrawerViewportProps } from "./parts.js";
|
|
3
|
+
export { Drawer, DrawerBackdrop, type DrawerBackdropProps, DrawerClose, type DrawerCloseProps, DrawerContent, type DrawerContentProps, DrawerDescription, type DrawerDescriptionProps, DrawerFooter, DrawerHandleBar, DrawerPopup, type DrawerPopupProps, type DrawerProps, type DrawerSide, styles as DrawerStyles, DrawerTitle, type DrawerTitleProps, DrawerViewport, type DrawerViewportProps };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import drawer_module_default from "./drawer.module.js";
|
|
2
|
+
import { Drawer } from "./drawer.js";
|
|
3
|
+
import { DrawerBackdrop, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHandleBar, DrawerPopup, DrawerTitle, DrawerViewport } from "./parts.js";
|
|
4
|
+
export { Drawer, DrawerBackdrop, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHandleBar, DrawerPopup, drawer_module_default as DrawerStyles, DrawerTitle, DrawerViewport };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { DrawerSide } from "./drawer.js";
|
|
2
|
+
import * as react from "react";
|
|
3
|
+
import { ComponentPropsWithoutRef } from "react";
|
|
4
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
|
+
import { Drawer } from "@base-ui/react/drawer";
|
|
6
|
+
|
|
7
|
+
//#region src/drawer/parts.d.ts
|
|
8
|
+
type BaseBackdropProps = ComponentPropsWithoutRef<typeof Drawer.Backdrop>;
|
|
9
|
+
type BaseViewportProps = ComponentPropsWithoutRef<typeof Drawer.Viewport>;
|
|
10
|
+
type BasePopupProps = ComponentPropsWithoutRef<typeof Drawer.Popup>;
|
|
11
|
+
type BaseContentProps = ComponentPropsWithoutRef<typeof Drawer.Content>;
|
|
12
|
+
type BaseTitleProps = ComponentPropsWithoutRef<typeof Drawer.Title>;
|
|
13
|
+
type BaseDescriptionProps = ComponentPropsWithoutRef<typeof Drawer.Description>;
|
|
14
|
+
type BaseCloseProps = ComponentPropsWithoutRef<typeof Drawer.Close>;
|
|
15
|
+
interface DrawerBackdropProps extends Omit<BaseBackdropProps, "className"> {
|
|
16
|
+
className?: string;
|
|
17
|
+
}
|
|
18
|
+
interface DrawerViewportProps extends Omit<BaseViewportProps, "className"> {
|
|
19
|
+
className?: string;
|
|
20
|
+
side?: DrawerSide;
|
|
21
|
+
}
|
|
22
|
+
interface DrawerPopupProps extends Omit<BasePopupProps, "className"> {
|
|
23
|
+
className?: string;
|
|
24
|
+
side?: DrawerSide;
|
|
25
|
+
}
|
|
26
|
+
interface DrawerContentProps extends Omit<BaseContentProps, "className"> {
|
|
27
|
+
className?: string;
|
|
28
|
+
}
|
|
29
|
+
interface DrawerTitleProps extends Omit<BaseTitleProps, "className"> {
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
interface DrawerDescriptionProps extends Omit<BaseDescriptionProps, "className"> {
|
|
33
|
+
className?: string;
|
|
34
|
+
}
|
|
35
|
+
interface DrawerCloseProps extends Omit<BaseCloseProps, "className"> {
|
|
36
|
+
className?: string;
|
|
37
|
+
}
|
|
38
|
+
declare const DrawerBackdrop: react.ForwardRefExoticComponent<DrawerBackdropProps & react.RefAttributes<HTMLDivElement>>;
|
|
39
|
+
declare const DrawerViewport: react.ForwardRefExoticComponent<DrawerViewportProps & react.RefAttributes<HTMLDivElement>>;
|
|
40
|
+
declare const DrawerPopup: react.ForwardRefExoticComponent<DrawerPopupProps & react.RefAttributes<HTMLDivElement>>;
|
|
41
|
+
declare const DrawerContent: react.ForwardRefExoticComponent<DrawerContentProps & react.RefAttributes<HTMLDivElement>>;
|
|
42
|
+
declare const DrawerTitle: react.ForwardRefExoticComponent<DrawerTitleProps & react.RefAttributes<HTMLHeadingElement>>;
|
|
43
|
+
declare const DrawerDescription: react.ForwardRefExoticComponent<DrawerDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
|
|
44
|
+
declare const DrawerClose: react.ForwardRefExoticComponent<DrawerCloseProps & react.RefAttributes<HTMLButtonElement>>;
|
|
45
|
+
/** A decorative drag handle bar. Place at the top of a bottom drawer or bottom of a top drawer. */
|
|
46
|
+
declare function DrawerHandleBar({
|
|
47
|
+
className
|
|
48
|
+
}: {
|
|
49
|
+
className?: string;
|
|
50
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
51
|
+
/** Styled footer strip for action buttons. */
|
|
52
|
+
declare function DrawerFooter({
|
|
53
|
+
className,
|
|
54
|
+
...props
|
|
55
|
+
}: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime0.JSX.Element;
|
|
56
|
+
//#endregion
|
|
57
|
+
export { DrawerBackdrop, DrawerBackdropProps, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerHandleBar, DrawerPopup, DrawerPopupProps, DrawerTitle, DrawerTitleProps, DrawerViewport, DrawerViewportProps };
|
|
58
|
+
//# sourceMappingURL=parts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parts.d.ts","names":[],"sources":["../../src/drawer/parts.tsx"],"mappings":";;;;;;;KAoCK,iBAAA,GAAoB,wBAAA,QAAgC,MAAA,CAAW,QAAA;AAAA,KAC/D,iBAAA,GAAoB,wBAAA,QAAgC,MAAA,CAAW,QAAA;AAAA,KAC/D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,gBAAA,GAAmB,wBAAA,QAAgC,MAAA,CAAW,OAAA;AAAA,KAC9D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,oBAAA,GAAuB,wBAAA,QAAgC,MAAA,CAAW,WAAA;AAAA,KAClE,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,UAIhD,mBAAA,SAA4B,IAAA,CAAK,iBAAA;EAChD,SAAA;AAAA;AAAA,UAEe,mBAAA,SAA4B,IAAA,CAAK,iBAAA;EAChD,SAAA;EACA,IAAA,GAAO,UAAA;AAAA;AAAA,UAEQ,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;EACA,IAAA,GAAO,UAAA;AAAA;AAAA,UAEQ,kBAAA,SAA2B,IAAA,CAAK,gBAAA;EAC/C,SAAA;AAAA;AAAA,UAEe,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;AAAA;AAAA,UAEe,sBAAA,SAA+B,IAAA,CAAK,oBAAA;EACnD,SAAA;AAAA;AAAA,UAEe,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;AAAA;AAAA,cAKW,cAAA,EAAc,KAAA,CAAA,yBAAA,CAAA,mBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAId,cAAA,EAAc,KAAA,CAAA,yBAAA,CAAA,mBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAcd,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAIX,aAAA,EAAa,KAAA,CAAA,yBAAA,CAAA,kBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAIb,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,kBAAA;AAAA,cAIX,iBAAA,EAAiB,KAAA,CAAA,yBAAA,CAAA,sBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,oBAAA;AAAA,cAOjB,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,iBAAA;;iBAKR,eAAA,CAAA;EAAkB;AAAA;EAAe,SAAA;AAAA,IAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;;iBAKrD,YAAA,CAAA;EAAe,SAAA;EAAA,GAAc;AAAA,GAAS,KAAA,CAAM,cAAA,CAAe,cAAA,IAAe,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import drawer_module_default from "./drawer.module.js";
|
|
2
|
+
import { forwardRef } from "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Drawer } from "@base-ui/react/drawer";
|
|
5
|
+
//#region src/drawer/parts.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Styled primitives for Drawer.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* import { Drawer } from '@base-ui/react/drawer';
|
|
12
|
+
* import {
|
|
13
|
+
* DrawerBackdrop, DrawerViewport, DrawerPopup,
|
|
14
|
+
* DrawerContent, DrawerTitle, DrawerClose,
|
|
15
|
+
* } from '@brijbyte/agentic-ui/drawer';
|
|
16
|
+
*
|
|
17
|
+
* <Drawer.Root swipeDirection="right">
|
|
18
|
+
* <Drawer.Trigger render={<button>Open</button>} />
|
|
19
|
+
* <Drawer.Portal>
|
|
20
|
+
* <DrawerBackdrop />
|
|
21
|
+
* <DrawerViewport side="right">
|
|
22
|
+
* <DrawerPopup side="right">
|
|
23
|
+
* <DrawerContent>
|
|
24
|
+
* <DrawerTitle>Title</DrawerTitle>
|
|
25
|
+
* {children}
|
|
26
|
+
* <DrawerClose />
|
|
27
|
+
* </DrawerContent>
|
|
28
|
+
* </DrawerPopup>
|
|
29
|
+
* </DrawerViewport>
|
|
30
|
+
* </Drawer.Portal>
|
|
31
|
+
* </Drawer.Root>
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
const DrawerBackdrop = forwardRef(function DrawerBackdrop({ className, ...props }, ref) {
|
|
35
|
+
return /* @__PURE__ */ jsx(Drawer.Backdrop, {
|
|
36
|
+
ref,
|
|
37
|
+
className: `${drawer_module_default.backdrop} ${className ?? ""}`,
|
|
38
|
+
...props
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
const DrawerViewport = forwardRef(function DrawerViewport({ className, side = "right", ...props }, ref) {
|
|
42
|
+
return /* @__PURE__ */ jsx(Drawer.Viewport, {
|
|
43
|
+
ref,
|
|
44
|
+
className: `${drawer_module_default.viewport} ${className ?? ""}`,
|
|
45
|
+
"data-side": side,
|
|
46
|
+
...props
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
const POPUP_CLASS = {
|
|
50
|
+
right: drawer_module_default["popup-right"],
|
|
51
|
+
left: drawer_module_default["popup-left"],
|
|
52
|
+
bottom: drawer_module_default["popup-bottom"],
|
|
53
|
+
top: drawer_module_default["popup-top"]
|
|
54
|
+
};
|
|
55
|
+
const DrawerPopup = forwardRef(function DrawerPopup({ className, side = "right", ...props }, ref) {
|
|
56
|
+
return /* @__PURE__ */ jsx(Drawer.Popup, {
|
|
57
|
+
ref,
|
|
58
|
+
className: `${drawer_module_default.popup} ${POPUP_CLASS[side]} ${className ?? ""}`,
|
|
59
|
+
...props
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
const DrawerContent = forwardRef(function DrawerContent({ className, ...props }, ref) {
|
|
63
|
+
return /* @__PURE__ */ jsx(Drawer.Content, {
|
|
64
|
+
ref,
|
|
65
|
+
className: `${drawer_module_default.content} ${className ?? ""}`,
|
|
66
|
+
...props
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
const DrawerTitle = forwardRef(function DrawerTitle({ className, ...props }, ref) {
|
|
70
|
+
return /* @__PURE__ */ jsx(Drawer.Title, {
|
|
71
|
+
ref,
|
|
72
|
+
className: `${drawer_module_default.title} ${className ?? ""}`,
|
|
73
|
+
...props
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
const DrawerDescription = forwardRef(function DrawerDescription({ className, ...props }, ref) {
|
|
77
|
+
return /* @__PURE__ */ jsx(Drawer.Description, {
|
|
78
|
+
ref,
|
|
79
|
+
className: `${drawer_module_default.description} ${className ?? ""}`,
|
|
80
|
+
...props
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
const DrawerClose = forwardRef(function DrawerClose({ className, ...props }, ref) {
|
|
84
|
+
return /* @__PURE__ */ jsx(Drawer.Close, {
|
|
85
|
+
ref,
|
|
86
|
+
className: `${drawer_module_default.close} ${className ?? ""}`,
|
|
87
|
+
...props
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
/** A decorative drag handle bar. Place at the top of a bottom drawer or bottom of a top drawer. */
|
|
91
|
+
function DrawerHandleBar({ className }) {
|
|
92
|
+
return /* @__PURE__ */ jsx("div", {
|
|
93
|
+
className: `${drawer_module_default["handle-bar"]} ${className ?? ""}`,
|
|
94
|
+
"aria-hidden": true
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
/** Styled footer strip for action buttons. */
|
|
98
|
+
function DrawerFooter({ className, ...props }) {
|
|
99
|
+
return /* @__PURE__ */ jsx("div", {
|
|
100
|
+
className: `${drawer_module_default.footer} ${className ?? ""}`,
|
|
101
|
+
...props
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
//#endregion
|
|
105
|
+
export { DrawerBackdrop, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHandleBar, DrawerPopup, DrawerTitle, DrawerViewport };
|
|
106
|
+
|
|
107
|
+
//# sourceMappingURL=parts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parts.js","names":["BaseDrawer","styles"],"sources":["../../src/drawer/parts.tsx"],"sourcesContent":["/**\n * Styled primitives for Drawer.\n *\n * @example\n * ```tsx\n * import { Drawer } from '@base-ui/react/drawer';\n * import {\n * DrawerBackdrop, DrawerViewport, DrawerPopup,\n * DrawerContent, DrawerTitle, DrawerClose,\n * } from '@brijbyte/agentic-ui/drawer';\n *\n * <Drawer.Root swipeDirection=\"right\">\n * <Drawer.Trigger render={<button>Open</button>} />\n * <Drawer.Portal>\n * <DrawerBackdrop />\n * <DrawerViewport side=\"right\">\n * <DrawerPopup side=\"right\">\n * <DrawerContent>\n * <DrawerTitle>Title</DrawerTitle>\n * {children}\n * <DrawerClose />\n * </DrawerContent>\n * </DrawerPopup>\n * </DrawerViewport>\n * </Drawer.Portal>\n * </Drawer.Root>\n * ```\n */\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport { Drawer as BaseDrawer } from \"@base-ui/react/drawer\";\nimport type { DrawerSide } from \"./drawer\";\nimport styles from \"./drawer.module.css\";\n\n// ─── Base prop types ───────────────────────────────────────────────────────\n\ntype BaseBackdropProps = ComponentPropsWithoutRef<typeof BaseDrawer.Backdrop>;\ntype BaseViewportProps = ComponentPropsWithoutRef<typeof BaseDrawer.Viewport>;\ntype BasePopupProps = ComponentPropsWithoutRef<typeof BaseDrawer.Popup>;\ntype BaseContentProps = ComponentPropsWithoutRef<typeof BaseDrawer.Content>;\ntype BaseTitleProps = ComponentPropsWithoutRef<typeof BaseDrawer.Title>;\ntype BaseDescriptionProps = ComponentPropsWithoutRef<typeof BaseDrawer.Description>;\ntype BaseCloseProps = ComponentPropsWithoutRef<typeof BaseDrawer.Close>;\n\n// ─── Exported prop types ───────────────────────────────────────────────────\n\nexport interface DrawerBackdropProps extends Omit<BaseBackdropProps, \"className\"> {\n className?: string;\n}\nexport interface DrawerViewportProps extends Omit<BaseViewportProps, \"className\"> {\n className?: string;\n side?: DrawerSide;\n}\nexport interface DrawerPopupProps extends Omit<BasePopupProps, \"className\"> {\n className?: string;\n side?: DrawerSide;\n}\nexport interface DrawerContentProps extends Omit<BaseContentProps, \"className\"> {\n className?: string;\n}\nexport interface DrawerTitleProps extends Omit<BaseTitleProps, \"className\"> {\n className?: string;\n}\nexport interface DrawerDescriptionProps extends Omit<BaseDescriptionProps, \"className\"> {\n className?: string;\n}\nexport interface DrawerCloseProps extends Omit<BaseCloseProps, \"className\"> {\n className?: string;\n}\n\n// ─── Parts ────────────────────────────────────────────────────────────────\n\nexport const DrawerBackdrop = forwardRef<HTMLDivElement, DrawerBackdropProps>(function DrawerBackdrop({ className, ...props }, ref) {\n return <BaseDrawer.Backdrop ref={ref} className={`${styles.backdrop} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const DrawerViewport = forwardRef<HTMLDivElement, DrawerViewportProps>(function DrawerViewport(\n { className, side = \"right\", ...props },\n ref,\n) {\n return <BaseDrawer.Viewport ref={ref} className={`${styles.viewport} ${className ?? \"\"}`} data-side={side} {...props} />;\n});\n\nconst POPUP_CLASS: Record<DrawerSide, string> = {\n right: styles[\"popup-right\"] as string,\n left: styles[\"popup-left\"] as string,\n bottom: styles[\"popup-bottom\"] as string,\n top: styles[\"popup-top\"] as string,\n};\n\nexport const DrawerPopup = forwardRef<HTMLDivElement, DrawerPopupProps>(function DrawerPopup({ className, side = \"right\", ...props }, ref) {\n return <BaseDrawer.Popup ref={ref} className={`${styles.popup} ${POPUP_CLASS[side]} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const DrawerContent = forwardRef<HTMLDivElement, DrawerContentProps>(function DrawerContent({ className, ...props }, ref) {\n return <BaseDrawer.Content ref={ref} className={`${styles.content} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const DrawerTitle = forwardRef<HTMLHeadingElement, DrawerTitleProps>(function DrawerTitle({ className, ...props }, ref) {\n return <BaseDrawer.Title ref={ref} className={`${styles.title} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const DrawerDescription = forwardRef<HTMLParagraphElement, DrawerDescriptionProps>(function DrawerDescription(\n { className, ...props },\n ref,\n) {\n return <BaseDrawer.Description ref={ref} className={`${styles.description} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const DrawerClose = forwardRef<HTMLButtonElement, DrawerCloseProps>(function DrawerClose({ className, ...props }, ref) {\n return <BaseDrawer.Close ref={ref} className={`${styles.close} ${className ?? \"\"}`} {...props} />;\n});\n\n/** A decorative drag handle bar. Place at the top of a bottom drawer or bottom of a top drawer. */\nexport function DrawerHandleBar({ className }: { className?: string }) {\n return <div className={`${styles[\"handle-bar\"]} ${className ?? \"\"}`} aria-hidden />;\n}\n\n/** Styled footer strip for action buttons. */\nexport function DrawerFooter({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) {\n return <div className={`${styles.footer} ${className ?? \"\"}`} {...props} />;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwEA,MAAa,iBAAiB,WAAgD,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;AAClI,QAAO,oBAACA,OAAW,UAAZ;EAA0B;EAAK,WAAW,GAAGC,sBAAO,SAAS,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACvG;AAEF,MAAa,iBAAiB,WAAgD,SAAS,eACrF,EAAE,WAAW,OAAO,SAAS,GAAG,SAChC,KACA;AACA,QAAO,oBAACD,OAAW,UAAZ;EAA0B;EAAK,WAAW,GAAGC,sBAAO,SAAS,GAAG,aAAa;EAAM,aAAW;EAAM,GAAI;EAAS,CAAA;EACxH;AAEF,MAAM,cAA0C;CAC9C,OAAOA,sBAAO;CACd,MAAMA,sBAAO;CACb,QAAQA,sBAAO;CACf,KAAKA,sBAAO;CACb;AAED,MAAa,cAAc,WAA6C,SAAS,YAAY,EAAE,WAAW,OAAO,SAAS,GAAG,SAAS,KAAK;AACzI,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,YAAY,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACtH;AAEF,MAAa,gBAAgB,WAA+C,SAAS,cAAc,EAAE,WAAW,GAAG,SAAS,KAAK;AAC/H,QAAO,oBAACD,OAAW,SAAZ;EAAyB;EAAK,WAAW,GAAGC,sBAAO,QAAQ,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACrG;AAEF,MAAa,cAAc,WAAiD,SAAS,YAAY,EAAE,WAAW,GAAG,SAAS,KAAK;AAC7H,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG;AAEF,MAAa,oBAAoB,WAAyD,SAAS,kBACjG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,aAAZ;EAA6B;EAAK,WAAW,GAAGC,sBAAO,YAAY,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC7G;AAEF,MAAa,cAAc,WAAgD,SAAS,YAAY,EAAE,WAAW,GAAG,SAAS,KAAK;AAC5H,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG;;AAGF,SAAgB,gBAAgB,EAAE,aAAqC;AACrE,QAAO,oBAAC,OAAD;EAAK,WAAW,GAAGA,sBAAO,cAAc,GAAG,aAAa;EAAM,eAAA;EAAc,CAAA;;;AAIrF,SAAgB,aAAa,EAAE,WAAW,GAAG,SAA+C;AAC1F,QAAO,oBAAC,OAAD;EAAK,WAAW,GAAGA,sBAAO,OAAO,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA"}
|