@sonny-ui/core 0.1.0-alpha.14 → 0.1.0-alpha.16

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.
Files changed (30) hide show
  1. package/fesm2022/sonny-ui-core.mjs +2257 -68
  2. package/fesm2022/sonny-ui-core.mjs.map +1 -1
  3. package/package.json +1 -1
  4. package/src/lib/calendar/calendar.component.spec.ts +87 -0
  5. package/src/lib/calendar/calendar.component.ts +184 -61
  6. package/src/lib/calendar/calendar.types.ts +24 -0
  7. package/src/lib/calendar/index.ts +6 -0
  8. package/src/lib/color-picker/color-picker.component.spec.ts +328 -0
  9. package/src/lib/color-picker/color-picker.component.ts +537 -0
  10. package/src/lib/color-picker/color-picker.types.ts +24 -0
  11. package/src/lib/color-picker/color-picker.utils.ts +183 -0
  12. package/src/lib/color-picker/color-picker.variants.ts +17 -0
  13. package/src/lib/color-picker/index.ts +20 -0
  14. package/src/lib/command-palette/command-palette.component.spec.ts +178 -0
  15. package/src/lib/command-palette/command-palette.component.ts +195 -0
  16. package/src/lib/command-palette/command-palette.service.ts +36 -0
  17. package/src/lib/command-palette/command-palette.types.ts +23 -0
  18. package/src/lib/command-palette/index.ts +7 -0
  19. package/src/lib/date-picker/date-picker.component.spec.ts +131 -0
  20. package/src/lib/date-picker/date-picker.component.ts +220 -0
  21. package/src/lib/date-picker/date-picker.variants.ts +17 -0
  22. package/src/lib/date-picker/index.ts +2 -0
  23. package/src/lib/date-range-picker/date-range-picker.component.spec.ts +151 -0
  24. package/src/lib/date-range-picker/date-range-picker.component.ts +340 -0
  25. package/src/lib/date-range-picker/index.ts +1 -0
  26. package/src/lib/otp-input/index.ts +2 -0
  27. package/src/lib/otp-input/otp-input.component.spec.ts +252 -0
  28. package/src/lib/otp-input/otp-input.component.ts +275 -0
  29. package/src/lib/otp-input/otp-input.variants.ts +18 -0
  30. package/types/sonny-ui-core.d.ts +331 -7
@@ -1,7 +1,7 @@
1
1
  import { ClassValue } from 'clsx';
2
2
  export { VariantProps, cva } from 'class-variance-authority';
3
3
  import * as _angular_core from '@angular/core';
4
- import { InjectionToken, EnvironmentProviders, OnDestroy, TemplateRef } from '@angular/core';
4
+ import { InjectionToken, EnvironmentProviders, OnDestroy, TemplateRef, ElementRef } from '@angular/core';
5
5
  import * as class_variance_authority_types from 'class-variance-authority/types';
6
6
  import * as _sonny_ui_core from '@sonny-ui/core';
7
7
  import { ComponentType } from '@angular/cdk/overlay';
@@ -1636,6 +1636,10 @@ declare class SnyLinkDirective {
1636
1636
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SnyLinkDirective, "a[snyLink]", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1637
1637
  }
1638
1638
 
