# Flowery.Uno Component Library
Flowery.Uno is an Uno Platform / WinUI component library inspired by DaisyUI.
It provides styled controls for building modern cross-platform applications.
## Quick Start
Add the namespace to your XAML:
```xml
xmlns:daisy="using:Flowery.Controls"
```
## Controls Overview
| Control | Description |
|---------|-------------|
| [DaisyAccordion](controls/DaisyAccordion.html) | DaisyAccordion is an ItemsControl for stacked, single-open sections built from `DaisyAccordionItem`. It offers **two indicator variants** (arrow or plus) and enforces **one expanded item at a time** through the `ExpandedIndex` property. Use it to organize FAQ-style content or any list of collapsible panels where only one section should stay open. |
| [DaisyAlert](controls/DaisyAlert.html) | DaisyAlert is a compact callout for inline status messages. It provides **4 semantic variants** (Info, Success, Warning, Error), optional icon content, and a simple two-column layout that keeps messages readable without dominating the page. Use it for persistent notices inside forms, cards, or panels; pair with DaisyToast for transient alerts. |
| [DaisyAnimatedNumber](controls/DaisyAnimatedNumber.html) ✦ | DaisyAnimatedNumber is a numeric text display that animates value changes with a vertical slide transition. It's useful for counters, KPIs, and any UI where you want motion feedback when the number updates. |
| [DaisyAvatar](controls/DaisyAvatar.html) | DaisyAvatar renders user/profile images or initials with **5 sizes**, **3 shapes**, optional **status dot**, and **ring accent** colors. It accepts any content (images, icons, initials) and can show placeholders while real media loads. Pair with `DaisyAvatarGroup` to overlap multiple avatars. |
| [DaisyAvatarGroup](controls/DaisyAvatarGroup.html) | DaisyAvatarGroup arranges multiple `DaisyAvatar` items in an overlapping row. It uses a custom panel that offsets each avatar by a configurable overlap while keeping earlier items on top (higher z-order). Ideal for showing participants, teams, or contributors in a compact space. |
| [DaisyBadge](controls/DaisyBadge.html) | DaisyBadge is a compact label for counts, statuses, or tags. It supports **10 color variants**, **4 size presets**, and an **outline** mode for low-emphasis contexts. Works standalone or nested inside other controls (e.g., buttons, lists) to highlight small bits of information without overwhelming the layout. |
| [DaisyBaseContentControl](controls/DaisyBaseContentControl.html) | `DaisyBaseContentControl` is the internal base class for Flowery.Uno components. It centralizes lifecycle management, theme integration, sizing systems, and provides hardware-accelerated visual effects like neumorphism. |
| [DaisyBreadcrumbBar](controls/DaisyBreadcrumbBar.html) | DaisyBreadcrumbBar is a themed wrapper around WinUI's `BreadcrumbBar`. It aligns typography |
| [DaisyBreadcrumbs](controls/DaisyBreadcrumbs.html) | DaisyBreadcrumbs shows a horizontal trail of navigation steps. Provide a `Panel` (typically a horizontal `StackPanel`) as `Content` containing `DaisyBreadcrumbItem` children; the control re-parents those items into its internal layout, applies separators between items, and marks only the trailing item as non-clickable. Supports custom separators, icons, and command execution on intermediate items. |
| [DaisyButton](controls/DaisyButton.html) | DaisyButton delivers DaisyUI-styled actions with **11 color variants**, **4 visual styles**, **5 sizes**, and **shape modifiers** for wide, block, square, or circular buttons. It supports active state scaling, optional shadows, and link/ghost modes for text-like actions. Use it for everything from primary calls-to-action to subtle icon buttons. |
| [DaisyButtonGroup](controls/DaisyButtonGroup.html) | `DaisyButtonGroup` arranges multiple segments (typically `Button` / `ToggleButton`) into a single joined control with shared borders and unified rounding, similar to shadcn's “Button Group”. |
| [DaisyCalendarDatePicker](controls/DaisyCalendarDatePicker.html) | DaisyCalendarDatePicker provides a themed CalendarDatePicker that matches Daisy input surfaces while keeping the native calendar flyout behavior. |
| [DaisyCard](controls/DaisyCard.html) | DaisyCard provides a panel for grouping content with padding, rounded corners, and optional glass effects. It supports **3 layout variants** (Normal, Compact, Side), **color variants** for semantic styling, configurable body/title typography, and an opt-in glassmorphism stack with tint/blur controls. You can also use the built-in header API (Title/Description/Icon) for a ready-made card layout. Use it for dashboards, feature tiles, or content groupings; compose headers, bodies, and action rows inside. |
| [DaisyCarousel](controls/DaisyCarousel.html) | DaisyCarousel is a slide container with built-in previous/next buttons and directional slide transitions. Supports manual navigation, automatic slideshow modes, and cinematic visual effects like Pan And Zoom pan/zoom. Perfect for galleries, hero banners, or featured content. |
| [DaisyChatBubble](controls/DaisyChatBubble.html) | DaisyChatBubble renders chat-style message bubbles with alignment control, optional avatar image, header/footer text, and **9 color variants**. `IsEnd` flips the bubble to the right side and mirrors the tail rounding for responder messages. Use it for conversation threads, comments, or inline messaging UIs. |
| [DaisyCheckBox](controls/DaisyCheckBox.html) | DaisyCheckBox is a styled checkbox with **9 color variants** and **5 size presets**. It uses a filled box with a checkmark when checked and inherits WinUI's `IsChecked`/`IsThreeState` behavior. Use variants for semantic meaning and sizes to match surrounding controls. |
| [DaisyClock](controls/DaisyClock.html) | DaisyClock is a comprehensive "batteries included" clock control that displays time with three visual styles (Segmented, Flip, Text), optional labels, and supports Clock, Timer, and Stopwatch modes. It provides localized labels, 12/24-hour formats, RTL support, and events for timer/stopwatch interaction. Designed as a full replacement for manual DaisyCountdown composition. |
| [DaisyCollapse](controls/DaisyCollapse.html) | DaisyCollapse is an `Expander`-based container for revealing content under a clickable header. It offers **Arrow** and **Plus** indicator variants with a 0.2s rotation animation, uses configurable padding/corners from the theme, and hides content when collapsed. Ideal for short disclosures, FAQs, or inline details. |
| [DaisyColorEditor](controls/DaisyColorEditor.html) ✦ | DaisyColorEditor is a comprehensive color editing control that combines RGB and HSL sliders with numeric inputs and a hex color field. It provides precise color manipulation through multiple input methods, making it ideal for professional color selection interfaces. |
| [DaisyColorGrid](controls/DaisyColorGrid.html) ✦ | DaisyColorGrid is a grid control for displaying and selecting colors from predefined or custom palettes. It supports multiple built-in palettes (Named Colors, Office 2010, Paint, Web Safe), configurable cell sizes, and a separate custom colors section for user-defined colors. |
| [DaisyColorPickerDialog](controls/DaisyColorPickerDialog.html) ✦ | DaisyColorPickerDialog is a comprehensive color picker dialog that combines all color picker components into a single, professional interface. |
| [DaisyColorSlider](controls/DaisyColorSlider.html) ✦ | DaisyColorSlider is a slider control for selecting individual color channel values. It supports **7 color channels** (RGB + Alpha + HSL) with automatic gradient rendering and a draggable thumb indicator. The slider displays a visual gradient representing the channel's range and supports both horizontal and vertical orientations. |
| [DaisyColorWheel](controls/DaisyColorWheel.html) ✦ | DaisyColorWheel is a circular color wheel control for selecting hue and saturation values in the HSL color space. It renders a full-spectrum color wheel with a draggable selection marker, allowing intuitive color picking through mouse interaction. The wheel displays colors at a configurable lightness level. |
| [DaisyContributionGraph](controls/DaisyContributionGraph.html) ✦ | DaisyContributionGraph is a GitHub-style contribution heatmap graph (7 rows × 53 weeks). Provide day entries via `Contributions`, and the control renders a compact year overview with optional month/day labels, hover tooltips, and a “Less/More” legend. |
| [DaisyCopyButton](controls/DaisyCopyButton.html) ✦ | DaisyCopyButton is a `DaisyButton` that copies text to the clipboard on click and briefly switches to a success state. It's ideal for “copy invite link”, “copy token”, and similar flows where immediate feedback matters. |
| [DaisyCountdown](controls/DaisyCountdown.html) | DaisyCountdown is a versatile time display and timing control that can: |
| [DaisyDateTimeline](controls/DaisyDateTimeline.html) ✦ | DaisyDateTimeline is a **horizontal scrollable date picker** inspired by FadyFayezYounan's [easy_date_timeline](https://github.com/FadyFayezYounan/easy_date_timeline) package. It displays dates in a horizontal strip where each date appears as a card showing the day name, day number, and month. Perfect for booking systems, scheduling apps, calendars, and any UI requiring date selection from a visible range. |
| [DaisyDateTimelineItem](controls/DaisyDateTimelineItem.html) ✦ | DaisyDateTimelineItem represents a single date card within the `DaisyDateTimeline` control. While typically auto-generated by the parent container, understanding its properties helps with custom styling and advanced scenarios. |
| [DaisyDiff](controls/DaisyDiff.html) | DaisyDiff is a before/after comparison control with a draggable grip. It overlays `Image1` atop `Image2` and clips the top layer based on `Offset` (0–100%). Users can drag the grip to reveal more or less of each side; layout adjusts automatically on resize. Supports both horizontal (left-right) and vertical (top-bottom) split orientations. |
| [DaisyDivider](controls/DaisyDivider.html) | DaisyDivider separates content with a line that can run horizontally (default) or vertically (`Horizontal=True`). It supports **10 visual styles**, **9 color options**, **start/end placement**, optional inline content, **ornament decorations**, and **responsive sizing** via the global Size system. |
| [DaisyDock](controls/DaisyDock.html) | DaisyDock arranges items in a pill-shaped bar, similar to a macOS dock. It supports **5 sizes** via the standard `DaisySize` enum, responds to global size changes via `FlowerySizeManager`, and raises an `ItemSelected` event when an item is clicked. Commonly used for app bars or compact nav strips. |
| [DaisyDrawer](controls/DaisyDrawer.html) | DaisyDrawer wraps WinUI's `SplitView` to create a sidebar drawer. Defaults to an inline drawer on the left with a 300px open width and no compact pane. The template includes a slide-in animation and optional overlay support for overlay mode. Use it to host navigation or settings panels that toggle in/out of view. |
| [DaisyDropdown](controls/DaisyDropdown.html) | DaisyDropdown is a lightweight dropdown menu control built on a `Popup`. It displays a trigger area with a placeholder/selection, and shows a menu (via `DaisyMenu`) when opened. Use it for compact menu-style pickers and small action lists. |
| [DaisyExpandableCard](controls/DaisyExpandableCard.html) | DaisyExpandableCard is a versatile card component that can reveal a secondary content area when triggered. It is ideal for "Showcase" or "Detail" views where initial high-level information is presented, and additional details are revealed on demand (e.g., clicking a "Learn More" or "Play" button). |
| [DaisyExpander](controls/DaisyExpander.html) | A custom expander control that works reliably on all platforms including Skia/WASM. Unlike the built-in Expander which has known issues on non-Windows platforms, this control uses simple visibility toggling with a clickable header. |
| [DaisyFab](controls/DaisyFab.html) | DaisyFab is a Floating Action Button container with a trigger button and expandable action buttons. It supports **Vertical**, **Horizontal**, or **Flower** layouts, auto-closes when an action is clicked, and lets you customize trigger content, size, and variant. Ideal for exposing a small set of secondary actions from a single FAB. |
| [DaisyFileInput](controls/DaisyFileInput.html) | DaisyFileInput is a button-styled file selector that displays a “Choose File” affordance with the current file name beside it. It supports DaisyButton variants, size presets, and a customizable `FileName` placeholder. Use it when you need a themed file picker entry point; wire it up to your file dialog logic in code-behind. |
| [DaisyGlass](controls/DaisyGlass.html) | DaisyGlass is a frosted-glass container with multiple blur strategies: simulated gradients, bitmap capture, or SkiaSharp GPU blur. It exposes tint/opacity controls, saturation, reflection parameters, and a toggle for real backdrop capture. Use it to create translucent panels over imagery or colorful backgrounds. |
| [DaisyHero](controls/DaisyHero.html) | DaisyHero is a full-width banner container for impactful headlines. It provides padding, a large minimum height, and centers its content over a background color or image you provide. Use it for marketing hero sections, page intros, or prominent callouts. |
| [DaisyHoverGallery](controls/DaisyHoverGallery.html) | DaisyHoverGallery displays one item at a time from an item collection, switching the visible item based on horizontal pointer position. It optionally renders vertical divider lines to hint at each region. Great for “hover to preview” galleries or swatches without clicks. |
| [DaisyIconText](controls/DaisyIconText.html) | DaisyIconText is a **single-purpose display control** that combines an icon (path data or Symbol) with optional text, handling all the scaling mechanics under the hood. It wraps icons in a `Viewbox` for proper proportional scaling and applies size-based font sizes for text - eliminating the need to manually manage `Width`/`Height` or `FontSize` math. |
| [DaisyIndicator](controls/DaisyIndicator.html) | DaisyIndicator overlays a marker on top of any content (icon, button, card, avatar). You provide the main content as a child and a `Marker` slot for the overlay element. The marker can be any control—commonly a `DaisyBadge`, but also a colored dot, image, or custom element. Use it for notification counts, status indicators, or promotional labels. |
| [DaisyInput](controls/DaisyInput.html) | DaisyInput is a styled TextBox with **10 variants** and **4 size presets**. It supports bordered, ghost, filled, and semantic colored borders, plus labels, helper text, icons, and inner content slots. Defaults to a padded, rounded text field that matches DaisyUI forms. |
| [DaisyJoin](controls/DaisyJoin.html) | DaisyJoin groups adjacent controls into a seamless, connected set by trimming internal corners and overlapping borders. It works horizontally by default and supports vertical orientation. Ideal for segmented buttons, grouped inputs, pagination, or stacked radio/button groups. |
| [DaisyKbd](controls/DaisyKbd.html) | DaisyKbd renders keyboard keycaps for inline hints (e.g., shortcuts). It provides **5 size presets**, monospace text, a subtle 3D border, and centered content. Use it to display keys like `Ctrl`, `Shift`, or `Cmd` in docs and tooltips. |
| [DaisyList](controls/DaisyList.html) | DaisyList is a vertical list container with row and column primitives for structured content. `DaisyListRow` uses a custom panel that can designate a grow column and wrap specific columns onto new lines. Use it for media lists, stats rows, or mixed text/icon layouts with consistent spacing. |
| [DaisyLoading](controls/DaisyLoading.html) | DaisyLoading provides animated loading indicators with **27 different animation styles**, **5 size options**, and **9 color variants**. The control includes standard DaisyUI animations, creative terminal-inspired variants, Matrix/retro variants, and unique special effect variants. All animations scale properly across all sizes using Viewbox-based rendering. |
| [DaisyLoginButton](controls/DaisyLoginButton.html) | DaisyLoginButton is a **batteries-included** login button derived from DaisyButton. It bundles a brand icon, localized label, and optional brand styling in a single control. Use it to avoid verbose XAML when rendering OAuth-style login buttons. |
| [DaisyMask](controls/DaisyMask.html) | DaisyMask clips its content to preset shapes: squircle, heart, hexagon, circle, square, diamond, or triangle. It scales vector paths to the control's bounds on arrange, making it easy to mask images or backgrounds into decorative silhouettes. |
| [DaisyMaskInput](controls/DaisyMaskInput.html) ✦ | DaisyMaskInput is a `MaskedTextBox` styled like `DaisyInput`, intended for **structured input** such as times, dates, IDs, and payment details. It supports the same Daisy input API (variants, sizes, labels, helper text, and icons) and adds masked-editing via the built-in `Mask` property. |
| [DaisyMenu](controls/DaisyMenu.html) | DaisyMenu is a styled menu control for navigation menus. It supports vertical or horizontal layout, size presets, and customizable active colors for selected items. Submenus can be nested via another DaisyMenu or Expander. Use it for sidebars, nav bars, and contextual menus that need DaisyUI styling. |
| [DaisyMockup](controls/DaisyMockup.html) | DaisyMockup frames content in simulated shells: **Code**, **Window**, or **Browser**. It provides the chrome (dots, toolbar/address bar) and padding so you can showcase code, UI previews, or pages in a themed wrapper. |
| [DaisyModal](controls/DaisyModal.html) | DaisyModal is an overlay dialog container with backdrop and configurable corner radii. It toggles visibility via `IsOpen` and centers its content with a max width of 500px, default padding, and drop shadow. Use it for confirmations, forms, or focused flows that require blocking UI beneath. |
| [DaisyModifierKeys](controls/DaisyModifierKeys.html) ✦ | A visual indicator that displays the current state of keyboard modifier keys (Shift, Ctrl, Alt) and lock keys (Caps Lock, Num Lock, Scroll Lock). Automatically syncs with the OS keyboard state. |
| [DaisyNavbar](controls/DaisyNavbar.html) | DaisyNavbar is a top navigation bar with optional start, center, and end slots. It provides padding, corner radius, and an optional shadow. If no slots are set, it renders its `Content` as a simple fallback. Use it for headers, app bars, or hero-top navigation. |
| [DaisyNumberFlow](controls/DaisyNumberFlow.html) | > **Added in v1.7.1** |
| [DaisyNumericUpDown](controls/DaisyNumericUpDown.html) ✦ | `DaisyNumericUpDown` is a numeric input control that extends WinUI's `NumberBox` with DaisyUI styling. It provides increment/decrement buttons (spin buttons) for adjusting numeric values, along with direct text entry support. The control follows the same visual style and variant system as `DaisyInput`. |
| [DaisyOtpInput](controls/DaisyOtpInput.html) ✦ | DaisyOtpInput is an OTP / verification code input composed of multiple single-character slots. It features **animated focus states**, auto-advance, backspace support, and digit-only filtering. It is designed for high-fidelity "Verify Code" screens with support for grouping (separators) and varying sizes. |
| [DaisyPagination](controls/DaisyPagination.html) | DaisyPagination renders joined page navigation buttons using `DaisyJoin` internally. It automatically generates page buttons based on `TotalPages`, handles prev/next navigation, and highlights the current page. The control responds to global size changes via `FlowerySizeManager`. |
| [DaisyPasswordBox](controls/DaisyPasswordBox.html) | DaisyPasswordBox is a specialized password input field that manages its own reveal button and masked input. It inherits from `ContentControl` but behaves like a `PasswordBox`, providing **10 variants** and **4 size presets**. It supports bordered, ghost, filled, and semantic colored borders, plus labels, helper text, and icons. |
| [DaisyPatternedCard](controls/DaisyPatternedCard.html) | A DaisyCard with pattern and ornament layer support. Extends DaisyCard with decorative pattern backgrounds and corner ornaments. |
| [DaisyPopover](controls/DaisyPopover.html) ✦ | DaisyPopover is a lightweight popover control that hosts content inside a `Popup` anchored to a trigger. It's useful for rich tooltips, small forms, contextual menus, and “more actions” surfaces. |
| [DaisyProductThemeDropdown](controls/DaisyProductThemeDropdown.html) | DaisyProductThemeDropdown is a specialized theme dropdown that provides **96 industry-specific color palettes** from the [UI UX Pro Max Skill](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) project. Unlike the standard `DaisyThemeDropdown` (which uses the 35+ DaisyUI themes), this control uses professionally crafted palettes designed for specific product types and industries. |
| [DaisyProgress](controls/DaisyProgress.html) | DaisyProgress is a styled progress bar with **8 color variants**, **4 size presets**, **optional shimmer animation**, and indeterminate support. It inherits `ProgressBar` behavior for `Value`, `Minimum`, `Maximum`, and `IsIndeterminate`, using theme colors for the indicator fill. |
| [DaisyRadialProgress](controls/DaisyRadialProgress.html) | DaisyRadialProgress is a circular progress indicator with **8 color variants**, **5 size presets**, **optional shimmer animation**, and configurable stroke thickness. It converts the `Minimum`–`Maximum` range to a 0–360° sweep. Shows a percentage label by default with **auto-sizing** to ensure text fits within the circle. |
| [DaisyRadio](controls/DaisyRadio.html) | DaisyRadio is a styled `RadioButton` with **8 color variants** and **5 size presets**. It shows a filled inner circle when checked and supports standard radio grouping via `GroupName`. Use variants for semantic meaning or brand alignment in forms and option groups. |
| [DaisyRange](controls/DaisyRange.html) | DaisyRange is a styled slider with **8 color variants**, **4 size presets**, and customizable thumb/track colors. It exposes thumb size and optional progress fill properties while inheriting standard `Control` behavior including `IsEnabled`. It supports step-based value snapping and full keyboard navigation. |
| [DaisyRating](controls/DaisyRating.html) | DaisyRating is a star rating control built on `RangeBase`. It supports **precision modes** (full/half/0.1), **3 size presets**, and respects `Minimum/Maximum/Value` (default 0–5). |
| [DaisyResizableColumnsHost](controls/DaisyResizableColumnsHost.html) | `DaisyResizableColumnsHost` is a reusable horizontal multi-column host that provides a shared resize gripper between columns. It is designed to decouple column widths from content sizing, allowing all columns in a collection to be resized simultaneously. |
| [DaisyScreenColorPicker](controls/DaisyScreenColorPicker.html) ✦ | DaisyScreenColorPicker is an eyedropper tool that allows picking colors from anywhere on the screen using a **click-and-drag** interaction. Unlike traditional color pickers that require clicking to start and clicking again to select, this control uses a more intuitive drag gesture: click and hold to start, drag anywhere on screen while watching the live color preview, then release to capture the color. |
| [DaisySelect](controls/DaisySelect.html) | DaisySelect is a styled ComboBox with **9 variants** and **4 size presets**. It provides a chevron toggle, placeholder text, and themed dropdown. Use it for single-select dropdowns that need DaisyUI styling. |
| [DaisySkeleton](controls/DaisySkeleton.html) | DaisySkeleton provides loading placeholders with a pulsing animation. It can render as a block (default) or animate text color when `IsTextMode=True`. Use it to indicate content is loading for avatars, text lines, cards, or any element you want to reserve space for. |
| [DaisySlideToConfirm](controls/DaisySlideToConfirm.html) | DaisySlideToConfirm is a "slide to confirm" control that requires the user to drag a handle across a track to confirm an action. This pattern prevents accidental triggers for destructive or important operations like power-off, delete, or payment confirmation. |
| [DaisyStack](controls/DaisyStack.html) | DaisyStack displays children in a stacked arrangement with optional navigation. It inherits from `ItemsControl` so children overlap in a Grid panel. In static mode (default), theme styles apply Z-index, translation, scale, and opacity per child order creating a deck-of-cards effect. When navigation is enabled, only one item is visible at a time with animated transitions. |
| [DaisyStat](controls/DaisyStat.html) | DaisyStat displays a metric with title, value, optional description, figure (icon/media), and action slot. `DaisyStats` groups multiple stats horizontally or vertically, adding separators between items. Variants color the value text; `DescriptionVariant` colors the description independently. |
| [DaisyStatusIndicator](controls/DaisyStatusIndicator.html) | DaisyStatusIndicator shows a status dot with **27 animation variants**. It supports **9 colors** and **5 sizes**, making it suitable for online/offline markers, alerts, or activity indicators. |
| [DaisySteps](controls/DaisySteps.html) | DaisySteps renders a sequence of step items with lines and circles. It supports horizontal or vertical layouts, **5 sizes**, colored states per step, and an `SelectedIndex` to mark completed/active steps. Each `DaisyStepItem` can show custom text or icons via `Content`/`DataContent`. |
| [DaisySwap](controls/DaisySwap.html) | DaisySwap is a toggle that swaps between `OnContent`, `OffContent`, and optional `IndeterminateContent`. It supports transition effects (none, rotate, flip) to animate the content change. Use it for icon toggles, play/pause, theme switches, or stateful actions. |
| [DaisyTable](controls/DaisyTable.html) | DaisyTable provides a styled table layout with header, body, and footer sections plus row/cell primitives. It supports **zebra striping**, **pinned headers/columns** (via the template), **row active/hover states**, and **size presets** that adjust padding and font size. Use `DaisyTableHead`, `DaisyTableBody`, and `DaisyTableFoot` to structure content; rows/cells handle layout and styling. |
| [DaisyTabs](controls/DaisyTabs.html) | DaisyTabs is a styled `TabControl` with four header variants (None, Bordered, Lifted, Boxed) and size presets. It uses a WrapPanel for tab headers and supports standard tab behaviors (`SelectedIndex`, `Items`, `TabItem` content). |
| [DaisyTagPicker](controls/DaisyTagPicker.html) ✦ | DaisyTagPicker is an organized tag selection component inspired by "Animated Tags". It separates selected tags into a distinct, bordered area with "remove" icons, while keeping available tags in a separate list with "add" icons. |
| [DaisyTextArea](controls/DaisyTextArea.html) | DaisyTextArea is a multiline variant of DaisyInput. It inherits all input variants/sizes/properties, sets `AcceptsReturn`/`AcceptsTab=True`, and enables `TextWrapping`. It additionally supports textarea-specific features like character counters, auto-growing, and action buttons. |
| [DaisyTextRotate](controls/DaisyTextRotate.html) | DaisyTextRotate cycles through its items with fade transitions, auto-advancing on a timer. It supports custom duration, per-transition timing, easing, pause-on-hover, and manual pausing. Ideal for rotating taglines or small sets of text snippets. |
| [DaisyThemeController](controls/DaisyThemeController.html) | DaisyThemeController is a toggle-based switch for applying Daisy themes via `DaisyThemeManager`. It supports multiple display modes (toggle, checkbox, swap, text/icon variants) and syncs `IsChecked` with the current theme. Switching updates `CheckedTheme`/`UncheckedTheme` and can auto-adopt new themes. |
| [DaisyThemeDropdown](controls/DaisyThemeDropdown.html) | DaisyThemeDropdown is a ComboBox listing available themes from `DaisyThemeManager`. It previews theme colors in a 2×2 dot grid and applies the selected theme. It syncs selection with the current theme when themes change externally. |
| [DaisyThemeManager](controls/DaisyThemeManager.html) | DaisyThemeManager is the central theme loader/applicator for the **35+ built-in DaisyUI themes**. It tracks available themes, applies palette ResourceDictionaries, and notifies listeners via `ThemeChanged`. Helpers expose current/alternate theme names and light/dark metadata. |
| [DaisyThemeRadio](controls/DaisyThemeRadio.html) | DaisyThemeRadio is a theme-selecting RadioButton. When checked, it applies its `ThemeName` via `DaisyThemeManager`. It can render as a standard radio or styled button (`Mode=Button`) and supports Daisy size presets. It syncs checked state when themes change externally. |
| [DaisyThemeSwap](controls/DaisyThemeSwap.html) | DaisyThemeSwap is a themed variant of DaisySwap for toggling light/dark (or any two) themes. It defaults to a rotate transition and keeps `IsChecked` in sync with the current theme's light/dark status. Clicking applies `LightTheme` or `DarkTheme` via `DaisyThemeManager`. |
| [DaisyTimeline](controls/DaisyTimeline.html) | DaisyTimeline lays out timeline items horizontally or vertically. Each `DaisyTimelineItem` can show start/end content (labels), an optional middle icon, lines before/after, boxed styles, and active states. Supports compact mode and icon snapping for consistent alignment. |
| [DaisyToast](controls/DaisyToast.html) | DaisyToast is a simple toast container (ItemsControl) that stacks toast items such as `DaisyAlert`. You control its screen position via alignment and offset properties. Place it in an overlay/top layer to float above other content; set `ZIndex` accordingly. |
| [DaisyToggle](controls/DaisyToggle.html) | DaisyToggle is a styled `ToggleSwitch` with **8 color variants** and **4 size presets**. It offers customizable thumb size via `TogglePadding` (knob margin) and uses smooth knob animation on state changes. Use it for binary on/off controls. |
| [DaisyTooltip](controls/DaisyTooltip.html) | A tooltip control styled after DaisyUI's Tooltip component. Wraps content and shows a tooltip on hover. |
| [DaisyWeatherCard](controls/DaisyWeatherCard.html) ✦ | DaisyWeatherCard is a flexible container that combines multiple weather display components. You can show/hide sections as needed and either bind data manually or provide an `IWeatherService` implementation for automatic fetching. |
| [DaisyWeatherCurrent](controls/DaisyWeatherCurrent.html) ✦ | DaisyWeatherCurrent is a standalone widget for showing the current weather state. It features a large animated weather icon, prominent temperature display, and supporting information like "feels like" and sun times. |
| [DaisyWeatherForecast](controls/DaisyWeatherForecast.html) ✦ | DaisyWeatherForecast is an `ItemsControl` that renders a row of forecast cards. Each card shows the day name, an animated weather icon, and the temperature range. Ideal for showing 5-7 day forecasts. |
| [DaisyWeatherForecastItem](controls/DaisyWeatherForecastItem.html) ✦ | Represents a single day in the weather forecast strip. This control supports Size-based visual states for responsive sizing. |
| [DaisyWeatherIcon](controls/DaisyWeatherIcon.html) ✦ | Animated weather condition icon with unique animations per weather type. Supports 21 weather conditions with condition-appropriate animations that can be toggled on/off. |
| [DaisyWeatherMetrics](controls/DaisyWeatherMetrics.html) ✦ | DaisyWeatherMetrics shows supplementary weather data in a structured grid. Each metric displays a label, icon, current value, and a progress bar showing the value relative to a maximum. |
### Helper Classes
| Class | Description |
|-------|-------------|
| [ColorCollection](controls/ColorCollection.html) ✦ | ColorCollection is a collection class for managing colors with support for predefined palettes. It implements `IList` and provides factory methods for creating standard color palettes like Named Colors, Office 2010, MS Paint, Web Safe, and custom grayscale gradients. |
| [DaisyAccessibility](controls/DaisyAccessibility.html) | A static helper class providing accessibility utilities for Daisy controls. It simplifies setting up screen reader support across all controls. |
| [DaisyPaginationItem](controls/DaisyPaginationItem.html) | A button control representing a single page in a `DaisyPagination` control. This is a helper class created automatically by the parent pagination control. |
| [DaisyResourceLookup](controls/DaisyResourceLookup.html) | A static helper class providing centralized access to design tokens, resource lookups, and default sizing values for all Flowery.Uno controls. |
| [DaisySizeDropdown](controls/DaisySizeDropdown.html) | A dropdown control for selecting a global size (`DaisySize`) that affects (almost) all Flowery.Uno controls. |
| [FloweryAnimationHelpers](controls/FloweryAnimationHelpers.html) ✦ | FloweryAnimationHelpers provides a comprehensive, reusable animation and slideshow infrastructure for building cinematic UI experiences. It includes enums for visual effects, a controller for slideshow logic, and attached properties for declarative animations. |
| [FloweryComponentSidebar](controls/FloweryComponentSidebar.html) ✦ | FloweryComponentSidebar is a high-performance, navigational sidebar designed for the Gallery and complex app layouts. It features collapsible categories, clickable items with selection persistence, live search filtering, and deep integration with the project's global sizing and localization systems. |
| [FloweryResponsive](controls/FloweryResponsive.html) ✦ | FloweryResponsive provides responsive layout functionality via attached properties. It calculates responsive widths based on available container space and exposes standard breakpoint constants for consistent responsive behavior across your app. |
| [FloweryScaleConverter](controls/FloweryScaleConverter.html) ✦ | Flowery.Uno provides two approaches for responsive scaling based on window size: |
| [FloweryScaleManager](controls/FloweryScaleManager.html) ✦ | Opt-in automatic font scaling for Daisy controls based on window size. Set `EnableScaling="True"` on any container to make all child Daisy controls automatically scale their fonts as the window resizes. |
| [FlowerySizeManager](controls/FlowerySizeManager.html) ✦ | Static service for global size management across all Daisy controls. Provides discrete size tiers (ExtraSmall to ExtraLarge) that all controls respond to simultaneously. |
| [Graphics](controls/Graphics.html) | This document describes the graphics rendering capabilities, visual effects, and animation systems in Flowery.Uno. |
| [HslColor](controls/HslColor.html) | HslColor is a struct representing colors in the HSL (Hue, Saturation, Lightness) color space. It provides seamless conversion between HSL and RGB color spaces, making it essential for color picker controls that need intuitive color manipulation. |
| [neumorphic](controls/neumorphic.html) | Neumorphic (Soft UI) mode is a design style that uses highlights and shadows to create elements that appear to extrude from or be inset into the background surface. |
## Common Patterns
### Shared Enums
**DaisyColor** - Theme colors used across many controls:
```
Default, Primary, Secondary, Accent, Neutral, Info, Success, Warning, Error
```
**DaisySize** - Size variants:
```
ExtraSmall, Small, Medium (default), Large, ExtraLarge
```
**DaisyPlacement** - Position options:
```
Top, Bottom, Start, End
```
### Control-Specific Enums
**Input Controls:**
- **DaisyInputVariant**: 'Bordered', 'Ghost', 'Filled', 'Primary', 'Secondary', 'Accent', 'Info', 'Success', 'Warning', 'Error'
- **DaisySelectVariant**: 'Bordered', 'Ghost', 'Filled', 'Primary', 'Secondary', 'Accent', ...'
- **DaisyCheckBoxVariant**: 'Default', 'Primary', 'Secondary', 'Accent', 'Neutral', 'Success', 'Warning', 'Info', 'Error'
- **DaisyRadioVariant**: 'Default', 'Primary', 'Secondary', 'Accent', 'Success', 'Warning', 'Info', 'Error'
- **DaisyToggleVariant**: 'Default', 'Primary', 'Secondary', 'Accent', 'Success', 'Warning', 'Info', 'Error'
- **DaisyRangeVariant**: 'Default', 'Primary', 'Secondary', 'Accent', 'Success', 'Warning', 'Info', 'Error'
- **DaisyLabelPosition**: 'None', 'Top', 'Floating', 'Inset'
- **DaisyNumberBase**: 'Decimal', 'Hexadecimal', 'Binary', 'Octal', 'ColorHex', 'IPAddress'
- **DaisyHexCase**: 'Upper', 'Lower'
- **RatingPrecision**: 'Full', 'Half', 'Precise'
**Display Controls:**
- **DaisyBadgeVariant**: 'Default', 'Neutral', 'Primary', 'Secondary', 'Accent', 'Ghost', 'Info', 'Success', 'Warning', 'Error'
- **DaisyAlertVariant**: 'Info', 'Success', 'Warning', 'Error'
- **DaisyProgressVariant**: 'Default', 'Primary', 'Secondary', 'Accent', 'Info', 'Success', 'Warning', 'Error'
- **DaisyCardVariant**: 'Normal', 'Compact', 'Side'
- **DaisyStatVariant**: 'Default', 'Primary', 'Secondary', 'Accent', 'Info', 'Success', 'Warning', 'Error'
- **DaisyAvatarShape**: 'Square', 'Rounded', 'Circle'
- **DaisyStatus**: 'None', 'Online', 'Offline'
- **DaisyMaskVariant**: 'Squircle', 'Heart', 'Hexagon', 'Circle', 'Square', 'Diamond', 'Triangle'
- **DaisyMockupVariant**: 'Phone', 'Code', 'Window', 'Browser'
- **DaisyLoadingVariant**: 'Spinner', 'Dots', 'Ring', 'Ball', 'Bars', 'Infinity', 'Orbit', 'Snake', 'Pulse', 'Wave', 'Bounce', 'Matrix', 'Hourglass', 'Heartbeat', 'CursorBlink', ...
- **DaisyStatusIndicatorVariant**: 'Default', 'Ping', 'Bounce', 'Pulse', 'Blink', 'Ripple', 'Heartbeat', 'Spin', 'Wave', 'Glow', 'Radar', 'Sonar', 'Beacon', ...
- **CountdownClockUnit**: 'Seconds', 'Minutes', 'Hours', 'Days'
- **WeatherCondition**: 'Sunny', 'PartlyCloudy', 'Cloudy', 'Rain', 'Snow', 'Thunderstorm', ...
**Navigation & Layout:**
- **DaisyTabVariant**: 'Bordered', 'Lifted', 'Boxed'
- **DaisyStepColor**: 'Default', 'Primary', 'Secondary', 'Accent', 'Info', 'Success', 'Warning', 'Error'
- **TimelineItemPosition**: 'Start', 'End', 'Alternate'
- **DaisyDividerColor**: 'Default', 'Neutral', 'Primary', 'Secondary', 'Accent', 'Success', 'Warning', 'Info', 'Error'
- **DaisyDividerPlacement**: 'Default', 'Start', 'End'
- **DaisyPopoverPlacement**: 'Top', 'Bottom', 'Left', 'Right', 'TopStart', 'TopEnd', 'BottomStart', 'BottomEnd'
- **DaisyStackNavigation**: 'None', 'Arrows', 'Dots', 'Both'
- **FabLayout**: 'Horizontal', 'Vertical'
- **DockSize**: 'Small', 'Medium', 'Large'
**Theme Controls:**
- **ThemeControllerMode**: 'Toggle', 'Checkbox', 'Swap', 'ToggleWithText', 'ToggleWithIcons'
- **ThemeRadioMode**: 'Radio', 'Button'
- **SwapEffect**: 'None', 'Rotate', 'Flip'
**Date/Time:**
- **DateSelectionMode**: 'Single', 'Range', 'Multiple'
- **DateDisableStrategy**: 'None', 'Weekends', 'Weekdays', 'Past', 'Future', 'Custom'
- **DateElementDisplay**: 'DayNumber', 'DayName', 'MonthName', 'Full'
- **DateItemLayout**: 'Vertical', 'Horizontal'
- **DateTimelineHeaderType**: 'None', 'Day', 'Week', 'Month'
**Toast Positioning:**
- **ToastHorizontalPosition**: 'Start', 'Center', 'End'
- **ToastVerticalPosition**: 'Top', 'Bottom'
**Effects & Behaviors:**
- **ScrambleMode**: 'Characters', 'Words', 'Lines'
- **RevealStyle**: 'Fade', 'Slide', 'Scale', 'Typewriter'
- **RevealMode**: 'OnLoad', 'OnScroll', 'Manual'
- **RevealDirection**: 'Up', 'Down', 'Left', 'Right'
- **FollowerShape**: 'Circle', 'Square', 'Ring'
**Button Styling:**
- **DaisyButtonStyle**: 'Default', 'Outline', 'Dash', 'Soft'
- **DaisyButtonShape**: 'Default', 'Wide', 'Block', 'Square', 'Circle'
**Color Picker:**
- **ColorSliderChannel**: 'Red', 'Green', 'Blue', 'Alpha', 'Hue', 'Saturation', 'Lightness'
**Sizing:**
- **ResponsiveFontTier**: 'Primary', 'Secondary', 'Tertiary', 'Header'
### Theming
Use `DaisyThemeManager` to switch themes:
```csharp
DaisyThemeManager.ApplyTheme("dracula");
```
**Light themes:** acid, autumn, bumblebee, cmyk, corporate, cupcake, emerald, fantasy, garden, lemonade, light, lofi, nord, pastel, retro, valentine, winter, wireframe
**Dark themes:** aqua, black, business, coffee, cyberpunk, dark, dim, dracula, forest, halloween, luxury, night, smooth, sunset, synthwave