@taiga-ui/kit 5.0.0-canary.2da416d → 5.0.0-canary.2f662cc
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/components/calendar-range/calendar-range.component.d.ts +3 -3
- package/components/counter/counter.component.d.ts +17 -0
- package/components/counter/counter.options.d.ts +14 -0
- package/components/counter/index.d.ts +2 -0
- package/components/index.d.ts +2 -0
- package/components/input-number/index.d.ts +1 -0
- package/components/input-number/step/input-number-step.component.d.ts +3 -5
- package/components/input-number/step/input-number-step.service.d.ts +12 -0
- package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +1 -0
- package/components/timeline/index.d.ts +3 -0
- package/components/timeline/timeline-item.component.d.ts +14 -0
- package/components/timeline/timeline.component.d.ts +16 -0
- package/components/timeline/timeline.d.ts +3 -0
- package/fesm2022/taiga-ui-kit-components-avatar.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-badge.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-block.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-calendar-month.mjs +1 -1
- package/fesm2022/taiga-ui-kit-components-calendar-month.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +15 -17
- package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-chip.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-comment.mjs +3 -3
- package/fesm2022/taiga-ui-kit-components-compass.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-counter.mjs +65 -0
- package/fesm2022/taiga-ui-kit-components-counter.mjs.map +1 -0
- package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +3 -3
- package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-input-date.mjs +3 -2
- package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-input-number.mjs +35 -19
- package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-input-pin.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-input-year.mjs +5 -4
- package/fesm2022/taiga-ui-kit-components-input-year.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-like.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-message.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-multi-select.mjs +11 -4
- package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-pin.mjs +3 -3
- package/fesm2022/taiga-ui-kit-components-progress.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-radio-list.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-segmented.mjs +1 -1
- package/fesm2022/taiga-ui-kit-components-segmented.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-select.mjs +6 -4
- package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-status.mjs +3 -3
- package/fesm2022/taiga-ui-kit-components-switch.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-textarea.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-components-timeline.mjs +68 -0
- package/fesm2022/taiga-ui-kit-components-timeline.mjs.map +1 -0
- package/fesm2022/taiga-ui-kit-components-toast.mjs +2 -2
- package/fesm2022/taiga-ui-kit-components.mjs +2 -0
- package/fesm2022/taiga-ui-kit-components.mjs.map +1 -1
- package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs +1 -1
- package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs.map +1 -1
- package/package.json +99 -91
|
@@ -21,8 +21,8 @@ export declare class TuiCalendarRange implements OnInit, OnChanges {
|
|
|
21
21
|
disabledItemHandler: TuiBooleanHandler<TuiDay>;
|
|
22
22
|
markerHandler: TuiMarkerHandler | null;
|
|
23
23
|
items: readonly TuiDayRangePeriod[];
|
|
24
|
-
min: TuiDay | null
|
|
25
|
-
max: TuiDay | null
|
|
24
|
+
readonly min: import("@angular/core").InputSignal<TuiDay | null>;
|
|
25
|
+
readonly max: import("@angular/core").InputSignal<TuiDay | null>;
|
|
26
26
|
minLength: TuiDayLike | null;
|
|
27
27
|
maxLength: TuiDayLike | null;
|
|
28
28
|
item: TuiDayRangePeriod | null;
|
|
@@ -61,5 +61,5 @@ export declare class TuiCalendarRange implements OnInit, OnChanges {
|
|
|
61
61
|
private initDefaultViewedMonth;
|
|
62
62
|
private findItemByDayRange;
|
|
63
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiCalendarRange, never>;
|
|
64
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiCalendarRange, "tui-calendar-range", never, { "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "markerHandler": { "alias": "markerHandler"; "required": false; }; "items": { "alias": "items"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "minLength": { "alias": "minLength"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "item": { "alias": "item"; "required": false; }; "valueSetter": { "alias": "value"; "required": false; }; "defaultViewedMonth": { "alias": "defaultViewedMonth"; "required": false; }; }, { "valueChange": "valueChange"; "itemChange": "itemChange"; }, never, never, true, never>;
|
|
64
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiCalendarRange, "tui-calendar-range", never, { "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "markerHandler": { "alias": "markerHandler"; "required": false; }; "items": { "alias": "items"; "required": false; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "item": { "alias": "item"; "required": false; }; "valueSetter": { "alias": "value"; "required": false; }; "defaultViewedMonth": { "alias": "defaultViewedMonth"; "required": false; }; }, { "valueChange": "valueChange"; "itemChange": "itemChange"; }, never, never, true, never>;
|
|
65
65
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TuiControl } from '@taiga-ui/cdk/classes';
|
|
2
|
+
import { TuiInputNumberStepService } from '@taiga-ui/kit/components/input-number';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class TuiCounter extends TuiControl<number> {
|
|
5
|
+
protected readonly hold: TuiInputNumberStepService<any>;
|
|
6
|
+
protected readonly $: import("rxjs").Subscription;
|
|
7
|
+
protected readonly options: import("./counter.options").TuiCounterOptions;
|
|
8
|
+
protected readonly limit: import("@angular/core").Signal<number>;
|
|
9
|
+
readonly step: import("@angular/core").InputSignal<number>;
|
|
10
|
+
readonly size: import("@angular/core").InputSignal<"m" | "l" | "s">;
|
|
11
|
+
readonly min: import("@angular/core").InputSignal<number>;
|
|
12
|
+
readonly max: import("@angular/core").InputSignal<number>;
|
|
13
|
+
readonly appearance: import("@angular/core").InputSignal<string>;
|
|
14
|
+
protected onStep(step: number): void;
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiCounter, never>;
|
|
16
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiCounter, "tui-counter", never, { "step": { "alias": "step"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type TuiAppearanceOptions } from '@taiga-ui/core/directives/appearance';
|
|
2
|
+
import { type TuiSizeL, type TuiSizeS } from '@taiga-ui/core/types';
|
|
3
|
+
export interface TuiCounterOptions extends TuiAppearanceOptions {
|
|
4
|
+
size: TuiSizeL | TuiSizeS;
|
|
5
|
+
readonly icons: Readonly<{
|
|
6
|
+
decrease: string;
|
|
7
|
+
increase: string;
|
|
8
|
+
}>;
|
|
9
|
+
step: number;
|
|
10
|
+
min: number;
|
|
11
|
+
max: number;
|
|
12
|
+
}
|
|
13
|
+
export declare const TUI_COUNTER_DEFAULT_OPTIONS: TuiCounterOptions;
|
|
14
|
+
export declare const TUI_COUNTER_OPTIONS: import("@angular/core").InjectionToken<TuiCounterOptions>, tuiCounterOptionsProvider: (item: Partial<TuiCounterOptions> | (() => Partial<TuiCounterOptions>)) => import("@angular/core").FactoryProvider;
|
package/components/index.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export * from '@taiga-ui/kit/components/comment';
|
|
|
16
16
|
export * from '@taiga-ui/kit/components/compass';
|
|
17
17
|
export * from '@taiga-ui/kit/components/confirm';
|
|
18
18
|
export * from '@taiga-ui/kit/components/copy';
|
|
19
|
+
export * from '@taiga-ui/kit/components/counter';
|
|
19
20
|
export * from '@taiga-ui/kit/components/data-list-wrapper';
|
|
20
21
|
export * from '@taiga-ui/kit/components/drawer';
|
|
21
22
|
export * from '@taiga-ui/kit/components/files';
|
|
@@ -63,5 +64,6 @@ export * from '@taiga-ui/kit/components/switch';
|
|
|
63
64
|
export * from '@taiga-ui/kit/components/tabs';
|
|
64
65
|
export * from '@taiga-ui/kit/components/textarea';
|
|
65
66
|
export * from '@taiga-ui/kit/components/tiles';
|
|
67
|
+
export * from '@taiga-ui/kit/components/timeline';
|
|
66
68
|
export * from '@taiga-ui/kit/components/toast';
|
|
67
69
|
export * from '@taiga-ui/kit/components/tree';
|
|
@@ -4,5 +4,6 @@ export * from './input-number.options';
|
|
|
4
4
|
export * from './number-mask.directive';
|
|
5
5
|
export * from './quantum.directive';
|
|
6
6
|
export * from './step/input-number-step.component';
|
|
7
|
+
export * from './step/input-number-step.service';
|
|
7
8
|
export * from './transformers/bigint.value-transformer';
|
|
8
9
|
export * from './transformers/number.value-transformer';
|
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
import { Subject } from 'rxjs';
|
|
2
1
|
import { TuiInputNumberDirective } from '../input-number.directive';
|
|
3
2
|
import { type TuiInputNumberOptions } from '../input-number.options';
|
|
4
3
|
import { TuiNumberMask } from '../number-mask.directive';
|
|
4
|
+
import { TuiInputNumberStepService } from './input-number-step.service';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@taiga-ui/kit/directives/appearance-proxy";
|
|
7
7
|
export declare class TuiInputNumberStep {
|
|
8
|
-
private readonly doc;
|
|
9
8
|
private readonly el;
|
|
10
|
-
|
|
9
|
+
protected readonly hold: TuiInputNumberStepService<number | bigint>;
|
|
10
|
+
protected readonly $: import("rxjs").Subscription;
|
|
11
11
|
protected readonly appearance: import("@angular/core").Signal<string>;
|
|
12
12
|
protected readonly options: TuiInputNumberOptions;
|
|
13
13
|
protected readonly mask: TuiNumberMask;
|
|
14
14
|
protected readonly input: TuiInputNumberDirective;
|
|
15
|
-
protected readonly step$: Subject<number | bigint>;
|
|
16
|
-
protected readonly stepping: import("rxjs").Subscription;
|
|
17
15
|
readonly step: import("@angular/core").InputSignal<number | bigint>;
|
|
18
16
|
protected onStep(step: bigint | number): void;
|
|
19
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiInputNumberStep, never>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type Observable } from 'rxjs';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiInputNumberStepService<T> {
|
|
4
|
+
private readonly doc;
|
|
5
|
+
private readonly destroyRef;
|
|
6
|
+
private readonly start$;
|
|
7
|
+
private readonly stop$;
|
|
8
|
+
readonly steps$: Observable<T>;
|
|
9
|
+
next(value: T): void;
|
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiInputNumberStepService<any>, never>;
|
|
11
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TuiInputNumberStepService<any>>;
|
|
12
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
export declare class TuiMultiSelectGroupDirective {
|
|
3
|
+
constructor();
|
|
3
4
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiMultiSelectGroupDirective, never>;
|
|
4
5
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiMultiSelectGroupDirective, "[tuiMultiSelectGroup]", never, {}, {}, never, never, true, never>;
|
|
5
6
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TuiTimelineComponent } from './timeline.component';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiTimelineItem {
|
|
4
|
+
protected readonly timeline: TuiTimelineComponent;
|
|
5
|
+
protected readonly offset: import("@angular/core").WritableSignal<number>;
|
|
6
|
+
readonly draggable: import("@angular/core").InputSignal<boolean>;
|
|
7
|
+
readonly resizable: import("@angular/core").InputSignal<boolean>;
|
|
8
|
+
readonly value: import("@angular/core").ModelSignal<readonly [number, number]>;
|
|
9
|
+
readonly min: import("@angular/core").Signal<number>;
|
|
10
|
+
readonly max: import("@angular/core").Signal<number>;
|
|
11
|
+
protected update(input: HTMLInputElement): void;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTimelineItem, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiTimelineItem, "label[tuiTimelineItem]", never, { "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type TemplateRef } from '@angular/core';
|
|
2
|
+
import { type TuiContext } from '@taiga-ui/cdk/types';
|
|
3
|
+
import { type TuiOrientation } from '@taiga-ui/core/types';
|
|
4
|
+
import { TuiTimelineItem } from './timeline-item.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class TuiTimelineComponent {
|
|
7
|
+
readonly items: import("@angular/core").Signal<readonly TuiTimelineItem[]>;
|
|
8
|
+
readonly d: import("@angular/core").Signal<number>;
|
|
9
|
+
readonly value: import("@angular/core").Signal<(readonly [number, number])[]>;
|
|
10
|
+
readonly gaps: import("@angular/core").Signal<(readonly [number, number])[]>;
|
|
11
|
+
readonly orientation: import("@angular/core").InputSignal<TuiOrientation>;
|
|
12
|
+
readonly template: import("@angular/core").InputSignal<TemplateRef<TuiContext<number>> | undefined>;
|
|
13
|
+
readonly max: import("@angular/core").InputSignal<number>;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTimelineComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiTimelineComponent, "tui-timeline", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "template": { "alias": "template"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; }, {}, ["items"], ["*"], true, never>;
|
|
16
|
+
}
|
|
@@ -17,11 +17,11 @@ const [TUI_AVATAR_OPTIONS, tuiAvatarOptionsProvider] = tuiCreateOptions({
|
|
|
17
17
|
|
|
18
18
|
let Styles$1 = class Styles {
|
|
19
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-avatar" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-avatar" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){--t-size: var(--tui-height-l);--t-radius: .75rem;--t-corner-offset: calc((var(--t-radius) * 1.4142 - var(--t-radius)) * 1 / 1.4142);position:relative;display:inline-flex;flex-shrink:0;inline-size:var(--t-size);block-size:var(--t-size);align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--t-radius);border:none;background:var(--tui-background-neutral-1);color:var(--tui-text-secondary);vertical-align:middle;box-sizing:border-box;padding:.25rem;font:var(--tui-typography-body-l);font-weight:700;opacity:.999}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):before{inline-size:auto;block-size:auto}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):not(._initials):before{position:absolute;inset:0;font-size:calc(var(--t-size) * .6)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: .5rem;font:var(--tui-typography-ui-2xs);font-size:.5625rem}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xs]._initials:before{font:var(--tui-typography-ui-2xs);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]{--t-size: var(--tui-height-s);--t-radius: .5rem;font:var(--tui-typography-ui-2xs);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]._initials:before{font:var(--tui-typography-body-s);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]{--t-size: calc(var(--tui-height-m) - .25rem);--t-radius: .75rem;font:var(--tui-typography-ui-m);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]._initials:before{font:var(--tui-typography-body-m);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl]{--t-size: 5rem;--t-radius: .75rem;font:var(--tui-typography-heading-h4)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl]._initials:before{font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxl]{--t-size: 6rem;--t-radius: 1rem;font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxl]._initials:before{font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxxl]{--t-size: 8rem;--t-radius: 1.25rem;font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxxl]._initials:before{font:var(--tui-typography-heading-h2)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):not([data-shape=square]){--t-radius: calc(var(--t-size) / 2)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._initials:before{content:attr(data-icon-start);mask:none;background:none;font:var(--tui-typography-heading-h6)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._badge{mask:radial-gradient(circle at calc(100% - var(--t-corner-offset)) calc(100% - var(--t-corner-offset)),black .23rem,transparent .25rem,transparent .375rem,black .39rem);mask-clip:no-clip}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._badge:after{content:\"\";position:absolute;top:calc(100% - var(--t-corner-offset));left:calc(100% - var(--t-corner-offset));display:block;inline-size:.55rem;block-size:.55rem;border-radius:100%;background:var(--t-badge);transform:translate3d(-50%,-50%,0)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._fallback img,[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._fallback video{display:none}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) img,[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) video,[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) picture{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;box-sizing:border-box;border-radius:inherit}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):has(img,video):not(._fallback){background:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
21
21
|
};
|
|
22
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: Styles$1, decorators: [{
|
|
23
23
|
type: Component,
|
|
24
|
-
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-avatar' }, styles: ["[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.
|
|
24
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-avatar' }, styles: ["[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){--t-size: var(--tui-height-l);--t-radius: .75rem;--t-corner-offset: calc((var(--t-radius) * 1.4142 - var(--t-radius)) * 1 / 1.4142);position:relative;display:inline-flex;flex-shrink:0;inline-size:var(--t-size);block-size:var(--t-size);align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--t-radius);border:none;background:var(--tui-background-neutral-1);color:var(--tui-text-secondary);vertical-align:middle;box-sizing:border-box;padding:.25rem;font:var(--tui-typography-body-l);font-weight:700;opacity:.999}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):before{inline-size:auto;block-size:auto}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):not(._initials):before{position:absolute;inset:0;font-size:calc(var(--t-size) * .6)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: .5rem;font:var(--tui-typography-ui-2xs);font-size:.5625rem}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xs]._initials:before{font:var(--tui-typography-ui-2xs);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]{--t-size: var(--tui-height-s);--t-radius: .5rem;font:var(--tui-typography-ui-2xs);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]._initials:before{font:var(--tui-typography-body-s);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]{--t-size: calc(var(--tui-height-m) - .25rem);--t-radius: .75rem;font:var(--tui-typography-ui-m);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]._initials:before{font:var(--tui-typography-body-m);font-weight:700}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl]{--t-size: 5rem;--t-radius: .75rem;font:var(--tui-typography-heading-h4)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl]._initials:before{font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxl]{--t-size: 6rem;--t-radius: 1rem;font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxl]._initials:before{font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxxl]{--t-size: 8rem;--t-radius: 1.25rem;font:var(--tui-typography-heading-h3)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xxxl]._initials:before{font:var(--tui-typography-heading-h2)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):not([data-shape=square]){--t-radius: calc(var(--t-size) / 2)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._initials:before{content:attr(data-icon-start);mask:none;background:none;font:var(--tui-typography-heading-h6)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._badge{mask:radial-gradient(circle at calc(100% - var(--t-corner-offset)) calc(100% - var(--t-corner-offset)),black .23rem,transparent .25rem,transparent .375rem,black .39rem);mask-clip:no-clip}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._badge:after{content:\"\";position:absolute;top:calc(100% - var(--t-corner-offset));left:calc(100% - var(--t-corner-offset));display:block;inline-size:.55rem;block-size:.55rem;border-radius:100%;background:var(--t-badge);transform:translate3d(-50%,-50%,0)}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._fallback img,[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._fallback video{display:none}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) img,[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) video,[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) picture{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;box-sizing:border-box;border-radius:inherit}[tuiAvatar]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):has(img,video):not(._fallback){background:none}\n"] }]
|
|
25
25
|
}] });
|
|
26
26
|
class TuiAvatar {
|
|
27
27
|
constructor() {
|
|
@@ -16,11 +16,11 @@ const [TUI_BADGE_OPTIONS, tuiBadgeOptionsProvider] = tuiCreateOptions(TUI_BADGE_
|
|
|
16
16
|
|
|
17
17
|
class Styles {
|
|
18
18
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-badge" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-badge" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;justify-content:center;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);block-size:var(--t-size);min-inline-size:var(--t-size);inline-size:fit-content;font:var(--tui-typography-body-s)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>img,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>tui-icon,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiAvatar],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>tui-badge,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiBadge],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiRadio],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiSwitch],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiCheckbox],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:before,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:after{margin:var(--t-margin)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiStatus]:before{inline-size:.375rem;block-size:.375rem;margin:0}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>tui-icon,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:before,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:after{font-size:var(--t-icon-size)!important}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=error],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=negative]{--t-status: var(--tui-status-negative)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=success],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=positive]{--t-status: var(--tui-status-positive)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=warning]{--t-status: var(--tui-status-warning)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=info]{--t-status: var(--tui-status-info)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=neutral]{--t-status: var(--tui-status-neutral)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem;font:var(--tui-typography-ui-2xs)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s][tuiStatus]:before{inline-size:.25rem;block-size:.25rem;margin-inline-end:-.125rem}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-typography-body-m)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl][tuiStatus]:before{inline-size:.5rem;block-size:.5rem;margin-inline-end:-.125rem}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=error],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=success],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=negative],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=positive],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=warning],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=info],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){padding:0;inline-size:var(--t-size)}tui-icon[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;--t-margin: 0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
20
20
|
}
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: Styles, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
|
-
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-badge' }, styles: ["[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.
|
|
23
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-badge' }, styles: ["[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;justify-content:center;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);block-size:var(--t-size);min-inline-size:var(--t-size);inline-size:fit-content;font:var(--tui-typography-body-s)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>img,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>tui-icon,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiAvatar],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>tui-badge,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiBadge],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiRadio],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiSwitch],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>[tuiCheckbox],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:before,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:after{margin:var(--t-margin)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiStatus]:before{inline-size:.375rem;block-size:.375rem;margin:0}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])>tui-icon,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:before,[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiIcons]:after{font-size:var(--t-icon-size)!important}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=error],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=negative]{--t-status: var(--tui-status-negative)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=success],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=positive]{--t-status: var(--tui-status-positive)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=warning]{--t-status: var(--tui-status-warning)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=info]{--t-status: var(--tui-status-info)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=neutral]{--t-status: var(--tui-status-neutral)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem;font:var(--tui-typography-ui-2xs)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s][tuiStatus]:before{inline-size:.25rem;block-size:.25rem;margin-inline-end:-.125rem}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-typography-body-m)}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=xl][tuiStatus]:before{inline-size:.5rem;block-size:.5rem;margin-inline-end:-.125rem}[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=error],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=success],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=negative],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=positive],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=warning],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=info],[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){padding:0;inline-size:var(--t-size)}tui-icon[tuiBadge]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]):before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;--t-margin: 0}\n"] }]
|
|
24
24
|
}] });
|
|
25
25
|
class TuiBadge {
|
|
26
26
|
constructor() {
|
|
@@ -20,11 +20,11 @@ const [TUI_BLOCK_OPTIONS, tuiBlockOptionsProvider] = tuiCreateOptions(TUI_BLOCK_
|
|
|
20
20
|
|
|
21
21
|
class Styles {
|
|
22
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-block" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-block" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){--t-height: var(--tui-height-l);--t-radius: var(--tui-radius-l);position:relative;display:inline-flex;gap:.75rem;color:var(--tui-text-primary);border-radius:var(--t-radius);min-block-size:var(--t-height);margin:0;box-sizing:border-box;cursor:pointer;overflow:hidden;font:var(--tui-typography-body-m);padding:var(--tui-padding-l);isolation:isolate}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]{gap:.5rem;font:var(--tui-typography-ui-s);padding:.5rem;--t-height: var(--tui-height-s);--t-radius: var(--tui-radius-m)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s] [tuiSubtitle]{font:var(--tui-typography-ui-2xs)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s] [tuiTooltip]{margin:0 .125rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]{gap:.625rem;font:var(--tui-typography-ui-m);padding:var(--tui-padding-m);--t-height: var(--tui-height-m);--t-radius: var(--tui-radius-m)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m] input:not([tuiBlock]){margin:.125rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m] [tuiTooltip]{margin:.125rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._disabled :focus{visibility:hidden}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=\"\"]{justify-content:center}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) input[tuiBlock]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;z-index:-1;min-block-size:0;pointer-events:none;border-radius:inherit;padding:0}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiAvatar]{margin:-.25rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiTitle]{flex:1;gap:0;font:inherit;color:var(--tui-text-primary)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiSubtitle]{color:var(--tui-text-secondary)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiTooltip]{vertical-align:bottom;margin:.25rem;font-size:1rem;border:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
24
24
|
}
|
|
25
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: Styles, decorators: [{
|
|
26
26
|
type: Component,
|
|
27
|
-
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-block' }, styles: ["[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.
|
|
27
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-block' }, styles: ["[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]){--t-height: var(--tui-height-l);--t-radius: var(--tui-radius-l);position:relative;display:inline-flex;gap:.75rem;color:var(--tui-text-primary);border-radius:var(--t-radius);min-block-size:var(--t-height);margin:0;box-sizing:border-box;cursor:pointer;overflow:hidden;font:var(--tui-typography-body-m);padding:var(--tui-padding-l);isolation:isolate}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s]{gap:.5rem;font:var(--tui-typography-ui-s);padding:.5rem;--t-height: var(--tui-height-s);--t-radius: var(--tui-radius-m)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s] [tuiSubtitle]{font:var(--tui-typography-ui-2xs)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=s] [tuiTooltip]{margin:0 .125rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m]{gap:.625rem;font:var(--tui-typography-ui-m);padding:var(--tui-padding-m);--t-height: var(--tui-height-m);--t-radius: var(--tui-radius-m)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m] input:not([tuiBlock]){margin:.125rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-size=m] [tuiTooltip]{margin:.125rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])._disabled :focus{visibility:hidden}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"])[data-appearance=\"\"]{justify-content:center}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) input[tuiBlock]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;z-index:-1;min-block-size:0;pointer-events:none;border-radius:inherit;padding:0}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiAvatar]{margin:-.25rem}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiTitle]{flex:1;gap:0;font:inherit;color:var(--tui-text-primary)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiSubtitle]{color:var(--tui-text-secondary)}[tuiBlock]:where(*[data-tui-version=\"5.0.0-canary.2f662cc\"]) [tuiTooltip]{vertical-align:bottom;margin:.25rem;font-size:1rem;border:none}\n"] }]
|
|
28
28
|
}] });
|
|
29
29
|
class TuiBlock {
|
|
30
30
|
constructor() {
|
|
@@ -152,7 +152,7 @@ class TuiCalendarMonth {
|
|
|
152
152
|
this.yearChange.emit(year);
|
|
153
153
|
}
|
|
154
154
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiCalendarMonth, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
155
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: TuiCalendarMonth, isStandalone: true, selector: "tui-calendar-month", inputs: { year: { classPropertyName: "year", publicName: "year", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, disabledItemHandler: { classPropertyName: "disabledItemHandler", publicName: "disabledItemHandler", isSignal: true, isRequired: false, transformFunction: null }, minSetter: { classPropertyName: "minSetter", publicName: "min", isSignal: false, isRequired: false, transformFunction: (x) => x ?? TUI_FIRST_DAY }, maxSetter: { classPropertyName: "maxSetter", publicName: "max", isSignal: false, isRequired: false, transformFunction: (x) => x ?? TUI_LAST_DAY }, valueSetter: { classPropertyName: "valueSetter", publicName: "value", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { yearChange: "yearChange", monthClick: "monthClick", hoveredItemChange: "hoveredItemChange" }, host: { properties: { "class._picking": "isRangePicking()" } }, providers: [tuiAsAuxiliary(TuiCalendarMonth)], ngImport: i0, template: "@if (isYearPickerShown) {\n <tui-scrollbar class=\"t-scrollbar\">\n <tui-calendar-year\n [initialItem]=\"activeYear().year\"\n [max]=\"max().year\"\n [min]=\"min().year\"\n [rangeMode]=\"options.rangeMode\"\n [value]=\"value()\"\n (yearClick)=\"onPickerYearClick($event)\"\n />\n </tui-scrollbar>\n} @else {\n <tui-spin-button\n class=\"t-spin\"\n [focusable]=\"false\"\n [leftDisabled]=\"activeYear().yearSameOrBefore(min())\"\n [rightDisabled]=\"activeYear().yearSameOrAfter(max())\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n automation-id=\"tui-calendar-month__active-year\"\n tabIndex=\"-1\"\n tuiLink\n type=\"button\"\n (click)=\"onYearClick()\"\n >\n {{ activeYear().formattedYear }}\n </button>\n </tui-spin-button>\n @for (_ of '-'.repeat(3); track $index) {\n @let row = $index;\n <div class=\"t-row\">\n @for (_ of '-'.repeat(4); track $index) {\n @let item = getTuiMonth(row * 4 + $index, activeYear().year);\n <div\n class=\"t-cell\"\n [attr.data-range]=\"getItemRange(item)\"\n [class.t-cell_disabled]=\"handler()(item)\"\n [class.t-cell_today]=\"isItemToday(item)\"\n (click)=\"onItemClick(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n >\n {{ months()[row * 4 + $index] }}\n </div>\n }\n </div>\n }\n}\n", styles: [".t-row{display:flex;justify-content:flex-start;font:var(--tui-typography-body-m)}.t-row:first-child{justify-content:flex-end}.t-row:last-child{justify-content:flex-start}.t-cell{position:relative;display:flex;align-items:center;justify-content:center;line-height:2rem;isolation:isolate;cursor:pointer;overflow:hidden;border:.125rem solid transparent;box-sizing:border-box;mask:linear-gradient(transparent calc(50% - 1rem),#000 calc(50% - 1rem),#000 calc(50% + 1rem),transparent calc(50% + 1rem))}.t-cell:first-child{border-inline-start-color:transparent!important}.t-cell:last-child{border-inline-end-color:transparent!important}.t-cell:before,.t-cell:after{position:absolute;inset:0;content:\"\";z-index:-1;border-radius:var(--tui-radius-m)}.t-cell:after{mask:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 12 32\"><path d=\"M0.2856 0L0.6763 0C2.9265 0 4.9876 1.259 6.0147 3.2611L10.2442 11.5048C11.5301 14.0113 11.5683 16.9754 10.3472 19.5141L5.9766 28.6007C4.9772 30.6786 2.8754 32 0.5696 32H0.285645V0Z\"></path></svg>') right / .75rem 100% no-repeat,linear-gradient(#000,#000) left / calc(100% - .7rem) 100% no-repeat}.t-cell[data-range]:before{background:var(--tui-background-neutral-1)}:host._picking .t-cell[data-range]:before{background:var(--tui-background-neutral-1-hover)}.t-cell[data-range=middle]{border-color:var(--tui-background-neutral-1)}:host._picking .t-cell[data-range=middle]{border-color:var(--tui-background-neutral-1-hover)}.t-cell[data-range=middle]:not(:first-child):before{border-top-left-radius:0;border-bottom-left-radius:0}.t-cell[data-range=middle]:not(:last-child):before{border-top-right-radius:0;border-bottom-right-radius:0}.t-cell[data-range=start]{border-inline-end-color:var(--tui-background-neutral-1);color:var(--tui-text-primary-on-accent-1)}:host._picking .t-cell[data-range=start]{border-inline-end-color:var(--tui-background-neutral-1-hover)}.t-cell[data-range=start]:not(:last-child):before{right:-1rem}.t-cell[data-range=start]:after{background:var(--tui-background-accent-1)}.t-cell[data-range=end]{border-inline-start-color:var(--tui-background-neutral-1);color:var(--tui-text-primary-on-accent-1)}:host._picking .t-cell[data-range=end]{border-inline-start-color:var(--tui-background-neutral-1-hover)}.t-cell[data-range=end]:not(:first-child):before{left:-1rem}.t-cell[data-range=end]:after{background:var(--tui-background-accent-1);transform:scaleX(-1)}.t-cell[data-range=active]{color:var(--tui-text-primary-on-accent-1)}.t-cell[data-range=active]:after{background:var(--tui-background-accent-1);mask:none}.t-cell_disabled{opacity:var(--tui-disabled-opacity);pointer-events:none}.t-cell_today{text-decoration:underline;text-underline-offset:.25rem}@media (hover: hover) and (pointer: fine){.t-cell:hover:not([data-range=start]):not([data-range=end]):before{background:var(--tui-background-neutral-1-hover)}.t-cell[data-range=start]:hover:after,.t-cell[data-range=end]:hover:after,.t-cell[data-range=active]:hover:after{background:var(--tui-background-accent-1-hover)}}:host{display:block;block-size:12rem;inline-size:16rem;padding:1.125rem;box-sizing:content-box}.t-spin{margin-block-end:1rem}.t-cell{inline-size:4rem;border-block-start-width:.75rem;border-block-end-width:.75rem}.t-scrollbar{block-size:inherit;inline-size:inherit}\n"], dependencies: [{ kind: "component", type: TuiCalendarYear, selector: "tui-calendar-year", inputs: ["rangeMode", "disabledItemHandler", "
|
|
155
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: TuiCalendarMonth, isStandalone: true, selector: "tui-calendar-month", inputs: { year: { classPropertyName: "year", publicName: "year", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, disabledItemHandler: { classPropertyName: "disabledItemHandler", publicName: "disabledItemHandler", isSignal: true, isRequired: false, transformFunction: null }, minSetter: { classPropertyName: "minSetter", publicName: "min", isSignal: false, isRequired: false, transformFunction: (x) => x ?? TUI_FIRST_DAY }, maxSetter: { classPropertyName: "maxSetter", publicName: "max", isSignal: false, isRequired: false, transformFunction: (x) => x ?? TUI_LAST_DAY }, valueSetter: { classPropertyName: "valueSetter", publicName: "value", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { yearChange: "yearChange", monthClick: "monthClick", hoveredItemChange: "hoveredItemChange" }, host: { properties: { "class._picking": "isRangePicking()" } }, providers: [tuiAsAuxiliary(TuiCalendarMonth)], ngImport: i0, template: "@if (isYearPickerShown) {\n <tui-scrollbar class=\"t-scrollbar\">\n <tui-calendar-year\n [initialItem]=\"activeYear().year\"\n [max]=\"max().year\"\n [min]=\"min().year\"\n [rangeMode]=\"options.rangeMode\"\n [value]=\"value()\"\n (yearClick)=\"onPickerYearClick($event)\"\n />\n </tui-scrollbar>\n} @else {\n <tui-spin-button\n class=\"t-spin\"\n [focusable]=\"false\"\n [leftDisabled]=\"activeYear().yearSameOrBefore(min())\"\n [rightDisabled]=\"activeYear().yearSameOrAfter(max())\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n automation-id=\"tui-calendar-month__active-year\"\n tabIndex=\"-1\"\n tuiLink\n type=\"button\"\n (click)=\"onYearClick()\"\n >\n {{ activeYear().formattedYear }}\n </button>\n </tui-spin-button>\n @for (_ of '-'.repeat(3); track $index) {\n @let row = $index;\n <div class=\"t-row\">\n @for (_ of '-'.repeat(4); track $index) {\n @let item = getTuiMonth(row * 4 + $index, activeYear().year);\n <div\n class=\"t-cell\"\n [attr.data-range]=\"getItemRange(item)\"\n [class.t-cell_disabled]=\"handler()(item)\"\n [class.t-cell_today]=\"isItemToday(item)\"\n (click)=\"onItemClick(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n >\n {{ months()[row * 4 + $index] }}\n </div>\n }\n </div>\n }\n}\n", styles: [".t-row{display:flex;justify-content:flex-start;font:var(--tui-typography-body-m)}.t-row:first-child{justify-content:flex-end}.t-row:last-child{justify-content:flex-start}.t-cell{position:relative;display:flex;align-items:center;justify-content:center;line-height:2rem;isolation:isolate;cursor:pointer;overflow:hidden;border:.125rem solid transparent;box-sizing:border-box;mask:linear-gradient(transparent calc(50% - 1rem),#000 calc(50% - 1rem),#000 calc(50% + 1rem),transparent calc(50% + 1rem))}.t-cell:first-child{border-inline-start-color:transparent!important}.t-cell:last-child{border-inline-end-color:transparent!important}.t-cell:before,.t-cell:after{position:absolute;inset:0;content:\"\";z-index:-1;border-radius:var(--tui-radius-m)}.t-cell:after{mask:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 12 32\"><path d=\"M0.2856 0L0.6763 0C2.9265 0 4.9876 1.259 6.0147 3.2611L10.2442 11.5048C11.5301 14.0113 11.5683 16.9754 10.3472 19.5141L5.9766 28.6007C4.9772 30.6786 2.8754 32 0.5696 32H0.285645V0Z\"></path></svg>') right / .75rem 100% no-repeat,linear-gradient(#000,#000) left / calc(100% - .7rem) 100% no-repeat}.t-cell[data-range]:before{background:var(--tui-background-neutral-1)}:host._picking .t-cell[data-range]:before{background:var(--tui-background-neutral-1-hover)}.t-cell[data-range=middle]{border-color:var(--tui-background-neutral-1)}:host._picking .t-cell[data-range=middle]{border-color:var(--tui-background-neutral-1-hover)}.t-cell[data-range=middle]:not(:first-child):before{border-top-left-radius:0;border-bottom-left-radius:0}.t-cell[data-range=middle]:not(:last-child):before{border-top-right-radius:0;border-bottom-right-radius:0}.t-cell[data-range=start]{border-inline-end-color:var(--tui-background-neutral-1);color:var(--tui-text-primary-on-accent-1)}:host._picking .t-cell[data-range=start]{border-inline-end-color:var(--tui-background-neutral-1-hover)}.t-cell[data-range=start]:not(:last-child):before{right:-1rem}.t-cell[data-range=start]:after{background:var(--tui-background-accent-1)}.t-cell[data-range=end]{border-inline-start-color:var(--tui-background-neutral-1);color:var(--tui-text-primary-on-accent-1)}:host._picking .t-cell[data-range=end]{border-inline-start-color:var(--tui-background-neutral-1-hover)}.t-cell[data-range=end]:not(:first-child):before{left:-1rem}.t-cell[data-range=end]:after{background:var(--tui-background-accent-1);transform:scaleX(-1)}.t-cell[data-range=active]{color:var(--tui-text-primary-on-accent-1)}.t-cell[data-range=active]:after{background:var(--tui-background-accent-1);mask:none}.t-cell_disabled{opacity:var(--tui-disabled-opacity);pointer-events:none}.t-cell_today{text-decoration:underline;text-underline-offset:.25rem}@media (hover: hover) and (pointer: fine){.t-cell:hover:not([data-range=start]):not([data-range=end]):before{background:var(--tui-background-neutral-1-hover)}.t-cell[data-range=start]:hover:after,.t-cell[data-range=end]:hover:after,.t-cell[data-range=active]:hover:after{background:var(--tui-background-accent-1-hover)}}:host{display:block;block-size:12rem;inline-size:16rem;padding:1.125rem;box-sizing:content-box}.t-spin{margin-block-end:1rem}.t-cell{inline-size:4rem;border-block-start-width:.75rem;border-block-end-width:.75rem}.t-scrollbar{block-size:inherit;inline-size:inherit}\n"], dependencies: [{ kind: "component", type: TuiCalendarYear, selector: "tui-calendar-year", inputs: ["rangeMode", "disabledItemHandler", "value", "min", "max", "initialItem"], outputs: ["yearClick"] }, { kind: "directive", type: TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "directive", type: TuiLink, selector: "a[tuiLink], button[tuiLink]" }, { kind: "component", type: TuiScrollbar, selector: "tui-scrollbar" }, { kind: "component", type: TuiSpinButton, selector: "tui-spin-button", inputs: ["focusable", "disabled", "leftDisabled", "rightDisabled"], outputs: ["leftClick", "rightClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
156
156
|
}
|
|
157
157
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiCalendarMonth, decorators: [{
|
|
158
158
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-calendar-month.mjs","sources":["../../../projects/kit/components/calendar-month/calendar-month.options.ts","../../../projects/kit/components/calendar-month/calendar-month.component.ts","../../../projects/kit/components/calendar-month/calendar-month.template.html","../../../projects/kit/components/calendar-month/taiga-ui-kit-components-calendar-month.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport interface TuiCalendarMonthOptions {\n rangeMode: boolean;\n}\n\nexport const TUI_CALENDAR_MONTH_DEFAULT_OPTIONS: TuiCalendarMonthOptions = {\n rangeMode: false,\n};\n\nexport const [TUI_CALENDAR_MONTH_OPTIONS, tuiCalendarMonthOptionsProvider] =\n tuiCreateOptions(TUI_CALENDAR_MONTH_DEFAULT_OPTIONS);\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n EventEmitter,\n inject,\n Input,\n input,\n linkedSignal,\n Output,\n output,\n signal,\n untracked,\n} from '@angular/core';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiDay,\n TuiMonth,\n TuiMonthRange,\n TuiYear,\n} from '@taiga-ui/cdk/date-time';\nimport {TuiHovered} from '@taiga-ui/cdk/directives/hovered';\nimport {type TuiBooleanHandler} from '@taiga-ui/cdk/types';\nimport {tuiNullableSame} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiCalendarYear} from '@taiga-ui/core/components/calendar';\nimport {TuiLink} from '@taiga-ui/core/components/link';\nimport {TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {TuiSpinButton} from '@taiga-ui/core/components/spin-button';\nimport {tuiAsAuxiliary} from '@taiga-ui/core/tokens';\nimport {TUI_CALENDAR_MONTHS} from '@taiga-ui/kit/tokens';\n\nimport {TUI_CALENDAR_MONTH_OPTIONS} from './calendar-month.options';\n\nconst TODAY = TuiDay.currentLocal();\n\n@Component({\n selector: 'tui-calendar-month',\n imports: [TuiCalendarYear, TuiHovered, TuiLink, TuiScrollbar, TuiSpinButton],\n templateUrl: './calendar-month.template.html',\n styleUrl: './calendar-month.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsAuxiliary(TuiCalendarMonth)],\n host: {'[class._picking]': 'isRangePicking()'},\n})\nexport class TuiCalendarMonth {\n protected isYearPickerShown = false;\n protected readonly months = inject(TUI_CALENDAR_MONTHS);\n protected readonly isRangePicking = computed(\n (x = this.value()) =>\n (!this.options.rangeMode && x instanceof TuiMonthRange && x.isSingleMonth) || // TODO(v5): remove this condition\n (this.options.rangeMode && x instanceof TuiMonth),\n );\n\n protected readonly handler = computed(() =>\n this.calculateDisabledItemHandlerWithMinMax(\n this.disabledItemHandler(),\n this.value(),\n this.isRangePicking(),\n this.min(),\n this.max(),\n this.minLength(),\n this.maxLength(),\n ),\n );\n\n protected readonly activeYear = linkedSignal<TuiYear>(() => {\n const year = this.year();\n\n if (year) {\n return year;\n }\n\n const value = untracked(this.value);\n\n if (value instanceof TuiMonth) {\n return value;\n }\n\n if (value instanceof TuiMonthRange) {\n return value.from;\n }\n\n return TODAY;\n });\n\n public readonly year = input<TuiYear>();\n public readonly yearChange = output<TuiYear>();\n\n public readonly minLength = input<number | null>(null);\n public readonly maxLength = input<number | null>(null);\n public readonly disabledItemHandler =\n input<TuiBooleanHandler<TuiMonth>>(TUI_FALSE_HANDLER);\n\n @Output()\n public readonly monthClick = new EventEmitter<TuiMonth>();\n\n @Output()\n public readonly hoveredItemChange = new EventEmitter<TuiMonth | null>();\n\n public options = inject(TUI_CALENDAR_MONTH_OPTIONS);\n public readonly min = signal<TuiMonth>(TUI_FIRST_DAY);\n public readonly max = signal<TuiMonth>(TUI_LAST_DAY);\n public readonly value = signal<TuiMonth | TuiMonthRange | null>(null);\n public hoveredItem: TuiMonth | null = null;\n\n // TODO(v5): use signal inputs\n @Input({alias: 'min', transform: (x: TuiMonth | null) => x ?? TUI_FIRST_DAY})\n public set minSetter(x: TuiMonth) {\n this.min.set(x);\n }\n\n // TODO(v5): use signal inputs\n @Input({alias: 'max', transform: (x: TuiMonth | null) => x ?? TUI_LAST_DAY})\n public set maxSetter(x: TuiMonth) {\n this.max.set(x);\n }\n\n // TODO(v5): use signal inputs\n @Input('value')\n public set valueSetter(x: TuiMonth | TuiMonthRange | null) {\n this.value.set(x);\n }\n\n public onNextYear(): void {\n this.updateActiveYear(this.activeYear().append({year: 1}));\n }\n\n public onPreviousYear(): void {\n this.updateActiveYear(this.activeYear().append({year: -1}));\n }\n\n public getItemRange(item: TuiMonth): 'active' | 'end' | 'middle' | 'start' | null {\n const value = this.value();\n const {hoveredItem} = this;\n\n if (!value) {\n return null;\n }\n\n if (!this.options.rangeMode && value instanceof TuiMonth) {\n return value?.monthSame(item) ? 'active' : null;\n }\n\n const selectedRange =\n value instanceof TuiMonth ? new TuiMonthRange(value, value) : value;\n const months = item.month + item.year * 12;\n const hovered = hoveredItem ? hoveredItem.month + hoveredItem.year * 12 : null;\n const from = selectedRange.from.month + selectedRange.from.year * 12;\n const to = selectedRange.to.month + selectedRange.to.year * 12;\n const picking = this.isRangePicking() ? hovered : null;\n const min = Math.min(from, to, picking ?? from);\n const max = Math.max(from, to, picking ?? from);\n\n if (min === max && min === months) {\n return 'active';\n }\n\n if (min === months) {\n return 'start';\n }\n\n if (max === months) {\n return 'end';\n }\n\n return min < months && months < max ? 'middle' : null;\n }\n\n protected getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth {\n return new TuiMonth(yearNumber, monthNumber);\n }\n\n protected isItemToday(item: TuiMonth): boolean {\n return TODAY.monthSame(item);\n }\n\n protected onPickerYearClick(year: number): void {\n this.isYearPickerShown = false;\n\n if (this.activeYear().year !== year) {\n this.updateActiveYear(new TuiYear(year));\n }\n }\n\n protected onItemClick(month: TuiMonth): void {\n if (!this.handler()(month)) {\n this.monthClick.emit(month);\n }\n }\n\n protected onYearClick(): void {\n this.isYearPickerShown = true;\n }\n\n protected onItemHovered(hovered: boolean, item: TuiMonth): void {\n this.updateHoveredItem(hovered ? item : null);\n }\n\n // eslint-disable-next-line @typescript-eslint/max-params,max-params\n private calculateDisabledItemHandlerWithMinMax(\n disabledItemHandler: TuiBooleanHandler<TuiMonth>,\n value: TuiMonth | TuiMonthRange | null,\n isRangePicking: boolean,\n min: TuiMonth,\n max: TuiMonth,\n minLength: number | null,\n maxLength: number | null,\n ): TuiBooleanHandler<TuiMonth> {\n return (item) => {\n const selectedMonth = value instanceof TuiMonthRange ? value.from : value;\n const delta =\n isRangePicking && selectedMonth\n ? Math.abs(\n item.year * 12 +\n item.month -\n selectedMonth.year * 12 -\n selectedMonth.month,\n )\n : 0;\n\n const tooLong = delta && maxLength && delta > maxLength;\n const tooShort = delta && minLength && delta < minLength;\n\n return (\n tooLong ||\n tooShort ||\n item.monthBefore(min) ||\n item.monthAfter(max) ||\n disabledItemHandler(item)\n );\n };\n }\n\n private updateHoveredItem(month: TuiMonth | null): void {\n if (tuiNullableSame(this.hoveredItem, month, (a, b) => a.monthSame(b))) {\n return;\n }\n\n this.hoveredItem = month;\n this.hoveredItemChange.emit(month);\n }\n\n private updateActiveYear(year: TuiYear): void {\n this.activeYear.set(year);\n this.yearChange.emit(year);\n }\n}\n","@if (isYearPickerShown) {\n <tui-scrollbar class=\"t-scrollbar\">\n <tui-calendar-year\n [initialItem]=\"activeYear().year\"\n [max]=\"max().year\"\n [min]=\"min().year\"\n [rangeMode]=\"options.rangeMode\"\n [value]=\"value()\"\n (yearClick)=\"onPickerYearClick($event)\"\n />\n </tui-scrollbar>\n} @else {\n <tui-spin-button\n class=\"t-spin\"\n [focusable]=\"false\"\n [leftDisabled]=\"activeYear().yearSameOrBefore(min())\"\n [rightDisabled]=\"activeYear().yearSameOrAfter(max())\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n automation-id=\"tui-calendar-month__active-year\"\n tabIndex=\"-1\"\n tuiLink\n type=\"button\"\n (click)=\"onYearClick()\"\n >\n {{ activeYear().formattedYear }}\n </button>\n </tui-spin-button>\n @for (_ of '-'.repeat(3); track $index) {\n @let row = $index;\n <div class=\"t-row\">\n @for (_ of '-'.repeat(4); track $index) {\n @let item = getTuiMonth(row * 4 + $index, activeYear().year);\n <div\n class=\"t-cell\"\n [attr.data-range]=\"getItemRange(item)\"\n [class.t-cell_disabled]=\"handler()(item)\"\n [class.t-cell_today]=\"isItemToday(item)\"\n (click)=\"onItemClick(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n >\n {{ months()[row * 4 + $index] }}\n </div>\n }\n </div>\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-calendar-month.mjs","sources":["../../../projects/kit/components/calendar-month/calendar-month.options.ts","../../../projects/kit/components/calendar-month/calendar-month.component.ts","../../../projects/kit/components/calendar-month/calendar-month.template.html","../../../projects/kit/components/calendar-month/taiga-ui-kit-components-calendar-month.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport interface TuiCalendarMonthOptions {\n rangeMode: boolean;\n}\n\nexport const TUI_CALENDAR_MONTH_DEFAULT_OPTIONS: TuiCalendarMonthOptions = {\n rangeMode: false,\n};\n\nexport const [TUI_CALENDAR_MONTH_OPTIONS, tuiCalendarMonthOptionsProvider] =\n tuiCreateOptions(TUI_CALENDAR_MONTH_DEFAULT_OPTIONS);\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n EventEmitter,\n inject,\n Input,\n input,\n linkedSignal,\n Output,\n output,\n signal,\n untracked,\n} from '@angular/core';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiDay,\n TuiMonth,\n TuiMonthRange,\n TuiYear,\n} from '@taiga-ui/cdk/date-time';\nimport {TuiHovered} from '@taiga-ui/cdk/directives/hovered';\nimport {type TuiBooleanHandler} from '@taiga-ui/cdk/types';\nimport {tuiNullableSame} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiCalendarYear} from '@taiga-ui/core/components/calendar';\nimport {TuiLink} from '@taiga-ui/core/components/link';\nimport {TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {TuiSpinButton} from '@taiga-ui/core/components/spin-button';\nimport {tuiAsAuxiliary} from '@taiga-ui/core/tokens';\nimport {TUI_CALENDAR_MONTHS} from '@taiga-ui/kit/tokens';\n\nimport {TUI_CALENDAR_MONTH_OPTIONS} from './calendar-month.options';\n\nconst TODAY = TuiDay.currentLocal();\n\n@Component({\n selector: 'tui-calendar-month',\n imports: [TuiCalendarYear, TuiHovered, TuiLink, TuiScrollbar, TuiSpinButton],\n templateUrl: './calendar-month.template.html',\n styleUrl: './calendar-month.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsAuxiliary(TuiCalendarMonth)],\n host: {'[class._picking]': 'isRangePicking()'},\n})\nexport class TuiCalendarMonth {\n protected isYearPickerShown = false;\n protected readonly months = inject(TUI_CALENDAR_MONTHS);\n protected readonly isRangePicking = computed(\n (x = this.value()) =>\n (!this.options.rangeMode && x instanceof TuiMonthRange && x.isSingleMonth) || // TODO(v5): remove this condition\n (this.options.rangeMode && x instanceof TuiMonth),\n );\n\n protected readonly handler = computed(() =>\n this.calculateDisabledItemHandlerWithMinMax(\n this.disabledItemHandler(),\n this.value(),\n this.isRangePicking(),\n this.min(),\n this.max(),\n this.minLength(),\n this.maxLength(),\n ),\n );\n\n protected readonly activeYear = linkedSignal<TuiYear>(() => {\n const year = this.year();\n\n if (year) {\n return year;\n }\n\n const value = untracked(this.value);\n\n if (value instanceof TuiMonth) {\n return value;\n }\n\n if (value instanceof TuiMonthRange) {\n return value.from;\n }\n\n return TODAY;\n });\n\n public readonly year = input<TuiYear>();\n public readonly yearChange = output<TuiYear>();\n\n public readonly minLength = input<number | null>(null);\n public readonly maxLength = input<number | null>(null);\n public readonly disabledItemHandler =\n input<TuiBooleanHandler<TuiMonth>>(TUI_FALSE_HANDLER);\n\n @Output()\n public readonly monthClick = new EventEmitter<TuiMonth>();\n\n @Output()\n public readonly hoveredItemChange = new EventEmitter<TuiMonth | null>();\n\n public options = inject(TUI_CALENDAR_MONTH_OPTIONS);\n public readonly min = signal<TuiMonth>(TUI_FIRST_DAY);\n public readonly max = signal<TuiMonth>(TUI_LAST_DAY);\n public readonly value = signal<TuiMonth | TuiMonthRange | null>(null);\n public hoveredItem: TuiMonth | null = null;\n\n // TODO(v5): use signal inputs\n @Input({alias: 'min', transform: (x: TuiMonth | null) => x ?? TUI_FIRST_DAY})\n public set minSetter(x: TuiMonth) {\n this.min.set(x);\n }\n\n // TODO(v5): use signal inputs\n @Input({alias: 'max', transform: (x: TuiMonth | null) => x ?? TUI_LAST_DAY})\n public set maxSetter(x: TuiMonth) {\n this.max.set(x);\n }\n\n // TODO(v5): use signal inputs\n @Input('value')\n public set valueSetter(x: TuiMonth | TuiMonthRange | null) {\n this.value.set(x);\n }\n\n public onNextYear(): void {\n this.updateActiveYear(this.activeYear().append({year: 1}));\n }\n\n public onPreviousYear(): void {\n this.updateActiveYear(this.activeYear().append({year: -1}));\n }\n\n public getItemRange(item: TuiMonth): 'active' | 'end' | 'middle' | 'start' | null {\n const value = this.value();\n const {hoveredItem} = this;\n\n if (!value) {\n return null;\n }\n\n if (!this.options.rangeMode && value instanceof TuiMonth) {\n return value?.monthSame(item) ? 'active' : null;\n }\n\n const selectedRange =\n value instanceof TuiMonth ? new TuiMonthRange(value, value) : value;\n const months = item.month + item.year * 12;\n const hovered = hoveredItem ? hoveredItem.month + hoveredItem.year * 12 : null;\n const from = selectedRange.from.month + selectedRange.from.year * 12;\n const to = selectedRange.to.month + selectedRange.to.year * 12;\n const picking = this.isRangePicking() ? hovered : null;\n const min = Math.min(from, to, picking ?? from);\n const max = Math.max(from, to, picking ?? from);\n\n if (min === max && min === months) {\n return 'active';\n }\n\n if (min === months) {\n return 'start';\n }\n\n if (max === months) {\n return 'end';\n }\n\n return min < months && months < max ? 'middle' : null;\n }\n\n protected getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth {\n return new TuiMonth(yearNumber, monthNumber);\n }\n\n protected isItemToday(item: TuiMonth): boolean {\n return TODAY.monthSame(item);\n }\n\n protected onPickerYearClick(year: number): void {\n this.isYearPickerShown = false;\n\n if (this.activeYear().year !== year) {\n this.updateActiveYear(new TuiYear(year));\n }\n }\n\n protected onItemClick(month: TuiMonth): void {\n if (!this.handler()(month)) {\n this.monthClick.emit(month);\n }\n }\n\n protected onYearClick(): void {\n this.isYearPickerShown = true;\n }\n\n protected onItemHovered(hovered: boolean, item: TuiMonth): void {\n this.updateHoveredItem(hovered ? item : null);\n }\n\n // eslint-disable-next-line @typescript-eslint/max-params,max-params\n private calculateDisabledItemHandlerWithMinMax(\n disabledItemHandler: TuiBooleanHandler<TuiMonth>,\n value: TuiMonth | TuiMonthRange | null,\n isRangePicking: boolean,\n min: TuiMonth,\n max: TuiMonth,\n minLength: number | null,\n maxLength: number | null,\n ): TuiBooleanHandler<TuiMonth> {\n return (item) => {\n const selectedMonth = value instanceof TuiMonthRange ? value.from : value;\n const delta =\n isRangePicking && selectedMonth\n ? Math.abs(\n item.year * 12 +\n item.month -\n selectedMonth.year * 12 -\n selectedMonth.month,\n )\n : 0;\n\n const tooLong = delta && maxLength && delta > maxLength;\n const tooShort = delta && minLength && delta < minLength;\n\n return (\n tooLong ||\n tooShort ||\n item.monthBefore(min) ||\n item.monthAfter(max) ||\n disabledItemHandler(item)\n );\n };\n }\n\n private updateHoveredItem(month: TuiMonth | null): void {\n if (tuiNullableSame(this.hoveredItem, month, (a, b) => a.monthSame(b))) {\n return;\n }\n\n this.hoveredItem = month;\n this.hoveredItemChange.emit(month);\n }\n\n private updateActiveYear(year: TuiYear): void {\n this.activeYear.set(year);\n this.yearChange.emit(year);\n }\n}\n","@if (isYearPickerShown) {\n <tui-scrollbar class=\"t-scrollbar\">\n <tui-calendar-year\n [initialItem]=\"activeYear().year\"\n [max]=\"max().year\"\n [min]=\"min().year\"\n [rangeMode]=\"options.rangeMode\"\n [value]=\"value()\"\n (yearClick)=\"onPickerYearClick($event)\"\n />\n </tui-scrollbar>\n} @else {\n <tui-spin-button\n class=\"t-spin\"\n [focusable]=\"false\"\n [leftDisabled]=\"activeYear().yearSameOrBefore(min())\"\n [rightDisabled]=\"activeYear().yearSameOrAfter(max())\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n automation-id=\"tui-calendar-month__active-year\"\n tabIndex=\"-1\"\n tuiLink\n type=\"button\"\n (click)=\"onYearClick()\"\n >\n {{ activeYear().formattedYear }}\n </button>\n </tui-spin-button>\n @for (_ of '-'.repeat(3); track $index) {\n @let row = $index;\n <div class=\"t-row\">\n @for (_ of '-'.repeat(4); track $index) {\n @let item = getTuiMonth(row * 4 + $index, activeYear().year);\n <div\n class=\"t-cell\"\n [attr.data-range]=\"getItemRange(item)\"\n [class.t-cell_disabled]=\"handler()(item)\"\n [class.t-cell_today]=\"isItemToday(item)\"\n (click)=\"onItemClick(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n >\n {{ months()[row * 4 + $index] }}\n </div>\n }\n </div>\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAMa,MAAA,kCAAkC,GAA4B;AACvE,IAAA,SAAS,EAAE,KAAK;;AAGb,MAAM,CAAC,0BAA0B,EAAE,+BAA+B,CAAC,GACtE,gBAAgB,CAAC,kCAAkC;;ACwBvD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,EAAE;MAWtB,gBAAgB,CAAA;AAT7B,IAAA,WAAA,GAAA;QAUc,IAAiB,CAAA,iBAAA,GAAG,KAAK;AAChB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACpC,QAAA,IAAA,CAAA,cAAc,GAAG,QAAQ,CACxC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,KACb,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,YAAY,aAAa,IAAI,CAAC,CAAC,aAAa;aACxE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,YAAY,QAAQ,CAAC,CACxD;QAEkB,IAAO,CAAA,OAAA,GAAG,QAAQ,CAAC,MAClC,IAAI,CAAC,sCAAsC,CACvC,IAAI,CAAC,mBAAmB,EAAE,EAC1B,IAAI,CAAC,KAAK,EAAE,EACZ,IAAI,CAAC,cAAc,EAAE,EACrB,IAAI,CAAC,GAAG,EAAE,EACV,IAAI,CAAC,GAAG,EAAE,EACV,IAAI,CAAC,SAAS,EAAE,EAChB,IAAI,CAAC,SAAS,EAAE,CACnB,CACJ;AAEkB,QAAA,IAAA,CAAA,UAAU,GAAG,YAAY,CAAU,MAAK;AACvD,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;YAExB,IAAI,IAAI,EAAE;AACN,gBAAA,OAAO,IAAI;;YAGf,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAEnC,YAAA,IAAI,KAAK,YAAY,QAAQ,EAAE;AAC3B,gBAAA,OAAO,KAAK;;AAGhB,YAAA,IAAI,KAAK,YAAY,aAAa,EAAE;gBAChC,OAAO,KAAK,CAAC,IAAI;;AAGrB,YAAA,OAAO,KAAK;AAChB,SAAC,CAAC;QAEc,IAAI,CAAA,IAAA,GAAG,KAAK,EAAW;QACvB,IAAU,CAAA,UAAA,GAAG,MAAM,EAAW;AAE9B,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAgB,IAAI,CAAC;AACtC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAgB,IAAI,CAAC;AACtC,QAAA,IAAA,CAAA,mBAAmB,GAC/B,KAAK,CAA8B,iBAAiB,CAAC;AAGzC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAY;AAGzC,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAmB;AAEhE,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,0BAA0B,CAAC;AACnC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAW,aAAa,CAAC;AACrC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAW,YAAY,CAAC;AACpC,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAkC,IAAI,CAAC;QAC9D,IAAW,CAAA,WAAA,GAAoB,IAAI;AA+I7C;;IA5IG,IACW,SAAS,CAAC,CAAW,EAAA;AAC5B,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;;;IAInB,IACW,SAAS,CAAC,CAAW,EAAA;AAC5B,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;;;IAInB,IACW,WAAW,CAAC,CAAkC,EAAA;AACrD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;;IAGd,UAAU,GAAA;AACb,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,CAAC;;IAGvD,cAAc,GAAA;AACjB,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC;;AAGxD,IAAA,YAAY,CAAC,IAAc,EAAA;AAC9B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,QAAA,MAAM,EAAC,WAAW,EAAC,GAAG,IAAI;QAE1B,IAAI,CAAC,KAAK,EAAE;AACR,YAAA,OAAO,IAAI;;QAGf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,KAAK,YAAY,QAAQ,EAAE;AACtD,YAAA,OAAO,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI;;AAGnD,QAAA,MAAM,aAAa,GACf,KAAK,YAAY,QAAQ,GAAG,IAAI,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK;QACvE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;AAC1C,QAAA,MAAM,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI;AAC9E,QAAA,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE;AACpE,QAAA,MAAM,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,KAAK,GAAG,aAAa,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE;AAC9D,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,GAAG,IAAI;AACtD,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,IAAI,IAAI,CAAC;AAC/C,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,IAAI,IAAI,CAAC;QAE/C,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,EAAE;AAC/B,YAAA,OAAO,QAAQ;;AAGnB,QAAA,IAAI,GAAG,KAAK,MAAM,EAAE;AAChB,YAAA,OAAO,OAAO;;AAGlB,QAAA,IAAI,GAAG,KAAK,MAAM,EAAE;AAChB,YAAA,OAAO,KAAK;;AAGhB,QAAA,OAAO,GAAG,GAAG,MAAM,IAAI,MAAM,GAAG,GAAG,GAAG,QAAQ,GAAG,IAAI;;IAG/C,WAAW,CAAC,WAAmB,EAAE,UAAkB,EAAA;AACzD,QAAA,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;;AAGtC,IAAA,WAAW,CAAC,IAAc,EAAA;AAChC,QAAA,OAAO,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;;AAGtB,IAAA,iBAAiB,CAAC,IAAY,EAAA;AACpC,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;QAE9B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE;YACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;;;AAItC,IAAA,WAAW,CAAC,KAAe,EAAA;QACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE;AACxB,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;;;IAIzB,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;;IAGvB,aAAa,CAAC,OAAgB,EAAE,IAAc,EAAA;AACpD,QAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;;;AAIzC,IAAA,sCAAsC,CAC1C,mBAAgD,EAChD,KAAsC,EACtC,cAAuB,EACvB,GAAa,EACb,GAAa,EACb,SAAwB,EACxB,SAAwB,EAAA;QAExB,OAAO,CAAC,IAAI,KAAI;AACZ,YAAA,MAAM,aAAa,GAAG,KAAK,YAAY,aAAa,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK;AACzE,YAAA,MAAM,KAAK,GACP,cAAc,IAAI;kBACZ,IAAI,CAAC,GAAG,CACJ,IAAI,CAAC,IAAI,GAAG,EAAE;AACV,oBAAA,IAAI,CAAC,KAAK;oBACV,aAAa,CAAC,IAAI,GAAG,EAAE;oBACvB,aAAa,CAAC,KAAK;kBAE3B,CAAC;YAEX,MAAM,OAAO,GAAG,KAAK,IAAI,SAAS,IAAI,KAAK,GAAG,SAAS;YACvD,MAAM,QAAQ,GAAG,KAAK,IAAI,SAAS,IAAI,KAAK,GAAG,SAAS;AAExD,YAAA,QACI,OAAO;gBACP,QAAQ;AACR,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;AACrB,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;AACpB,gBAAA,mBAAmB,CAAC,IAAI,CAAC;AAEjC,SAAC;;AAGG,IAAA,iBAAiB,CAAC,KAAsB,EAAA;QAC5C,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;YACpE;;AAGJ,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;;AAG9B,IAAA,gBAAgB,CAAC,IAAa,EAAA;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;+GAxMrB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,stBA8DQ,CAAC,CAAkB,KAAK,CAAC,IAAI,aAAa,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAM1C,CAAC,CAAkB,KAAK,CAAC,IAAI,YAAY,EAvE/D,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,0BC3CjD,gtDAiDA,EAAA,MAAA,EAAA,CAAA,wvGAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDVc,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,KAAA,EAAA,KAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,UAAU,EAAE,QAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,OAAO,EAAE,QAAA,EAAA,6BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,YAAY,0DAAE,aAAa,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,UAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAOlE,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAT5B,SAAS;+BACI,oBAAoB,EAAA,OAAA,EACrB,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,CAAC,EAAA,eAAA,EAG3D,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA,CAAC,cAAc,CAAA,gBAAA,CAAkB,CAAC,EAAA,IAAA,EACvC,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,EAAA,QAAA,EAAA,gtDAAA,EAAA,MAAA,EAAA,CAAA,wvGAAA,CAAA,EAAA;8BAoD9B,UAAU,EAAA,CAAA;sBADzB;gBAIe,iBAAiB,EAAA,CAAA;sBADhC;gBAWU,SAAS,EAAA,CAAA;sBADnB,KAAK;AAAC,gBAAA,IAAA,EAAA,CAAA,EAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAkB,KAAK,CAAC,IAAI,aAAa,EAAC;gBAOjE,SAAS,EAAA,CAAA;sBADnB,KAAK;AAAC,gBAAA,IAAA,EAAA,CAAA,EAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAkB,KAAK,CAAC,IAAI,YAAY,EAAC;gBAOhE,WAAW,EAAA,CAAA;sBADrB,KAAK;uBAAC,OAAO;;;AExHlB;;AAEG;;;;"}
|