@semantic-components/ui 0.38.0 → 0.39.0

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/index.d.ts CHANGED
@@ -35,7 +35,6 @@ export * from './lib/components/confirmation-dialog';
35
35
  export * from './lib/components/badge';
36
36
  export * from './lib/components/scroll-area';
37
37
  export * from './lib/components/tabs';
38
- export * from './lib/components/tab-group';
39
38
  export * from './lib/components/card';
40
39
  export * from './lib/components/toast';
41
40
  export * from './lib/components/slider';
@@ -1,14 +1,18 @@
1
1
  import { Temporal } from '@js-temporal/polyfill';
2
+ import { View } from './types';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class ScCalendarHeader {
5
+ private readonly calendarService;
4
6
  readonly classInput: import("@angular/core").InputSignal<string>;
5
7
  protected readonly class: import("@angular/core").Signal<string>;
6
8
  readonly currentMonth: import("@angular/core").InputSignal<Temporal.PlainYearMonth>;
7
- readonly disabled: import("@angular/core").InputSignal<boolean>;
9
+ readonly view: import("@angular/core").InputSignal<View>;
10
+ protected readonly firstYear: import("@angular/core").Signal<number>;
11
+ protected readonly lastYear: import("@angular/core").Signal<number>;
8
12
  readonly monthYearChange: import("@angular/core").OutputEmitterRef<number>;
9
13
  readonly viewToggled: import("@angular/core").OutputEmitterRef<void>;
10
14
  private readonly localeId;
11
15
  protected readonly monthName: import("@angular/core").Signal<string>;
12
16
  static ɵfac: i0.ɵɵFactoryDeclaration<ScCalendarHeader, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<ScCalendarHeader, "sc-calendar-header", never, { "classInput": { "alias": "class"; "required": false; "isSignal": true; }; "currentMonth": { "alias": "currentMonth"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": true; "isSignal": true; }; }, { "monthYearChange": "monthYearChange"; "viewToggled": "viewToggled"; }, never, never, true, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScCalendarHeader, "sc-calendar-header", never, { "classInput": { "alias": "class"; "required": false; "isSignal": true; }; "currentMonth": { "alias": "currentMonth"; "required": true; "isSignal": true; }; "view": { "alias": "view"; "required": true; "isSignal": true; }; }, { "monthYearChange": "monthYearChange"; "viewToggled": "viewToggled"; }, never, never, true, never>;
14
18
  }
@@ -1,15 +1,18 @@
1
1
  import { ControlValueAccessor } from '@angular/forms';
2
2
  import { Temporal } from '@js-temporal/polyfill';
3
+ import { View } from './types';
3
4
  import * as i0 from "@angular/core";
4
5
  export declare class ScCalendar implements ControlValueAccessor {
5
6
  readonly value: import("@angular/core").ModelSignal<Temporal.PlainDate | undefined>;
6
- readonly minDate: import("@angular/core").InputSignal<Temporal.PlainDate | undefined>;
7
- readonly maxDate: import("@angular/core").InputSignal<Temporal.PlainDate | undefined>;
7
+ readonly min: import("@angular/core").InputSignal<Temporal.PlainDate | undefined>;
8
+ readonly max: import("@angular/core").InputSignal<Temporal.PlainDate | undefined>;
8
9
  readonly classInput: import("@angular/core").InputSignal<string>;
9
10
  protected readonly class: import("@angular/core").Signal<string>;
10
11
  private readonly today;
12
+ protected readonly date: import("@angular/core").Signal<Temporal.PlainDate | undefined>;
11
13
  protected readonly focusedDate: import("@angular/core").WritableSignal<Temporal.PlainDate | undefined>;
12
14
  protected readonly currentYear: import("@angular/core").WritableSignal<number>;
15
+ protected readonly previewYear: import("@angular/core").WritableSignal<number>;
13
16
  protected readonly currentMonth: import("@angular/core").WritableSignal<Temporal.PlainYearMonth>;
14
17
  private readonly firstDayOfMonth;
15
18
  private readonly lastDayOfMonth;
@@ -20,12 +23,14 @@ export declare class ScCalendar implements ControlValueAccessor {
20
23
  selectDate(date: Temporal.PlainDate): void;
21
24
  moveFocus(delta: number): void;
22
25
  handleKeydown(event: KeyboardEvent): void;
26
+ handleKeydown2(event: KeyboardEvent): void;
27
+ handleKeydown3(event: KeyboardEvent): void;
28
+ handleKeydown1(event: KeyboardEvent): void;
23
29
  prevMonth(): void;
24
30
  nextMonth(): void;
25
- protected readonly view: import("@angular/core").WritableSignal<"months" | "years" | "days">;
31
+ protected readonly view: import("@angular/core").WritableSignal<View>;
26
32
  protected toggleView(): void;
27
33
  weekdays: string[];
28
- private readonly scYearSelector;
29
34
  protected setMonthYear(n: number): void;
30
35
  protected selectYear(year: number): void;
31
36
  protected selectMonth(month: Temporal.PlainYearMonth): void;
@@ -38,5 +43,5 @@ export declare class ScCalendar implements ControlValueAccessor {
38
43
  readonly disabled: import("@angular/core").WritableSignal<boolean>;
39
44
  setDisabledState?(isDisabled: boolean): void;
40
45
  static ɵfac: i0.ɵɵFactoryDeclaration<ScCalendar, never>;
41
- static ɵcmp: i0.ɵɵComponentDeclaration<ScCalendar, "sc-calendar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "classInput": { "alias": "class"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
46
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScCalendar, "sc-calendar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "classInput": { "alias": "class"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
42
47
  }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CalendarService {
3
+ readonly firstYear: import("@angular/core").WritableSignal<number>;
4
+ readonly lastYear: import("@angular/core").WritableSignal<number>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<CalendarService, never>;
6
+ static ɵprov: i0.ɵɵInjectableDeclaration<CalendarService>;
7
+ }
@@ -7,10 +7,12 @@ export declare class ScDaySelector {
7
7
  readonly dateSelected: import("@angular/core").OutputEmitterRef<Temporal.PlainDate>;
8
8
  readonly selectedDate: import("@angular/core").InputSignal<Temporal.PlainDate | undefined>;
9
9
  readonly focusedDate: import("@angular/core").InputSignal<Temporal.PlainDate | undefined>;
10
+ readonly classInput: import("@angular/core").InputSignal<string>;
11
+ protected readonly class: import("@angular/core").Signal<string>;
10
12
  protected getVariant(day: CalendarDay): "primary" | "outline" | "secondary" | "ghost";
11
13
  protected selectDay(day: CalendarDay): void;
12
14
  isSelected(date: Temporal.PlainDate): boolean;
13
15
  isFocused(date: Temporal.PlainDate): boolean;
14
16
  static ɵfac: i0.ɵɵFactoryDeclaration<ScDaySelector, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<ScDaySelector, "sc-day-selector", never, { "calendarDays": { "alias": "calendarDays"; "required": true; "isSignal": true; }; "weekdays": { "alias": "weekdays"; "required": true; "isSignal": true; }; "selectedDate": { "alias": "selectedDate"; "required": false; "isSignal": true; }; "focusedDate": { "alias": "focusedDate"; "required": false; "isSignal": true; }; }, { "dateSelected": "dateSelected"; }, never, never, true, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScDaySelector, "sc-day-selector", never, { "calendarDays": { "alias": "calendarDays"; "required": true; "isSignal": true; }; "weekdays": { "alias": "weekdays"; "required": true; "isSignal": true; }; "selectedDate": { "alias": "selectedDate"; "required": false; "isSignal": true; }; "focusedDate": { "alias": "focusedDate"; "required": false; "isSignal": true; }; "classInput": { "alias": "class"; "required": false; "isSignal": true; }; }, { "dateSelected": "dateSelected"; }, never, never, true, never>;
16
18
  }
@@ -1,12 +1,15 @@
1
1
  import { Temporal } from '@js-temporal/polyfill';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class ScMonthSelector {
4
+ readonly classInput: import("@angular/core").InputSignal<string>;
5
+ protected readonly class: import("@angular/core").Signal<string>;
4
6
  readonly currentMonth: import("@angular/core").InputSignal<Temporal.PlainYearMonth>;
5
7
  protected months: string[];
6
8
  private readonly localeId;
7
9
  constructor();
8
10
  readonly monthSelected: import("@angular/core").OutputEmitterRef<Temporal.PlainYearMonth>;
9
11
  protected selectMonth(monthIndex: number): void;
12
+ protected getVariant(i: number): "primary" | "ghost";
10
13
  static ɵfac: i0.ɵɵFactoryDeclaration<ScMonthSelector, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<ScMonthSelector, "sc-month-selector", never, { "currentMonth": { "alias": "currentMonth"; "required": true; "isSignal": true; }; }, { "monthSelected": "monthSelected"; }, never, never, true, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScMonthSelector, "sc-month-selector", never, { "classInput": { "alias": "class"; "required": false; "isSignal": true; }; "currentMonth": { "alias": "currentMonth"; "required": true; "isSignal": true; }; }, { "monthSelected": "monthSelected"; }, never, never, true, never>;
12
15
  }
@@ -4,3 +4,4 @@ export interface CalendarDay {
4
4
  dayOfMonth: number;
5
5
  isInCurrentMonth: boolean;
6
6
  }
7
+ export type View = 'days' | 'years' | 'months';
@@ -1,10 +1,17 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class ScYearSelector {
3
+ readonly classInput: import("@angular/core").InputSignal<string>;
4
+ protected readonly class: import("@angular/core").Signal<string>;
3
5
  readonly currentYear: import("@angular/core").InputSignal<number>;
4
- readonly year: import("@angular/core").WritableSignal<number>;
6
+ readonly previewYear: import("@angular/core").InputSignal<number>;
7
+ private readonly firstYear;
8
+ private readonly lastYear;
5
9
  protected readonly years: import("@angular/core").Signal<number[]>;
6
10
  readonly yearSelected: import("@angular/core").OutputEmitterRef<number>;
7
11
  protected selectYear(year: number): void;
12
+ private readonly calendarService;
13
+ constructor();
14
+ protected getVariant(y: number): "primary" | "ghost";
8
15
  static ɵfac: i0.ɵɵFactoryDeclaration<ScYearSelector, never>;
9
- static ɵcmp: i0.ɵɵComponentDeclaration<ScYearSelector, "sc-year-selector", never, { "currentYear": { "alias": "currentYear"; "required": true; "isSignal": true; }; }, { "yearSelected": "yearSelected"; }, never, never, true, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScYearSelector, "sc-year-selector", never, { "classInput": { "alias": "class"; "required": false; "isSignal": true; }; "currentYear": { "alias": "currentYear"; "required": true; "isSignal": true; }; "previewYear": { "alias": "previewYear"; "required": true; "isSignal": true; }; }, { "yearSelected": "yearSelected"; }, never, never, true, never>;
10
17
  }
@@ -11,6 +11,7 @@ export declare class ScRangeCalendar implements ControlValueAccessor {
11
11
  private readonly today;
12
12
  protected readonly focusedDate: import("@angular/core").WritableSignal<Temporal.PlainDate | ScRange | undefined>;
13
13
  protected readonly currentYear: import("@angular/core").WritableSignal<number>;
14
+ protected readonly previewYear: import("@angular/core").WritableSignal<number>;
14
15
  protected readonly currentMonth: import("@angular/core").WritableSignal<Temporal.PlainYearMonth>;
15
16
  private readonly firstDayOfMonth;
16
17
  private readonly lastDayOfMonth;
@@ -21,10 +22,9 @@ export declare class ScRangeCalendar implements ControlValueAccessor {
21
22
  selectRange(range: ScRange): void;
22
23
  prevMonth(): void;
23
24
  nextMonth(): void;
24
- protected readonly view: import("@angular/core").WritableSignal<"months" | "years" | "days">;
25
+ protected readonly view: import("@angular/core").WritableSignal<"days" | "years" | "months">;
25
26
  protected toggleView(): void;
26
27
  weekdays: string[];
27
- private readonly scYearSelector;
28
28
  protected setMonthYear(n: number): void;
29
29
  protected selectYear(year: number): void;
30
30
  protected selectMonth(month: Temporal.PlainYearMonth): void;
@@ -0,0 +1,33 @@
1
+ import { AfterViewInit, ElementRef, OnDestroy, OnInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FlexibleScrollAreaComponent implements OnInit, OnDestroy, AfterViewInit {
4
+ orientation: 'vertical' | 'horizontal';
5
+ height: string;
6
+ width: string;
7
+ showNavButtons: boolean;
8
+ viewportRef: ElementRef<HTMLDivElement>;
9
+ isScrolling: boolean;
10
+ isHovering: boolean;
11
+ isDragging: boolean;
12
+ scrollTimeout: any;
13
+ thumbSize: number;
14
+ thumbPosition: number;
15
+ startPoint: number;
16
+ startScrollPosition: number;
17
+ canScrollStart: boolean;
18
+ canScrollEnd: boolean;
19
+ constructor();
20
+ ngOnInit(): void;
21
+ ngOnDestroy(): void;
22
+ ngAfterViewInit(): void;
23
+ onScroll(): void;
24
+ updateThumb(): void;
25
+ updateScrollButtonsState(): void;
26
+ startDragging(event: MouseEvent): void;
27
+ onMouseMove(event: MouseEvent): void;
28
+ onMouseUp(): void;
29
+ scrollPrev(): void;
30
+ scrollNext(): void;
31
+ static ɵfac: i0.ɵɵFactoryDeclaration<FlexibleScrollAreaComponent, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<FlexibleScrollAreaComponent, "sc-flexible-scroll-area", never, { "orientation": { "alias": "orientation"; "required": false; }; "height": { "alias": "height"; "required": false; }; "width": { "alias": "width"; "required": false; }; "showNavButtons": { "alias": "showNavButtons"; "required": false; }; }, {}, never, ["*"], true, never>;
33
+ }
@@ -0,0 +1,34 @@
1
+ import { AfterViewInit, ElementRef, OnDestroy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class HorizontalScrollAreaComponent implements OnDestroy, AfterViewInit {
4
+ viewportRef: ElementRef<HTMLDivElement>;
5
+ thumbRef: ElementRef<HTMLDivElement>;
6
+ isScrolling: boolean;
7
+ isHovering: boolean;
8
+ isDragging: boolean;
9
+ scrollTimeout: any;
10
+ thumbWidth: number;
11
+ thumbLeft: number;
12
+ startX: number;
13
+ startScrollLeft: number;
14
+ canScrollLeft: boolean;
15
+ canScrollRight: boolean;
16
+ items: {
17
+ title: string;
18
+ description: string;
19
+ category: string;
20
+ }[];
21
+ constructor();
22
+ ngOnDestroy(): void;
23
+ ngAfterViewInit(): void;
24
+ onScroll(): void;
25
+ updateThumb(): void;
26
+ updateScrollButtonsState(): void;
27
+ startDragging(event: MouseEvent): void;
28
+ onMouseMove(event: MouseEvent): void;
29
+ onMouseUp(): void;
30
+ scrollLeft(): void;
31
+ scrollRight(): void;
32
+ static ɵfac: i0.ɵɵFactoryDeclaration<HorizontalScrollAreaComponent, never>;
33
+ static ɵcmp: i0.ɵɵComponentDeclaration<HorizontalScrollAreaComponent, "sc-horizontal-scroll-area", never, {}, {}, never, never, true, never>;
34
+ }
@@ -1,2 +1,5 @@
1
1
  export * from './scroll-area';
2
2
  export * from './hover-scrollbar.component';
3
+ export * from './scroll-area.component';
4
+ export * from './horizontal-scroll-area.component';
5
+ export * from './flexible-scroll-area.component';
@@ -0,0 +1,24 @@
1
+ import { AfterViewInit, ElementRef, OnDestroy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ScrollAreaComponent implements OnDestroy, AfterViewInit {
4
+ viewportRef: ElementRef<HTMLDivElement>;
5
+ thumbRef: ElementRef<HTMLDivElement>;
6
+ isScrolling: boolean;
7
+ isHovering: boolean;
8
+ isDragging: boolean;
9
+ scrollTimeout: any;
10
+ thumbHeight: number;
11
+ thumbTop: number;
12
+ startY: number;
13
+ startScrollTop: number;
14
+ constructor();
15
+ ngOnDestroy(): void;
16
+ ngAfterViewInit(): void;
17
+ onScroll(): void;
18
+ updateThumb(): void;
19
+ startDragging(event: MouseEvent): void;
20
+ onMouseMove(event: MouseEvent): void;
21
+ onMouseUp(): void;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScrollAreaComponent, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScrollAreaComponent, "sc-scroll-area3", never, {}, {}, never, never, true, never>;
24
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@semantic-components/ui",
3
- "version": "0.38.0",
3
+ "version": "0.39.0",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -0,0 +1,159 @@
1
+ @import url('@fontsource/inter/index.css');
2
+ @import url('@fontsource/jetbrains-mono/index.css');
3
+
4
+ @import url('@angular/cdk/overlay-prebuilt.css');
5
+ @import './scrollbar-styles.css';
6
+ @import './shiki-styles.css';
7
+
8
+ @import 'tailwindcss';
9
+ @import 'tw-animate-css';
10
+
11
+ @plugin '@tailwindcss/typography';
12
+ @plugin 'tailwindcss-animate';
13
+
14
+ @custom-variant dark (&:where(.dark, .dark *));
15
+
16
+ @theme {
17
+ --font-sans:
18
+ Inter, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
19
+ 'Segoe UI Symbol', 'Noto Color Emoji';
20
+ --font-mono:
21
+ 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
22
+ 'Courier New', monospace;
23
+
24
+ --color-background: hsl(var(--background));
25
+ --color-foreground: hsl(var(--foreground));
26
+
27
+ --color-card: hsl(var(--card));
28
+ --color-card-foreground: hsl(var(--card-foreground));
29
+
30
+ --color-popover: hsl(var(--popover));
31
+ --color-popover-foreground: hsl(var(--popover-foreground));
32
+
33
+ --color-primary: hsl(var(--primary));
34
+ --color-primary-foreground: hsl(var(--primary-foreground));
35
+
36
+ --color-secondary: hsl(var(--secondary));
37
+ --color-secondary-foreground: hsl(var(--secondary-foreground));
38
+
39
+ --color-muted: hsl(var(--muted));
40
+ --color-muted-foreground: hsl(var(--muted-foreground));
41
+
42
+ --color-accent: hsl(var(--accent));
43
+ --color-accent-foreground: hsl(var(--accent-foreground));
44
+
45
+ --color-destructive: hsl(var(--destructive));
46
+ --color-destructive-foreground: hsl(var(--destructive-foreground));
47
+
48
+ --color-border: hsl(var(--border));
49
+ --color-input: hsl(var(--input));
50
+ --color-ring: hsl(var(--ring));
51
+ --color-radius: hsl(var(--radius));
52
+
53
+ --color-sidebar: hsl(var(--sidebar-background));
54
+ --color-sidebar-foreground: hsl(var(--sidebar-foreground));
55
+ --color-sidebar-primary: hsl(var(--sidebar-primary));
56
+ --color-sidebar-primary-foreground: hsl(var(--sidebar-primary-foreground));
57
+ --color-sidebar-accent: hsl(var(--sidebar-accent));
58
+ --color-sidebar-accent-foreground: hsl(var(--sidebar-accent-foreground));
59
+ --color-sidebar-border: hsl(var(--sidebar-border));
60
+ --color-sidebar-ring: hsl(var(--sidebar-ring));
61
+
62
+ --animate-progress: progress 1s infinite linear;
63
+
64
+ @keyframes progress {
65
+ 0% {
66
+ transform: translateX(0) scaleX(0);
67
+ }
68
+ 40% {
69
+ transform: translateX(0) scaleX(0.4);
70
+ }
71
+ 100% {
72
+ transform: translateX(100%) scaleX(0.5);
73
+ }
74
+ }
75
+ }
76
+
77
+ /*
78
+ The default border color has changed to `currentColor` in Tailwind CSS v4,
79
+ so we've added these compatibility styles to make sure everything still
80
+ looks the same as it did with Tailwind CSS v3.
81
+
82
+ If we ever want to remove these styles, we need to add an explicit border
83
+ color utility to any element that depends on these defaults.
84
+ */
85
+ @layer base {
86
+ *,
87
+ ::after,
88
+ ::before,
89
+ ::backdrop,
90
+ ::file-selector-button {
91
+ border-color: var(--color-gray-200, currentColor);
92
+ }
93
+ }
94
+
95
+ @layer base {
96
+ :root {
97
+ --background: 0 0% 100%;
98
+ --foreground: 222.2 84% 4.9%;
99
+ --card: 0 0% 100%;
100
+ --card-foreground: 222.2 84% 4.9%;
101
+ --popover: 0 0% 100%;
102
+ --popover-foreground: 222.2 84% 4.9%;
103
+ --primary: 221.2 83.2% 53.3%;
104
+ --primary-foreground: 210 40% 98%;
105
+ --secondary: 210 40% 96.1%;
106
+ --secondary-foreground: 222.2 47.4% 11.2%;
107
+ --muted: 210 40% 96.1%;
108
+ --muted-foreground: 215.4 16.3% 46.9%;
109
+ --accent: 210 40% 96.1%;
110
+ --accent-foreground: 222.2 47.4% 11.2%;
111
+ --destructive: 0 84.2% 60.2%;
112
+ --destructive-foreground: 210 40% 98%;
113
+ --border: 214.3 31.8% 91.4%;
114
+ --input: 214.3 31.8% 91.4%;
115
+ --ring: 221.2 83.2% 53.3%;
116
+ --radius: 0.5rem;
117
+ --sidebar-background: 0 0% 98%;
118
+ --sidebar-foreground: 240 5.3% 26.1%;
119
+ --sidebar-primary: 240 5.9% 10%;
120
+ --sidebar-primary-foreground: 0 0% 98%;
121
+ --sidebar-accent: 240 4.8% 95.9%;
122
+ --sidebar-accent-foreground: 240 5.9% 10%;
123
+ --sidebar-border: 220 13% 91%;
124
+ --sidebar-ring: 240 5% 64.9%;
125
+
126
+ --checkbox-checked-bg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-check'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
127
+ --checkbox-indeterminate-bg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-minus'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");
128
+ }
129
+
130
+ .dark {
131
+ --background: 222.2 84% 4.9%;
132
+ --foreground: 210 40% 98%;
133
+ --card: 222.2 84% 4.9%;
134
+ --card-foreground: 210 40% 98%;
135
+ --popover: 222.2 84% 4.9%;
136
+ --popover-foreground: 210 40% 98%;
137
+ --primary: 217.2 91.2% 59.8%;
138
+ --primary-foreground: 222.2 47.4% 11.2%;
139
+ --secondary: 217.2 32.6% 17.5%;
140
+ --secondary-foreground: 210 40% 98%;
141
+ --muted: 217.2 32.6% 17.5%;
142
+ --muted-foreground: 215 20.2% 65.1%;
143
+ --accent: 217.2 32.6% 17.5%;
144
+ --accent-foreground: 210 40% 98%;
145
+ --destructive: 0 62.8% 30.6%;
146
+ --destructive-foreground: 210 40% 98%;
147
+ --border: 217.2 32.6% 17.5%;
148
+ --input: 217.2 32.6% 17.5%;
149
+ --ring: 224.3 76.3% 48%;
150
+ --sidebar-background: 240 5.9% 10%;
151
+ --sidebar-foreground: 240 4.8% 95.9%;
152
+ --sidebar-primary: 224.3 76.3% 48%;
153
+ --sidebar-primary-foreground: 0 0% 100%;
154
+ --sidebar-accent: 240 3.7% 15.9%;
155
+ --sidebar-accent-foreground: 240 4.8% 95.9%;
156
+ --sidebar-border: 240 3.7% 15.9%;
157
+ --sidebar-ring: 240 4.9% 83.9%;
158
+ }
159
+ }
@@ -1,4 +0,0 @@
1
- export * from './tab-group';
2
- export * from './tab-item';
3
- export * from './tab-label';
4
- export * from './tab-content';
@@ -1,7 +0,0 @@
1
- import { TemplateRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class ScTabContent2 {
4
- readonly template: import("@angular/core").Signal<TemplateRef<unknown>>;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<ScTabContent2, never>;
6
- static ɵcmp: i0.ɵɵComponentDeclaration<ScTabContent2, "sc-tab-content2", never, {}, {}, never, ["*"], true, never>;
7
- }
@@ -1,11 +0,0 @@
1
- import { AfterViewInit } from '@angular/core';
2
- import { ScTabContent2 } from './tab-content';
3
- import { ScTabLabel2 } from './tab-label';
4
- import * as i0 from "@angular/core";
5
- export declare class ScTabGroup implements AfterViewInit {
6
- readonly tabLabels: import("@angular/core").Signal<readonly ScTabLabel2[]>;
7
- readonly tabContents: import("@angular/core").Signal<readonly ScTabContent2[]>;
8
- ngAfterViewInit(): void;
9
- static ɵfac: i0.ɵɵFactoryDeclaration<ScTabGroup, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<ScTabGroup, "sc-tab-group", never, {}, {}, ["tabLabels", "tabContents"], ["*"], true, never>;
11
- }
@@ -1,5 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- export declare class ScTabItem {
3
- static ɵfac: i0.ɵɵFactoryDeclaration<ScTabItem, never>;
4
- static ɵcmp: i0.ɵɵComponentDeclaration<ScTabItem, "sc-tab-item", never, {}, {}, never, ["*"], true, never>;
5
- }
@@ -1,7 +0,0 @@
1
- import { TemplateRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class ScTabLabel2 {
4
- readonly template: import("@angular/core").Signal<TemplateRef<unknown>>;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<ScTabLabel2, never>;
6
- static ɵcmp: i0.ɵɵComponentDeclaration<ScTabLabel2, "sc-tab-label2", never, {}, {}, never, ["*"], true, never>;
7
- }
package/styles/styles.css DELETED
@@ -1,2 +0,0 @@
1
- @import './scrollbar-styles.css';
2
- @import './shiki-styles.css';