@nanisoft/prism-ui 0.4.0 → 0.5.1
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 +81 -0
- package/THIRD-PARTY-NOTICES.md +48 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/blocks/app-shell-01/app-shell.d.ts +38 -0
- package/dist/blocks/app-shell-01/app-shell.d.ts.map +1 -0
- package/dist/blocks/app-shell-01/app-shell.js +27 -0
- package/dist/blocks/app-shell-01/index.d.ts +3 -0
- package/dist/blocks/app-shell-01/index.d.ts.map +1 -0
- package/dist/blocks/app-shell-01/index.js +1 -0
- package/dist/blocks/auth-form-01/auth-form.d.ts +52 -0
- package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -0
- package/dist/blocks/auth-form-01/auth-form.js +23 -0
- package/dist/blocks/auth-form-01/index.d.ts +3 -0
- package/dist/blocks/auth-form-01/index.d.ts.map +1 -0
- package/dist/blocks/auth-form-01/index.js +1 -0
- package/dist/blocks/cta-01/cta.d.ts +23 -0
- package/dist/blocks/cta-01/cta.d.ts.map +1 -0
- package/dist/blocks/cta-01/cta.js +24 -0
- package/dist/blocks/cta-01/index.d.ts +2 -0
- package/dist/blocks/cta-01/index.d.ts.map +1 -0
- package/dist/blocks/cta-01/index.js +1 -0
- package/dist/blocks/data-table-01/data-table.d.ts +102 -0
- package/dist/blocks/data-table-01/data-table.d.ts.map +1 -0
- package/dist/blocks/data-table-01/data-table.js +116 -0
- package/dist/blocks/data-table-01/index.d.ts +3 -0
- package/dist/blocks/data-table-01/index.d.ts.map +1 -0
- package/dist/blocks/data-table-01/index.js +1 -0
- package/dist/blocks/feature-grid-01/feature-grid.d.ts +27 -0
- package/dist/blocks/feature-grid-01/feature-grid.d.ts.map +1 -0
- package/dist/blocks/feature-grid-01/feature-grid.js +14 -0
- package/dist/blocks/feature-grid-01/index.d.ts +2 -0
- package/dist/blocks/feature-grid-01/index.d.ts.map +1 -0
- package/dist/blocks/feature-grid-01/index.js +1 -0
- package/dist/blocks/hero-01/hero.d.ts +30 -0
- package/dist/blocks/hero-01/hero.d.ts.map +1 -0
- package/dist/blocks/hero-01/hero.js +12 -0
- package/dist/blocks/hero-01/index.d.ts +2 -0
- package/dist/blocks/hero-01/index.d.ts.map +1 -0
- package/dist/blocks/hero-01/index.js +1 -0
- package/dist/blocks/index.d.ts +17 -4
- package/dist/blocks/index.d.ts.map +1 -1
- package/dist/blocks/index.js +17 -6
- package/dist/blocks/page-header-01/index.d.ts +3 -0
- package/dist/blocks/page-header-01/index.d.ts.map +1 -0
- package/dist/blocks/page-header-01/index.js +1 -0
- package/dist/blocks/page-header-01/page-header.d.ts +48 -0
- package/dist/blocks/page-header-01/page-header.d.ts.map +1 -0
- package/dist/blocks/page-header-01/page-header.js +27 -0
- package/dist/blocks/pricing-01/index.d.ts +2 -0
- package/dist/blocks/pricing-01/index.d.ts.map +1 -0
- package/dist/blocks/pricing-01/index.js +1 -0
- package/dist/blocks/pricing-01/pricing.d.ts +35 -0
- package/dist/blocks/pricing-01/pricing.d.ts.map +1 -0
- package/dist/blocks/pricing-01/pricing.js +20 -0
- package/dist/blocks/settings-panel-01/index.d.ts +3 -0
- package/dist/blocks/settings-panel-01/index.d.ts.map +1 -0
- package/dist/blocks/settings-panel-01/index.js +1 -0
- package/dist/blocks/settings-panel-01/settings-panel.d.ts +71 -0
- package/dist/blocks/settings-panel-01/settings-panel.d.ts.map +1 -0
- package/dist/blocks/settings-panel-01/settings-panel.js +38 -0
- package/dist/blocks/stats-01/index.d.ts +2 -0
- package/dist/blocks/stats-01/index.d.ts.map +1 -0
- package/dist/blocks/stats-01/index.js +1 -0
- package/dist/blocks/stats-01/stats.d.ts +28 -0
- package/dist/blocks/stats-01/stats.d.ts.map +1 -0
- package/dist/blocks/stats-01/stats.js +27 -0
- package/dist/catalog.d.ts +28 -0
- package/dist/catalog.d.ts.map +1 -0
- package/dist/catalog.js +502 -0
- package/dist/components/index.d.ts +52 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +37 -5
- package/dist/components/ui/accordion.d.ts +65 -0
- package/dist/components/ui/accordion.d.ts.map +1 -0
- package/dist/components/ui/accordion.js +30 -0
- package/dist/components/ui/alert.d.ts +19 -0
- package/dist/components/ui/alert.d.ts.map +1 -0
- package/dist/components/ui/alert.js +31 -0
- package/dist/components/ui/avatar.d.ts +47 -0
- package/dist/components/ui/avatar.d.ts.map +1 -0
- package/dist/components/ui/avatar.js +30 -0
- package/dist/components/ui/badge.d.ts +14 -0
- package/dist/components/ui/badge.d.ts.map +1 -0
- package/dist/components/ui/badge.js +26 -0
- package/dist/components/ui/breadcrumb.d.ts +35 -0
- package/dist/components/ui/breadcrumb.d.ts.map +1 -0
- package/dist/components/ui/breadcrumb.js +48 -0
- package/dist/components/ui/button.d.ts +16 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/button.js +63 -0
- package/dist/components/ui/card.d.ts +16 -0
- package/dist/components/ui/card.d.ts.map +1 -0
- package/dist/components/ui/card.js +28 -0
- package/dist/components/ui/checkbox.d.ts +43 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -0
- package/dist/components/ui/checkbox.js +18 -0
- package/dist/components/ui/dialog.d.ts +81 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/dialog.js +60 -0
- package/dist/components/ui/dropdown-menu.d.ts +189 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu.js +67 -0
- package/dist/components/ui/field.d.ts +36 -0
- package/dist/components/ui/field.d.ts.map +1 -0
- package/dist/components/ui/field.js +46 -0
- package/dist/components/ui/input.d.ts +12 -0
- package/dist/components/ui/input.d.ts.map +1 -0
- package/dist/components/ui/input.js +14 -0
- package/dist/components/ui/kbd.d.ts +10 -0
- package/dist/components/ui/kbd.d.ts.map +1 -0
- package/dist/components/ui/kbd.js +12 -0
- package/dist/components/ui/pagination.d.ts +40 -0
- package/dist/components/ui/pagination.d.ts.map +1 -0
- package/dist/components/ui/pagination.js +49 -0
- package/dist/components/ui/popover.d.ts +56 -0
- package/dist/components/ui/popover.d.ts.map +1 -0
- package/dist/components/ui/popover.js +25 -0
- package/dist/components/ui/progress.d.ts +38 -0
- package/dist/components/ui/progress.d.ts.map +1 -0
- package/dist/components/ui/progress.js +17 -0
- package/dist/components/ui/radio-group.d.ts +66 -0
- package/dist/components/ui/radio-group.d.ts.map +1 -0
- package/dist/components/ui/radio-group.js +30 -0
- package/dist/components/ui/section.d.ts +37 -0
- package/dist/components/ui/section.d.ts.map +1 -0
- package/dist/components/ui/section.js +12 -0
- package/dist/components/ui/select.d.ts +124 -0
- package/dist/components/ui/select.d.ts.map +1 -0
- package/dist/components/ui/select.js +47 -0
- package/dist/components/ui/separator.d.ts +16 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/separator.js +15 -0
- package/dist/components/ui/skeleton.d.ts +12 -0
- package/dist/components/ui/skeleton.d.ts.map +1 -0
- package/dist/components/ui/skeleton.js +14 -0
- package/dist/components/ui/slider.d.ts +43 -0
- package/dist/components/ui/slider.d.ts.map +1 -0
- package/dist/components/ui/slider.js +17 -0
- package/dist/components/ui/switch.d.ts +42 -0
- package/dist/components/ui/switch.d.ts.map +1 -0
- package/dist/components/ui/switch.js +16 -0
- package/dist/components/ui/table.d.ts +27 -0
- package/dist/components/ui/table.d.ts.map +1 -0
- package/dist/components/ui/table.js +43 -0
- package/dist/components/ui/tabs.d.ts +66 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/components/ui/tabs.js +29 -0
- package/dist/components/ui/textarea.d.ts +11 -0
- package/dist/components/ui/textarea.d.ts.map +1 -0
- package/dist/components/ui/textarea.js +13 -0
- package/dist/components/ui/tooltip.d.ts +63 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/components/ui/tooltip.js +25 -0
- package/dist/components/ui/typography.d.ts +32 -0
- package/dist/components/ui/typography.d.ts.map +1 -0
- package/dist/components/ui/typography.js +51 -0
- package/dist/index.d.ts +54 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +51 -20
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +5 -0
- package/dist/pages/auth-page/index.d.ts +36 -0
- package/dist/pages/auth-page/index.d.ts.map +1 -0
- package/dist/pages/auth-page/index.js +23 -0
- package/dist/pages/dashboard-page/index.d.ts +36 -0
- package/dist/pages/dashboard-page/index.d.ts.map +1 -0
- package/dist/pages/dashboard-page/index.js +24 -0
- package/dist/pages/index.d.ts +16 -2
- package/dist/pages/index.d.ts.map +1 -1
- package/dist/pages/index.js +12 -4
- package/dist/pages/marketing-page/index.d.ts +43 -0
- package/dist/pages/marketing-page/index.d.ts.map +1 -0
- package/dist/pages/marketing-page/index.js +25 -0
- package/dist/pages/settings-page/index.d.ts +47 -0
- package/dist/pages/settings-page/index.d.ts.map +1 -0
- package/dist/pages/settings-page/index.js +24 -0
- package/dist/provider/index.d.ts +11 -4
- package/dist/provider/index.d.ts.map +1 -1
- package/dist/provider/index.js +9 -5
- package/dist/provider/provider.d.ts +37 -0
- package/dist/provider/provider.d.ts.map +1 -0
- package/dist/provider/provider.js +87 -0
- package/dist/provider/theme-script.d.ts +17 -0
- package/dist/provider/theme-script.d.ts.map +1 -0
- package/dist/provider/theme-script.js +28 -0
- package/dist/styles.css +2366 -325
- package/dist/theming/index.d.ts +42 -3
- package/dist/theming/index.d.ts.map +1 -1
- package/dist/theming/index.js +60 -8
- package/package.json +64 -64
- package/dist/blocks/component-demo/ComponentDemo.d.ts +0 -13
- package/dist/blocks/component-demo/ComponentDemo.d.ts.map +0 -1
- package/dist/blocks/component-demo/ComponentDemo.js +0 -5
- package/dist/blocks/component-demo/ComponentDemo.js.map +0 -1
- package/dist/blocks/component-demo/index.d.ts +0 -2
- package/dist/blocks/component-demo/index.d.ts.map +0 -1
- package/dist/blocks/component-demo/index.js +0 -2
- package/dist/blocks/component-demo/index.js.map +0 -1
- package/dist/blocks/component-demo.d.ts +0 -15
- package/dist/blocks/component-demo.d.ts.map +0 -1
- package/dist/blocks/component-demo.js +0 -11
- package/dist/blocks/component-demo.js.map +0 -1
- package/dist/blocks/index.js.map +0 -1
- package/dist/blocks/page-header/PageHeader.d.ts +0 -11
- package/dist/blocks/page-header/PageHeader.d.ts.map +0 -1
- package/dist/blocks/page-header/PageHeader.js +0 -9
- package/dist/blocks/page-header/PageHeader.js.map +0 -1
- package/dist/blocks/page-header/index.d.ts +0 -2
- package/dist/blocks/page-header/index.d.ts.map +0 -1
- package/dist/blocks/page-header/index.js +0 -2
- package/dist/blocks/page-header/index.js.map +0 -1
- package/dist/blocks/page-header.d.ts +0 -16
- package/dist/blocks/page-header.d.ts.map +0 -1
- package/dist/blocks/page-header.js +0 -13
- package/dist/blocks/page-header.js.map +0 -1
- package/dist/blocks/site-footer/SiteFooter.d.ts +0 -26
- package/dist/blocks/site-footer/SiteFooter.d.ts.map +0 -1
- package/dist/blocks/site-footer/SiteFooter.js +0 -10
- package/dist/blocks/site-footer/SiteFooter.js.map +0 -1
- package/dist/blocks/site-footer/index.d.ts +0 -2
- package/dist/blocks/site-footer/index.d.ts.map +0 -1
- package/dist/blocks/site-footer/index.js +0 -2
- package/dist/blocks/site-footer/index.js.map +0 -1
- package/dist/blocks/site-header/SiteHeader.d.ts +0 -19
- package/dist/blocks/site-header/SiteHeader.d.ts.map +0 -1
- package/dist/blocks/site-header/SiteHeader.js +0 -32
- package/dist/blocks/site-header/SiteHeader.js.map +0 -1
- package/dist/blocks/site-header/index.d.ts +0 -2
- package/dist/blocks/site-header/index.d.ts.map +0 -1
- package/dist/blocks/site-header/index.js +0 -2
- package/dist/blocks/site-header/index.js.map +0 -1
- package/dist/components/affix/index.d.ts +0 -2
- package/dist/components/affix/index.d.ts.map +0 -1
- package/dist/components/affix/index.js +0 -3
- package/dist/components/affix/index.js.map +0 -1
- package/dist/components/alert/index.d.ts +0 -2
- package/dist/components/alert/index.d.ts.map +0 -1
- package/dist/components/alert/index.js +0 -3
- package/dist/components/alert/index.js.map +0 -1
- package/dist/components/anchor/index.d.ts +0 -2
- package/dist/components/anchor/index.d.ts.map +0 -1
- package/dist/components/anchor/index.js +0 -3
- package/dist/components/anchor/index.js.map +0 -1
- package/dist/components/auto-complete/index.d.ts +0 -2
- package/dist/components/auto-complete/index.d.ts.map +0 -1
- package/dist/components/auto-complete/index.js +0 -3
- package/dist/components/auto-complete/index.js.map +0 -1
- package/dist/components/avatar/index.d.ts +0 -2
- package/dist/components/avatar/index.d.ts.map +0 -1
- package/dist/components/avatar/index.js +0 -3
- package/dist/components/avatar/index.js.map +0 -1
- package/dist/components/back-top/index.d.ts +0 -2
- package/dist/components/back-top/index.d.ts.map +0 -1
- package/dist/components/back-top/index.js +0 -3
- package/dist/components/back-top/index.js.map +0 -1
- package/dist/components/badge/index.d.ts +0 -2
- package/dist/components/badge/index.d.ts.map +0 -1
- package/dist/components/badge/index.js +0 -3
- package/dist/components/badge/index.js.map +0 -1
- package/dist/components/border-beam/index.d.ts +0 -2
- package/dist/components/border-beam/index.d.ts.map +0 -1
- package/dist/components/border-beam/index.js +0 -3
- package/dist/components/border-beam/index.js.map +0 -1
- package/dist/components/breadcrumb/index.d.ts +0 -2
- package/dist/components/breadcrumb/index.d.ts.map +0 -1
- package/dist/components/breadcrumb/index.js +0 -3
- package/dist/components/breadcrumb/index.js.map +0 -1
- package/dist/components/button/index.d.ts +0 -2
- package/dist/components/button/index.d.ts.map +0 -1
- package/dist/components/button/index.js +0 -3
- package/dist/components/button/index.js.map +0 -1
- package/dist/components/calendar/index.d.ts +0 -2
- package/dist/components/calendar/index.d.ts.map +0 -1
- package/dist/components/calendar/index.js +0 -3
- package/dist/components/calendar/index.js.map +0 -1
- package/dist/components/card/index.d.ts +0 -2
- package/dist/components/card/index.d.ts.map +0 -1
- package/dist/components/card/index.js +0 -3
- package/dist/components/card/index.js.map +0 -1
- package/dist/components/carousel/index.d.ts +0 -2
- package/dist/components/carousel/index.d.ts.map +0 -1
- package/dist/components/carousel/index.js +0 -3
- package/dist/components/carousel/index.js.map +0 -1
- package/dist/components/cascader/index.d.ts +0 -2
- package/dist/components/cascader/index.d.ts.map +0 -1
- package/dist/components/cascader/index.js +0 -3
- package/dist/components/cascader/index.js.map +0 -1
- package/dist/components/checkbox/index.d.ts +0 -2
- package/dist/components/checkbox/index.d.ts.map +0 -1
- package/dist/components/checkbox/index.js +0 -3
- package/dist/components/checkbox/index.js.map +0 -1
- package/dist/components/col/index.d.ts +0 -2
- package/dist/components/col/index.d.ts.map +0 -1
- package/dist/components/col/index.js +0 -3
- package/dist/components/col/index.js.map +0 -1
- package/dist/components/collapse/index.d.ts +0 -2
- package/dist/components/collapse/index.d.ts.map +0 -1
- package/dist/components/collapse/index.js +0 -3
- package/dist/components/collapse/index.js.map +0 -1
- package/dist/components/color-picker/index.d.ts +0 -2
- package/dist/components/color-picker/index.d.ts.map +0 -1
- package/dist/components/color-picker/index.js +0 -3
- package/dist/components/color-picker/index.js.map +0 -1
- package/dist/components/date-picker/index.d.ts +0 -2
- package/dist/components/date-picker/index.d.ts.map +0 -1
- package/dist/components/date-picker/index.js +0 -3
- package/dist/components/date-picker/index.js.map +0 -1
- package/dist/components/descriptions/index.d.ts +0 -2
- package/dist/components/descriptions/index.d.ts.map +0 -1
- package/dist/components/descriptions/index.js +0 -3
- package/dist/components/descriptions/index.js.map +0 -1
- package/dist/components/display-title/DisplayTitle.d.ts +0 -7
- package/dist/components/display-title/DisplayTitle.d.ts.map +0 -1
- package/dist/components/display-title/DisplayTitle.js +0 -12
- package/dist/components/display-title/DisplayTitle.js.map +0 -1
- package/dist/components/display-title/index.d.ts +0 -2
- package/dist/components/display-title/index.d.ts.map +0 -1
- package/dist/components/display-title/index.js +0 -2
- package/dist/components/display-title/index.js.map +0 -1
- package/dist/components/divider/index.d.ts +0 -2
- package/dist/components/divider/index.d.ts.map +0 -1
- package/dist/components/divider/index.js +0 -3
- package/dist/components/divider/index.js.map +0 -1
- package/dist/components/drawer/index.d.ts +0 -2
- package/dist/components/drawer/index.d.ts.map +0 -1
- package/dist/components/drawer/index.js +0 -3
- package/dist/components/drawer/index.js.map +0 -1
- package/dist/components/dropdown/index.d.ts +0 -2
- package/dist/components/dropdown/index.d.ts.map +0 -1
- package/dist/components/dropdown/index.js +0 -3
- package/dist/components/dropdown/index.js.map +0 -1
- package/dist/components/empty/index.d.ts +0 -2
- package/dist/components/empty/index.d.ts.map +0 -1
- package/dist/components/empty/index.js +0 -3
- package/dist/components/empty/index.js.map +0 -1
- package/dist/components/flex/index.d.ts +0 -2
- package/dist/components/flex/index.d.ts.map +0 -1
- package/dist/components/flex/index.js +0 -3
- package/dist/components/flex/index.js.map +0 -1
- package/dist/components/float-button/index.d.ts +0 -2
- package/dist/components/float-button/index.d.ts.map +0 -1
- package/dist/components/float-button/index.js +0 -3
- package/dist/components/float-button/index.js.map +0 -1
- package/dist/components/form/index.d.ts +0 -2
- package/dist/components/form/index.d.ts.map +0 -1
- package/dist/components/form/index.js +0 -3
- package/dist/components/form/index.js.map +0 -1
- package/dist/components/grid/index.d.ts +0 -2
- package/dist/components/grid/index.d.ts.map +0 -1
- package/dist/components/grid/index.js +0 -3
- package/dist/components/grid/index.js.map +0 -1
- package/dist/components/image/index.d.ts +0 -2
- package/dist/components/image/index.d.ts.map +0 -1
- package/dist/components/image/index.js +0 -3
- package/dist/components/image/index.js.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/input/index.d.ts +0 -2
- package/dist/components/input/index.d.ts.map +0 -1
- package/dist/components/input/index.js +0 -3
- package/dist/components/input/index.js.map +0 -1
- package/dist/components/input-number/index.d.ts +0 -2
- package/dist/components/input-number/index.d.ts.map +0 -1
- package/dist/components/input-number/index.js +0 -3
- package/dist/components/input-number/index.js.map +0 -1
- package/dist/components/layout/index.d.ts +0 -2
- package/dist/components/layout/index.d.ts.map +0 -1
- package/dist/components/layout/index.js +0 -3
- package/dist/components/layout/index.js.map +0 -1
- package/dist/components/list/index.d.ts +0 -2
- package/dist/components/list/index.d.ts.map +0 -1
- package/dist/components/list/index.js +0 -3
- package/dist/components/list/index.js.map +0 -1
- package/dist/components/listy/index.d.ts +0 -2
- package/dist/components/listy/index.d.ts.map +0 -1
- package/dist/components/listy/index.js +0 -3
- package/dist/components/listy/index.js.map +0 -1
- package/dist/components/masonry/index.d.ts +0 -2
- package/dist/components/masonry/index.d.ts.map +0 -1
- package/dist/components/masonry/index.js +0 -3
- package/dist/components/masonry/index.js.map +0 -1
- package/dist/components/mentions/index.d.ts +0 -2
- package/dist/components/mentions/index.d.ts.map +0 -1
- package/dist/components/mentions/index.js +0 -3
- package/dist/components/mentions/index.js.map +0 -1
- package/dist/components/menu/index.d.ts +0 -2
- package/dist/components/menu/index.d.ts.map +0 -1
- package/dist/components/menu/index.js +0 -3
- package/dist/components/menu/index.js.map +0 -1
- package/dist/components/modal/index.d.ts +0 -2
- package/dist/components/modal/index.d.ts.map +0 -1
- package/dist/components/modal/index.js +0 -3
- package/dist/components/modal/index.js.map +0 -1
- package/dist/components/pagination/index.d.ts +0 -2
- package/dist/components/pagination/index.d.ts.map +0 -1
- package/dist/components/pagination/index.js +0 -3
- package/dist/components/pagination/index.js.map +0 -1
- package/dist/components/popconfirm/index.d.ts +0 -2
- package/dist/components/popconfirm/index.d.ts.map +0 -1
- package/dist/components/popconfirm/index.js +0 -3
- package/dist/components/popconfirm/index.js.map +0 -1
- package/dist/components/popover/index.d.ts +0 -2
- package/dist/components/popover/index.d.ts.map +0 -1
- package/dist/components/popover/index.js +0 -3
- package/dist/components/popover/index.js.map +0 -1
- package/dist/components/progress/index.d.ts +0 -2
- package/dist/components/progress/index.d.ts.map +0 -1
- package/dist/components/progress/index.js +0 -3
- package/dist/components/progress/index.js.map +0 -1
- package/dist/components/qrcode/index.d.ts +0 -2
- package/dist/components/qrcode/index.d.ts.map +0 -1
- package/dist/components/qrcode/index.js +0 -3
- package/dist/components/qrcode/index.js.map +0 -1
- package/dist/components/radio/index.d.ts +0 -2
- package/dist/components/radio/index.d.ts.map +0 -1
- package/dist/components/radio/index.js +0 -3
- package/dist/components/radio/index.js.map +0 -1
- package/dist/components/rate/index.d.ts +0 -2
- package/dist/components/rate/index.d.ts.map +0 -1
- package/dist/components/rate/index.js +0 -3
- package/dist/components/rate/index.js.map +0 -1
- package/dist/components/result/index.d.ts +0 -2
- package/dist/components/result/index.d.ts.map +0 -1
- package/dist/components/result/index.js +0 -3
- package/dist/components/result/index.js.map +0 -1
- package/dist/components/row/index.d.ts +0 -2
- package/dist/components/row/index.d.ts.map +0 -1
- package/dist/components/row/index.js +0 -3
- package/dist/components/row/index.js.map +0 -1
- package/dist/components/segmented/index.d.ts +0 -2
- package/dist/components/segmented/index.d.ts.map +0 -1
- package/dist/components/segmented/index.js +0 -3
- package/dist/components/segmented/index.js.map +0 -1
- package/dist/components/select/index.d.ts +0 -2
- package/dist/components/select/index.d.ts.map +0 -1
- package/dist/components/select/index.js +0 -3
- package/dist/components/select/index.js.map +0 -1
- package/dist/components/skeleton/index.d.ts +0 -2
- package/dist/components/skeleton/index.d.ts.map +0 -1
- package/dist/components/skeleton/index.js +0 -3
- package/dist/components/skeleton/index.js.map +0 -1
- package/dist/components/slider/index.d.ts +0 -2
- package/dist/components/slider/index.d.ts.map +0 -1
- package/dist/components/slider/index.js +0 -3
- package/dist/components/slider/index.js.map +0 -1
- package/dist/components/space/index.d.ts +0 -2
- package/dist/components/space/index.d.ts.map +0 -1
- package/dist/components/space/index.js +0 -3
- package/dist/components/space/index.js.map +0 -1
- package/dist/components/spin/index.d.ts +0 -2
- package/dist/components/spin/index.d.ts.map +0 -1
- package/dist/components/spin/index.js +0 -3
- package/dist/components/spin/index.js.map +0 -1
- package/dist/components/splitter/index.d.ts +0 -2
- package/dist/components/splitter/index.d.ts.map +0 -1
- package/dist/components/splitter/index.js +0 -3
- package/dist/components/splitter/index.js.map +0 -1
- package/dist/components/statistic/index.d.ts +0 -2
- package/dist/components/statistic/index.d.ts.map +0 -1
- package/dist/components/statistic/index.js +0 -3
- package/dist/components/statistic/index.js.map +0 -1
- package/dist/components/steps/index.d.ts +0 -2
- package/dist/components/steps/index.d.ts.map +0 -1
- package/dist/components/steps/index.js +0 -3
- package/dist/components/steps/index.js.map +0 -1
- package/dist/components/switch/index.d.ts +0 -2
- package/dist/components/switch/index.d.ts.map +0 -1
- package/dist/components/switch/index.js +0 -3
- package/dist/components/switch/index.js.map +0 -1
- package/dist/components/table/index.d.ts +0 -2
- package/dist/components/table/index.d.ts.map +0 -1
- package/dist/components/table/index.js +0 -3
- package/dist/components/table/index.js.map +0 -1
- package/dist/components/tabs/index.d.ts +0 -2
- package/dist/components/tabs/index.d.ts.map +0 -1
- package/dist/components/tabs/index.js +0 -3
- package/dist/components/tabs/index.js.map +0 -1
- package/dist/components/tag/index.d.ts +0 -2
- package/dist/components/tag/index.d.ts.map +0 -1
- package/dist/components/tag/index.js +0 -3
- package/dist/components/tag/index.js.map +0 -1
- package/dist/components/time-picker/index.d.ts +0 -2
- package/dist/components/time-picker/index.d.ts.map +0 -1
- package/dist/components/time-picker/index.js +0 -3
- package/dist/components/time-picker/index.js.map +0 -1
- package/dist/components/timeline/index.d.ts +0 -2
- package/dist/components/timeline/index.d.ts.map +0 -1
- package/dist/components/timeline/index.js +0 -3
- package/dist/components/timeline/index.js.map +0 -1
- package/dist/components/tooltip/index.d.ts +0 -2
- package/dist/components/tooltip/index.d.ts.map +0 -1
- package/dist/components/tooltip/index.js +0 -3
- package/dist/components/tooltip/index.js.map +0 -1
- package/dist/components/tour/index.d.ts +0 -2
- package/dist/components/tour/index.d.ts.map +0 -1
- package/dist/components/tour/index.js +0 -3
- package/dist/components/tour/index.js.map +0 -1
- package/dist/components/transfer/index.d.ts +0 -2
- package/dist/components/transfer/index.d.ts.map +0 -1
- package/dist/components/transfer/index.js +0 -3
- package/dist/components/transfer/index.js.map +0 -1
- package/dist/components/tree/index.d.ts +0 -2
- package/dist/components/tree/index.d.ts.map +0 -1
- package/dist/components/tree/index.js +0 -3
- package/dist/components/tree/index.js.map +0 -1
- package/dist/components/tree-select/index.d.ts +0 -2
- package/dist/components/tree-select/index.d.ts.map +0 -1
- package/dist/components/tree-select/index.js +0 -3
- package/dist/components/tree-select/index.js.map +0 -1
- package/dist/components/typography/index.d.ts +0 -2
- package/dist/components/typography/index.d.ts.map +0 -1
- package/dist/components/typography/index.js +0 -3
- package/dist/components/typography/index.js.map +0 -1
- package/dist/components/upload/index.d.ts +0 -2
- package/dist/components/upload/index.d.ts.map +0 -1
- package/dist/components/upload/index.js +0 -3
- package/dist/components/upload/index.js.map +0 -1
- package/dist/components/watermark/index.d.ts +0 -2
- package/dist/components/watermark/index.d.ts.map +0 -1
- package/dist/components/watermark/index.js +0 -3
- package/dist/components/watermark/index.js.map +0 -1
- package/dist/generated/antd-components.d.ts +0 -139
- package/dist/generated/antd-components.d.ts.map +0 -1
- package/dist/generated/antd-components.js +0 -72
- package/dist/generated/antd-components.js.map +0 -1
- package/dist/generated/icons.d.ts +0 -2
- package/dist/generated/icons.d.ts.map +0 -1
- package/dist/generated/icons.js +0 -3
- package/dist/generated/icons.js.map +0 -1
- package/dist/generated/pass-throughs.d.ts +0 -213
- package/dist/generated/pass-throughs.d.ts.map +0 -1
- package/dist/generated/pass-throughs.js +0 -75
- package/dist/generated/pass-throughs.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/pages/blog-layout/BlogLayout.d.ts +0 -22
- package/dist/pages/blog-layout/BlogLayout.d.ts.map +0 -1
- package/dist/pages/blog-layout/BlogLayout.js +0 -5
- package/dist/pages/blog-layout/BlogLayout.js.map +0 -1
- package/dist/pages/blog-layout/index.d.ts +0 -2
- package/dist/pages/blog-layout/index.d.ts.map +0 -1
- package/dist/pages/blog-layout/index.js +0 -2
- package/dist/pages/blog-layout/index.js.map +0 -1
- package/dist/pages/blog-layout.d.ts +0 -22
- package/dist/pages/blog-layout.d.ts.map +0 -1
- package/dist/pages/blog-layout.js +0 -11
- package/dist/pages/blog-layout.js.map +0 -1
- package/dist/pages/docs-shell/DocsShell.d.ts +0 -37
- package/dist/pages/docs-shell/DocsShell.d.ts.map +0 -1
- package/dist/pages/docs-shell/DocsShell.js +0 -8
- package/dist/pages/docs-shell/DocsShell.js.map +0 -1
- package/dist/pages/docs-shell/index.d.ts +0 -2
- package/dist/pages/docs-shell/index.d.ts.map +0 -1
- package/dist/pages/docs-shell/index.js +0 -2
- package/dist/pages/docs-shell/index.js.map +0 -1
- package/dist/pages/docs-shell.d.ts +0 -17
- package/dist/pages/docs-shell.d.ts.map +0 -1
- package/dist/pages/docs-shell.js +0 -11
- package/dist/pages/docs-shell.js.map +0 -1
- package/dist/pages/index.js.map +0 -1
- package/dist/products/ProductDot.d.ts +0 -7
- package/dist/products/ProductDot.d.ts.map +0 -1
- package/dist/products/ProductDot.js +0 -7
- package/dist/products/ProductDot.js.map +0 -1
- package/dist/products/index.d.ts +0 -22
- package/dist/products/index.d.ts.map +0 -1
- package/dist/products/index.js +0 -72
- package/dist/products/index.js.map +0 -1
- package/dist/prototype/index.d.ts +0 -2
- package/dist/prototype/index.d.ts.map +0 -1
- package/dist/prototype/index.js +0 -2
- package/dist/prototype/index.js.map +0 -1
- package/dist/prototype/landing/bits.d.ts +0 -29
- package/dist/prototype/landing/bits.d.ts.map +0 -1
- package/dist/prototype/landing/bits.js +0 -50
- package/dist/prototype/landing/bits.js.map +0 -1
- package/dist/prototype/landing/index.d.ts +0 -10
- package/dist/prototype/landing/index.d.ts.map +0 -1
- package/dist/prototype/landing/index.js +0 -7
- package/dist/prototype/landing/index.js.map +0 -1
- package/dist/prototype/landing/switcher.d.ts +0 -17
- package/dist/prototype/landing/switcher.d.ts.map +0 -1
- package/dist/prototype/landing/switcher.js +0 -71
- package/dist/prototype/landing/switcher.js.map +0 -1
- package/dist/prototype/landing/theme.d.ts +0 -44
- package/dist/prototype/landing/theme.d.ts.map +0 -1
- package/dist/prototype/landing/theme.js +0 -98
- package/dist/prototype/landing/theme.js.map +0 -1
- package/dist/prototype/landing/variant-a-specimen.d.ts +0 -3
- package/dist/prototype/landing/variant-a-specimen.d.ts.map +0 -1
- package/dist/prototype/landing/variant-a-specimen.js +0 -86
- package/dist/prototype/landing/variant-a-specimen.js.map +0 -1
- package/dist/prototype/landing/variant-b-ledger.d.ts +0 -3
- package/dist/prototype/landing/variant-b-ledger.d.ts.map +0 -1
- package/dist/prototype/landing/variant-b-ledger.js +0 -51
- package/dist/prototype/landing/variant-b-ledger.js.map +0 -1
- package/dist/prototype/landing/variant-c-workbench.d.ts +0 -3
- package/dist/prototype/landing/variant-c-workbench.d.ts.map +0 -1
- package/dist/prototype/landing/variant-c-workbench.js +0 -98
- package/dist/prototype/landing/variant-c-workbench.js.map +0 -1
- package/dist/provider/PrismLinkContext.d.ts +0 -19
- package/dist/provider/PrismLinkContext.d.ts.map +0 -1
- package/dist/provider/PrismLinkContext.js +0 -11
- package/dist/provider/PrismLinkContext.js.map +0 -1
- package/dist/provider/PrismProvider.d.ts +0 -9
- package/dist/provider/PrismProvider.d.ts.map +0 -1
- package/dist/provider/PrismProvider.js +0 -21
- package/dist/provider/PrismProvider.js.map +0 -1
- package/dist/provider/PrismThemeMode.d.ts +0 -17
- package/dist/provider/PrismThemeMode.d.ts.map +0 -1
- package/dist/provider/PrismThemeMode.js +0 -61
- package/dist/provider/PrismThemeMode.js.map +0 -1
- package/dist/provider/index.js.map +0 -1
- package/dist/provider/mergePrismTheme.d.ts +0 -12
- package/dist/provider/mergePrismTheme.d.ts.map +0 -1
- package/dist/provider/mergePrismTheme.js +0 -52
- package/dist/provider/mergePrismTheme.js.map +0 -1
- package/dist/theming/bake.d.ts +0 -24
- package/dist/theming/bake.d.ts.map +0 -1
- package/dist/theming/bake.js +0 -78
- package/dist/theming/bake.js.map +0 -1
- package/dist/theming/bootScript.d.ts +0 -9
- package/dist/theming/bootScript.d.ts.map +0 -1
- package/dist/theming/bootScript.js +0 -27
- package/dist/theming/bootScript.js.map +0 -1
- package/dist/theming/index.js.map +0 -1
- package/dist/theming/storage.d.ts +0 -5
- package/dist/theming/storage.d.ts.map +0 -1
- package/dist/theming/storage.js +0 -11
- package/dist/theming/storage.js.map +0 -1
- package/dist/wrapped-registry.d.ts +0 -55
- package/dist/wrapped-registry.d.ts.map +0 -1
- package/dist/wrapped-registry.js +0 -160
- package/dist/wrapped-registry.js.map +0 -1
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Dialog as DialogPrimitive } from '@base-ui/react/dialog';
|
|
4
|
+
import { XIcon } from 'lucide-react';
|
|
5
|
+
import { cn } from '../../lib/utils';
|
|
6
|
+
const VIEWPORT = {
|
|
7
|
+
center: 'fixed inset-0 z-50 flex items-center justify-center p-4',
|
|
8
|
+
top: 'fixed inset-x-0 top-0 z-50 flex justify-center',
|
|
9
|
+
bottom: 'fixed inset-x-0 bottom-0 z-50 flex justify-center',
|
|
10
|
+
left: 'fixed inset-y-0 left-0 z-50 flex',
|
|
11
|
+
right: 'fixed inset-y-0 right-0 z-50 flex',
|
|
12
|
+
};
|
|
13
|
+
const POPUP = {
|
|
14
|
+
center: 'w-full max-w-md rounded-xl border data-[starting-style]:scale-95 data-[ending-style]:scale-95',
|
|
15
|
+
top: 'w-full rounded-b-xl border-x border-b data-[starting-style]:-translate-y-4 data-[ending-style]:-translate-y-4',
|
|
16
|
+
bottom: 'w-full rounded-t-xl border-x border-t data-[starting-style]:translate-y-4 data-[ending-style]:translate-y-4',
|
|
17
|
+
left: 'h-full w-3/4 max-w-sm rounded-r-xl border-y border-r data-[starting-style]:-translate-x-4 data-[ending-style]:-translate-x-4',
|
|
18
|
+
right: 'h-full w-3/4 max-w-sm rounded-l-xl border-y border-l data-[starting-style]:translate-x-4 data-[ending-style]:translate-x-4',
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* A modal surface that interrupts the page.
|
|
22
|
+
*
|
|
23
|
+
* The dialog traps focus while it is open, locks page scroll, closes on
|
|
24
|
+
* Escape and on an outside press, and returns focus to its trigger when it
|
|
25
|
+
* closes. Always give it a `DialogTitle`, which names the dialog for every
|
|
26
|
+
* reader. Use a Dialog for a decision or a short task; for content that is
|
|
27
|
+
* not a task, use a Popover or navigate to a page.
|
|
28
|
+
*/
|
|
29
|
+
function Dialog({ ...props }) {
|
|
30
|
+
return _jsx(DialogPrimitive.Root, { ...props });
|
|
31
|
+
}
|
|
32
|
+
/** The element that opens the dialog. */
|
|
33
|
+
function DialogTrigger({ className, ...props }) {
|
|
34
|
+
return (_jsx(DialogPrimitive.Trigger, { "data-slot": "dialog-trigger", className: cn('bg-background shadow-xs inline-flex h-9 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'hover:bg-accent hover:text-accent-foreground focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'disabled:pointer-events-none disabled:opacity-50', className), ...props }));
|
|
35
|
+
}
|
|
36
|
+
/** The dialog panel, its backdrop and its portal. */
|
|
37
|
+
function DialogContent({ className, side = 'center', showCloseButton = true, children, ...props }) {
|
|
38
|
+
return (_jsxs(DialogPrimitive.Portal, { children: [_jsx(DialogPrimitive.Backdrop, { "data-slot": "dialog-backdrop", className: "bg-background/80 fixed inset-0 z-50 backdrop-blur-sm transition-opacity duration-base ease-out data-[starting-style]:opacity-0 data-[ending-style]:opacity-0" }), _jsx(DialogPrimitive.Viewport, { "data-slot": "dialog-viewport", className: VIEWPORT[side], children: _jsxs(DialogPrimitive.Popup, { "data-slot": "dialog-content", className: cn('bg-background shadow-md relative grid gap-4 p-6 outline-none', 'transition-[opacity,transform] duration-base ease-out data-[starting-style]:opacity-0 data-[ending-style]:opacity-0', POPUP[side], className), ...props, children: [children, showCloseButton ? (_jsx(DialogPrimitive.Close, { "data-slot": "dialog-close", "aria-label": "Close", className: "ring-offset-background focus-visible:ring-ring absolute top-4 right-4 rounded-sm opacity-70 outline-none transition-opacity duration-fast ease-out hover:opacity-100 focus-visible:ring-[3px] disabled:pointer-events-none", children: _jsx(XIcon, { className: "size-4" }) })) : null] }) })] }));
|
|
39
|
+
}
|
|
40
|
+
/** The dialog's heading area, above the body. */
|
|
41
|
+
function DialogHeader({ className, ...props }) {
|
|
42
|
+
return (_jsx("div", { "data-slot": "dialog-header", className: cn('flex flex-col gap-1.5 text-center sm:text-left', className), ...props }));
|
|
43
|
+
}
|
|
44
|
+
/** The dialog's action area, below the body. */
|
|
45
|
+
function DialogFooter({ className, ...props }) {
|
|
46
|
+
return (_jsx("div", { "data-slot": "dialog-footer", className: cn('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', className), ...props }));
|
|
47
|
+
}
|
|
48
|
+
/** The dialog's heading. It names the dialog for assistive technology. */
|
|
49
|
+
function DialogTitle({ className, ...props }) {
|
|
50
|
+
return (_jsx(DialogPrimitive.Title, { "data-slot": "dialog-title", className: cn('text-lg leading-none font-semibold tracking-tight', className), ...props }));
|
|
51
|
+
}
|
|
52
|
+
/** A supporting line under the title. */
|
|
53
|
+
function DialogDescription({ className, ...props }) {
|
|
54
|
+
return (_jsx(DialogPrimitive.Description, { "data-slot": "dialog-description", className: cn('text-muted-foreground text-sm', className), ...props }));
|
|
55
|
+
}
|
|
56
|
+
/** A control that closes the dialog from inside its content. */
|
|
57
|
+
function DialogClose({ className, ...props }) {
|
|
58
|
+
return (_jsx(DialogPrimitive.Close, { "data-slot": "dialog-close", className: cn('inline-flex items-center justify-center rounded-md text-sm font-medium outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'disabled:pointer-events-none disabled:opacity-50', className), ...props }));
|
|
59
|
+
}
|
|
60
|
+
export { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription, DialogClose, };
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The props the DropdownMenu root forwards to Base UI.
|
|
4
|
+
*
|
|
5
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
6
|
+
* crosses the package seam (ticket 07 section 6).
|
|
7
|
+
*/
|
|
8
|
+
export interface DropdownMenuProps {
|
|
9
|
+
/** The controlled open state. */
|
|
10
|
+
open?: boolean;
|
|
11
|
+
/** The initially open state, for an uncontrolled menu. */
|
|
12
|
+
defaultOpen?: boolean;
|
|
13
|
+
/** Called when the open state changes. */
|
|
14
|
+
onOpenChange?: (open: boolean) => void;
|
|
15
|
+
/** Whether the menu ignores user interaction. */
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
/** The trigger and the menu content. */
|
|
18
|
+
children?: React.ReactNode;
|
|
19
|
+
}
|
|
20
|
+
/** The props DropdownMenuTrigger forwards to Base UI. */
|
|
21
|
+
export interface DropdownMenuTriggerProps extends ComponentProps<'button'> {
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The props DropdownMenuContent forwards to Base UI.
|
|
25
|
+
*
|
|
26
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
27
|
+
* crosses the package seam (ticket 07 section 6).
|
|
28
|
+
*/
|
|
29
|
+
export interface DropdownMenuContentProps extends ComponentProps<'div'> {
|
|
30
|
+
/** Which side of the trigger the menu is placed on. @defaultValue bottom */
|
|
31
|
+
side?: 'top' | 'right' | 'bottom' | 'left';
|
|
32
|
+
/** How the menu aligns against the trigger. @defaultValue start */
|
|
33
|
+
align?: 'start' | 'center' | 'end';
|
|
34
|
+
/** The distance in pixels between the trigger and the menu. @defaultValue 4 */
|
|
35
|
+
sideOffset?: number;
|
|
36
|
+
/** The offset in pixels along the alignment axis. @defaultValue 0 */
|
|
37
|
+
alignOffset?: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The props DropdownMenuItem forwards to Base UI.
|
|
41
|
+
*
|
|
42
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
43
|
+
* crosses the package seam (ticket 07 section 6).
|
|
44
|
+
*/
|
|
45
|
+
export interface DropdownMenuItemProps extends ComponentProps<'div'> {
|
|
46
|
+
/** Whether the item aligns with the labels above it. @defaultValue false */
|
|
47
|
+
inset?: boolean;
|
|
48
|
+
/** Whether the item reads as a destructive action. @defaultValue default */
|
|
49
|
+
variant?: 'default' | 'destructive';
|
|
50
|
+
/** Whether the item ignores user interaction. */
|
|
51
|
+
disabled?: boolean;
|
|
52
|
+
/** Whether the menu closes when the item is chosen. @defaultValue true */
|
|
53
|
+
closeOnClick?: boolean;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* The props DropdownMenuCheckboxItem forwards to Base UI.
|
|
57
|
+
*
|
|
58
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
59
|
+
* crosses the package seam (ticket 07 section 6).
|
|
60
|
+
*/
|
|
61
|
+
export interface DropdownMenuCheckboxItemProps extends Omit<ComponentProps<'div'>, 'onChange'> {
|
|
62
|
+
/** The controlled ticked state. */
|
|
63
|
+
checked?: boolean;
|
|
64
|
+
/** The initially ticked state, for an uncontrolled item. */
|
|
65
|
+
defaultChecked?: boolean;
|
|
66
|
+
/** Called when the ticked state changes. */
|
|
67
|
+
onCheckedChange?: (checked: boolean) => void;
|
|
68
|
+
/** Whether the item ignores user interaction. */
|
|
69
|
+
disabled?: boolean;
|
|
70
|
+
/** Whether the menu closes when the item is chosen. @defaultValue false */
|
|
71
|
+
closeOnClick?: boolean;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* The props DropdownMenuRadioGroup forwards to Base UI.
|
|
75
|
+
*
|
|
76
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
77
|
+
* crosses the package seam (ticket 07 section 6). A radio item needs this
|
|
78
|
+
* group to hold its selected value; without it the item's `value` has no
|
|
79
|
+
* owning state and selection never moves.
|
|
80
|
+
*/
|
|
81
|
+
export interface DropdownMenuRadioGroupProps extends Omit<ComponentProps<'div'>, 'onChange'> {
|
|
82
|
+
/** The controlled value of the selected radio item. */
|
|
83
|
+
value?: string;
|
|
84
|
+
/** The initially selected value, for an uncontrolled group. */
|
|
85
|
+
defaultValue?: string;
|
|
86
|
+
/** Called when the selected value changes. */
|
|
87
|
+
onValueChange?: (value: string) => void;
|
|
88
|
+
/** Whether the group ignores user interaction. */
|
|
89
|
+
disabled?: boolean;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* The props DropdownMenuRadioItem forwards to Base UI.
|
|
93
|
+
*
|
|
94
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
95
|
+
* crosses the package seam (ticket 07 section 6).
|
|
96
|
+
*/
|
|
97
|
+
export interface DropdownMenuRadioItemProps extends Omit<ComponentProps<'div'>, 'onChange'> {
|
|
98
|
+
/** The value this item contributes to its radio group. */
|
|
99
|
+
value: string;
|
|
100
|
+
/** Whether the item ignores user interaction. */
|
|
101
|
+
disabled?: boolean;
|
|
102
|
+
/** Whether the menu closes when the item is chosen. @defaultValue false */
|
|
103
|
+
closeOnClick?: boolean;
|
|
104
|
+
}
|
|
105
|
+
/** The props DropdownMenuLabel forwards to Base UI. */
|
|
106
|
+
export interface DropdownMenuLabelProps extends ComponentProps<'div'> {
|
|
107
|
+
/** Whether the label aligns with items that carry an indicator. @defaultValue false */
|
|
108
|
+
inset?: boolean;
|
|
109
|
+
}
|
|
110
|
+
/** The props DropdownMenuSeparator forwards to Base UI. */
|
|
111
|
+
export interface DropdownMenuSeparatorProps extends ComponentProps<'div'> {
|
|
112
|
+
}
|
|
113
|
+
/** The props DropdownMenuGroup forwards to Base UI. */
|
|
114
|
+
export interface DropdownMenuGroupProps extends ComponentProps<'div'> {
|
|
115
|
+
}
|
|
116
|
+
/** The props DropdownMenuSub forwards to Base UI. */
|
|
117
|
+
export interface DropdownMenuSubProps {
|
|
118
|
+
/** The controlled open state of the submenu. */
|
|
119
|
+
open?: boolean;
|
|
120
|
+
/** The initially open state of the submenu. */
|
|
121
|
+
defaultOpen?: boolean;
|
|
122
|
+
/** Called when the submenu opens or closes. */
|
|
123
|
+
onOpenChange?: (open: boolean) => void;
|
|
124
|
+
/** Whether the submenu ignores user interaction. */
|
|
125
|
+
disabled?: boolean;
|
|
126
|
+
/** The submenu trigger and its content. */
|
|
127
|
+
children?: React.ReactNode;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* The props DropdownMenuSubTrigger forwards to Base UI.
|
|
131
|
+
*
|
|
132
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
133
|
+
* crosses the package seam (ticket 07 section 6).
|
|
134
|
+
*/
|
|
135
|
+
export interface DropdownMenuSubTriggerProps extends ComponentProps<'div'> {
|
|
136
|
+
/** Whether the trigger aligns with the labels above it. @defaultValue false */
|
|
137
|
+
inset?: boolean;
|
|
138
|
+
/** Whether the trigger ignores user interaction. */
|
|
139
|
+
disabled?: boolean;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* The props DropdownMenuSubContent forwards to Base UI.
|
|
143
|
+
*
|
|
144
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
145
|
+
* crosses the package seam (ticket 07 section 6).
|
|
146
|
+
*/
|
|
147
|
+
export interface DropdownMenuSubContentProps extends ComponentProps<'div'> {
|
|
148
|
+
/** Which side of the trigger the submenu is placed on. */
|
|
149
|
+
side?: 'top' | 'right' | 'bottom' | 'left';
|
|
150
|
+
/** How the submenu aligns against the trigger. @defaultValue start */
|
|
151
|
+
align?: 'start' | 'center' | 'end';
|
|
152
|
+
/** The distance in pixels between the trigger and the submenu. @defaultValue 0 */
|
|
153
|
+
sideOffset?: number;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* A menu of actions opened from a trigger.
|
|
157
|
+
*
|
|
158
|
+
* Use a DropdownMenu for a short list of commands attached to one control,
|
|
159
|
+
* such as a row's actions or an account menu. It supports arrow-key and
|
|
160
|
+
* typeahead navigation, and Escape closes it. Keep a command that is the
|
|
161
|
+
* primary action on the surface visible instead of hiding it here.
|
|
162
|
+
*/
|
|
163
|
+
declare function DropdownMenu({ ...props }: DropdownMenuProps): import("react").JSX.Element;
|
|
164
|
+
/** The element that opens the menu. */
|
|
165
|
+
declare function DropdownMenuTrigger({ className, ...props }: DropdownMenuTriggerProps): import("react").JSX.Element;
|
|
166
|
+
/** The floating menu surface. */
|
|
167
|
+
declare function DropdownMenuContent({ className, side, align, sideOffset, alignOffset, children, ...props }: DropdownMenuContentProps): import("react").JSX.Element;
|
|
168
|
+
/** One command in the menu. */
|
|
169
|
+
declare function DropdownMenuItem({ className, inset, variant, ...props }: DropdownMenuItemProps): import("react").JSX.Element;
|
|
170
|
+
/** A menu item that toggles a setting on or off. */
|
|
171
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: DropdownMenuCheckboxItemProps): import("react").JSX.Element;
|
|
172
|
+
/** A set of radio items that selects exactly one value. */
|
|
173
|
+
declare function DropdownMenuRadioGroup({ className, ...props }: DropdownMenuRadioGroupProps): import("react").JSX.Element;
|
|
174
|
+
/** A menu item that selects one value from an implicit radio group. */
|
|
175
|
+
declare function DropdownMenuRadioItem({ className, children, ...props }: DropdownMenuRadioItemProps): import("react").JSX.Element;
|
|
176
|
+
/** A non-interactive heading inside a menu group. */
|
|
177
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: DropdownMenuLabelProps): import("react").JSX.Element;
|
|
178
|
+
/** A rule between groups of commands. */
|
|
179
|
+
declare function DropdownMenuSeparator({ className, ...props }: DropdownMenuSeparatorProps): import("react").JSX.Element;
|
|
180
|
+
/** A labelled set of related commands. */
|
|
181
|
+
declare function DropdownMenuGroup({ className, ...props }: DropdownMenuGroupProps): import("react").JSX.Element;
|
|
182
|
+
/** An item that opens a nested menu. */
|
|
183
|
+
declare function DropdownMenuSub({ ...props }: DropdownMenuSubProps): import("react").JSX.Element;
|
|
184
|
+
/** The item that opens a submenu. */
|
|
185
|
+
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: DropdownMenuSubTriggerProps): import("react").JSX.Element;
|
|
186
|
+
/** The nested menu surface. */
|
|
187
|
+
declare function DropdownMenuSubContent({ className, align, sideOffset, children, ...props }: DropdownMenuSubContentProps): import("react").JSX.Element;
|
|
188
|
+
export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuGroup, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
189
|
+
//# sourceMappingURL=dropdown-menu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Menu as MenuPrimitive } from '@base-ui/react/menu';
|
|
4
|
+
import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react';
|
|
5
|
+
import { cn } from '../../lib/utils';
|
|
6
|
+
const POPUP = 'bg-popover text-popover-foreground z-50 max-h-(--available-height) min-w-36 overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md outline-none transition-[opacity,transform] duration-fast ease-out data-[starting-style]:scale-95 data-[starting-style]:opacity-0 data-[ending-style]:scale-95 data-[ending-style]:opacity-0';
|
|
7
|
+
const ITEM = 'focus:bg-accent focus:text-accent-foreground data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*="size-"])]:size-4';
|
|
8
|
+
/**
|
|
9
|
+
* A menu of actions opened from a trigger.
|
|
10
|
+
*
|
|
11
|
+
* Use a DropdownMenu for a short list of commands attached to one control,
|
|
12
|
+
* such as a row's actions or an account menu. It supports arrow-key and
|
|
13
|
+
* typeahead navigation, and Escape closes it. Keep a command that is the
|
|
14
|
+
* primary action on the surface visible instead of hiding it here.
|
|
15
|
+
*/
|
|
16
|
+
function DropdownMenu({ ...props }) {
|
|
17
|
+
return _jsx(MenuPrimitive.Root, { ...props });
|
|
18
|
+
}
|
|
19
|
+
/** The element that opens the menu. */
|
|
20
|
+
function DropdownMenuTrigger({ className, ...props }) {
|
|
21
|
+
return (_jsx(MenuPrimitive.Trigger, { "data-slot": "dropdown-menu-trigger", className: cn('bg-background shadow-xs inline-flex h-9 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'hover:bg-accent hover:text-accent-foreground focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'disabled:pointer-events-none disabled:opacity-50', className), ...props }));
|
|
22
|
+
}
|
|
23
|
+
/** The floating menu surface. */
|
|
24
|
+
function DropdownMenuContent({ className, side = 'bottom', align = 'start', sideOffset = 4, alignOffset = 0, children, ...props }) {
|
|
25
|
+
return (_jsx(MenuPrimitive.Portal, { children: _jsx(MenuPrimitive.Positioner, { side: side, align: align, sideOffset: sideOffset, alignOffset: alignOffset, children: _jsx(MenuPrimitive.Popup, { "data-slot": "dropdown-menu-content", className: cn(POPUP, className), ...props, children: children }) }) }));
|
|
26
|
+
}
|
|
27
|
+
/** One command in the menu. */
|
|
28
|
+
function DropdownMenuItem({ className, inset, variant = 'default', ...props }) {
|
|
29
|
+
return (_jsx(MenuPrimitive.Item, { "data-slot": "dropdown-menu-item", className: cn(ITEM, 'data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:data-[highlighted]:bg-destructive/10', inset && 'pl-8', className), "data-variant": variant, ...props }));
|
|
30
|
+
}
|
|
31
|
+
/** A menu item that toggles a setting on or off. */
|
|
32
|
+
function DropdownMenuCheckboxItem({ className, children, checked, ...props }) {
|
|
33
|
+
return (_jsxs(MenuPrimitive.CheckboxItem, { "data-slot": "dropdown-menu-checkbox-item", checked: checked, className: cn(ITEM, 'pr-8 pl-8', className), ...props, children: [_jsx(MenuPrimitive.CheckboxItemIndicator, { className: "absolute left-2 flex size-4 items-center justify-center", children: _jsx(CheckIcon, { className: "size-4" }) }), children] }));
|
|
34
|
+
}
|
|
35
|
+
/** A set of radio items that selects exactly one value. */
|
|
36
|
+
function DropdownMenuRadioGroup({ className, ...props }) {
|
|
37
|
+
return (_jsx(MenuPrimitive.RadioGroup, { "data-slot": "dropdown-menu-radio-group", className: cn(className), ...props }));
|
|
38
|
+
}
|
|
39
|
+
/** A menu item that selects one value from an implicit radio group. */
|
|
40
|
+
function DropdownMenuRadioItem({ className, children, ...props }) {
|
|
41
|
+
return (_jsxs(MenuPrimitive.RadioItem, { "data-slot": "dropdown-menu-radio-item", className: cn(ITEM, 'pr-8 pl-8', className), ...props, children: [_jsx(MenuPrimitive.RadioItemIndicator, { className: "absolute left-2 flex size-4 items-center justify-center", children: _jsx(CircleIcon, { className: "size-2 fill-current" }) }), children] }));
|
|
42
|
+
}
|
|
43
|
+
/** A non-interactive heading inside a menu group. */
|
|
44
|
+
function DropdownMenuLabel({ className, inset, ...props }) {
|
|
45
|
+
return (_jsx(MenuPrimitive.GroupLabel, { "data-slot": "dropdown-menu-label", className: cn('px-2 py-1.5 text-xs font-medium', inset && 'pl-8', className), ...props }));
|
|
46
|
+
}
|
|
47
|
+
/** A rule between groups of commands. */
|
|
48
|
+
function DropdownMenuSeparator({ className, ...props }) {
|
|
49
|
+
return (_jsx(MenuPrimitive.Separator, { "data-slot": "dropdown-menu-separator", className: cn('bg-border -mx-1 my-1 h-px', className), ...props }));
|
|
50
|
+
}
|
|
51
|
+
/** A labelled set of related commands. */
|
|
52
|
+
function DropdownMenuGroup({ className, ...props }) {
|
|
53
|
+
return (_jsx(MenuPrimitive.Group, { "data-slot": "dropdown-menu-group", className: cn(className), ...props }));
|
|
54
|
+
}
|
|
55
|
+
/** An item that opens a nested menu. */
|
|
56
|
+
function DropdownMenuSub({ ...props }) {
|
|
57
|
+
return _jsx(MenuPrimitive.SubmenuRoot, { ...props });
|
|
58
|
+
}
|
|
59
|
+
/** The item that opens a submenu. */
|
|
60
|
+
function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
|
|
61
|
+
return (_jsxs(MenuPrimitive.SubmenuTrigger, { "data-slot": "dropdown-menu-sub-trigger", className: cn(ITEM, inset && 'pl-8', className), ...props, children: [children, _jsx(ChevronRightIcon, { className: "ml-auto size-4" })] }));
|
|
62
|
+
}
|
|
63
|
+
/** The nested menu surface. */
|
|
64
|
+
function DropdownMenuSubContent({ className, align = 'start', sideOffset = 0, children, ...props }) {
|
|
65
|
+
return (_jsx(MenuPrimitive.Portal, { children: _jsx(MenuPrimitive.Positioner, { align: align, sideOffset: sideOffset, children: _jsx(MenuPrimitive.Popup, { "data-slot": "dropdown-menu-sub-content", className: cn(POPUP, className), ...props, children: children }) }) }));
|
|
66
|
+
}
|
|
67
|
+
export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuGroup, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The layout and labelling components that wrap a form control.
|
|
4
|
+
*
|
|
5
|
+
* The module ships `Field`, `FieldLabel`, `FieldDescription`, `FieldError` and
|
|
6
|
+
* `FieldGroup`, and each is presentational: the consumer owns the control's
|
|
7
|
+
* `id` and wires it to the label's `htmlFor` and to the description or error's
|
|
8
|
+
* `id` through `aria-describedby`. Nothing here generates an `id`, so a field
|
|
9
|
+
* stays a Server Component and no markup is decided at hydration time.
|
|
10
|
+
*/
|
|
11
|
+
declare function Field({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
|
|
12
|
+
/** Groups several related fields, for example one row of a settings form. */
|
|
13
|
+
declare function FieldGroup({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
|
|
14
|
+
/**
|
|
15
|
+
* The control's accessible name.
|
|
16
|
+
*
|
|
17
|
+
* Renders a native `<label>`; pass the control's `id` as `htmlFor` so the name
|
|
18
|
+
* is programmatically attached rather than merely adjacent.
|
|
19
|
+
*/
|
|
20
|
+
declare function FieldLabel({ className, ...props }: ComponentProps<'label'>): import("react").JSX.Element;
|
|
21
|
+
/**
|
|
22
|
+
* A short helper line under the control.
|
|
23
|
+
*
|
|
24
|
+
* Give it an `id` and reference it from the control's `aria-describedby`; the
|
|
25
|
+
* text is an explanation, not the accessible name.
|
|
26
|
+
*/
|
|
27
|
+
declare function FieldDescription({ className, ...props }: ComponentProps<'p'>): import("react").JSX.Element;
|
|
28
|
+
/**
|
|
29
|
+
* The field's error message.
|
|
30
|
+
*
|
|
31
|
+
* Carries `role="alert"`, so it is announced when it appears. It is shown only
|
|
32
|
+
* while the field is invalid; render nothing otherwise.
|
|
33
|
+
*/
|
|
34
|
+
declare function FieldError({ className, ...props }: ComponentProps<'p'>): import("react").JSX.Element;
|
|
35
|
+
export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup };
|
|
36
|
+
//# sourceMappingURL=field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/components/ui/field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;;;;GAQG;AACH,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BAS5D;AAED,6EAA6E;AAC7E,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BASjE;AAED;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,+BAWnE;AAED;;;;;GAKG;AACH,iBAAS,gBAAgB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,GAAG,CAAC,+BAQrE;AAED;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,GAAG,CAAC,+BAS/D;AAED,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../../lib/utils';
|
|
3
|
+
/**
|
|
4
|
+
* The layout and labelling components that wrap a form control.
|
|
5
|
+
*
|
|
6
|
+
* The module ships `Field`, `FieldLabel`, `FieldDescription`, `FieldError` and
|
|
7
|
+
* `FieldGroup`, and each is presentational: the consumer owns the control's
|
|
8
|
+
* `id` and wires it to the label's `htmlFor` and to the description or error's
|
|
9
|
+
* `id` through `aria-describedby`. Nothing here generates an `id`, so a field
|
|
10
|
+
* stays a Server Component and no markup is decided at hydration time.
|
|
11
|
+
*/
|
|
12
|
+
function Field({ className, ...props }) {
|
|
13
|
+
return (_jsx("div", { "data-slot": "field", role: "group", className: cn('flex w-full flex-col gap-1.5', className), ...props }));
|
|
14
|
+
}
|
|
15
|
+
/** Groups several related fields, for example one row of a settings form. */
|
|
16
|
+
function FieldGroup({ className, ...props }) {
|
|
17
|
+
return (_jsx("div", { "data-slot": "field-group", role: "group", className: cn('flex w-full flex-col gap-6', className), ...props }));
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The control's accessible name.
|
|
21
|
+
*
|
|
22
|
+
* Renders a native `<label>`; pass the control's `id` as `htmlFor` so the name
|
|
23
|
+
* is programmatically attached rather than merely adjacent.
|
|
24
|
+
*/
|
|
25
|
+
function FieldLabel({ className, ...props }) {
|
|
26
|
+
return (_jsx("label", { "data-slot": "field-label", className: cn('text-foreground text-sm leading-none font-medium', className), ...props }));
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* A short helper line under the control.
|
|
30
|
+
*
|
|
31
|
+
* Give it an `id` and reference it from the control's `aria-describedby`; the
|
|
32
|
+
* text is an explanation, not the accessible name.
|
|
33
|
+
*/
|
|
34
|
+
function FieldDescription({ className, ...props }) {
|
|
35
|
+
return (_jsx("p", { "data-slot": "field-description", className: cn('text-muted-foreground text-sm', className), ...props }));
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The field's error message.
|
|
39
|
+
*
|
|
40
|
+
* Carries `role="alert"`, so it is announced when it appears. It is shown only
|
|
41
|
+
* while the field is invalid; render nothing otherwise.
|
|
42
|
+
*/
|
|
43
|
+
function FieldError({ className, ...props }) {
|
|
44
|
+
return (_jsx("p", { "data-slot": "field-error", role: "alert", className: cn('text-destructive text-sm font-medium', className), ...props }));
|
|
45
|
+
}
|
|
46
|
+
export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The single-line text control.
|
|
4
|
+
*
|
|
5
|
+
* Renders a native `<input>`, so it submits, validates and takes focus without
|
|
6
|
+
* extra work. The focus ring is drawn at full strength, and `aria-invalid`
|
|
7
|
+
* switches the border and ring to the destructive token so a failed field is
|
|
8
|
+
* visible as well as announced.
|
|
9
|
+
*/
|
|
10
|
+
declare function Input({ className, type, ...props }: ComponentProps<'input'>): import("react").JSX.Element;
|
|
11
|
+
export { Input };
|
|
12
|
+
//# sourceMappingURL=input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/ui/input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;;;GAOG;AACH,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,+BAcpE;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../../lib/utils';
|
|
3
|
+
/**
|
|
4
|
+
* The single-line text control.
|
|
5
|
+
*
|
|
6
|
+
* Renders a native `<input>`, so it submits, validates and takes focus without
|
|
7
|
+
* extra work. The focus ring is drawn at full strength, and `aria-invalid`
|
|
8
|
+
* switches the border and ring to the destructive token so a failed field is
|
|
9
|
+
* visible as well as announced.
|
|
10
|
+
*/
|
|
11
|
+
function Input({ className, type, ...props }) {
|
|
12
|
+
return (_jsx("input", { type: type, "data-slot": "input", className: cn('border-input bg-background text-foreground selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow] duration-fast ease-out outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'aria-invalid:border-destructive aria-invalid:ring-destructive/20', className), ...props }));
|
|
13
|
+
}
|
|
14
|
+
export { Input };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* An inline label for a keyboard key or shortcut.
|
|
4
|
+
*
|
|
5
|
+
* Renders a native `<kbd>`, so a screen reader can identify it as input the
|
|
6
|
+
* reader types rather than as text to read. Use one element per key.
|
|
7
|
+
*/
|
|
8
|
+
declare function Kbd({ className, ...props }: ComponentProps<'kbd'>): import("react").JSX.Element;
|
|
9
|
+
export { Kbd };
|
|
10
|
+
//# sourceMappingURL=kbd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kbd.d.ts","sourceRoot":"","sources":["../../../src/components/ui/kbd.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;GAKG;AACH,iBAAS,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BAW1D;AAED,OAAO,EAAE,GAAG,EAAE,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../../lib/utils';
|
|
3
|
+
/**
|
|
4
|
+
* An inline label for a keyboard key or shortcut.
|
|
5
|
+
*
|
|
6
|
+
* Renders a native `<kbd>`, so a screen reader can identify it as input the
|
|
7
|
+
* reader types rather than as text to read. Use one element per key.
|
|
8
|
+
*/
|
|
9
|
+
function Kbd({ className, ...props }) {
|
|
10
|
+
return (_jsx("kbd", { "data-slot": "kbd", className: cn('bg-muted text-muted-foreground pointer-events-none inline-flex h-5 min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none', className), ...props }));
|
|
11
|
+
}
|
|
12
|
+
export { Kbd };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
type PaginationSize = 'default' | 'sm' | 'lg' | 'icon';
|
|
3
|
+
/**
|
|
4
|
+
* The control that moves between pages of a paged collection.
|
|
5
|
+
*
|
|
6
|
+
* The root is a `<nav>` with an accessible name, so the page links are grouped
|
|
7
|
+
* as one navigation region.
|
|
8
|
+
*/
|
|
9
|
+
declare function Pagination({ className, ...props }: ComponentProps<'nav'>): import("react").JSX.Element;
|
|
10
|
+
/** The list that holds the page links. */
|
|
11
|
+
declare function PaginationContent({ className, ...props }: ComponentProps<'ul'>): import("react").JSX.Element;
|
|
12
|
+
/** One slot in the list: a page link, a step control or an ellipsis. */
|
|
13
|
+
declare function PaginationItem({ className, ...props }: ComponentProps<'li'>): import("react").JSX.Element;
|
|
14
|
+
/**
|
|
15
|
+
* A link to one page.
|
|
16
|
+
*
|
|
17
|
+
* Renders a native `<a>`; set `isActive` on the current page so it is marked
|
|
18
|
+
* with `aria-current="page"`.
|
|
19
|
+
*/
|
|
20
|
+
declare function PaginationLink({ className, isActive, size, ...props }: ComponentProps<'a'> & {
|
|
21
|
+
isActive?: boolean;
|
|
22
|
+
size?: PaginationSize;
|
|
23
|
+
}): import("react").JSX.Element;
|
|
24
|
+
/** The step back to the previous page, with a hidden label on narrow layouts. */
|
|
25
|
+
declare function PaginationPrevious({ className, text, ...props }: ComponentProps<typeof PaginationLink> & {
|
|
26
|
+
text?: string;
|
|
27
|
+
}): import("react").JSX.Element;
|
|
28
|
+
/** The step forward to the next page, with a hidden label on narrow layouts. */
|
|
29
|
+
declare function PaginationNext({ className, text, ...props }: ComponentProps<typeof PaginationLink> & {
|
|
30
|
+
text?: string;
|
|
31
|
+
}): import("react").JSX.Element;
|
|
32
|
+
/**
|
|
33
|
+
* A held-back run of page numbers.
|
|
34
|
+
*
|
|
35
|
+
* It is hidden from assistive technology because the page links around it
|
|
36
|
+
* already name the range, and it is not focusable.
|
|
37
|
+
*/
|
|
38
|
+
declare function PaginationEllipsis({ className, ...props }: ComponentProps<'span'>): import("react").JSX.Element;
|
|
39
|
+
export { Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationPrevious, PaginationNext, PaginationEllipsis, };
|
|
40
|
+
//# sourceMappingURL=pagination.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/components/ui/pagination.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C,KAAK,cAAc,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAA;AAEtD;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BASjE;AAED,0CAA0C;AAC1C,iBAAS,iBAAiB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,+BAQvE;AAED,wEAAwE;AACxE,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,+BAEpE;AAED;;;;;GAKG;AACH,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,QAAQ,EACR,IAAa,EACb,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,cAAc,CAAA;CAAE,+BAoBrE;AAED,iFAAiF;AACjF,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,IAAiB,EACjB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY3D;AAED,gFAAgF;AAChF,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,IAAa,EACb,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY3D;AAED;;;;;GAKG;AACH,iBAAS,kBAAkB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,MAAM,CAAC,+BAW1E;AAED,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,kBAAkB,GACnB,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronLeft, ChevronRight, MoreHorizontal } from 'lucide-react';
|
|
3
|
+
import { cn } from '../../lib/utils';
|
|
4
|
+
/**
|
|
5
|
+
* The control that moves between pages of a paged collection.
|
|
6
|
+
*
|
|
7
|
+
* The root is a `<nav>` with an accessible name, so the page links are grouped
|
|
8
|
+
* as one navigation region.
|
|
9
|
+
*/
|
|
10
|
+
function Pagination({ className, ...props }) {
|
|
11
|
+
return (_jsx("nav", { "aria-label": "Pagination", "data-slot": "pagination", className: cn('mx-auto flex w-full justify-center', className), ...props }));
|
|
12
|
+
}
|
|
13
|
+
/** The list that holds the page links. */
|
|
14
|
+
function PaginationContent({ className, ...props }) {
|
|
15
|
+
return (_jsx("ul", { "data-slot": "pagination-content", className: cn('flex flex-row items-center gap-1', className), ...props }));
|
|
16
|
+
}
|
|
17
|
+
/** One slot in the list: a page link, a step control or an ellipsis. */
|
|
18
|
+
function PaginationItem({ className, ...props }) {
|
|
19
|
+
return _jsx("li", { "data-slot": "pagination-item", className: cn(className), ...props });
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* A link to one page.
|
|
23
|
+
*
|
|
24
|
+
* Renders a native `<a>`; set `isActive` on the current page so it is marked
|
|
25
|
+
* with `aria-current="page"`.
|
|
26
|
+
*/
|
|
27
|
+
function PaginationLink({ className, isActive, size = 'icon', ...props }) {
|
|
28
|
+
return (_jsx("a", { "aria-current": isActive ? 'page' : undefined, "data-slot": "pagination-link", "data-active": isActive ? 'true' : undefined, className: cn('inline-flex items-center justify-center rounded-md text-sm font-medium whitespace-nowrap outline-none transition-colors duration-fast ease-out focus-visible:ring-ring focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50', size === 'default' && 'h-9 px-4 py-2', size === 'sm' && 'h-8 px-3', size === 'lg' && 'h-10 px-6', size === 'icon' && 'size-9', isActive
|
|
29
|
+
? 'border-border bg-background text-foreground border'
|
|
30
|
+
: 'text-foreground hover:bg-accent hover:text-accent-foreground', className), ...props }));
|
|
31
|
+
}
|
|
32
|
+
/** The step back to the previous page, with a hidden label on narrow layouts. */
|
|
33
|
+
function PaginationPrevious({ className, text = 'Previous', ...props }) {
|
|
34
|
+
return (_jsxs(PaginationLink, { "aria-label": "Go to the previous page", size: "default", className: cn('gap-1 px-2.5 sm:pl-2.5', className), ...props, children: [_jsx(ChevronLeft, {}), _jsx("span", { className: "hidden sm:block", children: text })] }));
|
|
35
|
+
}
|
|
36
|
+
/** The step forward to the next page, with a hidden label on narrow layouts. */
|
|
37
|
+
function PaginationNext({ className, text = 'Next', ...props }) {
|
|
38
|
+
return (_jsxs(PaginationLink, { "aria-label": "Go to the next page", size: "default", className: cn('gap-1 px-2.5 sm:pr-2.5', className), ...props, children: [_jsx("span", { className: "hidden sm:block", children: text }), _jsx(ChevronRight, {})] }));
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* A held-back run of page numbers.
|
|
42
|
+
*
|
|
43
|
+
* It is hidden from assistive technology because the page links around it
|
|
44
|
+
* already name the range, and it is not focusable.
|
|
45
|
+
*/
|
|
46
|
+
function PaginationEllipsis({ className, ...props }) {
|
|
47
|
+
return (_jsx("span", { "data-slot": "pagination-ellipsis", "aria-hidden": "true", className: cn('flex size-9 items-center justify-center', className), ...props, children: _jsx(MoreHorizontal, { className: "size-4" }) }));
|
|
48
|
+
}
|
|
49
|
+
export { Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationPrevious, PaginationNext, PaginationEllipsis, };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The props the Popover root forwards to Base UI.
|
|
4
|
+
*
|
|
5
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
6
|
+
* crosses the package seam (ticket 07 section 6).
|
|
7
|
+
*/
|
|
8
|
+
export interface PopoverProps {
|
|
9
|
+
/** The controlled open state. */
|
|
10
|
+
open?: boolean;
|
|
11
|
+
/** The initially open state, for an uncontrolled popover. */
|
|
12
|
+
defaultOpen?: boolean;
|
|
13
|
+
/** Called when the open state changes. */
|
|
14
|
+
onOpenChange?: (open: boolean) => void;
|
|
15
|
+
/** Whether the popover traps interaction while open. @defaultValue false */
|
|
16
|
+
modal?: boolean | 'trap-focus';
|
|
17
|
+
/** The trigger and content. */
|
|
18
|
+
children?: React.ReactNode;
|
|
19
|
+
}
|
|
20
|
+
/** The props PopoverTrigger forwards to Base UI. */
|
|
21
|
+
export interface PopoverTriggerProps extends ComponentProps<'button'> {
|
|
22
|
+
/** Whether the trigger should also open the popover on hover. */
|
|
23
|
+
openOnHover?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The props PopoverContent forwards to Base UI.
|
|
27
|
+
*
|
|
28
|
+
* Declared here rather than re-exported from Base UI so no upstream type
|
|
29
|
+
* crosses the package seam (ticket 07 section 6).
|
|
30
|
+
*/
|
|
31
|
+
export interface PopoverContentProps extends ComponentProps<'div'> {
|
|
32
|
+
/** Which side of the trigger the popover is placed on. @defaultValue bottom */
|
|
33
|
+
side?: 'top' | 'right' | 'bottom' | 'left';
|
|
34
|
+
/** How the popover aligns against the trigger. @defaultValue center */
|
|
35
|
+
align?: 'start' | 'center' | 'end';
|
|
36
|
+
/** The distance in pixels between the trigger and the popover. @defaultValue 4 */
|
|
37
|
+
sideOffset?: number;
|
|
38
|
+
/** The offset in pixels along the alignment axis. @defaultValue 0 */
|
|
39
|
+
alignOffset?: number;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* A floating surface opened by a trigger.
|
|
43
|
+
*
|
|
44
|
+
* Use a Popover for content that is richer than a tooltip but not a full
|
|
45
|
+
* screen: a settings form, a filter panel, a small detail view. It is
|
|
46
|
+
* dismissible with Escape and an outside press, and it returns focus to the
|
|
47
|
+
* trigger when it closes. Do not put a required step in a Popover, because an
|
|
48
|
+
* outside press can close it.
|
|
49
|
+
*/
|
|
50
|
+
declare function Popover({ ...props }: PopoverProps): import("react").JSX.Element;
|
|
51
|
+
/** The element that opens the popover. */
|
|
52
|
+
declare function PopoverTrigger({ className, ...props }: PopoverTriggerProps): import("react").JSX.Element;
|
|
53
|
+
/** The floating popover surface. */
|
|
54
|
+
declare function PopoverContent({ className, side, align, sideOffset, alignOffset, children, ...props }: PopoverContentProps): import("react").JSX.Element;
|
|
55
|
+
export { Popover, PopoverTrigger, PopoverContent };
|
|
56
|
+
//# sourceMappingURL=popover.d.ts.map
|