@taiga-ui/core 5.13.0-canary.ff6f8f1 → 5.14.0-canary.2b3ccfb
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/carousel/carousel.component.d.ts +1 -0
- package/components/notification/notification.service.d.ts +2 -1
- package/components/scrollbar/index.d.ts +2 -0
- package/components/scrollbar/scroll-controls.component.d.ts +7 -4
- package/components/scrollbar/scroll-controls.service.d.ts +10 -0
- package/components/scrollbar/scrollable.directive.d.ts +6 -1
- package/components/scrollbar/scrollbar-position.directive.d.ts +15 -0
- package/components/scrollbar/scrollbar.component.d.ts +2 -1
- package/components/scrollbar/scrollbar.directive.d.ts +3 -6
- package/components/textfield/textfield-multi/textfield-multi.component.d.ts +3 -2
- package/components/textfield/textfield.component.d.ts +1 -1
- package/fesm2022/taiga-ui-core-components-button.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-carousel.mjs +7 -3
- package/fesm2022/taiga-ui-core-components-carousel.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-cell.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-checkbox.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-data-list.mjs +4 -4
- package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-error.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-expand.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-icon.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-label.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-link.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-loader.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-notification.mjs +16 -10
- package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-radio.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-radio.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-root.mjs +1 -1
- package/fesm2022/taiga-ui-core-components-scrollbar.mjs +97 -57
- package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-slider.mjs +4 -4
- package/fesm2022/taiga-ui-core-components-slider.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-textfield.mjs +12 -21
- package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-title.mjs +3 -3
- package/fesm2022/taiga-ui-core-directives-appearance.mjs +3 -3
- package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-group.mjs +3 -3
- package/fesm2022/taiga-ui-core-directives-icons.mjs +3 -3
- package/fesm2022/taiga-ui-core-portals-alert.mjs +6 -6
- package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-dialog.mjs +2 -2
- package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-dropdown.mjs +50 -28
- package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-hint.mjs +51 -43
- package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-modal.mjs +4 -4
- package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-popup.mjs +25 -12
- package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-services.mjs +10 -1
- package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-tokens.mjs +15 -20
- package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
- package/package.json +16 -16
- package/portals/alert/alert.service.d.ts +2 -1
- package/portals/dropdown/dropdown-anchor.directive.d.ts +16 -0
- package/portals/dropdown/dropdown.component.d.ts +3 -11
- package/portals/dropdown/dropdown.directive.d.ts +3 -1
- package/portals/dropdown/index.d.ts +1 -0
- package/portals/hint/hint-options.directive.d.ts +2 -0
- package/portals/hint/hint-position.directive.d.ts +3 -1
- package/portals/hint/hint.component.d.ts +0 -1
- package/portals/hint/hint.directive.d.ts +3 -3
- package/portals/popup/popup.directive.d.ts +1 -0
- package/portals/popup/popups.component.d.ts +4 -1
- package/services/position.service.d.ts +1 -0
|
@@ -8,6 +8,7 @@ export declare class TuiCarouselComponent implements AfterViewInit {
|
|
|
8
8
|
protected readonly math: Math;
|
|
9
9
|
protected readonly template: import("@angular/core").Signal<TemplateRef<any>>;
|
|
10
10
|
protected readonly height: import("@angular/core").WritableSignal<number>;
|
|
11
|
+
protected readonly skipHydration: string | null;
|
|
11
12
|
readonly index: import("@angular/core").ModelSignal<number>;
|
|
12
13
|
readonly min: import("@angular/core").InputSignal<number>;
|
|
13
14
|
readonly max: import("@angular/core").InputSignal<number>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type TuiPortalService } from '@taiga-ui/cdk/portals';
|
|
1
2
|
import { TuiAlertService } from '@taiga-ui/core/portals/alert';
|
|
2
3
|
import { TuiNotificationComponent } from './notification.component';
|
|
3
4
|
import { type TuiNotificationOptions } from './notification.options';
|
|
@@ -6,7 +7,7 @@ import * as i1 from "@taiga-ui/cdk/portals";
|
|
|
6
7
|
export declare class TuiNotificationService extends TuiAlertService<TuiNotificationOptions<any>> {
|
|
7
8
|
protected readonly options: TuiNotificationOptions<undefined>;
|
|
8
9
|
protected readonly component: typeof TuiNotificationComponent;
|
|
9
|
-
constructor();
|
|
10
|
+
constructor(service: TuiPortalService);
|
|
10
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiNotificationService, never>;
|
|
11
12
|
static ɵprov: i0.ɵɵInjectableDeclaration<TuiNotificationService>;
|
|
12
13
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './scroll-controls.component';
|
|
2
|
+
export * from './scroll-controls.service';
|
|
2
3
|
export * from './scroll-into-view.directive';
|
|
3
4
|
export * from './scroll-ref.directive';
|
|
4
5
|
export * from './scrollable.directive';
|
|
@@ -6,3 +7,4 @@ export * from './scrollbar.component';
|
|
|
6
7
|
export * from './scrollbar.directive';
|
|
7
8
|
export * from './scrollbar.options';
|
|
8
9
|
export * from './scrollbar.service';
|
|
10
|
+
export * from './scrollbar-position.directive';
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import { type OnInit } from '@angular/core';
|
|
2
|
+
import { TuiScrollControlsService } from './scroll-controls.service';
|
|
1
3
|
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class TuiScrollControls {
|
|
3
|
-
private readonly
|
|
4
|
+
export declare class TuiScrollControls implements OnInit {
|
|
5
|
+
private readonly scrollable;
|
|
6
|
+
private readonly el;
|
|
4
7
|
protected readonly nativeScrollbar: boolean;
|
|
5
|
-
protected readonly refresh$:
|
|
6
|
-
|
|
8
|
+
protected readonly refresh$: TuiScrollControlsService;
|
|
9
|
+
ngOnInit(): void;
|
|
7
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiScrollControls, never>;
|
|
8
11
|
static ɵcmp: i0.ɵɵComponentDeclaration<TuiScrollControls, "tui-scroll-controls", never, {}, {}, never, never, true, never>;
|
|
9
12
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiScrollControlsService extends Observable<readonly [boolean, boolean]> {
|
|
4
|
+
private readonly scrollRef;
|
|
5
|
+
private readonly stream$;
|
|
6
|
+
constructor();
|
|
7
|
+
private get scrollbars();
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiScrollControlsService, never>;
|
|
9
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TuiScrollControlsService>;
|
|
10
|
+
}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { type OnInit } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./scroll-ref.directive";
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Use {@link TuiScrollRef} + {@link TuiScrollControls} instead
|
|
6
|
+
* TODO: Drop in v6.0
|
|
7
|
+
*/
|
|
3
8
|
export declare class TuiScrollable implements OnInit {
|
|
4
9
|
private readonly el;
|
|
5
10
|
ngOnInit(): void;
|
|
6
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiScrollable, never>;
|
|
7
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiScrollable, "[tuiScrollable]", never, {}, {}, never, never, true,
|
|
12
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiScrollable, "[tuiScrollable]", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiScrollRef; inputs: {}; outputs: {}; }]>;
|
|
8
13
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiScrollbarPosition extends Observable<Partial<CSSStyleDeclaration>> {
|
|
4
|
+
private readonly scrollRef;
|
|
5
|
+
private readonly stream$;
|
|
6
|
+
readonly tuiScrollbar: import("@angular/core").InputSignal<"horizontal" | "vertical">;
|
|
7
|
+
constructor();
|
|
8
|
+
private get el();
|
|
9
|
+
private getThumb;
|
|
10
|
+
private getView;
|
|
11
|
+
private getScrolled;
|
|
12
|
+
private getCompensation;
|
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiScrollbarPosition, never>;
|
|
14
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiScrollbarPosition, never, never, { "tuiScrollbar": { "alias": "tuiScrollbar"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
15
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ElementRef } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./scroll-ref.directive";
|
|
3
4
|
/**
|
|
4
5
|
* An event for scrolling an element into view within {@link TuiScrollbar}.
|
|
5
6
|
*/
|
|
@@ -19,5 +20,5 @@ export declare class TuiScrollbar {
|
|
|
19
20
|
protected set scrollRef(element: HTMLElement);
|
|
20
21
|
protected scrollIntoView(detail: HTMLElement): void;
|
|
21
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiScrollbar, never>;
|
|
22
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiScrollbar, "tui-scrollbar", never, {}, {}, never, ["*"], true,
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiScrollbar, "tui-scrollbar", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.TuiScrollRef; inputs: {}; outputs: {}; }]>;
|
|
23
24
|
}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./scrollbar-position.directive";
|
|
2
3
|
export declare class TuiScrollbarDirective {
|
|
3
|
-
private readonly
|
|
4
|
+
private readonly scrollRef;
|
|
4
5
|
private readonly style;
|
|
5
6
|
protected readonly scrollSub: import("rxjs").Subscription;
|
|
6
7
|
protected readonly styleSub: import("rxjs").Subscription;
|
|
7
8
|
readonly tuiScrollbar: import("@angular/core").InputSignal<"horizontal" | "vertical">;
|
|
8
|
-
private getScrolled;
|
|
9
|
-
private getCompensation;
|
|
10
|
-
private getThumb;
|
|
11
|
-
private getView;
|
|
12
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiScrollbarDirective, never>;
|
|
13
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiScrollbarDirective, "[tuiScrollbar]", never, { "tuiScrollbar": { "alias": "tuiScrollbar"; "required": false; "isSignal": true; }; }, {}, never, never, true,
|
|
10
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiScrollbarDirective, "[tuiScrollbar]", never, { "tuiScrollbar": { "alias": "tuiScrollbar"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiScrollbarPosition; inputs: { "tuiScrollbar": "tuiScrollbar"; }; outputs: {}; }]>;
|
|
14
11
|
}
|
|
@@ -2,6 +2,7 @@ import { TemplateRef } from '@angular/core';
|
|
|
2
2
|
import { TuiControl } from '@taiga-ui/cdk/classes';
|
|
3
3
|
import { TuiTextfieldComponent } from '../textfield.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@taiga-ui/core/components/scrollbar";
|
|
5
6
|
export declare class TuiTextfieldMultiComponent<T> extends TuiTextfieldComponent<T> {
|
|
6
7
|
protected readonly height: import("@angular/core").WritableSignal<number | null>;
|
|
7
8
|
protected readonly win: Window;
|
|
@@ -14,10 +15,10 @@ export declare class TuiTextfieldMultiComponent<T> extends TuiTextfieldComponent
|
|
|
14
15
|
readonly rows: import("@angular/core").InputSignal<number>;
|
|
15
16
|
handleOption(option: T): void;
|
|
16
17
|
protected get placeholder(): string;
|
|
17
|
-
protected onItems(
|
|
18
|
+
protected onItems(target: HTMLElement): void;
|
|
18
19
|
protected onLeft(event: any): void;
|
|
19
20
|
protected focusInput(): void;
|
|
20
21
|
protected onClick(target: HTMLElement): void;
|
|
21
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldMultiComponent<any>, never>;
|
|
22
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiTextfieldMultiComponent<any>, "tui-textfield[multi]", never, { "rows": { "alias": "rows"; "required": false; "isSignal": true; }; }, {}, ["cva", "item"], ["label", "input", "select", "*", "tui-icon"], true,
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiTextfieldMultiComponent<any>, "tui-textfield[multi]", never, { "rows": { "alias": "rows"; "required": false; "isSignal": true; }; }, {}, ["cva", "item"], ["label", "input", "select", "*", "tui-icon"], true, [{ directive: typeof i1.TuiScrollRef; inputs: {}; outputs: {}; }]>;
|
|
23
24
|
}
|
|
@@ -38,7 +38,7 @@ export declare class TuiTextfieldComponent<T> implements TuiDataListHost<T> {
|
|
|
38
38
|
get size(): TuiSizeL | TuiSizeS;
|
|
39
39
|
handleOption(option: T): void;
|
|
40
40
|
protected get hasLabel(): boolean;
|
|
41
|
-
protected onResize({
|
|
41
|
+
protected onResize({ clientWidth }: HTMLElement): void;
|
|
42
42
|
protected onIconClick(): void;
|
|
43
43
|
protected onScroll(element: HTMLElement): void;
|
|
44
44
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldComponent<any>, never>;
|
|
@@ -16,11 +16,11 @@ const [TUI_BUTTON_OPTIONS, tuiButtonOptionsProvider] = tuiCreateOptions(TUI_BUTT
|
|
|
16
16
|
|
|
17
17
|
class Styles {
|
|
18
18
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: Styles, isStandalone: true, selector: "ng-component", exportAs: ["tui-button-5.
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: Styles, isStandalone: true, selector: "ng-component", exportAs: ["tui-button-5.14.0-canary.2b3ccfb"], ngImport: i0, template: '', isInline: true, styles: ["[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]),[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]){--t-size: var(--tui-height-l);--t-radius: var(--tui-radius-l);--t-gap: .25rem;--t-padding: .5rem 1.25rem;--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));min-block-size:fit-content;block-size:var(--t-size);justify-content:center;border-radius:var(--t-radius);padding:var(--t-padding);-webkit-user-select:none;user-select:none;cursor:pointer;font:var(--tui-typography-body-m);font-weight:700}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>img,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>img,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-icon,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-icon,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiAvatar],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiAvatar],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-badge,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-badge,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiBadge],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiBadge],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiRadio],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiRadio],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiSwitch],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiSwitch],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiCheckbox],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiCheckbox],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:after{margin:var(--t-margin)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader .t-text,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader .t-text{position:absolute}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-start=font]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-start=font]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-end=font]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-end=font]:after{font-size:1.5rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: var(--tui-radius-xs);--t-gap: .125rem;--t-padding: 0 .375rem;--t-margin: -.125rem;font:var(--tui-typography-body-s)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs] tui-icon,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs] tui-icon,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:after{font-size:1rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]{--t-size: var(--tui-height-s);--t-radius: var(--tui-radius-m);--t-gap: .125rem;--t-padding: .125rem .625rem;--t-margin: -.125rem;font:var(--tui-typography-body-s)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] tui-icon,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] tui-icon,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):after{font-size:1rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-start=font]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-start=font]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-end=font]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-end=font]:after{font-size:1rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m]{--t-size: var(--tui-height-m);--t-radius: var(--tui-radius-m);--t-gap: .125rem;--t-padding: .375rem 1rem;--t-margin: -.375rem;font:var(--tui-typography-body-m);font-weight:700}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-start=font]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-start=font]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-end=font]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-end=font]:after{font-size:1.5rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading{--tui-disabled-opacity: 1;-webkit-text-fill-color:transparent}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>*,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>*,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:after{opacity:0}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>.t-loader,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>.t-loader{opacity:1}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical]{--t-margin: 0rem !important;flex-direction:column;flex-shrink:1;block-size:auto;padding:.75rem;gap:.375rem;min-inline-size:5rem;white-space:pre-line;font:var(--tui-typography-ui-s)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical]>*,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical]>*{max-block-size:calc(var(--t-line-height) * 2);line-height:inherit!important;--t-line-height: var(--tui-lh) !important}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(a):not([href]),[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(a):not([href]){opacity:var(--tui-disabled-opacity);pointer-events:none}[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]){gap:0;inline-size:var(--t-size);min-inline-size:var(--t-size);font-size:0!important;font-variant-ligatures:none!important;padding:0}[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-start]:after{display:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
20
20
|
}
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Styles, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
|
-
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: `tui-button-${TUI_VERSION}`, styles: ["[tuiButton]:where(*[data-tui-version=\"5.
|
|
23
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: `tui-button-${TUI_VERSION}`, styles: ["[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]),[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]){--t-size: var(--tui-height-l);--t-radius: var(--tui-radius-l);--t-gap: .25rem;--t-padding: .5rem 1.25rem;--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));min-block-size:fit-content;block-size:var(--t-size);justify-content:center;border-radius:var(--t-radius);padding:var(--t-padding);-webkit-user-select:none;user-select:none;cursor:pointer;font:var(--tui-typography-body-m);font-weight:700}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>img,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>img,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-icon,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-icon,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiAvatar],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiAvatar],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-badge,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>tui-badge,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiBadge],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiBadge],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiRadio],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiRadio],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiSwitch],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiSwitch],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiCheckbox],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>[tuiCheckbox],[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIcons]:after{margin:var(--t-margin)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader .t-text,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])>.t-loader .t-text{position:absolute}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-start=font]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-start=font]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-end=font]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-end=font]:after{font-size:1.5rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: var(--tui-radius-xs);--t-gap: .125rem;--t-padding: 0 .375rem;--t-margin: -.125rem;font:var(--tui-typography-body-s)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs] tui-icon,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs] tui-icon,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=xs]:after{font-size:1rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]{--t-size: var(--tui-height-s);--t-radius: var(--tui-radius-m);--t-gap: .125rem;--t-padding: .125rem .625rem;--t-margin: -.125rem;font:var(--tui-typography-body-s)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] tui-icon,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] tui-icon,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]:not([tuiIconButton][data-appearance=icon],[tuiIconButton][data-appearance^=action]):after{font-size:1rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-start=font]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-start=font]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-end=font]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-icon-end=font]:after{font-size:1rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m]{--t-size: var(--tui-height-m);--t-radius: var(--tui-radius-m);--t-gap: .125rem;--t-padding: .375rem 1rem;--t-margin: -.375rem;font:var(--tui-typography-body-m);font-weight:700}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-start=font]:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-start=font]:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-end=font]:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-icon-end=font]:after{font-size:1.5rem}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading{--tui-disabled-opacity: 1;-webkit-text-fill-color:transparent}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>*,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>*,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:before,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:before,[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:after,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading:after{opacity:0}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>.t-loader,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])._loading>.t-loader{opacity:1}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical],[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical]{--t-margin: 0rem !important;flex-direction:column;flex-shrink:1;block-size:auto;padding:.75rem;gap:.375rem;min-inline-size:5rem;white-space:pre-line;font:var(--tui-typography-ui-s)}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical]>*,[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiButtonVertical]>*{max-block-size:calc(var(--t-line-height) * 2);line-height:inherit!important;--t-line-height: var(--tui-lh) !important}[tuiButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(a):not([href]),[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(a):not([href]){opacity:var(--tui-disabled-opacity);pointer-events:none}[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]){gap:0;inline-size:var(--t-size);min-inline-size:var(--t-size);font-size:0!important;font-variant-ligatures:none!important;padding:0}[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiIconButton]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-icon-start]:after{display:none}\n"] }]
|
|
24
24
|
}] });
|
|
25
25
|
class TuiButton {
|
|
26
26
|
constructor() {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TuiItem } from '@taiga-ui/cdk/directives/item';
|
|
2
2
|
import { NgTemplateOutlet } from '@angular/common';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { inject, contentChild, TemplateRef, signal, model, input, ElementRef, ChangeDetectionStrategy, Component, effect, Directive } from '@angular/core';
|
|
4
|
+
import { inject, contentChild, TemplateRef, signal, VERSION, model, input, ElementRef, ChangeDetectionStrategy, Component, effect, Directive } from '@angular/core';
|
|
5
5
|
import { WA_WINDOW, WA_PAGE_VISIBILITY } from '@ng-web-apis/common';
|
|
6
6
|
import * as i1 from '@ng-web-apis/intersection-observer';
|
|
7
7
|
import { WA_INTERSECTION_ROOT, WaIntersectionObserverDirective, WaIntersectionObserver } from '@ng-web-apis/intersection-observer';
|
|
@@ -22,6 +22,9 @@ class TuiCarouselComponent {
|
|
|
22
22
|
this.math = Math;
|
|
23
23
|
this.template = contentChild.required(TuiItem, { read: TemplateRef });
|
|
24
24
|
this.height = signal(Number.NaN);
|
|
25
|
+
// https://github.com/angular/angular/issues/50543
|
|
26
|
+
// TODO(v6): delete
|
|
27
|
+
this.skipHydration = Number.parseInt(VERSION.major, 10) < 20 ? '' : null;
|
|
25
28
|
this.index = model(0);
|
|
26
29
|
this.min = input(-Infinity);
|
|
27
30
|
this.max = input(Infinity);
|
|
@@ -70,14 +73,15 @@ class TuiCarouselComponent {
|
|
|
70
73
|
this.el.scrollWidth - this.el.clientWidth - Math.abs(this.el.scrollLeft) < 1);
|
|
71
74
|
}
|
|
72
75
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiCarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
73
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: TuiCarouselComponent, isStandalone: true, selector: "tui-carousel", inputs: { index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { index: "indexChange" }, host: { attributes: { "waIntersectionThreshold": "0.5" }, properties: { "style.max-block-size.px": "height()" } }, providers: [tuiProvide(WA_INTERSECTION_ROOT, ElementRef)], queries: [{ propertyName: "template", first: true, predicate: TuiItem, descendants: true, read: TemplateRef, isSignal: true }], hostDirectives: [{ directive: i1.WaIntersectionObserverDirective }], ngImport: i0, template: "<span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.max(index() - 1, min())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, -1)\"\n ></span>\n</span>\n@if (index() !== min() && index() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: index()}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n </span>\n}\n@if (min() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.min(index() + 1, max())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, 1)\"\n ></span>\n </span>\n}\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;transition-property:max-block-size;transition-duration:var(--tui-duration, .3s);transition-timing-function:
|
|
76
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: TuiCarouselComponent, isStandalone: true, selector: "tui-carousel", inputs: { index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { index: "indexChange" }, host: { attributes: { "waIntersectionThreshold": "0.5" }, properties: { "attr.ngSkipHydration": "skipHydration", "style.max-block-size.px": "height()" } }, providers: [tuiProvide(WA_INTERSECTION_ROOT, ElementRef)], queries: [{ propertyName: "template", first: true, predicate: TuiItem, descendants: true, read: TemplateRef, isSignal: true }], hostDirectives: [{ directive: i1.WaIntersectionObserverDirective }], ngImport: i0, template: "<span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.max(index() - 1, min())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, -1)\"\n ></span>\n</span>\n@if (index() !== min() && index() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: index()}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n </span>\n}\n@if (min() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.min(index() + 1, max())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, 1)\"\n ></span>\n </span>\n}\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;transition-property:max-block-size;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard);display:flex;max-inline-size:100%;overscroll-behavior-x:none;overflow-x:scroll;overflow-y:hidden;scroll-snap-type:x mandatory}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:active .t-item{padding-block-start:1px;margin-block-start:-1px}.t-item{position:relative;display:flex;min-inline-size:100%;block-size:100%;box-sizing:content-box;align-items:center;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always}.t-item:first-child .t-bumper{inset-inline-start:0}.t-item:last-child .t-bumper{inset-inline-end:0}.t-bumper,.t-observer{position:absolute;inset-block-start:.125rem;block-size:.125rem;inline-size:25%;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.WaIntersectionObserverDirective, selector: "[waIntersectionObserver]", inputs: ["waIntersectionRootMargin", "waIntersectionThreshold"], exportAs: ["IntersectionObserver"] }, { kind: "directive", type: i1.WaIntersectionObservee, selector: "[waIntersectionObservee]", outputs: ["waIntersectionObservee"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
74
77
|
}
|
|
75
78
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiCarouselComponent, decorators: [{
|
|
76
79
|
type: Component,
|
|
77
80
|
args: [{ selector: 'tui-carousel', imports: [NgTemplateOutlet, WaIntersectionObserver, WaIntersectionObserverDirective], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(WA_INTERSECTION_ROOT, ElementRef)], hostDirectives: [WaIntersectionObserverDirective], host: {
|
|
78
81
|
waIntersectionThreshold: '0.5',
|
|
82
|
+
'[attr.ngSkipHydration]': 'skipHydration',
|
|
79
83
|
'[style.max-block-size.px]': 'height()',
|
|
80
|
-
}, template: "<span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.max(index() - 1, min())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, -1)\"\n ></span>\n</span>\n@if (index() !== min() && index() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: index()}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n </span>\n}\n@if (min() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.min(index() + 1, max())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, 1)\"\n ></span>\n </span>\n}\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;transition-property:max-block-size;transition-duration:var(--tui-duration, .3s);transition-timing-function:
|
|
84
|
+
}, template: "<span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.max(index() - 1, min())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, -1)\"\n ></span>\n</span>\n@if (index() !== min() && index() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: index()}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n </span>\n}\n@if (min() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.min(index() + 1, max())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, 1)\"\n ></span>\n </span>\n}\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;transition-property:max-block-size;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard);display:flex;max-inline-size:100%;overscroll-behavior-x:none;overflow-x:scroll;overflow-y:hidden;scroll-snap-type:x mandatory}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:active .t-item{padding-block-start:1px;margin-block-start:-1px}.t-item{position:relative;display:flex;min-inline-size:100%;block-size:100%;box-sizing:content-box;align-items:center;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always}.t-item:first-child .t-bumper{inset-inline-start:0}.t-item:last-child .t-bumper{inset-inline-end:0}.t-bumper,.t-observer{position:absolute;inset-block-start:.125rem;block-size:.125rem;inline-size:25%;pointer-events:none}\n"] }]
|
|
81
85
|
}], ctorParameters: () => [] });
|
|
82
86
|
|
|
83
87
|
class TuiCarouselDirective {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-components-carousel.mjs","sources":["../../../projects/core/components/carousel/carousel.component.ts","../../../projects/core/components/carousel/carousel.component.html","../../../projects/core/components/carousel/carousel.directive.ts","../../../projects/core/components/carousel/carousel.ts","../../../projects/core/components/carousel/taiga-ui-core-components-carousel.ts"],"sourcesContent":["import {NgTemplateOutlet} from '@angular/common';\nimport {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n ElementRef,\n inject,\n input,\n model,\n signal,\n TemplateRef,\n} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {\n WA_INTERSECTION_ROOT,\n WaIntersectionObserver,\n WaIntersectionObserverDirective,\n} from '@ng-web-apis/intersection-observer';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiClamp} from '@taiga-ui/cdk/utils/math';\nimport {TUI_REDUCED_MOTION} from '@taiga-ui/core/tokens';\nimport {debounceTime, filter, fromEvent} from 'rxjs';\n\n@Component({\n selector: 'tui-carousel',\n imports: [NgTemplateOutlet, WaIntersectionObserver, WaIntersectionObserverDirective],\n templateUrl: './carousel.component.html',\n styleUrl: './carousel.component.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(WA_INTERSECTION_ROOT, ElementRef)],\n hostDirectives: [WaIntersectionObserverDirective],\n host: {\n waIntersectionThreshold: '0.5',\n '[style.max-block-size.px]': 'height()',\n },\n})\nexport class TuiCarouselComponent implements AfterViewInit {\n private readonly el = tuiInjectElement();\n private readonly win = inject(WA_WINDOW);\n private readonly behavior = inject(TUI_REDUCED_MOTION) ? 'auto' : 'smooth';\n\n protected readonly math = Math;\n protected readonly template = contentChild.required(TuiItem, {read: TemplateRef});\n protected readonly height = signal(Number.NaN);\n\n public readonly index = model(0);\n public readonly min = input(-Infinity);\n public readonly max = input(Infinity);\n\n constructor() {\n fromEvent(this.el, 'scroll')\n .pipe(\n debounceTime(100),\n filter(() => this.fallback),\n )\n .subscribe(() => {\n this.onIntersection(true, 1);\n });\n }\n\n public ngAfterViewInit(): void {\n if (this.index() > this.min()) {\n this.el.scrollLeft = this.d * this.el.clientWidth;\n }\n }\n\n public next(): void {\n this.el.scrollTo({left: this.d * this.el.scrollWidth, behavior: this.behavior});\n }\n\n public prev(): void {\n this.el.scrollTo({left: 0, behavior: this.behavior});\n }\n\n protected onIntersection(isIntersecting: boolean, step: number): void {\n const index = tuiClamp(this.index() + step, this.min(), this.max());\n\n if (isIntersecting) {\n if (index !== this.index()) {\n this.el.style.overflow = 'hidden';\n }\n\n this.index.set(index);\n requestAnimationFrame(() => {\n this.el.style.overflow = '';\n\n if (this.index() > this.min() && this.index() < this.max()) {\n this.el.scrollLeft = this.d * this.el.clientWidth;\n }\n });\n }\n }\n\n protected onSlide(entry?: IntersectionObserverEntry): void {\n if (entry?.isIntersecting) {\n this.height.set(entry.target.parentElement?.clientHeight ?? Number.NaN);\n }\n }\n\n private get d(): number {\n return this.el.matches('[dir=\"rtl\"] :scope') ? -1 : 1;\n }\n\n private get fallback(): boolean {\n return (\n !!((this.win.devicePixelRatio * 100) % 1) &&\n this.el.scrollWidth - this.el.clientWidth - Math.abs(this.el.scrollLeft) < 1\n );\n }\n}\n","<span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.max(index() - 1, min())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, -1)\"\n ></span>\n</span>\n@if (index() !== min() && index() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: index()}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n </span>\n}\n@if (min() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.min(index() + 1, max())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, 1)\"\n ></span>\n </span>\n}\n","import {Directive, effect, inject, input} from '@angular/core';\nimport {toObservable, toSignal} from '@angular/core/rxjs-interop';\nimport {WA_PAGE_VISIBILITY} from '@ng-web-apis/common';\nimport {TUI_FALSE_HANDLER, TUI_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiIfMap} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {combineLatest, fromEvent, map, merge, switchMap, takeWhile, timer} from 'rxjs';\n\nimport {TuiCarouselComponent} from './carousel.component';\n\n@Directive({\n selector: 'tui-carousel[duration]',\n exportAs: 'tuiCarousel',\n})\nexport class TuiCarouselDirective {\n private readonly el = tuiInjectElement();\n private readonly carousel = inject(TuiCarouselComponent);\n\n private readonly running$ = merge(\n fromEvent(this.el, 'mouseenter').pipe(map(TUI_FALSE_HANDLER)),\n fromEvent(this.el, 'touchstart').pipe(map(TUI_FALSE_HANDLER)),\n fromEvent(this.el, 'touchend').pipe(map(TUI_TRUE_HANDLER)),\n fromEvent(this.el, 'mouseleave').pipe(map(TUI_TRUE_HANDLER)),\n inject(WA_PAGE_VISIBILITY),\n );\n\n public readonly duration = input(0);\n\n public readonly progress = toSignal(\n combineLatest([\n toObservable(this.duration),\n toObservable(this.carousel.index),\n ]).pipe(\n switchMap(([duration]) =>\n this.running$.pipe(\n tuiIfMap(() =>\n timer(0, 100).pipe(\n map((i) => Math.min(100, ((i * 100) / duration) * 100)),\n takeWhile((percent) => percent < 100, true),\n ),\n ),\n ),\n ),\n ),\n {initialValue: 0},\n );\n\n protected readonly sync = effect(() => {\n if (this.progress() === 100) {\n this.carousel.next();\n }\n });\n}\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\n\nimport {TuiCarouselComponent} from './carousel.component';\nimport {TuiCarouselDirective} from './carousel.directive';\n\nexport const TuiCarousel = [TuiCarouselComponent, TuiCarouselDirective, TuiItem] as const;\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-core-components-carousel.mjs","sources":["../../../projects/core/components/carousel/carousel.component.ts","../../../projects/core/components/carousel/carousel.component.html","../../../projects/core/components/carousel/carousel.directive.ts","../../../projects/core/components/carousel/carousel.ts","../../../projects/core/components/carousel/taiga-ui-core-components-carousel.ts"],"sourcesContent":["import {NgTemplateOutlet} from '@angular/common';\nimport {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n ElementRef,\n inject,\n input,\n model,\n signal,\n TemplateRef,\n VERSION,\n} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {\n WA_INTERSECTION_ROOT,\n WaIntersectionObserver,\n WaIntersectionObserverDirective,\n} from '@ng-web-apis/intersection-observer';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiClamp} from '@taiga-ui/cdk/utils/math';\nimport {TUI_REDUCED_MOTION} from '@taiga-ui/core/tokens';\nimport {debounceTime, filter, fromEvent} from 'rxjs';\n\n@Component({\n selector: 'tui-carousel',\n imports: [NgTemplateOutlet, WaIntersectionObserver, WaIntersectionObserverDirective],\n templateUrl: './carousel.component.html',\n styleUrl: './carousel.component.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(WA_INTERSECTION_ROOT, ElementRef)],\n hostDirectives: [WaIntersectionObserverDirective],\n host: {\n waIntersectionThreshold: '0.5',\n '[attr.ngSkipHydration]': 'skipHydration',\n '[style.max-block-size.px]': 'height()',\n },\n})\nexport class TuiCarouselComponent implements AfterViewInit {\n private readonly el = tuiInjectElement();\n private readonly win = inject(WA_WINDOW);\n private readonly behavior = inject(TUI_REDUCED_MOTION) ? 'auto' : 'smooth';\n\n protected readonly math = Math;\n protected readonly template = contentChild.required(TuiItem, {read: TemplateRef});\n protected readonly height = signal(Number.NaN);\n\n // https://github.com/angular/angular/issues/50543\n // TODO(v6): delete\n protected readonly skipHydration =\n Number.parseInt(VERSION.major, 10) < 20 ? '' : null;\n\n public readonly index = model(0);\n public readonly min = input(-Infinity);\n public readonly max = input(Infinity);\n\n constructor() {\n fromEvent(this.el, 'scroll')\n .pipe(\n debounceTime(100),\n filter(() => this.fallback),\n )\n .subscribe(() => {\n this.onIntersection(true, 1);\n });\n }\n\n public ngAfterViewInit(): void {\n if (this.index() > this.min()) {\n this.el.scrollLeft = this.d * this.el.clientWidth;\n }\n }\n\n public next(): void {\n this.el.scrollTo({left: this.d * this.el.scrollWidth, behavior: this.behavior});\n }\n\n public prev(): void {\n this.el.scrollTo({left: 0, behavior: this.behavior});\n }\n\n protected onIntersection(isIntersecting: boolean, step: number): void {\n const index = tuiClamp(this.index() + step, this.min(), this.max());\n\n if (isIntersecting) {\n if (index !== this.index()) {\n this.el.style.overflow = 'hidden';\n }\n\n this.index.set(index);\n requestAnimationFrame(() => {\n this.el.style.overflow = '';\n\n if (this.index() > this.min() && this.index() < this.max()) {\n this.el.scrollLeft = this.d * this.el.clientWidth;\n }\n });\n }\n }\n\n protected onSlide(entry?: IntersectionObserverEntry): void {\n if (entry?.isIntersecting) {\n this.height.set(entry.target.parentElement?.clientHeight ?? Number.NaN);\n }\n }\n\n private get d(): number {\n return this.el.matches('[dir=\"rtl\"] :scope') ? -1 : 1;\n }\n\n private get fallback(): boolean {\n return (\n !!((this.win.devicePixelRatio * 100) % 1) &&\n this.el.scrollWidth - this.el.clientWidth - Math.abs(this.el.scrollLeft) < 1\n );\n }\n}\n","<span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.max(index() - 1, min())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, -1)\"\n ></span>\n</span>\n@if (index() !== min() && index() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: index()}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n </span>\n}\n@if (min() !== max()) {\n <span class=\"t-item\">\n <ng-container *ngTemplateOutlet=\"template(); context: {$implicit: math.min(index() + 1, max())}\" />\n <span\n class=\"t-observer\"\n (waIntersectionObservee)=\"onSlide($event[0])\"\n ></span>\n <span\n waIntersectionObserver\n waIntersectionThreshold=\"1\"\n class=\"t-bumper\"\n (waIntersectionObservee)=\"onIntersection(!!$event[0]?.isIntersecting, 1)\"\n ></span>\n </span>\n}\n","import {Directive, effect, inject, input} from '@angular/core';\nimport {toObservable, toSignal} from '@angular/core/rxjs-interop';\nimport {WA_PAGE_VISIBILITY} from '@ng-web-apis/common';\nimport {TUI_FALSE_HANDLER, TUI_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiIfMap} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {combineLatest, fromEvent, map, merge, switchMap, takeWhile, timer} from 'rxjs';\n\nimport {TuiCarouselComponent} from './carousel.component';\n\n@Directive({\n selector: 'tui-carousel[duration]',\n exportAs: 'tuiCarousel',\n})\nexport class TuiCarouselDirective {\n private readonly el = tuiInjectElement();\n private readonly carousel = inject(TuiCarouselComponent);\n\n private readonly running$ = merge(\n fromEvent(this.el, 'mouseenter').pipe(map(TUI_FALSE_HANDLER)),\n fromEvent(this.el, 'touchstart').pipe(map(TUI_FALSE_HANDLER)),\n fromEvent(this.el, 'touchend').pipe(map(TUI_TRUE_HANDLER)),\n fromEvent(this.el, 'mouseleave').pipe(map(TUI_TRUE_HANDLER)),\n inject(WA_PAGE_VISIBILITY),\n );\n\n public readonly duration = input(0);\n\n public readonly progress = toSignal(\n combineLatest([\n toObservable(this.duration),\n toObservable(this.carousel.index),\n ]).pipe(\n switchMap(([duration]) =>\n this.running$.pipe(\n tuiIfMap(() =>\n timer(0, 100).pipe(\n map((i) => Math.min(100, ((i * 100) / duration) * 100)),\n takeWhile((percent) => percent < 100, true),\n ),\n ),\n ),\n ),\n ),\n {initialValue: 0},\n );\n\n protected readonly sync = effect(() => {\n if (this.progress() === 100) {\n this.carousel.next();\n }\n });\n}\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\n\nimport {TuiCarouselComponent} from './carousel.component';\nimport {TuiCarouselDirective} from './carousel.directive';\n\nexport const TuiCarousel = [TuiCarouselComponent, TuiCarouselDirective, TuiItem] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,11 @@ const [TUI_CELL_OPTIONS, tuiCellOptionsProvider] = tuiCreateOptions({ height: 'n
|
|
|
11
11
|
|
|
12
12
|
class Styles {
|
|
13
13
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: Styles, isStandalone: true, selector: "ng-component", exportAs: ["tui-cell-5.
|
|
14
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: Styles, isStandalone: true, selector: "ng-component", exportAs: ["tui-cell-5.14.0-canary.2b3ccfb"], ngImport: i0, template: '', isInline: true, styles: ["[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]){--t-pad: .125rem 1rem;--t-radius: var(--tui-radius-s);transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:flex;align-items:center;text-align:start;box-sizing:content-box;isolation:isolate;color:var(--tui-text-primary);padding:var(--t-pad);min-block-size:var(--t-block-size);border-radius:var(--t-radius)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(button,label):not(:disabled):active{background:var(--tui-background-neutral-1)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):disabled,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-state=disabled]{opacity:initial;pointer-events:none}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):disabled>*:not([tuiTooltip]),[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-state=disabled]>*:not([tuiTooltip]){opacity:var(--tui-disabled-opacity)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(label):has(input:disabled){opacity:initial;pointer-events:none}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(label):has(input:disabled)>*:not([tuiTooltip]){opacity:var(--tui-disabled-opacity)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiAccessories]{position:relative;display:flex;max-block-size:var(--t-block-size);align-items:center;align-self:stretch;margin-inline-start:auto}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions]{position:absolute;z-index:1;inset-inline-end:0;padding-inline-end:inherit;--t-group-mask: none;--t-group-mask-end: none;--t-group-mask-start: none}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions]~*{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] button,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] a{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard);opacity:0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] button:focus-visible,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] a:focus-visible{opacity:1}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiSubtitle]{display:flex;align-items:center;gap:.25rem;color:var(--tui-text-secondary)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle]{flex:3 7 30%;align-items:normal;text-align:start;gap:.25rem .5rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]{flex-direction:row;justify-content:space-between}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]>[tuiFade]:first-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]>[tuiFade]:first-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]>[tuiFade]:last-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]>[tuiFade]:last-child{flex:3 7 30%;max-inline-size:max-content;white-space:nowrap}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]>[tuiFade]:last-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]>[tuiFade]:last-child{flex:7 3 70%}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]{justify-content:space-between}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle]~[tuiTitle]{flex:7 3 70%;max-inline-size:max-content;margin-inline-start:auto;text-align:end;align-items:flex-end}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle]~[tuiTitle][tuiFade]{align-items:flex-start}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) tui-badge-notification[data-size=xs]{position:absolute;top:50%;transform:translateY(-50%);inset-inline-start:.375rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]{--t-block-size: calc(var(--tui-height-s) - .125rem);--t-pad: .1875rem 1rem;gap:.5rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-height=spacious]{--t-pad: .4375rem 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-height=compact]{--t-block-size: calc(var(--tui-height-s) - .25rem);--t-pad: 0 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] [tuiTitle]{max-block-size:100%;font:var(--tui-typography-ui-s);gap:0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] [tuiSubtitle]{font:var(--tui-typography-ui-2xs)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] [tuiAvatar]{--t-size: 1.5rem;--t-radius: var(--tui-radius-m);font:var(--tui-typography-body-m);font-size:.5625rem;margin:.1875rem 0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m]{--t-block-size: calc(var(--tui-height-m) - .75rem);--t-pad: .375rem 1rem;gap:.5rem .75rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-height=spacious]{--t-pad: 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-height=compact]{--t-block-size: calc(var(--tui-height-m) - .5rem);--t-pad: 0 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m] [tuiTitle]{font:var(--tui-typography-ui-s);gap:.0625rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m] [tuiSubtitle]{font:var(--tui-typography-ui-xs)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m] [tuiAvatar]{--t-size: 2rem;--t-radius: var(--tui-radius-m);align-self:flex-start}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l]{--t-block-size: calc(var(--tui-height-l) - 1rem);--t-pad: .5rem 1rem;--t-radius: var(--tui-radius-l);gap:.5rem 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l][data-height=spacious]{--t-pad: 1.25rem 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l][data-height=compact]{--t-block-size: calc(var(--tui-height-l) - 1rem);--t-pad: 0 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l] [tuiAvatar]{--t-size: 2.5rem;font:var(--tui-typography-body-m);font-weight:700;align-self:flex-start}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions]~*{opacity:0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions] button,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions] a,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions] label{opacity:1}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):focus-visible{outline:.125rem solid var(--tui-border-focus);outline-offset:-.125rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellStretch]{inline-size:100%;margin-inline:-1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]{display:grid;grid-auto-flow:column;grid-auto-columns:fit-content(100%);grid-template-columns:auto 1fr}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]:has(>[tuiTitle]:first-child){grid-template-columns:1fr}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]>*{grid-row:1}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]._rearranged [tuiAccessories]{grid-row:2}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]._rearranged [tuiTitle] [tuiTitle],[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]._rearranged [tuiTitle] [tuiSubtitle]{display:grid}@media(hover:hover)and (pointer:fine){a[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:disabled,[data-state=disabled]),button[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:disabled,[data-state=disabled]),label[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:disabled,[data-state=disabled]){background:var(--tui-background-neutral-1);cursor:pointer}label[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:has(input:disabled)){background:var(--tui-background-neutral-1);cursor:pointer}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
15
15
|
}
|
|
16
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Styles, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
|
-
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: `tui-cell-${TUI_VERSION}`, styles: ["[tuiCell]:where(*[data-tui-version=\"5.
|
|
18
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: `tui-cell-${TUI_VERSION}`, styles: ["[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]){--t-pad: .125rem 1rem;--t-radius: var(--tui-radius-s);transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:flex;align-items:center;text-align:start;box-sizing:content-box;isolation:isolate;color:var(--tui-text-primary);padding:var(--t-pad);min-block-size:var(--t-block-size);border-radius:var(--t-radius)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(button,label):not(:disabled):active{background:var(--tui-background-neutral-1)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):disabled,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-state=disabled]{opacity:initial;pointer-events:none}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):disabled>*:not([tuiTooltip]),[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-state=disabled]>*:not([tuiTooltip]){opacity:var(--tui-disabled-opacity)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(label):has(input:disabled){opacity:initial;pointer-events:none}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):is(label):has(input:disabled)>*:not([tuiTooltip]){opacity:var(--tui-disabled-opacity)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiAccessories]{position:relative;display:flex;max-block-size:var(--t-block-size);align-items:center;align-self:stretch;margin-inline-start:auto}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions]{position:absolute;z-index:1;inset-inline-end:0;padding-inline-end:inherit;--t-group-mask: none;--t-group-mask-end: none;--t-group-mask-start: none}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions]~*{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] button,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] a{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:var(--tui-curve-productive-standard);opacity:0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] button:focus-visible,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiCellActions][tuiCellActions] a:focus-visible{opacity:1}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiSubtitle]{display:flex;align-items:center;gap:.25rem;color:var(--tui-text-secondary)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle]{flex:3 7 30%;align-items:normal;text-align:start;gap:.25rem .5rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]{flex-direction:row;justify-content:space-between}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]>[tuiFade]:first-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]>[tuiFade]:first-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]>[tuiFade]:last-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]>[tuiFade]:last-child{flex:3 7 30%;max-inline-size:max-content;white-space:nowrap}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]>[tuiFade]:last-child,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]>[tuiFade]:last-child{flex:7 3 70%}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle] [tuiTitle]~[tuiSubtitle]{justify-content:space-between}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle]~[tuiTitle]{flex:7 3 70%;max-inline-size:max-content;margin-inline-start:auto;text-align:end;align-items:flex-end}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) [tuiTitle]~[tuiTitle][tuiFade]{align-items:flex-start}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]) tui-badge-notification[data-size=xs]{position:absolute;top:50%;transform:translateY(-50%);inset-inline-start:.375rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s]{--t-block-size: calc(var(--tui-height-s) - .125rem);--t-pad: .1875rem 1rem;gap:.5rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-height=spacious]{--t-pad: .4375rem 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s][data-height=compact]{--t-block-size: calc(var(--tui-height-s) - .25rem);--t-pad: 0 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] [tuiTitle]{max-block-size:100%;font:var(--tui-typography-ui-s);gap:0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] [tuiSubtitle]{font:var(--tui-typography-ui-2xs)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=s] [tuiAvatar]{--t-size: 1.5rem;--t-radius: var(--tui-radius-m);font:var(--tui-typography-body-m);font-size:.5625rem;margin:.1875rem 0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m]{--t-block-size: calc(var(--tui-height-m) - .75rem);--t-pad: .375rem 1rem;gap:.5rem .75rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-height=spacious]{--t-pad: 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m][data-height=compact]{--t-block-size: calc(var(--tui-height-m) - .5rem);--t-pad: 0 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m] [tuiTitle]{font:var(--tui-typography-ui-s);gap:.0625rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m] [tuiSubtitle]{font:var(--tui-typography-ui-xs)}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=m] [tuiAvatar]{--t-size: 2rem;--t-radius: var(--tui-radius-m);align-self:flex-start}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l]{--t-block-size: calc(var(--tui-height-l) - 1rem);--t-pad: .5rem 1rem;--t-radius: var(--tui-radius-l);gap:.5rem 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l][data-height=spacious]{--t-pad: 1.25rem 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l][data-height=compact]{--t-block-size: calc(var(--tui-height-l) - 1rem);--t-pad: 0 1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[data-size=l] [tuiAvatar]{--t-size: 2.5rem;font:var(--tui-typography-body-m);font-weight:700;align-self:flex-start}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions]~*{opacity:0}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions] button,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions] a,[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover [tuiCellActions] label{opacity:1}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):focus-visible{outline:.125rem solid var(--tui-border-focus);outline-offset:-.125rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellStretch]{inline-size:100%;margin-inline:-1rem}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]{display:grid;grid-auto-flow:column;grid-auto-columns:fit-content(100%);grid-template-columns:auto 1fr}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]:has(>[tuiTitle]:first-child){grid-template-columns:1fr}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]>*{grid-row:1}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]._rearranged [tuiAccessories]{grid-row:2}[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]._rearranged [tuiTitle] [tuiTitle],[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"])[tuiCellResponsive]._rearranged [tuiTitle] [tuiSubtitle]{display:grid}@media(hover:hover)and (pointer:fine){a[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:disabled,[data-state=disabled]),button[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:disabled,[data-state=disabled]),label[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:disabled,[data-state=disabled]){background:var(--tui-background-neutral-1);cursor:pointer}label[tuiCell]:where(*[data-tui-version=\"5.14.0-canary.2b3ccfb\"]):hover:not(:has(input:disabled)){background:var(--tui-background-neutral-1);cursor:pointer}}\n"] }]
|
|
19
19
|
}] });
|
|
20
20
|
class TuiCell {
|
|
21
21
|
constructor() {
|
|
@@ -25,7 +25,7 @@ class TuiCell {
|
|
|
25
25
|
this.height = input(this.options.height, { alias: 'tuiCellHeight' });
|
|
26
26
|
}
|
|
27
27
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiCell, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
28
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiCell, isStandalone: true, selector: "[tuiCell]:not(ng-template)", inputs: { size: { classPropertyName: "size", publicName: "tuiCell", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "tuiCellHeight", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-tui-version": "5.
|
|
28
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiCell, isStandalone: true, selector: "[tuiCell]:not(ng-template)", inputs: { size: { classPropertyName: "size", publicName: "tuiCell", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "tuiCellHeight", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-tui-version": "5.14.0-canary.2b3ccfb", "tuiCell": "" }, properties: { "attr.data-height": "height()", "attr.data-size": "size() || options.size || \"l\"" } }, providers: [tuiButtonOptionsProvider({ size: 's' })], ngImport: i0 }); }
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiCell, decorators: [{
|
|
31
31
|
type: Directive,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-components-cell.mjs","sources":["../../../projects/core/components/cell/cell.options.ts","../../../projects/core/components/cell/cell.directive.ts","../../../projects/core/components/cell/cell-responsive.directive.ts","../../../projects/core/components/cell/cell-stretch.directive.ts","../../../projects/core/components/cell/taiga-ui-core-components-cell.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nexport interface TuiCellOptions {\n readonly height: 'compact' | 'normal' | 'spacious';\n readonly size: TuiSizeL | TuiSizeS | '';\n}\n\nexport const [TUI_CELL_OPTIONS, tuiCellOptionsProvider] =\n tuiCreateOptions<TuiCellOptions>({height: 'normal', size: 'l'});\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\n\nimport {TUI_CELL_OPTIONS} from './cell.options';\n\n@Component({\n template: '',\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import './cell.styles.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: `tui-cell-${TUI_VERSION}`,\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiCell]:not(ng-template)',\n providers: [tuiButtonOptionsProvider({size: 's'})],\n host: {\n 'data-tui-version': TUI_VERSION,\n tuiCell: '',\n '[attr.data-height]': 'height()',\n '[attr.data-size]': 'size() || options.size || \"l\"',\n },\n})\nexport class TuiCell {\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly options = inject(TUI_CELL_OPTIONS);\n\n public readonly size = input(this.options.size, {alias: 'tuiCell'});\n public readonly height = input(this.options.height, {alias: 'tuiCellHeight'});\n}\n","import {Directive, inject} from '@angular/core';\nimport {TUI_FONT_OFFSET} from '@taiga-ui/core/utils/miscellaneous';\n\n// TODO: Refactor Cell to always use grid and apply this by default in v6\n@Directive({\n selector: '[tuiCell][tuiCellResponsive]',\n host: {'[class._rearranged]': 'offset() > 10'},\n})\nexport class TuiCellResponsive {\n protected readonly offset = inject(TUI_FONT_OFFSET);\n}\n","import {Directive, inject} from '@angular/core';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\n\n@Directive({\n selector: '[tuiCell][tuiCellStretch]',\n host: {'[style.border-radius]': 'isMobile ? 0 : null'},\n})\nexport class TuiCellStretch {\n protected readonly isMobile = inject(WA_IS_MOBILE);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;MAQa,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,GACnD,gBAAgB,CAAiB,EAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAC;;ACKlE,MAWM,MAAM,CAAA;+GAAN,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAN,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAM,sHAVE,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-components-cell.mjs","sources":["../../../projects/core/components/cell/cell.options.ts","../../../projects/core/components/cell/cell.directive.ts","../../../projects/core/components/cell/cell-responsive.directive.ts","../../../projects/core/components/cell/cell-stretch.directive.ts","../../../projects/core/components/cell/taiga-ui-core-components-cell.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nexport interface TuiCellOptions {\n readonly height: 'compact' | 'normal' | 'spacious';\n readonly size: TuiSizeL | TuiSizeS | '';\n}\n\nexport const [TUI_CELL_OPTIONS, tuiCellOptionsProvider] =\n tuiCreateOptions<TuiCellOptions>({height: 'normal', size: 'l'});\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\n\nimport {TUI_CELL_OPTIONS} from './cell.options';\n\n@Component({\n template: '',\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import './cell.styles.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: `tui-cell-${TUI_VERSION}`,\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiCell]:not(ng-template)',\n providers: [tuiButtonOptionsProvider({size: 's'})],\n host: {\n 'data-tui-version': TUI_VERSION,\n tuiCell: '',\n '[attr.data-height]': 'height()',\n '[attr.data-size]': 'size() || options.size || \"l\"',\n },\n})\nexport class TuiCell {\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly options = inject(TUI_CELL_OPTIONS);\n\n public readonly size = input(this.options.size, {alias: 'tuiCell'});\n public readonly height = input(this.options.height, {alias: 'tuiCellHeight'});\n}\n","import {Directive, inject} from '@angular/core';\nimport {TUI_FONT_OFFSET} from '@taiga-ui/core/utils/miscellaneous';\n\n// TODO: Refactor Cell to always use grid and apply this by default in v6\n@Directive({\n selector: '[tuiCell][tuiCellResponsive]',\n host: {'[class._rearranged]': 'offset() > 10'},\n})\nexport class TuiCellResponsive {\n protected readonly offset = inject(TUI_FONT_OFFSET);\n}\n","import {Directive, inject} from '@angular/core';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\n\n@Directive({\n selector: '[tuiCell][tuiCellStretch]',\n host: {'[style.border-radius]': 'isMobile ? 0 : null'},\n})\nexport class TuiCellStretch {\n protected readonly isMobile = inject(WA_IS_MOBILE);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|