1639
+ interface DateRange {
1640
+ start: Date | null;
1641
+ end: Date | null;
1642
+ }
1639
1643
  interface CalendarDay {
1640
1644
  date: Date;
1641
1645
  day: number;
@@ -1643,34 +1647,354 @@ interface CalendarDay {
1643
1647
  isToday: boolean;
1644
1648
  isSelected: boolean;
1645
1649
  isDisabled: boolean;
1650
+ isRangeStart: boolean;
1651
+ isRangeEnd: boolean;
1652
+ isInRange: boolean;
1653
+ isRangePreview: boolean;
1654
+ }
1655
+ type CalendarMode = 'single' | 'range';
1656
+ interface DatePickerPreset {
1657
+ label: string;
1658
+ range: DateRange;
1646
1659
  }
1660
+
1647
1661
  declare class SnyCalendarComponent implements ControlValueAccessor {
1648
1662
  readonly value: _angular_core.ModelSignal<Date | null>;
1649
1663
  readonly min: _angular_core.InputSignal<Date | undefined>;
1650
1664
  readonly max: _angular_core.InputSignal<Date | undefined>;
1651
1665
  readonly locale: _angular_core.InputSignal<string>;
1652
1666
  readonly class: _angular_core.InputSignal<string>;
1667
+ readonly mode: _angular_core.InputSignal<CalendarMode>;
1668
+ readonly rangeValue: _angular_core.ModelSignal<DateRange | null>;
1669
+ readonly showNavigation: _angular_core.InputSignal<boolean>;
1670
+ readonly initialViewDate: _angular_core.InputSignal<Date | undefined>;
1671
+ readonly borderless: _angular_core.InputSignal<boolean>;
1672
+ readonly hostClass: _angular_core.Signal<"inline-block p-3 bg-background" | "inline-block p-4 rounded-md border border-border bg-background">;
1653
1673
  private readonly _disabledByCva;
1674
+ readonly hoveredDate: _angular_core.WritableSignal<Date | null>;
1654
1675
  readonly viewDate: _angular_core.WritableSignal<Date>;
1655
1676
  readonly weekDays: string[];
1656
1677
  private _onChange;
1657
1678
  protected onTouched: () => void;
1658
- writeValue(val: Date | null): void;
1659
- registerOnChange(fn: (value: Date | null) => void): void;
1679
+ writeValue(val: unknown): void;
1680
+ registerOnChange(fn: (value: unknown) => void): void;
1660
1681
  registerOnTouched(fn: () => void): void;
1661
1682
  setDisabledState(isDisabled: boolean): void;
1662
1683
  readonly monthYearLabel: _angular_core.Signal<string>;
1663
1684
  readonly days: _angular_core.Signal<CalendarDay[]>;
1664
1685
  prevMonth(): void;
1665
1686
  nextMonth(): void;
1666
- selectDate(date: Date): void;
1687
+ onDayClick(date: Date): void;
1688
+ onDayHover(date: Date | null): void;
1667
1689
  onKeydown(event: KeyboardEvent): void;
1668
1690
  dayClass(day: CalendarDay): string;
1669
1691
  private navigateDays;
1670
1692
  private createDay;
1671
1693
  private isSameDay;
1672
1694
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyCalendarComponent, never>;
1673
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyCalendarComponent, "sny-calendar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
1695
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyCalendarComponent, "sny-calendar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "rangeValue": { "alias": "rangeValue"; "required": false; "isSignal": true; }; "showNavigation": { "alias": "showNavigation"; "required": false; "isSignal": true; }; "initialViewDate": { "alias": "initialViewDate"; "required": false; "isSignal": true; }; "borderless": { "alias": "borderless"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "rangeValue": "rangeValueChange"; }, never, never, true, never>;
1696
+ }
1697
+
1698
+ declare const datePickerTriggerVariants: (props?: ({
1699
+ size?: "sm" | "md" | "lg" | null | undefined;
1700
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1701
+ type DatePickerSize = 'sm' | 'md' | 'lg';
1702
+
1703
+ declare class SnyDatePickerComponent implements ControlValueAccessor, OnDestroy {
1704
+ readonly value: _angular_core.ModelSignal<Date | null>;
1705
+ readonly placeholder: _angular_core.InputSignal<string>;
1706
+ readonly size: _angular_core.InputSignal<DatePickerSize>;
1707
+ readonly locale: _angular_core.InputSignal<string>;
1708
+ readonly dateFormat: _angular_core.InputSignal<Intl.DateTimeFormatOptions>;
1709
+ readonly min: _angular_core.InputSignal<Date | undefined>;
1710
+ readonly max: _angular_core.InputSignal<Date | undefined>;
1711
+ readonly clearable: _angular_core.InputSignal<boolean>;
1712
+ readonly disabled: _angular_core.InputSignal<boolean>;
1713
+ readonly class: _angular_core.InputSignal<string>;
1714
+ readonly open: _angular_core.WritableSignal<boolean>;
1715
+ readonly internalValue: _angular_core.WritableSignal<Date | null>;
1716
+ private readonly _disabledByCva;
1717
+ protected readonly isDisabled: _angular_core.Signal<boolean>;
1718
+ private readonly triggerRef;
1719
+ private readonly dropdownRef;
1720
+ private readonly elRef;
1721
+ private scrollHandler;
1722
+ private resizeHandler;
1723
+ private _onChange;
1724
+ protected onTouched: () => void;
1725
+ writeValue(val: Date | null): void;
1726
+ registerOnChange(fn: (value: Date | null) => void): void;
1727
+ registerOnTouched(fn: () => void): void;
1728
+ setDisabledState(isDisabled: boolean): void;
1729
+ readonly displayValue: _angular_core.Signal<string>;
1730
+ protected readonly triggerClass: _angular_core.Signal<string>;
1731
+ onDateSelected(date: Date | null): void;
1732
+ clear(event: Event): void;
1733
+ toggle(): void;
1734
+ close(): void;
1735
+ private updateDropdownPosition;
1736
+ private addGlobalListeners;
1737
+ private removeGlobalListeners;
1738
+ ngOnDestroy(): void;
1739
+ onDocumentClick(event: MouseEvent): void;
1740
+ onEscape(): void;
1741
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyDatePickerComponent, never>;
1742
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyDatePickerComponent, "sny-date-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
1743
+ }
1744
+
1745
+ declare class SnyDateRangePickerComponent implements ControlValueAccessor, OnDestroy {
1746
+ readonly value: _angular_core.ModelSignal<DateRange | null>;
1747
+ readonly placeholder: _angular_core.InputSignal<string>;
1748
+ readonly size: _angular_core.InputSignal<DatePickerSize>;
1749
+ readonly locale: _angular_core.InputSignal<string>;
1750
+ readonly dateFormat: _angular_core.InputSignal<Intl.DateTimeFormatOptions>;
1751
+ readonly separator: _angular_core.InputSignal<string>;
1752
+ readonly dualCalendar: _angular_core.InputSignal<boolean>;
1753
+ readonly presets: _angular_core.InputSignal<DatePickerPreset[]>;
1754
+ readonly min: _angular_core.InputSignal<Date | undefined>;
1755
+ readonly max: _angular_core.InputSignal<Date | undefined>;
1756
+ readonly clearable: _angular_core.InputSignal<boolean>;
1757
+ readonly disabled: _angular_core.InputSignal<boolean>;
1758
+ readonly class: _angular_core.InputSignal<string>;
1759
+ readonly open: _angular_core.WritableSignal<boolean>;
1760
+ readonly internalRange: _angular_core.WritableSignal<DateRange | null>;
1761
+ readonly leftViewDate: _angular_core.WritableSignal<Date>;
1762
+ private readonly _disabledByCva;
1763
+ protected readonly isDisabled: _angular_core.Signal<boolean>;
1764
+ private readonly triggerRef;
1765
+ private readonly dropdownRef;
1766
+ private readonly elRef;
1767
+ private scrollHandler;
1768
+ private resizeHandler;
1769
+ private _onChange;
1770
+ protected onTouched: () => void;
1771
+ readonly rightViewDate: _angular_core.Signal<Date>;
1772
+ readonly leftMonthLabel: _angular_core.Signal<string>;
1773
+ readonly rightMonthLabel: _angular_core.Signal<string>;
1774
+ readonly displayValue: _angular_core.Signal<string>;
1775
+ protected readonly triggerClass: _angular_core.Signal<string>;
1776
+ writeValue(val: DateRange | null): void;
1777
+ registerOnChange(fn: (value: DateRange | null) => void): void;
1778
+ registerOnTouched(fn: () => void): void;
1779
+ setDisabledState(isDisabled: boolean): void;
1780
+ onRangeChanged(range: DateRange | null): void;
1781
+ selectPreset(preset: DatePickerPreset): void;
1782
+ clear(event: Event): void;
1783
+ prevMonth(): void;
1784
+ nextMonth(): void;
1785
+ toggle(): void;
1786
+ close(): void;
1787
+ private updateDropdownPosition;
1788
+ private addGlobalListeners;
1789
+ private removeGlobalListeners;
1790
+ ngOnDestroy(): void;
1791
+ onDocumentClick(event: MouseEvent): void;
1792
+ onEscape(): void;
1793
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyDateRangePickerComponent, never>;
1794
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyDateRangePickerComponent, "sny-date-range-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "dualCalendar": { "alias": "dualCalendar"; "required": false; "isSignal": true; }; "presets": { "alias": "presets"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
1795
+ }
1796
+
1797
+ type ColorFormat = 'hex' | 'rgb' | 'hsl';
1798
+ interface RGB {
1799
+ r: number;
1800
+ g: number;
1801
+ b: number;
1802
+ }
1803
+ interface HSL {
1804
+ h: number;
1805
+ s: number;
1806
+ l: number;
1807
+ }
1808
+ interface HSV {
1809
+ h: number;
1810
+ s: number;
1811
+ v: number;
1812
+ }
1813
+ interface ColorPickerPreset {
1814
+ label?: string;
1815
+ colors: string[];
1816
+ }
1817
+
1818
+ declare const colorPickerTriggerVariants: (props?: ({
1819
+ size?: "sm" | "md" | "lg" | null | undefined;
1820
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1821
+ type ColorPickerSize = 'sm' | 'md' | 'lg';
1822
+
1823
+ declare class SnyColorPickerComponent implements ControlValueAccessor, OnDestroy {
1824
+ readonly value: _angular_core.ModelSignal<string>;
1825
+ readonly format: _angular_core.InputSignal<ColorFormat>;
1826
+ readonly presets: _angular_core.InputSignal<ColorPickerPreset[]>;
1827
+ readonly showInput: _angular_core.InputSignal<boolean>;
1828
+ readonly showEyeDropper: _angular_core.InputSignal<boolean>;
1829
+ readonly showFavorites: _angular_core.InputSignal<boolean>;
1830
+ readonly inline: _angular_core.InputSignal<boolean>;
1831
+ readonly disabled: _angular_core.InputSignal<boolean>;
1832
+ readonly placeholder: _angular_core.InputSignal<string>;
1833
+ readonly size: _angular_core.InputSignal<ColorPickerSize>;
1834
+ readonly class: _angular_core.InputSignal<string>;
1835
+ readonly colorChange: _angular_core.OutputEmitterRef<string>;
1836
+ readonly formatChange: _angular_core.OutputEmitterRef<ColorFormat>;
1837
+ readonly hsv: _angular_core.WritableSignal<HSV>;
1838
+ readonly currentFormat: _angular_core.WritableSignal<ColorFormat>;
1839
+ readonly inputValue: _angular_core.WritableSignal<string>;
1840
+ readonly open: _angular_core.WritableSignal<boolean>;
1841
+ readonly favorites: _angular_core.WritableSignal<string[]>;
1842
+ readonly copied: _angular_core.WritableSignal<boolean>;
1843
+ private readonly _disabledByCva;
1844
+ protected readonly isDisabled: _angular_core.Signal<boolean>;
1845
+ private readonly triggerRef;
1846
+ private readonly panelRef;
1847
+ private readonly satPanelRef;
1848
+ private readonly hueTrackRef;
1849
+ private readonly elRef;
1850
+ private moveHandler;
1851
+ private upHandler;
1852
+ private scrollHandler;
1853
+ private resizeHandler;
1854
+ private _onChange;
1855
+ protected onTouched: () => void;
1856
+ readonly hasEyeDropper: boolean;
1857
+ readonly rgb: _angular_core.Signal<RGB>;
1858
+ readonly displayValue: _angular_core.Signal<string>;
1859
+ readonly saturationBg: _angular_core.Signal<string>;
1860
+ protected readonly triggerClass: _angular_core.Signal<string>;
1861
+ protected readonly panelClass: _angular_core.Signal<"inline-block p-3 rounded-md border border-border bg-popover text-popover-foreground w-60" | "fixed z-50 p-3 rounded-md border border-border bg-popover text-popover-foreground shadow-lg animate-in fade-in-0 zoom-in-95 w-60">;
1862
+ constructor();
1863
+ writeValue(val: string): void;
1864
+ registerOnChange(fn: (value: string) => void): void;
1865
+ registerOnTouched(fn: () => void): void;
1866
+ setDisabledState(isDisabled: boolean): void;
1867
+ private emitColor;
1868
+ onSatPanelDown(event: MouseEvent): void;
1869
+ onSatPanelTouch(event: TouchEvent): void;
1870
+ private updateSatFromPosition;
1871
+ onHueDown(event: MouseEvent): void;
1872
+ onHueTouch(event: TouchEvent): void;
1873
+ private updateHueFromPosition;
1874
+ private startDrag;
1875
+ private removeDragListeners;
1876
+ onInputChange(event: Event): void;
1877
+ commitInput(): void;
1878
+ cycleFormat(): void;
1879
+ copyColor(): void;
1880
+ selectColor(color: string): void;
1881
+ addFavorite(): void;
1882
+ removeFavorite(color: string): void;
1883
+ pickFromScreen(): Promise<void>;
1884
+ toggle(): void;
1885
+ close(): void;
1886
+ private updatePanelPosition;
1887
+ private addPositionListeners;
1888
+ private removePositionListeners;
1889
+ onDocumentClick(event: MouseEvent): void;
1890
+ onEscape(): void;
1891
+ ngOnDestroy(): void;
1892
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyColorPickerComponent, never>;
1893
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyColorPickerComponent, "sny-color-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "presets": { "alias": "presets"; "required": false; "isSignal": true; }; "showInput": { "alias": "showInput"; "required": false; "isSignal": true; }; "showEyeDropper": { "alias": "showEyeDropper"; "required": false; "isSignal": true; }; "showFavorites": { "alias": "showFavorites"; "required": false; "isSignal": true; }; "inline": { "alias": "inline"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "colorChange": "colorChange"; "formatChange": "formatChange"; }, never, never, true, never>;
1894
+ }
1895
+
1896
+ declare function hexToRgb(hex: string): RGB | null;
1897
+ declare function rgbToHex(rgb: RGB): string;
1898
+ declare function rgbToHsl(rgb: RGB): HSL;
1899
+ declare function hslToRgb(hsl: HSL): RGB;
1900
+ declare function rgbToHsv(rgb: RGB): HSV;
1901
+ declare function hsvToRgb(hsv: HSV): RGB;
1902
+ declare function parseColor(input: string): RGB | null;
1903
+ declare function formatColor(rgb: RGB, format: ColorFormat, alpha?: number): string;
1904
+ declare function isValidColor(input: string): boolean;
1905
+
1906
+ declare const otpCellVariants: (props?: ({
1907
+ size?: "sm" | "md" | "lg" | null | undefined;
1908
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
1909
+ type OtpInputSize = 'sm' | 'md' | 'lg';
1910
+ type OtpInputType = 'number' | 'alphanumeric';
1911
+
1912
+ declare class SnyOtpInputComponent implements ControlValueAccessor {
1913
+ readonly length: _angular_core.InputSignal<number>;
1914
+ readonly type: _angular_core.InputSignal<OtpInputType>;
1915
+ readonly size: _angular_core.InputSignal<OtpInputSize>;
1916
+ readonly disabled: _angular_core.InputSignal<boolean>;
1917
+ readonly mask: _angular_core.InputSignal<boolean>;
1918
+ readonly autoFocus: _angular_core.InputSignal<boolean>;
1919
+ readonly placeholder: _angular_core.InputSignal<string>;
1920
+ readonly separator: _angular_core.InputSignal<number | null>;
1921
+ readonly status: _angular_core.InputSignal<"error" | "success" | "idle" | "loading">;
1922
+ readonly value: _angular_core.ModelSignal<string>;
1923
+ readonly completed: _angular_core.OutputEmitterRef<string>;
1924
+ readonly digits: _angular_core.WritableSignal<string[]>;
1925
+ readonly focusedIndex: _angular_core.WritableSignal<number>;
1926
+ readonly inputRefs: _angular_core.Signal<readonly ElementRef<HTMLInputElement>[]>;
1927
+ private readonly _disabledByCva;
1928
+ readonly isDisabled: _angular_core.Signal<boolean>;
1929
+ private _onChange;
1930
+ private _onTouched;
1931
+ readonly fullValue: _angular_core.Signal<string>;
1932
+ readonly isComplete: _angular_core.Signal<boolean>;
1933
+ constructor();
1934
+ writeValue(val: string): void;
1935
+ registerOnChange(fn: (value: string) => void): void;
1936
+ registerOnTouched(fn: () => void): void;
1937
+ setDisabledState(isDisabled: boolean): void;
1938
+ cellClass(index: number): string;
1939
+ onInput(event: Event, index: number): void;
1940
+ onKeydown(event: KeyboardEvent, index: number): void;
1941
+ onPaste(event: ClipboardEvent, index: number): void;
1942
+ onBlur(): void;
1943
+ private setDigit;
1944
+ private emitValue;
1945
+ private focusInput;
1946
+ private isValidChar;
1947
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyOtpInputComponent, never>;
1948
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyOtpInputComponent, "sny-otp-input", never, { "length": { "alias": "length"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "completed": "completed"; }, never, never, true, never>;
1949
+ }
1950
+
1951
+ interface Command {
1952
+ id: string;
1953
+ label: string;
1954
+ description?: string;
1955
+ icon?: string;
1956
+ group?: string;
1957
+ keywords?: string[];
1958
+ shortcut?: string;
1959
+ disabled?: boolean;
1960
+ action: () => void;
1961
+ }
1962
+ interface CommandGroup {
1963
+ name: string;
1964
+ commands: Command[];
1965
+ }
1966
+ interface CommandPaletteConfig {
1967
+ commands: Command[];
1968
+ placeholder?: string;
1969
+ emptyText?: string;
1970
+ width?: string;
1971
+ }
1972
+
1973
+ declare class SnyCommandPaletteComponent {
1974
+ readonly config: CommandPaletteConfig;
1975
+ private readonly dialogRef;
1976
+ private readonly searchInput;
1977
+ readonly query: _angular_core.WritableSignal<string>;
1978
+ readonly activeIndex: _angular_core.WritableSignal<number>;
1979
+ readonly filteredGroups: _angular_core.Signal<CommandGroup[]>;
1980
+ readonly flatResults: _angular_core.Signal<Command[]>;
1981
+ constructor();
1982
+ onQueryChange(value: string): void;
1983
+ flatIndex(cmd: Command): number;
1984
+ execute(cmd: Command): void;
1985
+ onKeydown(event: KeyboardEvent): void;
1986
+ private scrollActiveIntoView;
1987
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyCommandPaletteComponent, never>;
1988
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SnyCommandPaletteComponent, "sny-command-palette", never, {}, {}, never, never, true, never>;
1989
+ }
1990
+
1991
+ declare class SnyCommandPaletteService {
1992
+ private readonly dialogService;
1993
+ private isOpen;
1994
+ open(config: CommandPaletteConfig): SnyDialogRef<void> | null;
1995
+ close(): void;
1996
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SnyCommandPaletteService, never>;
1997
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SnyCommandPaletteService>;
1674
1998
  }
1675
1999
 
1676
2000
  type ValidatorHintVariant = 'error' | 'success' | 'warning' | 'info';
@@ -1695,5 +2019,5 @@ declare class SnyValidatorHintDirective {
1695
2019
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SnyValidatorHintDirective, "[snyValidatorHint]", never, { "when": { "alias": "when"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1696
2020
  }
1697
2021
 
1698
- export { SNY_ACCORDION, SNY_ACCORDION_ITEM, SNY_CAROUSEL, SNY_CHAT_BUBBLE, SNY_CONFIG, SNY_DIALOG_DATA, SNY_DRAWER, SNY_DROPDOWN, SNY_FAB, SNY_SHEET_DATA, SNY_STEPS, SNY_TABLE, SNY_TABS, SNY_TIMELINE, SnyAccordionContentDirective, SnyAccordionDirective, SnyAccordionItemDirective, SnyAccordionTriggerDirective, SnyAlertDescriptionDirective, SnyAlertDirective, SnyAlertTitleDirective, SnyAvatarComponent, SnyBadgeDirective, SnyBreadcrumbDirective, SnyBreadcrumbItemDirective, SnyBreadcrumbLinkDirective, SnyBreadcrumbListDirective, SnyBreadcrumbPageDirective, SnyBreadcrumbSeparatorDirective, SnyBulkActionsDefDirective, SnyButtonDirective, SnyButtonGroupDirective, SnyCalendarComponent, SnyCardContentDirective, SnyCardDescriptionDirective, SnyCardDirective, SnyCardFooterDirective, SnyCardHeaderDirective, SnyCardTitleDirective, SnyCarouselContentDirective, SnyCarouselDirective, SnyCarouselItemDirective, SnyCarouselNextDirective, SnyCarouselPrevDirective, SnyCellDefDirective, SnyChatBubbleAvatarDirective, SnyChatBubbleBodyDirective, SnyChatBubbleContentDirective, SnyChatBubbleDirective, SnyChatBubbleFooterDirective, SnyChatBubbleHeaderDirective, SnyCheckboxDirective, SnyComboboxComponent, SnyDataTableComponent, SnyDialogCloseDirective, SnyDialogContentDirective, SnyDialogDescriptionDirective, SnyDialogFooterDirective, SnyDialogHeaderDirective, SnyDialogRef, SnyDialogService, SnyDialogTitleDirective, SnyDiffComponent, SnyDividerComponent, SnyDockDirective, SnyDockItemDirective, SnyDrawerContentDirective, SnyDrawerLayoutComponent, SnyDrawerLayoutDirective, SnyDrawerSideDirective, SnyDropdownContentDirective, SnyDropdownDirective, SnyDropdownTriggerDirective, SnyFabActionDirective, SnyFabDirective, SnyFabTriggerDirective, SnyFieldsetContentDirective, SnyFieldsetDirective, SnyFieldsetLegendDirective, SnyFileInputComponent, SnyHeaderCellDefDirective, SnyIndicatorBadgeDirective, SnyIndicatorDirective, SnyInputDirective, SnyKbdDirective, SnyLabelDirective, SnyLinkDirective, SnyListDirective, SnyListItemActionDirective, SnyListItemContentDirective, SnyListItemDirective, SnyListItemIconDirective, SnyLoaderComponent, SnyMenuContentDirective, SnyMenuItemDirective, SnyMenuLabelDirective, SnyMenuSeparatorDirective, SnyNavbarBrandDirective, SnyNavbarContentDirective, SnyNavbarDirective, SnyNavbarEndDirective, SnyPaginationComponent, SnyProgressComponent, SnyRadialProgressComponent, SnyRadioDirective, SnyRatingComponent, SnyRowExpandDefDirective, SnySelectComponent, SnySheetCloseDirective, SnySheetContentDirective, SnySheetDescriptionDirective, SnySheetHeaderDirective, SnySheetRef, SnySheetService, SnySheetTitleDirective, SnySkeletonDirective, SnySliderComponent, SnyStatDescriptionDirective, SnyStatDirective, SnyStatFigureDirective, SnyStatTitleDirective, SnyStatValueDirective, SnyStatusDirective, SnyStepDirective, SnyStepsDirective, SnySwitchComponent, SnyTableBodyDirective, SnyTableCaptionDirective, SnyTableCellDirective, SnyTableDirective, SnyTableFooterDirective, SnyTableHeadDirective, SnyTableHeaderDirective, SnyTableRowDirective, SnyTabsContentDirective, SnyTabsDirective, SnyTabsListDirective, SnyTabsTriggerDirective, SnyTextareaDirective, SnyTimelineDirective, SnyTimelineEndDirective, SnyTimelineItemDirective, SnyTimelineMiddleDirective, SnyTimelineStartDirective, SnyToastService, SnyToasterComponent, SnyToggleDirective, SnyTooltipDirective, SnyValidatorDirective, SnyValidatorHintDirective, ThemeService, alertVariants, avatarVariants, badgeVariants, buttonGroupVariants, buttonVariants, cardVariants, checkboxVariants, cn, comboboxTriggerVariants, dividerVariants, dropdownContentVariants, dropdownItemVariants, fieldsetVariants, fileInputVariants, inputVariants, kbdVariants, labelVariants, linkVariants, loaderVariants, paginationItemVariants, progressBarVariants, progressTrackVariants, provideSonnyUI, radioVariants, ratingVariants, selectTriggerVariants, skeletonVariants, sliderTrackVariants, statusVariants, switchTrackVariants, tableCellVariants, tableVariants, tabsListVariants, tabsTriggerVariants, textareaVariants, toastVariants, toggleVariants, tooltipVariants };
1699
- export type { AlertVariant, AvatarSize, AvatarVariant, BadgeSize, BadgeVariant, ButtonGroupOrientation, ButtonSize, ButtonVariant, CardPadding, CardVariant, ChatBubbleAlign, ChatBubbleContentVariant, CheckboxSize, ComboboxOption, ComboboxSize, DataTableColumn, DataTablePaginationConfig, DividerOrientation, DividerVariant, DockPosition, DrawerSide, DropdownItemVariant, FabDirection, FabPosition, FieldsetVariant, FileInputSize, FileInputVariant, IndicatorPosition, IndicatorVariant, InputSize, InputVariant, KbdSize, LinkVariant, ListVariant, LoaderSize, LoaderVariant, NavbarVariant, PaginationSize, PaginationVariant, ProgressSize, ProgressVariant, RadialProgressSize, RadialProgressVariant, RadioSize, RatingSize, RatingVariant, SelectOption, SelectSize, SheetSide, SkeletonSize, SkeletonVariant, SliderSize, SnyDialogConfig, SnySheetConfig, SonnyConfig, SortDirection, SortState, StatDescriptionVariant, StatusSize, StatusVariant, StepStatus, StepsOrientation, StepsSize, SwitchSize, TableDensity, TableVariant, TextareaResize, TextareaSize, TextareaVariant, Theme, TimelineConnect, TimelineMiddleVariant, TimelineOrientation, ToastAction, ToastConfig, ToastData, ToastPosition, ToastVariant, ToggleSize, ToggleVariant, TooltipPosition, ValidatorHintVariant };
2022
+ export { SNY_ACCORDION, SNY_ACCORDION_ITEM, SNY_CAROUSEL, SNY_CHAT_BUBBLE, SNY_CONFIG, SNY_DIALOG_DATA, SNY_DRAWER, SNY_DROPDOWN, SNY_FAB, SNY_SHEET_DATA, SNY_STEPS, SNY_TABLE, SNY_TABS, SNY_TIMELINE, SnyAccordionContentDirective, SnyAccordionDirective, SnyAccordionItemDirective, SnyAccordionTriggerDirective, SnyAlertDescriptionDirective, SnyAlertDirective, SnyAlertTitleDirective, SnyAvatarComponent, SnyBadgeDirective, SnyBreadcrumbDirective, SnyBreadcrumbItemDirective, SnyBreadcrumbLinkDirective, SnyBreadcrumbListDirective, SnyBreadcrumbPageDirective, SnyBreadcrumbSeparatorDirective, SnyBulkActionsDefDirective, SnyButtonDirective, SnyButtonGroupDirective, SnyCalendarComponent, SnyCardContentDirective, SnyCardDescriptionDirective, SnyCardDirective, SnyCardFooterDirective, SnyCardHeaderDirective, SnyCardTitleDirective, SnyCarouselContentDirective, SnyCarouselDirective, SnyCarouselItemDirective, SnyCarouselNextDirective, SnyCarouselPrevDirective, SnyCellDefDirective, SnyChatBubbleAvatarDirective, SnyChatBubbleBodyDirective, SnyChatBubbleContentDirective, SnyChatBubbleDirective, SnyChatBubbleFooterDirective, SnyChatBubbleHeaderDirective, SnyCheckboxDirective, SnyColorPickerComponent, SnyComboboxComponent, SnyCommandPaletteComponent, SnyCommandPaletteService, SnyDataTableComponent, SnyDatePickerComponent, SnyDateRangePickerComponent, SnyDialogCloseDirective, SnyDialogContentDirective, SnyDialogDescriptionDirective, SnyDialogFooterDirective, SnyDialogHeaderDirective, SnyDialogRef, SnyDialogService, SnyDialogTitleDirective, SnyDiffComponent, SnyDividerComponent, SnyDockDirective, SnyDockItemDirective, SnyDrawerContentDirective, SnyDrawerLayoutComponent, SnyDrawerLayoutDirective, SnyDrawerSideDirective, SnyDropdownContentDirective, SnyDropdownDirective, SnyDropdownTriggerDirective, SnyFabActionDirective, SnyFabDirective, SnyFabTriggerDirective, SnyFieldsetContentDirective, SnyFieldsetDirective, SnyFieldsetLegendDirective, SnyFileInputComponent, SnyHeaderCellDefDirective, SnyIndicatorBadgeDirective, SnyIndicatorDirective, SnyInputDirective, SnyKbdDirective, SnyLabelDirective, SnyLinkDirective, SnyListDirective, SnyListItemActionDirective, SnyListItemContentDirective, SnyListItemDirective, SnyListItemIconDirective, SnyLoaderComponent, SnyMenuContentDirective, SnyMenuItemDirective, SnyMenuLabelDirective, SnyMenuSeparatorDirective, SnyNavbarBrandDirective, SnyNavbarContentDirective, SnyNavbarDirective, SnyNavbarEndDirective, SnyOtpInputComponent, SnyPaginationComponent, SnyProgressComponent, SnyRadialProgressComponent, SnyRadioDirective, SnyRatingComponent, SnyRowExpandDefDirective, SnySelectComponent, SnySheetCloseDirective, SnySheetContentDirective, SnySheetDescriptionDirective, SnySheetHeaderDirective, SnySheetRef, SnySheetService, SnySheetTitleDirective, SnySkeletonDirective, SnySliderComponent, SnyStatDescriptionDirective, SnyStatDirective, SnyStatFigureDirective, SnyStatTitleDirective, SnyStatValueDirective, SnyStatusDirective, SnyStepDirective, SnyStepsDirective, SnySwitchComponent, SnyTableBodyDirective, SnyTableCaptionDirective, SnyTableCellDirective, SnyTableDirective, SnyTableFooterDirective, SnyTableHeadDirective, SnyTableHeaderDirective, SnyTableRowDirective, SnyTabsContentDirective, SnyTabsDirective, SnyTabsListDirective, SnyTabsTriggerDirective, SnyTextareaDirective, SnyTimelineDirective, SnyTimelineEndDirective, SnyTimelineItemDirective, SnyTimelineMiddleDirective, SnyTimelineStartDirective, SnyToastService, SnyToasterComponent, SnyToggleDirective, SnyTooltipDirective, SnyValidatorDirective, SnyValidatorHintDirective, ThemeService, alertVariants, avatarVariants, badgeVariants, buttonGroupVariants, buttonVariants, cardVariants, checkboxVariants, cn, colorPickerTriggerVariants, comboboxTriggerVariants, datePickerTriggerVariants, dividerVariants, dropdownContentVariants, dropdownItemVariants, fieldsetVariants, fileInputVariants, formatColor, hexToRgb, hslToRgb, hsvToRgb, inputVariants, isValidColor, kbdVariants, labelVariants, linkVariants, loaderVariants, otpCellVariants, paginationItemVariants, parseColor, progressBarVariants, progressTrackVariants, provideSonnyUI, radioVariants, ratingVariants, rgbToHex, rgbToHsl, rgbToHsv, selectTriggerVariants, skeletonVariants, sliderTrackVariants, statusVariants, switchTrackVariants, tableCellVariants, tableVariants, tabsListVariants, tabsTriggerVariants, textareaVariants, toastVariants, toggleVariants, tooltipVariants };
2023
+ export type { AlertVariant, AvatarSize, AvatarVariant, BadgeSize, BadgeVariant, ButtonGroupOrientation, ButtonSize, ButtonVariant, CalendarDay, CalendarMode, CardPadding, CardVariant, ChatBubbleAlign, ChatBubbleContentVariant, CheckboxSize, ColorFormat, ColorPickerPreset, ColorPickerSize, ComboboxOption, ComboboxSize, Command, CommandGroup, CommandPaletteConfig, DataTableColumn, DataTablePaginationConfig, DatePickerPreset, DatePickerSize, DateRange, DividerOrientation, DividerVariant, DockPosition, DrawerSide, DropdownItemVariant, FabDirection, FabPosition, FieldsetVariant, FileInputSize, FileInputVariant, HSL, HSV, IndicatorPosition, IndicatorVariant, InputSize, InputVariant, KbdSize, LinkVariant, ListVariant, LoaderSize, LoaderVariant, NavbarVariant, OtpInputSize, OtpInputType, PaginationSize, PaginationVariant, ProgressSize, ProgressVariant, RGB, RadialProgressSize, RadialProgressVariant, RadioSize, RatingSize, RatingVariant, SelectOption, SelectSize, SheetSide, SkeletonSize, SkeletonVariant, SliderSize, SnyDialogConfig, SnySheetConfig, SonnyConfig, SortDirection, SortState, StatDescriptionVariant, StatusSize, StatusVariant, StepStatus, StepsOrientation, StepsSize, SwitchSize, TableDensity, TableVariant, TextareaResize, TextareaSize, TextareaVariant, Theme, TimelineConnect, TimelineMiddleVariant, TimelineOrientation, ToastAction, ToastConfig, ToastData, ToastPosition, ToastVariant, ToggleSize, ToggleVariant, TooltipPosition, ValidatorHintVariant };