flowbite-svelte 0.44.7 → 0.44.9
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/.env +2 -0
- package/.eslintrc.cjs +20 -0
- package/.github/ISSUE_TEMPLATE/bug_report.yml +33 -0
- package/.github/ISSUE_TEMPLATE/config.yml +5 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +17 -0
- package/.github/pull_request_template.md +71 -0
- package/.github/workflows/playwright-and-lint.yaml +47 -0
- package/.prettierignore +16 -0
- package/.prettierrc +9 -0
- package/CHANGELOG.md +3858 -0
- package/CONTRIBUTING.md +66 -0
- package/dist/bottom-nav/BottomNavItem.svelte +3 -1
- package/dist/bottom-nav/BottomNavItem.svelte.d.ts +2 -0
- package/dist/bottom-nav/BottomNavItem.svelte.d.ts.map +1 -1
- package/dist/carousels/Carousel.svelte +52 -153
- package/dist/carousels/Carousel.svelte.d.ts +22 -37
- package/dist/carousels/Carousel.svelte.d.ts.map +1 -1
- package/dist/carousels/ControlButton.svelte +31 -0
- package/dist/carousels/ControlButton.svelte.d.ts +29 -0
- package/dist/carousels/ControlButton.svelte.d.ts.map +1 -0
- package/dist/carousels/Controls.svelte +17 -0
- package/dist/carousels/Controls.svelte.d.ts +23 -0
- package/dist/carousels/Controls.svelte.d.ts.map +1 -0
- package/dist/carousels/Indicators.svelte +26 -0
- package/dist/carousels/Indicators.svelte.d.ts +32 -0
- package/dist/carousels/Indicators.svelte.d.ts.map +1 -0
- package/dist/carousels/Thumbnail.svelte +6 -23
- package/dist/carousels/Thumbnail.svelte.d.ts +5 -16
- package/dist/carousels/Thumbnail.svelte.d.ts.map +1 -1
- package/dist/carousels/Thumbnails.svelte +26 -0
- package/dist/carousels/Thumbnails.svelte.d.ts +33 -0
- package/dist/carousels/Thumbnails.svelte.d.ts.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/tables/TableSearch.svelte +2 -2
- package/dist/tables/TableSearch.svelte.d.ts +1 -1
- package/mdsvex.config.js +18 -0
- package/package.json +18 -80
- package/playwright.config.ts +12 -0
- package/postcss.config.cjs +12 -0
- package/src/app.css +45 -0
- package/src/app.d.ts +9 -0
- package/src/app.html +28 -0
- package/src/app.postcss +55 -0
- package/src/hooks.server.js +27 -0
- package/src/lib/accordion/Accordion.svelte +61 -0
- package/src/lib/accordion/AccordionItem.svelte +120 -0
- package/src/lib/alerts/Alert.svelte +60 -0
- package/src/lib/avatar/Avatar.svelte +56 -0
- package/src/lib/avatar/Placeholder.svelte +16 -0
- package/src/lib/badges/Badge.svelte +108 -0
- package/src/lib/banner/Banner.svelte +64 -0
- package/src/lib/bottom-nav/BottomNav.svelte +76 -0
- package/src/lib/bottom-nav/BottomNavHeader.svelte +19 -0
- package/src/lib/bottom-nav/BottomNavHeaderItem.svelte +23 -0
- package/src/lib/bottom-nav/BottomNavItem.svelte +76 -0
- package/src/lib/breadcrumbs/Breadcrumb.svelte +25 -0
- package/src/lib/breadcrumbs/BreadcrumbItem.svelte +51 -0
- package/src/lib/buttongroups/ButtonGroup.svelte +22 -0
- package/src/lib/buttons/Button.svelte +100 -0
- package/src/lib/buttons/GradientButton.svelte +79 -0
- package/src/lib/cards/Card.svelte +70 -0
- package/src/lib/carousels/Carousel.svelte +166 -0
- package/src/lib/carousels/ControlButton.svelte +34 -0
- package/src/lib/carousels/Controls.svelte +21 -0
- package/src/lib/carousels/Indicators.svelte +31 -0
- package/src/lib/carousels/Thumbnail.svelte +20 -0
- package/src/lib/carousels/Thumbnails.svelte +30 -0
- package/src/lib/charts/Chart.svelte +35 -0
- package/src/lib/darkmode/DarkMode.svelte +58 -0
- package/src/lib/datepicker/Calender.svelte +3 -0
- package/src/lib/datepicker/Datepicker.svelte +66 -0
- package/src/lib/device-mockup/Android.svelte +24 -0
- package/src/lib/device-mockup/DefaultMockup.svelte +21 -0
- package/src/lib/device-mockup/DeviceMockup.svelte +235 -0
- package/src/lib/device-mockup/Ios.svelte +21 -0
- package/src/lib/device-mockup/Smartwatch.svelte +15 -0
- package/src/lib/device-mockup/Tablet.svelte +21 -0
- package/src/lib/drawer/Drawer.svelte +87 -0
- package/src/lib/dropdowns/Dropdown.svelte +81 -0
- package/src/lib/dropdowns/DropdownDivider.svelte +13 -0
- package/src/lib/dropdowns/DropdownHeader.svelte +21 -0
- package/src/lib/dropdowns/DropdownItem.svelte +47 -0
- package/src/lib/footer/Footer.svelte +18 -0
- package/src/lib/footer/FooterBrand.svelte +39 -0
- package/src/lib/footer/FooterCopyright.svelte +38 -0
- package/src/lib/footer/FooterIcon.svelte +25 -0
- package/src/lib/footer/FooterLink.svelte +26 -0
- package/src/lib/footer/FooterLinkGroup.svelte +15 -0
- package/src/lib/forms/Checkbox.svelte +70 -0
- package/src/lib/forms/Dropzone.svelte +32 -0
- package/src/lib/forms/Fileupload.svelte +21 -0
- package/src/lib/forms/FloatingLabelInput.svelte +94 -0
- package/src/lib/forms/Helper.svelte +23 -0
- package/src/lib/forms/Input.svelte +83 -0
- package/src/lib/forms/InputAddon.svelte +47 -0
- package/src/lib/forms/Label.svelte +40 -0
- package/src/lib/forms/MultiSelect.svelte +126 -0
- package/src/lib/forms/NumberInput.svelte +16 -0
- package/src/lib/forms/Radio.svelte +53 -0
- package/src/lib/forms/RadioInline.svelte +9 -0
- package/src/lib/forms/Range.svelte +24 -0
- package/src/lib/forms/Search.svelte +44 -0
- package/src/lib/forms/Select.svelte +49 -0
- package/src/lib/forms/Textarea.svelte +51 -0
- package/src/lib/forms/Toggle.svelte +56 -0
- package/src/lib/forms/VoiceSearch.svelte +57 -0
- package/src/lib/gallery/Gallery.svelte +31 -0
- package/src/lib/index.ts +228 -0
- package/src/lib/indicators/Indicator.svelte +86 -0
- package/src/lib/kbd/ArrowKeyDown.svelte +15 -0
- package/src/lib/kbd/ArrowKeyLeft.svelte +15 -0
- package/src/lib/kbd/ArrowKeyRight.svelte +15 -0
- package/src/lib/kbd/ArrowKeyUp.svelte +15 -0
- package/src/lib/kbd/Kbd.svelte +15 -0
- package/src/lib/list-group/Listgroup.svelte +45 -0
- package/src/lib/list-group/ListgroupItem.svelte +57 -0
- package/src/lib/megamenu/MegaMenu.svelte +52 -0
- package/src/lib/modals/Modal.svelte +162 -0
- package/src/lib/navbar/Menu.svelte +38 -0
- package/src/lib/navbar/NavBrand.svelte +15 -0
- package/src/lib/navbar/NavHamburger.svelte +20 -0
- package/src/lib/navbar/NavLi.svelte +37 -0
- package/src/lib/navbar/NavSidebarHamburger.svelte +20 -0
- package/src/lib/navbar/NavUl.svelte +68 -0
- package/src/lib/navbar/Navbar.svelte +42 -0
- package/src/lib/navbar/SidebarMenu.svelte +37 -0
- package/src/lib/paginations/Pagination.svelte +59 -0
- package/src/lib/paginations/PaginationItem.svelte +40 -0
- package/src/lib/popover/Popover.svelte +34 -0
- package/src/lib/progressbars/Progressbar.svelte +52 -0
- package/src/lib/ratings/AdvancedRating.svelte +45 -0
- package/src/lib/ratings/Heart.svelte +39 -0
- package/src/lib/ratings/Rating.svelte +57 -0
- package/src/lib/ratings/RatingComment.svelte +85 -0
- package/src/lib/ratings/Review.svelte +78 -0
- package/src/lib/ratings/ScoreRating.svelte +76 -0
- package/src/lib/ratings/Star.svelte +47 -0
- package/src/lib/ratings/Thumbup.svelte +39 -0
- package/src/lib/sidebars/Sidebar.svelte +40 -0
- package/src/lib/sidebars/SidebarBrand.svelte +24 -0
- package/src/lib/sidebars/SidebarCta.svelte +28 -0
- package/src/lib/sidebars/SidebarDropdownItem.svelte +26 -0
- package/src/lib/sidebars/SidebarDropdownWrapper.svelte +71 -0
- package/src/lib/sidebars/SidebarGroup.svelte +24 -0
- package/src/lib/sidebars/SidebarItem.svelte +49 -0
- package/src/lib/sidebars/SidebarWrapper.svelte +16 -0
- package/src/lib/skeleton/CardPlaceholder.svelte +48 -0
- package/src/lib/skeleton/ImagePlaceholder.svelte +31 -0
- package/src/lib/skeleton/ListPlaceholder.svelte +50 -0
- package/src/lib/skeleton/Skeleton.svelte +38 -0
- package/src/lib/skeleton/TestimonialPlaceholder.svelte +24 -0
- package/src/lib/skeleton/TextPlaceholder.svelte +60 -0
- package/src/lib/skeleton/VideoPlaceholder.svelte +33 -0
- package/src/lib/skeleton/WidgetPlaceholder.svelte +26 -0
- package/src/lib/speed-dial/SpeedDial.svelte +80 -0
- package/src/lib/speed-dial/SpeedDialButton.svelte +49 -0
- package/src/lib/spinners/Spinner.svelte +49 -0
- package/src/lib/steps/StepIndicator.svelte +75 -0
- package/src/lib/tables/Table.svelte +49 -0
- package/src/lib/tables/TableBody.svelte +14 -0
- package/src/lib/tables/TableBodyCell.svelte +22 -0
- package/src/lib/tables/TableBodyRow.svelte +50 -0
- package/src/lib/tables/TableHead.svelte +45 -0
- package/src/lib/tables/TableHeadCell.svelte +15 -0
- package/src/lib/tables/TableSearch.svelte +73 -0
- package/src/lib/tabs/TabItem.svelte +61 -0
- package/src/lib/tabs/Tabs.svelte +78 -0
- package/src/lib/timeline/Activity.svelte +16 -0
- package/src/lib/timeline/ActivityItem.svelte +59 -0
- package/src/lib/timeline/Group.svelte +27 -0
- package/src/lib/timeline/GroupItem.svelte +59 -0
- package/src/lib/timeline/Timeline.svelte +25 -0
- package/src/lib/timeline/TimelineHorizontal.svelte +17 -0
- package/src/lib/timeline/TimelineItem.svelte +116 -0
- package/src/lib/timeline/TimelineItemHorizontal.svelte +72 -0
- package/src/lib/timeline/TimelineItemVertical.svelte +44 -0
- package/src/lib/toasts/Toast.svelte +99 -0
- package/src/lib/toolbar/Toolbar.svelte +52 -0
- package/src/lib/toolbar/ToolbarButton.svelte +67 -0
- package/src/lib/toolbar/ToolbarGroup.svelte +20 -0
- package/src/lib/tooltips/Tooltip.svelte +42 -0
- package/src/lib/types.ts +163 -0
- package/src/lib/typography/A.svelte +20 -0
- package/src/lib/typography/Blockquote.svelte +51 -0
- package/src/lib/typography/DescriptionList.svelte +22 -0
- package/src/lib/typography/Heading.svelte +28 -0
- package/src/lib/typography/Hr.svelte +37 -0
- package/src/lib/typography/Img.svelte +39 -0
- package/src/lib/typography/Layout.svelte +21 -0
- package/src/lib/typography/Li.svelte +19 -0
- package/src/lib/typography/List.svelte +33 -0
- package/src/lib/typography/Mark.svelte +20 -0
- package/src/lib/typography/P.svelte +102 -0
- package/src/lib/typography/Secondary.svelte +18 -0
- package/src/lib/typography/Span.svelte +35 -0
- package/src/lib/utils/CloseButton.svelte +19 -0
- package/src/lib/utils/Frame.svelte +142 -0
- package/src/lib/utils/Popper.svelte +206 -0
- package/src/lib/utils/Wrapper.svelte +22 -0
- package/src/lib/utils/backdrop.ts +101 -0
- package/src/lib/utils/clickOutside.ts +16 -0
- package/src/lib/utils/createEventDispatcher.ts +24 -0
- package/src/lib/utils/focusTrap.js +42 -0
- package/src/lib/utils/generateId.js +5 -0
- package/src/lib/video/Video.svelte +29 -0
- package/src/routes/+error.svelte +5 -0
- package/src/routes/+layout.svelte +98 -0
- package/src/routes/+page.server.ts +18 -0
- package/src/routes/+page.svelte +55 -0
- package/src/routes/api/posts/+server.js +7 -0
- package/src/routes/component-data/A.json +10 -0
- package/src/routes/component-data/Accordion.json +12 -0
- package/src/routes/component-data/AccordionItem.json +23 -0
- package/src/routes/component-data/Activity.json +1 -0
- package/src/routes/component-data/ActivityItem.json +16 -0
- package/src/routes/component-data/AdvancedRating.json +13 -0
- package/src/routes/component-data/Alert.json +9 -0
- package/src/routes/component-data/Android.json +12 -0
- package/src/routes/component-data/ArrowKeyDown.json +1 -0
- package/src/routes/component-data/ArrowKeyLeft.json +1 -0
- package/src/routes/component-data/ArrowKeyRight.json +1 -0
- package/src/routes/component-data/ArrowKeyUp.json +1 -0
- package/src/routes/component-data/Avatar.json +15 -0
- package/src/routes/component-data/Badge.json +10 -0
- package/src/routes/component-data/Banner.json +12 -0
- package/src/routes/component-data/Blockquote.json +15 -0
- package/src/routes/component-data/BottomNav.json +13 -0
- package/src/routes/component-data/BottomNavHeader.json +9 -0
- package/src/routes/component-data/BottomNavHeaderItem.json +11 -0
- package/src/routes/component-data/BottomNavItem.json +12 -0
- package/src/routes/component-data/Breadcrumb.json +11 -0
- package/src/routes/component-data/BreadcrumbItem.json +12 -0
- package/src/routes/component-data/Button.json +14 -0
- package/src/routes/component-data/ButtonGroup.json +9 -0
- package/src/routes/component-data/Calender.json +1 -0
- package/src/routes/component-data/Card.json +13 -0
- package/src/routes/component-data/CardPlaceholder.json +9 -0
- package/src/routes/component-data/Carousel.json +11 -0
- package/src/routes/component-data/Chart.json +1 -0
- package/src/routes/component-data/Checkbox.json +14 -0
- package/src/routes/component-data/CloseButton.json +1 -0
- package/src/routes/component-data/ControlButton.json +9 -0
- package/src/routes/component-data/Controls.json +1 -0
- package/src/routes/component-data/DarkMode.json +9 -0
- package/src/routes/component-data/Datepicker.json +14 -0
- package/src/routes/component-data/DefaultMockup.json +11 -0
- package/src/routes/component-data/DescriptionList.json +10 -0
- package/src/routes/component-data/DeviceMockup.json +50 -0
- package/src/routes/component-data/Drawer.json +23 -0
- package/src/routes/component-data/Dropdown.json +13 -0
- package/src/routes/component-data/DropdownDivider.json +1 -0
- package/src/routes/component-data/DropdownHeader.json +9 -0
- package/src/routes/component-data/DropdownItem.json +10 -0
- package/src/routes/component-data/Dropzone.json +10 -0
- package/src/routes/component-data/Fileupload.json +10 -0
- package/src/routes/component-data/FloatingLabelInput.json +14 -0
- package/src/routes/component-data/Footer.json +1 -0
- package/src/routes/component-data/FooterBrand.json +15 -0
- package/src/routes/component-data/FooterCopyright.json +14 -0
- package/src/routes/component-data/FooterIcon.json +11 -0
- package/src/routes/component-data/FooterLink.json +11 -0
- package/src/routes/component-data/FooterLinkGroup.json +1 -0
- package/src/routes/component-data/Frame.json +18 -0
- package/src/routes/component-data/Gallery.json +9 -0
- package/src/routes/component-data/GradientButton.json +9 -0
- package/src/routes/component-data/Group.json +11 -0
- package/src/routes/component-data/GroupItem.json +13 -0
- package/src/routes/component-data/Heading.json +10 -0
- package/src/routes/component-data/Heart.json +14 -0
- package/src/routes/component-data/Helper.json +9 -0
- package/src/routes/component-data/Hr.json +13 -0
- package/src/routes/component-data/ImagePlaceholder.json +9 -0
- package/src/routes/component-data/Img.json +17 -0
- package/src/routes/component-data/Indicator.json +13 -0
- package/src/routes/component-data/Indicators.json +9 -0
- package/src/routes/component-data/Input.json +13 -0
- package/src/routes/component-data/InputAddon.json +1 -0
- package/src/routes/component-data/Ios.json +11 -0
- package/src/routes/component-data/Kbd.json +1 -0
- package/src/routes/component-data/Label.json +10 -0
- package/src/routes/component-data/Layout.json +10 -0
- package/src/routes/component-data/Li.json +9 -0
- package/src/routes/component-data/List.json +10 -0
- package/src/routes/component-data/ListPlaceholder.json +1 -0
- package/src/routes/component-data/Listgroup.json +10 -0
- package/src/routes/component-data/ListgroupItem.json +17 -0
- package/src/routes/component-data/Mark.json +10 -0
- package/src/routes/component-data/MegaMenu.json +11 -0
- package/src/routes/component-data/Menu.json +11 -0
- package/src/routes/component-data/Modal.json +17 -0
- package/src/routes/component-data/MultiSelect.json +11 -0
- package/src/routes/component-data/NavBrand.json +1 -0
- package/src/routes/component-data/NavHamburger.json +9 -0
- package/src/routes/component-data/NavLi.json +10 -0
- package/src/routes/component-data/NavSidebarHamburger.json +9 -0
- package/src/routes/component-data/NavUl.json +14 -0
- package/src/routes/component-data/Navbar.json +10 -0
- package/src/routes/component-data/NumberInput.json +1 -0
- package/src/routes/component-data/P.json +19 -0
- package/src/routes/component-data/Pagination.json +13 -0
- package/src/routes/component-data/PaginationItem.json +12 -0
- package/src/routes/component-data/Placeholder.json +1 -0
- package/src/routes/component-data/Popover.json +9 -0
- package/src/routes/component-data/Popper.json +17 -0
- package/src/routes/component-data/Progressbar.json +14 -0
- package/src/routes/component-data/Radio.json +13 -0
- package/src/routes/component-data/RadioInline.json +1 -0
- package/src/routes/component-data/Range.json +9 -0
- package/src/routes/component-data/Rating.json +14 -0
- package/src/routes/component-data/RatingComment.json +10 -0
- package/src/routes/component-data/Review.json +13 -0
- package/src/routes/component-data/ScoreRating.json +13 -0
- package/src/routes/component-data/Search.json +10 -0
- package/src/routes/component-data/Secondary.json +9 -0
- package/src/routes/component-data/Select.json +14 -0
- package/src/routes/component-data/Sidebar.json +11 -0
- package/src/routes/component-data/SidebarBrand.json +11 -0
- package/src/routes/component-data/SidebarCta.json +11 -0
- package/src/routes/component-data/SidebarDropdownItem.json +12 -0
- package/src/routes/component-data/SidebarDropdownWrapper.json +14 -0
- package/src/routes/component-data/SidebarGroup.json +10 -0
- package/src/routes/component-data/SidebarItem.json +12 -0
- package/src/routes/component-data/SidebarMenu.json +11 -0
- package/src/routes/component-data/SidebarWrapper.json +1 -0
- package/src/routes/component-data/Skeleton.json +9 -0
- package/src/routes/component-data/Smartwatch.json +9 -0
- package/src/routes/component-data/Span.json +16 -0
- package/src/routes/component-data/SpeedDial.json +18 -0
- package/src/routes/component-data/SpeedDialButton.json +14 -0
- package/src/routes/component-data/Spinner.json +13 -0
- package/src/routes/component-data/Star.json +14 -0
- package/src/routes/component-data/StepIndicator.json +15 -0
- package/src/routes/component-data/TabItem.json +12 -0
- package/src/routes/component-data/Table.json +14 -0
- package/src/routes/component-data/TableBody.json +1 -0
- package/src/routes/component-data/TableBodyCell.json +1 -0
- package/src/routes/component-data/TableBodyRow.json +1 -0
- package/src/routes/component-data/TableHead.json +9 -0
- package/src/routes/component-data/TableHeadCell.json +1 -0
- package/src/routes/component-data/TableSearch.json +19 -0
- package/src/routes/component-data/Tablet.json +11 -0
- package/src/routes/component-data/Tabs.json +13 -0
- package/src/routes/component-data/TestimonialPlaceholder.json +1 -0
- package/src/routes/component-data/TextPlaceholder.json +9 -0
- package/src/routes/component-data/Textarea.json +11 -0
- package/src/routes/component-data/Thumbnail.json +10 -0
- package/src/routes/component-data/Thumbnails.json +9 -0
- package/src/routes/component-data/Thumbup.json +14 -0
- package/src/routes/component-data/Timeline.json +1 -0
- package/src/routes/component-data/TimelineHorizontal.json +1 -0
- package/src/routes/component-data/TimelineItem.json +10 -0
- package/src/routes/component-data/TimelineItemHorizontal.json +19 -0
- package/src/routes/component-data/TimelineItemVertical.json +13 -0
- package/src/routes/component-data/Toast.json +15 -0
- package/src/routes/component-data/Toggle.json +12 -0
- package/src/routes/component-data/Toolbar.json +9 -0
- package/src/routes/component-data/ToolbarButton.json +12 -0
- package/src/routes/component-data/ToolbarGroup.json +1 -0
- package/src/routes/component-data/Tooltip.json +9 -0
- package/src/routes/component-data/Video.json +12 -0
- package/src/routes/component-data/VideoPlaceholder.json +9 -0
- package/src/routes/component-data/VoiceSearch.json +16 -0
- package/src/routes/component-data/WidgetPlaceholder.json +1 -0
- package/src/routes/component-data/Wrapper.json +10 -0
- package/src/routes/component-data/backdrop.json +9 -0
- package/src/routes/component-data/clickOutside.json +1 -0
- package/src/routes/component-data/createEventDispatcher.json +1 -0
- package/src/routes/component-data/focusTrap.json +1 -0
- package/src/routes/component-data/generateId.json +1 -0
- package/src/routes/component-data/index.json +1 -0
- package/src/routes/component-data/types.json +1 -0
- package/src/routes/docs/+layout.js +10 -0
- package/src/routes/docs/+layout.svelte +74 -0
- package/src/routes/docs/components/[slug]/+page.js +13 -0
- package/src/routes/docs/components/[slug]/+page.svelte +6 -0
- package/src/routes/docs/components/accordion.md +315 -0
- package/src/routes/docs/components/alert.md +342 -0
- package/src/routes/docs/components/avatar.md +215 -0
- package/src/routes/docs/components/badge.md +269 -0
- package/src/routes/docs/components/banner.md +166 -0
- package/src/routes/docs/components/bottom-navigation.md +397 -0
- package/src/routes/docs/components/breadcrumb.md +112 -0
- package/src/routes/docs/components/button-group.md +198 -0
- package/src/routes/docs/components/button.md +314 -0
- package/src/routes/docs/components/card.md +423 -0
- package/src/routes/docs/components/carousel.md +242 -0
- package/src/routes/docs/components/darkmode.md +111 -0
- package/src/routes/docs/components/device-mockups.md +212 -0
- package/src/routes/docs/components/drawer.md +638 -0
- package/src/routes/docs/components/dropdown.md +748 -0
- package/src/routes/docs/components/footer.md +268 -0
- package/src/routes/docs/components/forms.md +254 -0
- package/src/routes/docs/components/gallery.md +230 -0
- package/src/routes/docs/components/imageData/+server.js +43 -0
- package/src/routes/docs/components/indicators.md +273 -0
- package/src/routes/docs/components/kbd.md +248 -0
- package/src/routes/docs/components/list-group.md +157 -0
- package/src/routes/docs/components/mega-menu.md +298 -0
- package/src/routes/docs/components/modal.md +413 -0
- package/src/routes/docs/components/navbar.md +342 -0
- package/src/routes/docs/components/pagination.md +350 -0
- package/src/routes/docs/components/popover.md +388 -0
- package/src/routes/docs/components/progress.md +170 -0
- package/src/routes/docs/components/rating.md +326 -0
- package/src/routes/docs/components/sidebar.md +568 -0
- package/src/routes/docs/components/skeleton.md +165 -0
- package/src/routes/docs/components/speed-dial.md +523 -0
- package/src/routes/docs/components/spinner.md +117 -0
- package/src/routes/docs/components/tab.md +341 -0
- package/src/routes/docs/components/table.md +871 -0
- package/src/routes/docs/components/timeline.md +267 -0
- package/src/routes/docs/components/toast.md +362 -0
- package/src/routes/docs/components/tooltip.md +156 -0
- package/src/routes/docs/components/typography.md +158 -0
- package/src/routes/docs/components/video.md +125 -0
- package/src/routes/docs/examples/[slug]/+page.js +13 -0
- package/src/routes/docs/examples/[slug]/+page.svelte +6 -0
- package/src/routes/docs/examples/sidebar-layout.md +20 -0
- package/src/routes/docs/examples/snapshot.md +59 -0
- package/src/routes/docs/examples/testsnap.svelte +49 -0
- package/src/routes/docs/experimental/[slug]/+page.js +13 -0
- package/src/routes/docs/experimental/[slug]/+page.svelte +6 -0
- package/src/routes/docs/experimental/datepicker.md +131 -0
- package/src/routes/docs/extend/CheckCircle.svelte +3 -0
- package/src/routes/docs/extend/[slug]/+page.js +13 -0
- package/src/routes/docs/extend/[slug]/+page.svelte +6 -0
- package/src/routes/docs/extend/flowbite-svelte-blocks.md +28 -0
- package/src/routes/docs/extend/flowbite-svelte-starter.md +34 -0
- package/src/routes/docs/extend/icons.md +204 -0
- package/src/routes/docs/extend/step-indicator.md +162 -0
- package/src/routes/docs/forms/[slug]/+page.js +13 -0
- package/src/routes/docs/forms/[slug]/+page.svelte +6 -0
- package/src/routes/docs/forms/checkbox.md +329 -0
- package/src/routes/docs/forms/file-input.md +171 -0
- package/src/routes/docs/forms/floating-label.md +176 -0
- package/src/routes/docs/forms/input-field.md +398 -0
- package/src/routes/docs/forms/radio.md +303 -0
- package/src/routes/docs/forms/range.md +110 -0
- package/src/routes/docs/forms/search-input.md +133 -0
- package/src/routes/docs/forms/select.md +280 -0
- package/src/routes/docs/forms/textarea.md +142 -0
- package/src/routes/docs/forms/toggle.md +86 -0
- package/src/routes/docs/pages/[slug]/+page.js +13 -0
- package/src/routes/docs/pages/[slug]/+page.svelte +6 -0
- package/src/routes/docs/pages/colors.md +152 -0
- package/src/routes/docs/pages/compiler-speed.md +116 -0
- package/src/routes/docs/pages/customization.md +103 -0
- package/src/routes/docs/pages/how-to-contribute.md +138 -0
- package/src/routes/docs/pages/ide-support.md +19 -0
- package/src/routes/docs/pages/introduction.md +131 -0
- package/src/routes/docs/pages/license.md +22 -0
- package/src/routes/docs/pages/quickstart.md +128 -0
- package/src/routes/docs/pages/typescript.md +25 -0
- package/src/routes/docs/plugins/[slug]/+page.js +13 -0
- package/src/routes/docs/plugins/[slug]/+page.svelte +6 -0
- package/src/routes/docs/plugins/charts.md +990 -0
- package/src/routes/docs/typography/[slug]/+page.js +13 -0
- package/src/routes/docs/typography/[slug]/+page.svelte +6 -0
- package/src/routes/docs/typography/blockquote.md +214 -0
- package/src/routes/docs/typography/heading.md +270 -0
- package/src/routes/docs/typography/hr.md +115 -0
- package/src/routes/docs/typography/image.md +244 -0
- package/src/routes/docs/typography/link.md +147 -0
- package/src/routes/docs/typography/list.md +358 -0
- package/src/routes/docs/typography/paragraph.md +265 -0
- package/src/routes/docs/typography/text.md +340 -0
- package/src/routes/docs/utilities/[slug]/+page.js +13 -0
- package/src/routes/docs/utilities/[slug]/+page.svelte +6 -0
- package/src/routes/docs/utilities/close-button.md +42 -0
- package/src/routes/docs/utilities/label.md +41 -0
- package/src/routes/docs/utilities/toolbar.md +157 -0
- package/src/routes/landing/CTA.svelte +98 -0
- package/src/routes/landing/Components.svelte +42 -0
- package/src/routes/landing/Contributors.svelte +55 -0
- package/src/routes/landing/DesignFigma.svelte +39 -0
- package/src/routes/landing/Featured.svelte +33 -0
- package/src/routes/landing/GetStarted.svelte +23 -0
- package/src/routes/landing/Hero.svelte +38 -0
- package/src/routes/landing/SocialProof.svelte +80 -0
- package/src/routes/landing/utils/A.svelte +5 -0
- package/src/routes/landing/utils/H2.svelte +1 -0
- package/src/routes/landing/utils/Row.svelte +16 -0
- package/src/routes/landing/utils/Section.svelte +9 -0
- package/src/routes/layouts/component/+page.svelte +44 -0
- package/src/routes/layouts/component/Anchor.svelte +29 -0
- package/src/routes/layouts/component/code.svelte +1 -0
- package/src/routes/layouts/component/h1.svelte +0 -0
- package/src/routes/layouts/component/h2.svelte +5 -0
- package/src/routes/layouts/component/h3.svelte +5 -0
- package/src/routes/layouts/testLayout/+page.svelte +5 -0
- package/src/routes/utils/AlgoliaSearch.svelte +22 -0
- package/src/routes/utils/CompoAttributesViewer.svelte +78 -0
- package/src/routes/utils/CompoCard.svelte +36 -0
- package/src/routes/utils/CompoDescription.svelte +7 -0
- package/src/routes/utils/CopyCliboardInput.svelte +45 -0
- package/src/routes/utils/DocBadge.svelte +7 -0
- package/src/routes/utils/DocBadgeList.svelte +10 -0
- package/src/routes/utils/ExampleDarkMode.svelte +16 -0
- package/src/routes/utils/ExampleWrapper.svelte +143 -0
- package/src/routes/utils/Footer.svelte +64 -0
- package/src/routes/utils/GitHubSource.svelte +13 -0
- package/src/routes/utils/GitHubSourceList.svelte +21 -0
- package/src/routes/utils/MetaTag.svelte +42 -0
- package/src/routes/utils/Newsletter.svelte +52 -0
- package/src/routes/utils/PageHeadSection.svelte +20 -0
- package/src/routes/utils/Paging.svelte +60 -0
- package/src/routes/utils/TableDefaultRow.svelte +81 -0
- package/src/routes/utils/TableProp.svelte +41 -0
- package/src/routes/utils/Toc.svelte +55 -0
- package/src/routes/utils/ToolbarLink.svelte +12 -0
- package/src/routes/utils/data.json +48 -0
- package/src/routes/utils/icons/Angular.svelte +3 -0
- package/src/routes/utils/icons/ArrowLeft.svelte +3 -0
- package/src/routes/utils/icons/ArrowRight.svelte +3 -0
- package/src/routes/utils/icons/Check.svelte +3 -0
- package/src/routes/utils/icons/China.svelte +9 -0
- package/src/routes/utils/icons/Clipboard.svelte +3 -0
- package/src/routes/utils/icons/CoinbaseWallet.svelte +4 -0
- package/src/routes/utils/icons/Combinator.svelte +35 -0
- package/src/routes/utils/icons/Community.svelte +5 -0
- package/src/routes/utils/icons/Dev.svelte +9 -0
- package/src/routes/utils/icons/Discord.svelte +5 -0
- package/src/routes/utils/icons/Dribble.svelte +3 -0
- package/src/routes/utils/icons/Figma.svelte +14 -0
- package/src/routes/utils/icons/FlowbiteLogo.svelte +49 -0
- package/src/routes/utils/icons/Fortmatic.svelte +4 -0
- package/src/routes/utils/icons/Germany.svelte +5 -0
- package/src/routes/utils/icons/GitHub.svelte +13 -0
- package/src/routes/utils/icons/Hunt.svelte +17 -0
- package/src/routes/utils/icons/Italy.svelte +7 -0
- package/src/routes/utils/icons/Mail.svelte +4 -0
- package/src/routes/utils/icons/MetaMask.svelte +31 -0
- package/src/routes/utils/icons/Moon.svelte +3 -0
- package/src/routes/utils/icons/Npm.svelte +3 -0
- package/src/routes/utils/icons/OperaWallet.svelte +17 -0
- package/src/routes/utils/icons/Quote.svelte +3 -0
- package/src/routes/utils/icons/React.svelte +4 -0
- package/src/routes/utils/icons/Reddit.svelte +23 -0
- package/src/routes/utils/icons/Sun.svelte +7 -0
- package/src/routes/utils/icons/Usa.svelte +31 -0
- package/src/routes/utils/icons/Vue.svelte +3 -0
- package/src/routes/utils/icons/WalletConnect.svelte +18 -0
- package/src/routes/utils/icons/YouTube.svelte +3 -0
- package/src/routes/utils/icons/YouTubeFull.svelte +17 -0
- package/src/routes/utils/index.ts +146 -0
- package/src/routes/utils/mdsvex.d.ts +8 -0
- package/static/images/alert-prop.png +0 -0
- package/static/images/carousel/cosmic-timetraveler-pYyOZ8q7AII-unsplash.webp +0 -0
- package/static/images/carousel/cristina-gottardi-CSpjU6hYo_0-unsplash.webp +0 -0
- package/static/images/carousel/johannes-plenio-RwHv7LgeC7s-unsplash.webp +0 -0
- package/static/images/carousel/jonatan-pie-3l3RwQdHRHg-unsplash.webp +0 -0
- package/static/images/carousel/mark-harpur-K2s_YE031CA-unsplash.webp +0 -0
- package/static/images/carousel/pietro-de-grandi-T7K4aEPoGGk-unsplash.webp +0 -0
- package/static/images/carousel/sergey-pesterev-tMvuB9se2uQ-unsplash.webp +0 -0
- package/static/images/carousel/solotravelgoals-7kLufxYoqWk-unsplash.webp +0 -0
- package/static/images/carousel-1.svg +4 -0
- package/static/images/carousel-2.svg +4 -0
- package/static/images/carousel-3.svg +4 -0
- package/static/images/carousel-4.svg +4 -0
- package/static/images/carousel-5.svg +4 -0
- package/static/images/code-example-dark.png +0 -0
- package/static/images/code-example.png +0 -0
- package/static/images/colors.webp +0 -0
- package/static/images/components/accordion-dark.svg +40 -0
- package/static/images/components/accordion.svg +40 -0
- package/static/images/components/alert-dark.svg +11 -0
- package/static/images/components/alert.svg +11 -0
- package/static/images/components/avatar-dark.svg +117 -0
- package/static/images/components/avatar.svg +117 -0
- package/static/images/components/badge-dark.svg +5 -0
- package/static/images/components/badge.svg +5 -0
- package/static/images/components/banner-dark.svg +34 -0
- package/static/images/components/banner.svg +33 -0
- package/static/images/components/bottom-navigation-dark.svg +44 -0
- package/static/images/components/bottom-navigation.svg +43 -0
- package/static/images/components/breadcrumb-dark.svg +7 -0
- package/static/images/components/breadcrumb.svg +7 -0
- package/static/images/components/button-dark.svg +10 -0
- package/static/images/components/button-group-dark.svg +10 -0
- package/static/images/components/button-group.svg +10 -0
- package/static/images/components/button.svg +10 -0
- package/static/images/components/card-dark.svg +31 -0
- package/static/images/components/card.svg +32 -0
- package/static/images/components/carousel-dark.svg +13 -0
- package/static/images/components/carousel.svg +13 -0
- package/static/images/components/charts-dark.svg +29 -0
- package/static/images/components/charts.svg +29 -0
- package/static/images/components/darkmode-dark.svg +7 -0
- package/static/images/components/darkmode.svg +3 -0
- package/static/images/components/device-mockups-dark.svg +17 -0
- package/static/images/components/device-mockups.svg +17 -0
- package/static/images/components/drawer-dark.svg +32 -0
- package/static/images/components/drawer.svg +32 -0
- package/static/images/components/dropdown-dark.svg +35 -0
- package/static/images/components/dropdown.svg +35 -0
- package/static/images/components/footer-dark.svg +52 -0
- package/static/images/components/footer.svg +50 -0
- package/static/images/components/forms-dark.svg +64 -0
- package/static/images/components/forms.svg +64 -0
- package/static/images/components/gallery-dark.svg +14 -0
- package/static/images/components/gallery.svg +14 -0
- package/static/images/components/indicators-dark.svg +38 -0
- package/static/images/components/indicators.svg +38 -0
- package/static/images/components/jumbotron-dark.svg +13 -0
- package/static/images/components/jumbotron.svg +13 -0
- package/static/images/components/kbd-dark.svg +460 -0
- package/static/images/components/kbd.svg +462 -0
- package/static/images/components/list-group-dark.svg +58 -0
- package/static/images/components/list-group.svg +58 -0
- package/static/images/components/mega-menu-dark.svg +71 -0
- package/static/images/components/mega-menu.svg +71 -0
- package/static/images/components/modal-dark.svg +32 -0
- package/static/images/components/modal.svg +33 -0
- package/static/images/components/navbar-dark.svg +78 -0
- package/static/images/components/navbar.svg +78 -0
- package/static/images/components/pagination-dark.svg +50 -0
- package/static/images/components/pagination.svg +50 -0
- package/static/images/components/popover-dark.svg +18 -0
- package/static/images/components/popover.svg +17 -0
- package/static/images/components/progress-dark.svg +10 -0
- package/static/images/components/progress.svg +10 -0
- package/static/images/components/rating-dark.svg +29 -0
- package/static/images/components/rating.svg +29 -0
- package/static/images/components/sidebar-dark.svg +17 -0
- package/static/images/components/sidebar.svg +18 -0
- package/static/images/components/skeleton-dark.svg +10 -0
- package/static/images/components/skeleton.svg +10 -0
- package/static/images/components/speed-dial-dark.svg +69 -0
- package/static/images/components/speed-dial.svg +69 -0
- package/static/images/components/spinner-dark.svg +6 -0
- package/static/images/components/spinner.svg +6 -0
- package/static/images/components/stepper-dark.svg +11 -0
- package/static/images/components/stepper.svg +10 -0
- package/static/images/components/tab-dark.svg +10 -0
- package/static/images/components/tab.svg +10 -0
- package/static/images/components/table-dark.svg +47 -0
- package/static/images/components/table.svg +47 -0
- package/static/images/components/timeline-dark.svg +20 -0
- package/static/images/components/timeline.svg +20 -0
- package/static/images/components/toast-dark.svg +49 -0
- package/static/images/components/toast.svg +49 -0
- package/static/images/components/tooltip-dark.svg +7 -0
- package/static/images/components/tooltip.svg +7 -0
- package/static/images/components/typography-dark.svg +13 -0
- package/static/images/components/typography.svg +13 -0
- package/static/images/components/video-dark.svg +4 -0
- package/static/images/components/video.svg +4 -0
- package/static/images/eugene.jpg +0 -0
- package/static/images/examples/content-gallery-3.png +0 -0
- package/static/images/examples/image-1.jpg +0 -0
- package/static/images/examples/image-1@2x.jpg +0 -0
- package/static/images/examples/image-2@2x.jpg +0 -0
- package/static/images/examples/image-3@2x.jpg +0 -0
- package/static/images/examples/image-4@2x.jpg +0 -0
- package/static/images/experimental/datepicker-dark.svg +67 -0
- package/static/images/experimental/datepicker.svg +67 -0
- package/static/images/favicon.png +0 -0
- package/static/images/favicon.svg +49 -0
- package/static/images/figma-dark.png +0 -0
- package/static/images/figma.png +0 -0
- package/static/images/flowbite-svelte-blocks-optimized.png +0 -0
- package/static/images/flowbite-svelte-icon-logo.svg +49 -0
- package/static/images/flowbite-svelte-icon.svg +49 -0
- package/static/images/flowbite-svelte-og-image.png +0 -0
- package/static/images/flowbite-svelte.png +0 -0
- package/static/images/forms/checkbox-dark.svg +14 -0
- package/static/images/forms/checkbox.svg +14 -0
- package/static/images/forms/file-input-dark.svg +59 -0
- package/static/images/forms/file-input.svg +46 -0
- package/static/images/forms/floating-label-dark.svg +11 -0
- package/static/images/forms/floating-label.svg +11 -0
- package/static/images/forms/input-field-dark.svg +65 -0
- package/static/images/forms/input-field.svg +66 -0
- package/static/images/forms/radio-dark.svg +14 -0
- package/static/images/forms/radio.svg +12 -0
- package/static/images/forms/range-dark.svg +38 -0
- package/static/images/forms/range.svg +38 -0
- package/static/images/forms/search-input-dark.svg +82 -0
- package/static/images/forms/search-input.svg +82 -0
- package/static/images/forms/select-dark.svg +64 -0
- package/static/images/forms/select.svg +64 -0
- package/static/images/forms/textarea-dark.svg +16 -0
- package/static/images/forms/textarea.svg +16 -0
- package/static/images/forms/toggle-dark.svg +12 -0
- package/static/images/forms/toggle.svg +12 -0
- package/static/images/gallery-dark.png +0 -0
- package/static/images/gallery.png +0 -0
- package/static/images/graphs-dark.png +0 -0
- package/static/images/graphs.png +0 -0
- package/static/images/image-1.jpeg +0 -0
- package/static/images/image-1.png +0 -0
- package/static/images/image-1.webp +0 -0
- package/static/images/image-2.jpeg +0 -0
- package/static/images/image-2.png +0 -0
- package/static/images/image-2.webp +0 -0
- package/static/images/image-4.jpeg +0 -0
- package/static/images/image-4.png +0 -0
- package/static/images/image-4.webp +0 -0
- package/static/images/italy.png +0 -0
- package/static/images/nature-1.jpeg +0 -0
- package/static/images/office1.webp +0 -0
- package/static/images/product-1.webp +0 -0
- package/static/images/profile-picture-1.webp +0 -0
- package/static/images/profile-picture-2.webp +0 -0
- package/static/images/profile-picture-3.webp +0 -0
- package/static/images/profile-picture-4.webp +0 -0
- package/static/images/profile-picture-5.webp +0 -0
- package/static/images/sveltekit-sidebar-layout-optimized.png +0 -0
- package/static/images/tailwind-code-dark.png +0 -0
- package/static/images/tailwind-code.png +0 -0
- package/static/images/typography/blockquote-dark.svg +8 -0
- package/static/images/typography/blockquote.svg +8 -0
- package/static/images/typography/heading-dark.svg +5 -0
- package/static/images/typography/heading.svg +5 -0
- package/static/images/typography/hr-dark.svg +7 -0
- package/static/images/typography/hr.svg +7 -0
- package/static/images/typography/image-dark.svg +6 -0
- package/static/images/typography/image.svg +6 -0
- package/static/images/typography/link-dark.svg +4 -0
- package/static/images/typography/link.svg +4 -0
- package/static/images/typography/list-dark.svg +26 -0
- package/static/images/typography/list.svg +26 -0
- package/static/images/typography/paragraph-dark.svg +13 -0
- package/static/images/typography/paragraph.svg +13 -0
- package/static/images/typography/text-dark.svg +11 -0
- package/static/images/typography/text.svg +11 -0
- package/static/site.webmanifest +12 -0
- package/static/styles/docs.css +537 -0
- package/static/videos/compo-doc.gif +0 -0
- package/static/videos/flowbite.mp4 +0 -0
- package/svelte.config.js +28 -0
- package/tailwind.config.cjs +89 -0
- package/tests/components.spec.ts +199 -0
- package/tests/examples.spec.ts +11 -0
- package/tests/extend.spec.ts +19 -0
- package/tests/forms.spec.ts +62 -0
- package/tests/page.spec.ts +46 -0
- package/tests/plugins.spec.ts +7 -0
- package/tests/redirect.spec.ts +175 -0
- package/tests/typography.spec.ts +52 -0
- package/tests/utilities.spec.ts +22 -0
- package/tsconfig.json +21 -0
- package/vite.config.ts +22 -0
- package/vite.config.ts.timestamp-1692816833518-844de2c3e2008.mjs +22 -0
- package/dist/carousels/Caption.svelte +0 -17
- package/dist/carousels/Caption.svelte.d.ts +0 -26
- package/dist/carousels/Caption.svelte.d.ts.map +0 -1
- package/dist/carousels/CarouselTransition.svelte +0 -174
- package/dist/carousels/CarouselTransition.svelte.d.ts +0 -68
- package/dist/carousels/CarouselTransition.svelte.d.ts.map +0 -1
- package/dist/carousels/Indicator.svelte +0 -20
- package/dist/carousels/Indicator.svelte.d.ts +0 -28
- package/dist/carousels/Indicator.svelte.d.ts.map +0 -1
- package/dist/carousels/Slide.svelte +0 -23
- package/dist/carousels/Slide.svelte.d.ts +0 -30
- package/dist/carousels/Slide.svelte.d.ts.map +0 -1
|
@@ -0,0 +1,568 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: componentLayout
|
|
3
|
+
title: Svelte Sidebar - Flowbite
|
|
4
|
+
breadcrumb_title: Svelte Sidebar
|
|
5
|
+
component_title: Sidebar
|
|
6
|
+
dir: Components
|
|
7
|
+
description: Use the sidebar component to show a list of menu items and multi-level dropdown items on either side of the page to navigate on your website
|
|
8
|
+
thumnailSize: w-72
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
<script>
|
|
12
|
+
import { page } from '$app/stores';
|
|
13
|
+
import { TableProp, TableDefaultRow, CompoAttributesViewer, DocBadgeList } from '../../utils'
|
|
14
|
+
import { Badge, Heading, P, A } from '$lib'
|
|
15
|
+
|
|
16
|
+
const components = 'Sidebar, SidebarBrand, SidebarCta, SidebarDropdownItem, SidebarDropdownWrapper, SidebarGroup, SidebarItem, SidebarWrapper'
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
The sidebar component can be used as a complementary element relative to the navbar shown on either the left or right side of the page used for the navigation on your web application, including menu items, multi-level dropdown items, call to actions elements, and more.
|
|
20
|
+
|
|
21
|
+
Disclaimer: this sidebar component is based on this <A class="text-primary-700" href="https://github.com/shinokada/svelte-sidebar" target="_blank" rel="noreferrer">sidebar menu</A> plugin.
|
|
22
|
+
|
|
23
|
+
## Setup
|
|
24
|
+
|
|
25
|
+
```svelte example hideOutput
|
|
26
|
+
<script>
|
|
27
|
+
import { Sidebar, SidebarBrand, SidebarCta, SidebarDropdownItem, SidebarDropdownWrapper, SidebarGroup, SidebarItem, SidebarWrapper } from 'flowbite-svelte';
|
|
28
|
+
</script>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Default sidebar
|
|
32
|
+
|
|
33
|
+
Use this example to show a responsive list of menu items inside the sidebar with icons and labels.
|
|
34
|
+
|
|
35
|
+
```svelte example
|
|
36
|
+
<script>
|
|
37
|
+
import { page } from '$app/stores';
|
|
38
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper } from 'flowbite-svelte';
|
|
39
|
+
import { ChartPieSolid, GridSolid, MailBoxSolid, UserSolid, ArrowRightToBracketSolid, FileEditSolid } from 'flowbite-svelte-icons';
|
|
40
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
41
|
+
$: activeUrl = $page.url.pathname;
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
<Sidebar {activeUrl}>
|
|
45
|
+
<SidebarWrapper>
|
|
46
|
+
<SidebarGroup>
|
|
47
|
+
<SidebarItem label="Dashboard">
|
|
48
|
+
<svelte:fragment slot="icon">
|
|
49
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
50
|
+
</svelte:fragment>
|
|
51
|
+
</SidebarItem>
|
|
52
|
+
<SidebarItem label="Kanban" {spanClass}>
|
|
53
|
+
<svelte:fragment slot="icon">
|
|
54
|
+
<GridSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
55
|
+
</svelte:fragment>
|
|
56
|
+
<svelte:fragment slot="subtext">
|
|
57
|
+
<span class="inline-flex justify-center items-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300"> Pro </span>
|
|
58
|
+
</svelte:fragment>
|
|
59
|
+
</SidebarItem>
|
|
60
|
+
<SidebarItem label="Inbox" {spanClass}>
|
|
61
|
+
<svelte:fragment slot="icon">
|
|
62
|
+
<MailBoxSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
63
|
+
</svelte:fragment>
|
|
64
|
+
<svelte:fragment slot="subtext">
|
|
65
|
+
<span class="inline-flex justify-center items-center p-3 ml-3 w-3 h-3 text-sm font-medium text-primary-600 bg-primary-200 rounded-full dark:bg-primary-900 dark:text-primary-200"> 3 </span>
|
|
66
|
+
</svelte:fragment>
|
|
67
|
+
</SidebarItem>
|
|
68
|
+
<SidebarItem label="Sidebar" href="/docs/components/sidebar" active={activeUrl === '/docs/components/sidebar'}>
|
|
69
|
+
<svelte:fragment slot="icon">
|
|
70
|
+
<UserSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
71
|
+
</svelte:fragment>
|
|
72
|
+
</SidebarItem>
|
|
73
|
+
<SidebarItem label="Sign In">
|
|
74
|
+
<svelte:fragment slot="icon">
|
|
75
|
+
<ArrowRightToBracketSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
76
|
+
</svelte:fragment>
|
|
77
|
+
</SidebarItem>
|
|
78
|
+
<SidebarItem label="Sign Up">
|
|
79
|
+
<svelte:fragment slot="icon">
|
|
80
|
+
<FileEditSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
81
|
+
</svelte:fragment>
|
|
82
|
+
</SidebarItem>
|
|
83
|
+
</SidebarGroup>
|
|
84
|
+
</SidebarWrapper>
|
|
85
|
+
</Sidebar>
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Adding links and active class
|
|
89
|
+
|
|
90
|
+
Utilize the `href` prop within the `SidebarItem` component to incorporate a hyperlink. To initiate the application of the active class, include the `activeUrl` prop within the `Sidebar` component:
|
|
91
|
+
|
|
92
|
+
```svelte example
|
|
93
|
+
<script>
|
|
94
|
+
import { page } from '$app/stores';
|
|
95
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper } from 'flowbite-svelte';
|
|
96
|
+
import { ChartPieSolid, GridSolid, MailBoxSolid, UserSolid, ArrowRightToBracketSolid, FileEditSolid } from 'flowbite-svelte-icons';
|
|
97
|
+
$: activeUrl = $page.url.pathname;
|
|
98
|
+
</script>
|
|
99
|
+
|
|
100
|
+
<Sidebar {activeUrl}>
|
|
101
|
+
<SidebarWrapper>
|
|
102
|
+
<SidebarGroup>
|
|
103
|
+
<SidebarItem label="Dashboard" href="/">
|
|
104
|
+
<svelte:fragment slot="icon">
|
|
105
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
106
|
+
</svelte:fragment>
|
|
107
|
+
</SidebarItem>
|
|
108
|
+
<SidebarItem label="Accordion" href="/docs/components/accordion">
|
|
109
|
+
<svelte:fragment slot="icon">
|
|
110
|
+
<GridSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
111
|
+
</svelte:fragment>
|
|
112
|
+
</SidebarItem>
|
|
113
|
+
<SidebarItem label="Alert" href="/docs/components/alert">
|
|
114
|
+
<svelte:fragment slot="icon">
|
|
115
|
+
<MailBoxSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
116
|
+
</svelte:fragment>
|
|
117
|
+
</SidebarItem>
|
|
118
|
+
<SidebarItem label="Sidebar" href="/docs/components/sidebar">
|
|
119
|
+
<svelte:fragment slot="icon">
|
|
120
|
+
<UserSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
121
|
+
</svelte:fragment>
|
|
122
|
+
</SidebarItem>
|
|
123
|
+
<SidebarItem label="Badge" href="/docs/components/badge">
|
|
124
|
+
<svelte:fragment slot="icon">
|
|
125
|
+
<ArrowRightToBracketSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
126
|
+
</svelte:fragment>
|
|
127
|
+
</SidebarItem>
|
|
128
|
+
</SidebarGroup>
|
|
129
|
+
</SidebarWrapper>
|
|
130
|
+
</Sidebar>
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
Control the `active` and `nonactive` class by using `activeClass` and `nonActiveClass`:
|
|
134
|
+
|
|
135
|
+
```svelte example
|
|
136
|
+
<script>
|
|
137
|
+
import { page } from '$app/stores';
|
|
138
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper } from 'flowbite-svelte';
|
|
139
|
+
import { ChartPieSolid, GridSolid, MailBoxSolid, UserSolid, ArrowRightToBracketSolid, FileEditSolid } from 'flowbite-svelte-icons';
|
|
140
|
+
$: activeUrl = $page.url.pathname;
|
|
141
|
+
let activeClass = 'flex items-center p-2 text-base font-normal text-primary-900 bg-primary-200 dark:bg-primary-700 rounded-lg dark:text-white hover:bg-primary-100 dark:hover:bg-gray-700';
|
|
142
|
+
let nonActiveClass = 'flex items-center p-2 text-base font-normal text-green-900 rounded-lg dark:text-white hover:bg-green-100 dark:hover:bg-green-700';
|
|
143
|
+
</script>
|
|
144
|
+
|
|
145
|
+
<Sidebar {activeUrl} {activeClass} {nonActiveClass}>
|
|
146
|
+
<SidebarWrapper>
|
|
147
|
+
<SidebarGroup>
|
|
148
|
+
<SidebarItem label="Dashboard" href="/">
|
|
149
|
+
<svelte:fragment slot="icon">
|
|
150
|
+
<ChartPieSolid class="w-5 h-5" />
|
|
151
|
+
</svelte:fragment>
|
|
152
|
+
</SidebarItem>
|
|
153
|
+
<SidebarItem label="Accordion" href="/docs/components/accordion">
|
|
154
|
+
<svelte:fragment slot="icon">
|
|
155
|
+
<GridSolid class="w-5 h-5" />
|
|
156
|
+
</svelte:fragment>
|
|
157
|
+
</SidebarItem>
|
|
158
|
+
<SidebarItem label="Alert" href="/docs/components/alert">
|
|
159
|
+
<svelte:fragment slot="icon">
|
|
160
|
+
<MailBoxSolid class="w-5 h-5" />
|
|
161
|
+
</svelte:fragment>
|
|
162
|
+
</SidebarItem>
|
|
163
|
+
<SidebarItem label="Sidebar" href="/docs/components/sidebar">
|
|
164
|
+
<svelte:fragment slot="icon">
|
|
165
|
+
<UserSolid class="w-5 h-5" />
|
|
166
|
+
</svelte:fragment>
|
|
167
|
+
</SidebarItem>
|
|
168
|
+
<SidebarItem label="Badge" href="/docs/components/badge">
|
|
169
|
+
<svelte:fragment slot="icon">
|
|
170
|
+
<ArrowRightToBracketSolid class="w-5 h-5" />
|
|
171
|
+
</svelte:fragment>
|
|
172
|
+
</SidebarItem>
|
|
173
|
+
</SidebarGroup>
|
|
174
|
+
</SidebarWrapper>
|
|
175
|
+
</Sidebar>
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
You can control icon class by changing the `class` prop in the `Icon` component.
|
|
179
|
+
|
|
180
|
+
## Multi-level dropdown
|
|
181
|
+
|
|
182
|
+
Use this sidebar example to create multi-level menu items by using the dSidebarDropdownWrapper and SidebarDropdownItem components.
|
|
183
|
+
|
|
184
|
+
```svelte example
|
|
185
|
+
<script>
|
|
186
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper, SidebarDropdownItem, SidebarDropdownWrapper } from 'flowbite-svelte';
|
|
187
|
+
import { ChartPieSolid, GridSolid, ShoppingCartSolid, MailBoxSolid, UserSolid, ArrowRightToBracketSolid, FileEditSolid } from 'flowbite-svelte-icons';
|
|
188
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
189
|
+
</script>
|
|
190
|
+
|
|
191
|
+
<Sidebar>
|
|
192
|
+
<SidebarWrapper>
|
|
193
|
+
<SidebarGroup>
|
|
194
|
+
<SidebarItem label="Dashboard">
|
|
195
|
+
<svelte:fragment slot="icon">
|
|
196
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
197
|
+
</svelte:fragment>
|
|
198
|
+
</SidebarItem>
|
|
199
|
+
<SidebarDropdownWrapper label="E-commerce">
|
|
200
|
+
<svelte:fragment slot="icon">
|
|
201
|
+
<ShoppingCartSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
202
|
+
</svelte:fragment>
|
|
203
|
+
<SidebarDropdownItem label="Products" />
|
|
204
|
+
<SidebarDropdownItem label="Billing" />
|
|
205
|
+
<SidebarDropdownItem label="Invoice" />
|
|
206
|
+
</SidebarDropdownWrapper>
|
|
207
|
+
<SidebarItem label="Kanban" {spanClass}>
|
|
208
|
+
<svelte:fragment slot="icon">
|
|
209
|
+
<GridSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
210
|
+
</svelte:fragment>
|
|
211
|
+
<svelte:fragment slot="subtext">
|
|
212
|
+
<span class="inline-flex justify-center items-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300"> Pro </span>
|
|
213
|
+
</svelte:fragment>
|
|
214
|
+
</SidebarItem>
|
|
215
|
+
<SidebarItem label="Inbox" {spanClass}>
|
|
216
|
+
<svelte:fragment slot="icon">
|
|
217
|
+
<MailBoxSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
218
|
+
</svelte:fragment>
|
|
219
|
+
<svelte:fragment slot="subtext">
|
|
220
|
+
<span class="inline-flex justify-center items-center p-3 ml-3 w-3 h-3 text-sm font-medium text-primary-600 bg-primary-200 rounded-full dark:bg-primary-900 dark:text-primary-200"> 3 </span>
|
|
221
|
+
</svelte:fragment>
|
|
222
|
+
</SidebarItem>
|
|
223
|
+
<SidebarItem label="Users">
|
|
224
|
+
<svelte:fragment slot="icon">
|
|
225
|
+
<UserSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
226
|
+
</svelte:fragment>
|
|
227
|
+
</SidebarItem>
|
|
228
|
+
<SidebarItem label="Sign In">
|
|
229
|
+
<svelte:fragment slot="icon">
|
|
230
|
+
<ArrowRightToBracketSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
231
|
+
</svelte:fragment>
|
|
232
|
+
</SidebarItem>
|
|
233
|
+
<SidebarItem label="Sign Up">
|
|
234
|
+
<svelte:fragment slot="icon">
|
|
235
|
+
<FileEditSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
236
|
+
</svelte:fragment>
|
|
237
|
+
</SidebarItem>
|
|
238
|
+
</SidebarGroup>
|
|
239
|
+
</SidebarWrapper>
|
|
240
|
+
</Sidebar>
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
You can change the icons using `arrowup` and `arrowdown` slots.
|
|
244
|
+
|
|
245
|
+
```svelte example
|
|
246
|
+
<script>
|
|
247
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper, SidebarDropdownItem, SidebarDropdownWrapper } from 'flowbite-svelte';
|
|
248
|
+
import { ChartPieSolid, ShoppingCartSolid, ChevronDoubleUpOutline, ChevronDoubleDownOutline } from 'flowbite-svelte-icons';
|
|
249
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
250
|
+
</script>
|
|
251
|
+
|
|
252
|
+
<Sidebar>
|
|
253
|
+
<SidebarWrapper>
|
|
254
|
+
<SidebarGroup>
|
|
255
|
+
<SidebarItem label="Dashboard">
|
|
256
|
+
<svelte:fragment slot="icon">
|
|
257
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
258
|
+
</svelte:fragment>
|
|
259
|
+
</SidebarItem>
|
|
260
|
+
<SidebarDropdownWrapper label="E-commerce">
|
|
261
|
+
<svelte:fragment slot="icon">
|
|
262
|
+
<ShoppingCartSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
263
|
+
</svelte:fragment>
|
|
264
|
+
<svelte:fragment slot="arrowup">
|
|
265
|
+
<ChevronDoubleUpOutline class="w-3 h-3" />
|
|
266
|
+
</svelte:fragment>
|
|
267
|
+
<svelte:fragment slot="arrowdown">
|
|
268
|
+
<ChevronDoubleDownOutline class="w-3 h-3" />
|
|
269
|
+
</svelte:fragment>
|
|
270
|
+
<SidebarDropdownItem label="Products" />
|
|
271
|
+
<SidebarDropdownItem label="Billing" />
|
|
272
|
+
<SidebarDropdownItem label="Invoice" />
|
|
273
|
+
</SidebarDropdownWrapper>
|
|
274
|
+
</SidebarGroup>
|
|
275
|
+
</SidebarWrapper>
|
|
276
|
+
</Sidebar>
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
## Content separator
|
|
280
|
+
|
|
281
|
+
Separate the content inside the sidebar component by applying a border separator to the SidebarGroup component.
|
|
282
|
+
|
|
283
|
+
```svelte example
|
|
284
|
+
<script>
|
|
285
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper } from 'flowbite-svelte';
|
|
286
|
+
import { ChartPieSolid, GridSolid, MailBoxSolid, UserSolid, BagSolid, ArrowRightToBracketSolid, FileEditSolid, FireSolid, BookSolid, WindowRestoreOutline, LifeBuoySolid } from 'flowbite-svelte-icons';
|
|
287
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
288
|
+
</script>
|
|
289
|
+
|
|
290
|
+
<Sidebar>
|
|
291
|
+
<SidebarWrapper>
|
|
292
|
+
<SidebarGroup>
|
|
293
|
+
<SidebarItem label="Dashboard">
|
|
294
|
+
<svelte:fragment slot="icon">
|
|
295
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
296
|
+
</svelte:fragment>
|
|
297
|
+
</SidebarItem>
|
|
298
|
+
<SidebarItem label="Kanban" {spanClass}>
|
|
299
|
+
<svelte:fragment slot="icon">
|
|
300
|
+
<GridSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
301
|
+
</svelte:fragment>
|
|
302
|
+
<svelte:fragment slot="subtext">
|
|
303
|
+
<span class="inline-flex justify-center items-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300"> Pro </span>
|
|
304
|
+
</svelte:fragment>
|
|
305
|
+
</SidebarItem>
|
|
306
|
+
<SidebarItem label="Inbox" {spanClass}>
|
|
307
|
+
<svelte:fragment slot="icon">
|
|
308
|
+
<MailBoxSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
309
|
+
</svelte:fragment>
|
|
310
|
+
<svelte:fragment slot="subtext">
|
|
311
|
+
<span class="inline-flex justify-center items-center p-3 ml-3 w-3 h-3 text-sm font-medium text-primary-600 bg-primary-200 rounded-full dark:bg-primary-900 dark:text-primary-200"> 3 </span>
|
|
312
|
+
</svelte:fragment>
|
|
313
|
+
</SidebarItem>
|
|
314
|
+
<SidebarItem label="Users">
|
|
315
|
+
<svelte:fragment slot="icon">
|
|
316
|
+
<UserSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
317
|
+
</svelte:fragment>
|
|
318
|
+
</SidebarItem>
|
|
319
|
+
<SidebarItem label="Products">
|
|
320
|
+
<svelte:fragment slot="icon">
|
|
321
|
+
<BagSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
322
|
+
</svelte:fragment>
|
|
323
|
+
</SidebarItem>
|
|
324
|
+
<SidebarItem label="Sign In">
|
|
325
|
+
<svelte:fragment slot="icon">
|
|
326
|
+
<ArrowRightToBracketSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
327
|
+
</svelte:fragment>
|
|
328
|
+
</SidebarItem>
|
|
329
|
+
<SidebarItem label="Sign Up">
|
|
330
|
+
<svelte:fragment slot="icon">
|
|
331
|
+
<FileEditSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
332
|
+
</svelte:fragment>
|
|
333
|
+
</SidebarItem>
|
|
334
|
+
</SidebarGroup>
|
|
335
|
+
<SidebarGroup border>
|
|
336
|
+
<SidebarItem label="Upgrade to Pro">
|
|
337
|
+
<svelte:fragment slot="icon">
|
|
338
|
+
<FireSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
339
|
+
</svelte:fragment>
|
|
340
|
+
</SidebarItem>
|
|
341
|
+
<SidebarItem label="Documentation">
|
|
342
|
+
<svelte:fragment slot="icon">
|
|
343
|
+
<BookSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
344
|
+
</svelte:fragment>
|
|
345
|
+
</SidebarItem>
|
|
346
|
+
<SidebarItem label="Components">
|
|
347
|
+
<svelte:fragment slot="icon">
|
|
348
|
+
<WindowRestoreOutline class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
349
|
+
</svelte:fragment>
|
|
350
|
+
</SidebarItem>
|
|
351
|
+
<SidebarItem label="Help">
|
|
352
|
+
<svelte:fragment slot="icon">
|
|
353
|
+
<LifeBuoySolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
354
|
+
</svelte:fragment>
|
|
355
|
+
</SidebarItem>
|
|
356
|
+
</SidebarGroup>
|
|
357
|
+
</SidebarWrapper>
|
|
358
|
+
</Sidebar>
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
## CTA button
|
|
362
|
+
|
|
363
|
+
Use this example to add a CTA button inside the sidebar component and encourage your users to visit the dedicated page.
|
|
364
|
+
|
|
365
|
+
```svelte example
|
|
366
|
+
<script>
|
|
367
|
+
import { page } from '$app/stores';
|
|
368
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper, SidebarCta } from 'flowbite-svelte';
|
|
369
|
+
import { ChartPieSolid, GridSolid, MailBoxSolid, UserSolid, ArrowRightToBracketSolid, FileEditSolid, CloseOutline } from 'flowbite-svelte-icons';
|
|
370
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
371
|
+
</script>
|
|
372
|
+
|
|
373
|
+
<Sidebar>
|
|
374
|
+
<SidebarWrapper>
|
|
375
|
+
<SidebarGroup>
|
|
376
|
+
<SidebarItem label="Dashboard">
|
|
377
|
+
<svelte:fragment slot="icon">
|
|
378
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
379
|
+
</svelte:fragment>
|
|
380
|
+
</SidebarItem>
|
|
381
|
+
<SidebarItem label="Kanban" {spanClass}>
|
|
382
|
+
<svelte:fragment slot="icon">
|
|
383
|
+
<GridSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
384
|
+
</svelte:fragment>
|
|
385
|
+
<svelte:fragment slot="subtext">
|
|
386
|
+
<span class="inline-flex justify-center items-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300"> Pro </span>
|
|
387
|
+
</svelte:fragment>
|
|
388
|
+
</SidebarItem>
|
|
389
|
+
<SidebarItem label="Inbox" {spanClass}>
|
|
390
|
+
<svelte:fragment slot="icon">
|
|
391
|
+
<MailBoxSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
392
|
+
</svelte:fragment>
|
|
393
|
+
<svelte:fragment slot="subtext">
|
|
394
|
+
<span class="inline-flex justify-center items-center p-3 ml-3 w-3 h-3 text-sm font-medium text-primary-600 bg-primary-200 rounded-full dark:bg-primary-900 dark:text-primary-200"> 3 </span>
|
|
395
|
+
</svelte:fragment>
|
|
396
|
+
</SidebarItem>
|
|
397
|
+
<SidebarItem label="Users">
|
|
398
|
+
<svelte:fragment slot="icon">
|
|
399
|
+
<UserSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
400
|
+
</svelte:fragment>
|
|
401
|
+
</SidebarItem>
|
|
402
|
+
<SidebarItem label="Sign In">
|
|
403
|
+
<svelte:fragment slot="icon">
|
|
404
|
+
<ArrowRightToBracketSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
405
|
+
</svelte:fragment>
|
|
406
|
+
</SidebarItem>
|
|
407
|
+
<SidebarItem label="Sign Up">
|
|
408
|
+
<svelte:fragment slot="icon">
|
|
409
|
+
<FileEditSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
410
|
+
</svelte:fragment>
|
|
411
|
+
</SidebarItem>
|
|
412
|
+
<SidebarCta label="Beta">
|
|
413
|
+
<svelte:fragment slot="icon">
|
|
414
|
+
<button type="button" class="ml-auto -mx-1.5 -my-1.5 bg-primary-50 text-primary-900 rounded-lg focus:ring-2 focus:ring-primary-400 p-1 hover:bg-primary-200 inline-flex h-6 w-6 dark:bg-primary-900 dark:text-primary-400 dark:hover:bg-primary-800" data-collapse-toggle="dropdown-cta" aria-label="Close">
|
|
415
|
+
<span class="sr-only">Close</span>
|
|
416
|
+
<CloseOutline class="w-2 h-2" />
|
|
417
|
+
</button>
|
|
418
|
+
</svelte:fragment>
|
|
419
|
+
<p class="mb-3 text-sm text-primary-900 dark:text-primary-400">Preview the new Flowbite dashboard navigation! You can turn the new navigation off for a limited time in your profile.</p>
|
|
420
|
+
<a class="text-sm text-primary-900 underline hover:text-primary-800 dark:text-primary-400 dark:hover:text-primary-300" href="/"> Turn new navigation off </a>
|
|
421
|
+
</SidebarCta>
|
|
422
|
+
</SidebarGroup>
|
|
423
|
+
</SidebarWrapper>
|
|
424
|
+
</Sidebar>
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
## Logo branding
|
|
428
|
+
|
|
429
|
+
Show the logo of your brand and link back to the homepage from the top part of the sidebar.
|
|
430
|
+
|
|
431
|
+
```svelte example
|
|
432
|
+
<script>
|
|
433
|
+
import { Sidebar, SidebarWrapper, SidebarBrand, SidebarItem, SidebarGroup } from 'flowbite-svelte';
|
|
434
|
+
import { ChartPieSolid, GridSolid, MailBoxSolid, UserSolid, ArrowRightToBracketSolid, FileEditSolid } from 'flowbite-svelte-icons';
|
|
435
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
436
|
+
|
|
437
|
+
let site = {
|
|
438
|
+
name: 'Flowbite-Svelte',
|
|
439
|
+
href: '/',
|
|
440
|
+
img: '/images/flowbite-svelte-icon-logo.svg'
|
|
441
|
+
};
|
|
442
|
+
</script>
|
|
443
|
+
|
|
444
|
+
<Sidebar>
|
|
445
|
+
<SidebarWrapper>
|
|
446
|
+
<SidebarGroup>
|
|
447
|
+
<SidebarBrand {site} />
|
|
448
|
+
<SidebarItem label="Dashboard">
|
|
449
|
+
<svelte:fragment slot="icon">
|
|
450
|
+
<ChartPieSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
451
|
+
</svelte:fragment>
|
|
452
|
+
</SidebarItem>
|
|
453
|
+
<SidebarItem label="Kanban" {spanClass}>
|
|
454
|
+
<svelte:fragment slot="icon">
|
|
455
|
+
<GridSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
456
|
+
</svelte:fragment>
|
|
457
|
+
<svelte:fragment slot="subtext">
|
|
458
|
+
<span class="inline-flex justify-center items-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300"> Pro </span>
|
|
459
|
+
</svelte:fragment>
|
|
460
|
+
</SidebarItem>
|
|
461
|
+
<SidebarItem label="Inbox" {spanClass}>
|
|
462
|
+
<svelte:fragment slot="icon">
|
|
463
|
+
<MailBoxSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
464
|
+
</svelte:fragment>
|
|
465
|
+
<svelte:fragment slot="subtext">
|
|
466
|
+
<span class="inline-flex justify-center items-center p-3 ml-3 w-3 h-3 text-sm font-medium text-primary-600 bg-primary-200 rounded-full dark:bg-primary-900 dark:text-primary-200"> 3 </span>
|
|
467
|
+
</svelte:fragment>
|
|
468
|
+
</SidebarItem>
|
|
469
|
+
<SidebarItem label="Users">
|
|
470
|
+
<svelte:fragment slot="icon">
|
|
471
|
+
<UserSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
472
|
+
</svelte:fragment>
|
|
473
|
+
</SidebarItem>
|
|
474
|
+
<SidebarItem label="Sign In">
|
|
475
|
+
<svelte:fragment slot="icon">
|
|
476
|
+
<ArrowRightToBracketSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
477
|
+
</svelte:fragment>
|
|
478
|
+
</SidebarItem>
|
|
479
|
+
<SidebarItem label="Sign Up">
|
|
480
|
+
<svelte:fragment slot="icon">
|
|
481
|
+
<FileEditSolid class="w-5 h-5 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white" />
|
|
482
|
+
</svelte:fragment>
|
|
483
|
+
</SidebarItem>
|
|
484
|
+
</SidebarGroup>
|
|
485
|
+
</SidebarWrapper>
|
|
486
|
+
</Sidebar>
|
|
487
|
+
```
|
|
488
|
+
|
|
489
|
+
## Transition
|
|
490
|
+
|
|
491
|
+
You can add own transition by setting `transitionType` and `transitionParams`.
|
|
492
|
+
|
|
493
|
+
```svelte example
|
|
494
|
+
<script>
|
|
495
|
+
import { page } from '$app/stores';
|
|
496
|
+
import { sineIn } from 'svelte/easing';
|
|
497
|
+
import { Sidebar, SidebarGroup, SidebarItem, SidebarWrapper, SidebarDropdownWrapper, SidebarDropdownItem } from 'flowbite-svelte';
|
|
498
|
+
let spanClass = 'flex-1 ml-3 whitespace-nowrap';
|
|
499
|
+
$: activeUrl = $page.url.pathname;
|
|
500
|
+
$: containPath = () => {
|
|
501
|
+
// add your logic here
|
|
502
|
+
true;
|
|
503
|
+
};
|
|
504
|
+
let transitionParams = {
|
|
505
|
+
x: -320,
|
|
506
|
+
duration: 200,
|
|
507
|
+
easing: sineIn
|
|
508
|
+
};
|
|
509
|
+
</script>
|
|
510
|
+
|
|
511
|
+
<Sidebar>
|
|
512
|
+
<SidebarWrapper>
|
|
513
|
+
<SidebarGroup>
|
|
514
|
+
<SidebarItem label="Dashboard" />
|
|
515
|
+
<SidebarDropdownWrapper label="E-commerce" isOpen={containPath} transitionType="fly" {transitionParams}>
|
|
516
|
+
<SidebarDropdownItem label="Products" href="/products" />
|
|
517
|
+
<SidebarDropdownItem label="Cart" href="/cart" />
|
|
518
|
+
</SidebarDropdownWrapper>
|
|
519
|
+
<SidebarDropdownWrapper label="Items" transitionType="fly" {transitionParams}>
|
|
520
|
+
<SidebarDropdownItem label="Item 1" href="/components/item1" />
|
|
521
|
+
<SidebarDropdownItem label="Item 2" href="/components/item2" />
|
|
522
|
+
</SidebarDropdownWrapper>
|
|
523
|
+
</SidebarGroup>
|
|
524
|
+
</SidebarWrapper>
|
|
525
|
+
</Sidebar>
|
|
526
|
+
```
|
|
527
|
+
|
|
528
|
+
## Component data
|
|
529
|
+
|
|
530
|
+
The component has the following props, type, and default values. See [types page](/docs/pages/typescript) for type information.
|
|
531
|
+
|
|
532
|
+
### Sidebar styling
|
|
533
|
+
|
|
534
|
+
- Use the `class` prop to overwrite `asideClass`.
|
|
535
|
+
|
|
536
|
+
### SidebarBrand styling
|
|
537
|
+
|
|
538
|
+
- Use the `class` prop to overwrite `aClass`.
|
|
539
|
+
|
|
540
|
+
### SidebarCta styling
|
|
541
|
+
|
|
542
|
+
- Use the `class` prop to overwrite the default class.
|
|
543
|
+
|
|
544
|
+
### SidebarDropdownItem styling
|
|
545
|
+
|
|
546
|
+
- Use the `class` prop to overwrite `divWrapperClass`.
|
|
547
|
+
|
|
548
|
+
### SidebarDropdownWrapper styling
|
|
549
|
+
|
|
550
|
+
- Use the `class` prop to overwrite `btnClass`.
|
|
551
|
+
|
|
552
|
+
### SidebarGroup styling
|
|
553
|
+
|
|
554
|
+
- Use the `class` prop to overwrite `ulClass`.
|
|
555
|
+
|
|
556
|
+
### SidebarItem styling
|
|
557
|
+
|
|
558
|
+
- Use the `class` prop to overwrite the `a` tag class.
|
|
559
|
+
|
|
560
|
+
### SidebarWrapper styling
|
|
561
|
+
|
|
562
|
+
- Use the `class` prop to overwrite `divClass`.
|
|
563
|
+
|
|
564
|
+
<CompoAttributesViewer {components}/>
|
|
565
|
+
|
|
566
|
+
## References
|
|
567
|
+
|
|
568
|
+
- [Flowbite Sidebar](https://flowbite.com/docs/components/sidebar/)
|