Add Color Picker component with interactive color wheel and hue selection

Features:
- Interactive color wheel for saturation/lightness selection
- Horizontal hue bar for full spectrum selection (0-360°)
- RGB/HSL/HEX color model support with conversion utilities
- ControlValueAccessor for Angular reactive forms integration
- Canvas API rendering for smooth color gradients
- Touch and mouse event support for intuitive color selection
- Keyboard navigation with arrow keys for accessibility
- Multiple size variants (sm, md, lg) and color themes
- Comprehensive demo with preset colors and interactive examples
- Full semantic design token integration following project standards

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
skyai_dev
2025-09-03 16:14:11 +10:00
parent 1aaef36763
commit e9f975eb02
8 changed files with 1698 additions and 7 deletions

View File

@@ -42,6 +42,7 @@ import { OverlayContainerDemoComponent } from './overlay-container-demo/overlay-
import { LoadingSpinnerDemoComponent } from './loading-spinner-demo/loading-spinner-demo.component';
import { ProgressCircleDemoComponent } from './progress-circle-demo/progress-circle-demo.component';
import { RangeSliderDemoComponent } from './range-slider-demo/range-slider-demo.component';
import { ColorPickerDemoComponent } from './color-picker-demo/color-picker-demo.component';
import { DividerDemoComponent } from './divider-demo/divider-demo.component';
import { TooltipDemoComponent } from './tooltip-demo/tooltip-demo.component';
import { AccordionDemoComponent } from './accordion-demo/accordion-demo.component';
@@ -55,6 +56,9 @@ import { StepperDemoComponent } from './stepper-demo/stepper-demo.component';
import { FabMenuDemoComponent } from './fab-menu-demo/fab-menu-demo.component';
import { EnhancedTableDemoComponent } from './enhanced-table-demo/enhanced-table-demo.component';
import { SplitButtonDemoComponent } from './split-button-demo/split-button-demo.component';
import { CommandPaletteDemoComponent } from './command-palette-demo/command-palette-demo.component';
import { TransferListDemoComponent } from './transfer-list-demo/transfer-list-demo.component';
import { FloatingToolbarDemoComponent } from './floating-toolbar-demo/floating-toolbar-demo.component';
@Component({
@@ -221,6 +225,10 @@ import { SplitButtonDemoComponent } from './split-button-demo/split-button-demo.
<ui-range-slider-demo></ui-range-slider-demo>
}
@case ("color-picker") {
<ui-color-picker-demo></ui-color-picker-demo>
}
@case ("divider") {
<ui-divider-demo></ui-divider-demo>
}
@@ -273,6 +281,18 @@ import { SplitButtonDemoComponent } from './split-button-demo/split-button-demo.
<ui-split-button-demo></ui-split-button-demo>
}
@case ("command-palette") {
<ui-command-palette-demo></ui-command-palette-demo>
}
@case ("floating-toolbar") {
<ui-floating-toolbar-demo></ui-floating-toolbar-demo>
}
@case ("transfer-list") {
<ui-transfer-list-demo></ui-transfer-list-demo>
}
}
`,
@@ -287,8 +307,8 @@ import { SplitButtonDemoComponent } from './split-button-demo/split-button-demo.
GridSystemDemoComponent, SpacerDemoComponent, ContainerDemoComponent, PaginationDemoComponent,
SkeletonLoaderDemoComponent, EmptyStateDemoComponent, FileUploadDemoComponent, FormFieldDemoComponent,
AutocompleteDemoComponent, BackdropDemoComponent, OverlayContainerDemoComponent, LoadingSpinnerDemoComponent,
ProgressCircleDemoComponent, RangeSliderDemoComponent, DividerDemoComponent, TooltipDemoComponent, AccordionDemoComponent,
PopoverDemoComponent, AlertDemoComponent, SnackbarDemoComponent, ToastDemoComponent, TreeViewDemoComponent, TimelineDemoComponent, StepperDemoComponent, FabMenuDemoComponent, EnhancedTableDemoComponent, SplitButtonDemoComponent]
ProgressCircleDemoComponent, RangeSliderDemoComponent, ColorPickerDemoComponent, DividerDemoComponent, TooltipDemoComponent, AccordionDemoComponent,
PopoverDemoComponent, AlertDemoComponent, SnackbarDemoComponent, ToastDemoComponent, TreeViewDemoComponent, TimelineDemoComponent, StepperDemoComponent, FabMenuDemoComponent, EnhancedTableDemoComponent, SplitButtonDemoComponent, CommandPaletteDemoComponent, FloatingToolbarDemoComponent, TransferListDemoComponent]
})