@taiga-ui/addon-mobile 4.52.0-canary.216e347 → 4.52.0-canary.217a686
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/README.md +2 -2
- package/components/index.d.ts +0 -1
- package/components/mobile-calendar/calendar-date-stream.d.ts +6 -0
- package/components/mobile-calendar/index.d.ts +1 -0
- package/components/mobile-calendar/mobile-calendar.component.d.ts +7 -6
- package/components/mobile-calendar/mobile-calendar.strategy.d.ts +2 -5
- package/components/mobile-calendar-dropdown/mobile-calendar-dropdown.component.d.ts +6 -8
- package/components/mobile-calendar-dropdown/mobile-calendar-dropdown.directive.d.ts +6 -6
- package/components/sheet-dialog/sheet-dialog.component.d.ts +2 -2
- package/components/sheet-dialog/sheet-dialog.directive.d.ts +4 -3
- package/components/sheet-dialog/sheet-dialog.options.d.ts +4 -10
- package/components/sheet-dialog/sheet-dialog.service.d.ts +9 -4
- package/directives/dropdown-mobile/dropdown-mobile.component.d.ts +10 -14
- package/directives/dropdown-mobile/dropdown-mobile.directive.d.ts +1 -2
- package/directives/dropdown-sheet/dropdown-sheet.component.d.ts +14 -0
- package/directives/dropdown-sheet/dropdown-sheet.directive.d.ts +6 -0
- package/directives/dropdown-sheet/index.d.ts +2 -0
- package/directives/index.d.ts +1 -1
- package/directives/responsive-dialog/responsive-dialog.directive.d.ts +5 -4
- package/directives/responsive-dialog/responsive-dialog.service.d.ts +4 -7
- package/directives/ripple/ripple.directive.d.ts +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-bottom-sheet.mjs +7 -7
- package/fesm2022/taiga-ui-addon-mobile-components-bottom-sheet.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-calendar-dropdown.mjs +26 -42
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-calendar-dropdown.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-calendar-sheet.mjs +8 -12
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-calendar-sheet.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-calendar.mjs +53 -49
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-calendar.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-pull-to-refresh.mjs +22 -23
- package/fesm2022/taiga-ui-addon-mobile-components-pull-to-refresh.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-sheet-dialog.mjs +63 -62
- package/fesm2022/taiga-ui-addon-mobile-components-sheet-dialog.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-swipe-action.mjs +9 -10
- package/fesm2022/taiga-ui-addon-mobile-components-swipe-action.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components-tab-bar.mjs +14 -17
- package/fesm2022/taiga-ui-addon-mobile-components-tab-bar.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-components.mjs +0 -1
- package/fesm2022/taiga-ui-addon-mobile-components.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-directives-dropdown-mobile.mjs +66 -89
- package/fesm2022/taiga-ui-addon-mobile-directives-dropdown-mobile.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-directives-dropdown-sheet.mjs +83 -0
- package/fesm2022/taiga-ui-addon-mobile-directives-dropdown-sheet.mjs.map +1 -0
- package/fesm2022/taiga-ui-addon-mobile-directives-elastic-sticky.mjs +9 -11
- package/fesm2022/taiga-ui-addon-mobile-directives-elastic-sticky.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-directives-responsive-dialog.mjs +44 -27
- package/fesm2022/taiga-ui-addon-mobile-directives-responsive-dialog.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-directives-ripple.mjs +18 -39
- package/fesm2022/taiga-ui-addon-mobile-directives-ripple.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-directives-touchable.mjs +5 -6
- package/fesm2022/taiga-ui-addon-mobile-directives-touchable.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-mobile-directives.mjs +1 -1
- package/fesm2022/taiga-ui-addon-mobile-services.mjs +36 -7
- package/fesm2022/taiga-ui-addon-mobile-services.mjs.map +1 -1
- package/package.json +13 -52
- package/services/index.d.ts +1 -0
- package/services/theme-color.service.d.ts +18 -0
- package/styles/android/app-bar.less +5 -1
- package/styles/android/checkbox.less +2 -3
- package/styles/android/switch.less +1 -2
- package/styles/common/badge-notification.less +1 -1
- package/styles/common/badge.less +4 -4
- package/styles/common/block-status.less +1 -1
- package/styles/common/button.less +5 -1
- package/styles/common/card-large.less +4 -0
- package/styles/common/chip.less +3 -8
- package/styles/common/header.less +1 -1
- package/styles/common/message.less +1 -1
- package/styles/common/segmented.less +1 -1
- package/styles/common/title.less +0 -1
- package/styles/common/toast.less +21 -0
- package/styles/ios/checkbox.less +2 -4
- package/styles/ios/switch.less +51 -3
- package/styles/taiga-ui-mobile.less +14 -0
- package/components/mobile-dialog/index.d.ts +0 -3
- package/components/mobile-dialog/mobile-dialog.component.d.ts +0 -10
- package/components/mobile-dialog/mobile-dialog.options.d.ts +0 -12
- package/components/mobile-dialog/mobile-dialog.service.d.ts +0 -10
- package/directives/sidebar/index.d.ts +0 -3
- package/directives/sidebar/sidebar.component.d.ts +0 -21
- package/directives/sidebar/sidebar.d.ts +0 -6
- package/directives/sidebar/sidebar.directive.d.ts +0 -22
- package/esm2022/components/bottom-sheet/bottom-sheet.component.mjs +0 -49
- package/esm2022/components/bottom-sheet/index.mjs +0 -2
- package/esm2022/components/bottom-sheet/taiga-ui-addon-mobile-components-bottom-sheet.mjs +0 -5
- package/esm2022/components/index.mjs +0 -10
- package/esm2022/components/mobile-calendar/index.mjs +0 -5
- package/esm2022/components/mobile-calendar/mobile-calendar.component.mjs +0 -308
- package/esm2022/components/mobile-calendar/mobile-calendar.const.mjs +0 -35
- package/esm2022/components/mobile-calendar/mobile-calendar.providers.mjs +0 -27
- package/esm2022/components/mobile-calendar/mobile-calendar.strategy.mjs +0 -126
- package/esm2022/components/mobile-calendar/taiga-ui-addon-mobile-components-mobile-calendar.mjs +0 -5
- package/esm2022/components/mobile-calendar-dropdown/index.mjs +0 -3
- package/esm2022/components/mobile-calendar-dropdown/mobile-calendar-dropdown.component.mjs +0 -113
- package/esm2022/components/mobile-calendar-dropdown/mobile-calendar-dropdown.directive.mjs +0 -53
- package/esm2022/components/mobile-calendar-dropdown/taiga-ui-addon-mobile-components-mobile-calendar-dropdown.mjs +0 -5
- package/esm2022/components/mobile-calendar-sheet/index.mjs +0 -2
- package/esm2022/components/mobile-calendar-sheet/mobile-calendar-sheet.component.mjs +0 -25
- package/esm2022/components/mobile-calendar-sheet/taiga-ui-addon-mobile-components-mobile-calendar-sheet.mjs +0 -5
- package/esm2022/components/mobile-dialog/index.mjs +0 -4
- package/esm2022/components/mobile-dialog/mobile-dialog.component.mjs +0 -26
- package/esm2022/components/mobile-dialog/mobile-dialog.options.mjs +0 -17
- package/esm2022/components/mobile-dialog/mobile-dialog.service.mjs +0 -22
- package/esm2022/components/mobile-dialog/taiga-ui-addon-mobile-components-mobile-dialog.mjs +0 -5
- package/esm2022/components/pull-to-refresh/index.mjs +0 -6
- package/esm2022/components/pull-to-refresh/loader-android/loader-android.component.mjs +0 -46
- package/esm2022/components/pull-to-refresh/loader-ios/loader-ios.component.mjs +0 -39
- package/esm2022/components/pull-to-refresh/pull-to-refresh.component.mjs +0 -51
- package/esm2022/components/pull-to-refresh/pull-to-refresh.providers.mjs +0 -24
- package/esm2022/components/pull-to-refresh/pull-to-refresh.service.mjs +0 -37
- package/esm2022/components/pull-to-refresh/taiga-ui-addon-mobile-components-pull-to-refresh.mjs +0 -5
- package/esm2022/components/sheet-dialog/index.mjs +0 -5
- package/esm2022/components/sheet-dialog/sheet-dialog.component.mjs +0 -80
- package/esm2022/components/sheet-dialog/sheet-dialog.directive.mjs +0 -21
- package/esm2022/components/sheet-dialog/sheet-dialog.options.mjs +0 -24
- package/esm2022/components/sheet-dialog/sheet-dialog.service.mjs +0 -38
- package/esm2022/components/sheet-dialog/taiga-ui-addon-mobile-components-sheet-dialog.mjs +0 -5
- package/esm2022/components/swipe-action/index.mjs +0 -3
- package/esm2022/components/swipe-action/swipe-actions-auto-close.directive.mjs +0 -34
- package/esm2022/components/swipe-action/swipe-actions.component.mjs +0 -23
- package/esm2022/components/swipe-action/taiga-ui-addon-mobile-components-swipe-action.mjs +0 -5
- package/esm2022/components/tab-bar/index.mjs +0 -5
- package/esm2022/components/tab-bar/tab-bar-item.component.mjs +0 -26
- package/esm2022/components/tab-bar/tab-bar-item.directive.mjs +0 -27
- package/esm2022/components/tab-bar/tab-bar.component.mjs +0 -46
- package/esm2022/components/tab-bar/tab-bar.mjs +0 -9
- package/esm2022/components/tab-bar/taiga-ui-addon-mobile-components-tab-bar.mjs +0 -5
- package/esm2022/components/taiga-ui-addon-mobile-components.mjs +0 -5
- package/esm2022/directives/dropdown-mobile/dropdown-mobile.component.mjs +0 -98
- package/esm2022/directives/dropdown-mobile/dropdown-mobile.directive.mjs +0 -54
- package/esm2022/directives/dropdown-mobile/index.mjs +0 -3
- package/esm2022/directives/dropdown-mobile/taiga-ui-addon-mobile-directives-dropdown-mobile.mjs +0 -5
- package/esm2022/directives/elastic-sticky/elastic-sticky.directive.mjs +0 -23
- package/esm2022/directives/elastic-sticky/elastic-sticky.service.mjs +0 -53
- package/esm2022/directives/elastic-sticky/index.mjs +0 -3
- package/esm2022/directives/elastic-sticky/taiga-ui-addon-mobile-directives-elastic-sticky.mjs +0 -5
- package/esm2022/directives/index.mjs +0 -7
- package/esm2022/directives/responsive-dialog/index.mjs +0 -3
- package/esm2022/directives/responsive-dialog/responsive-dialog.directive.mjs +0 -21
- package/esm2022/directives/responsive-dialog/responsive-dialog.service.mjs +0 -34
- package/esm2022/directives/responsive-dialog/taiga-ui-addon-mobile-directives-responsive-dialog.mjs +0 -5
- package/esm2022/directives/ripple/index.mjs +0 -2
- package/esm2022/directives/ripple/ripple.directive.mjs +0 -98
- package/esm2022/directives/ripple/taiga-ui-addon-mobile-directives-ripple.mjs +0 -5
- package/esm2022/directives/sidebar/index.mjs +0 -4
- package/esm2022/directives/sidebar/sidebar.component.mjs +0 -45
- package/esm2022/directives/sidebar/sidebar.directive.mjs +0 -64
- package/esm2022/directives/sidebar/sidebar.mjs +0 -7
- package/esm2022/directives/sidebar/taiga-ui-addon-mobile-directives-sidebar.mjs +0 -5
- package/esm2022/directives/taiga-ui-addon-mobile-directives.mjs +0 -5
- package/esm2022/directives/touchable/index.mjs +0 -2
- package/esm2022/directives/touchable/taiga-ui-addon-mobile-directives-touchable.mjs +0 -5
- package/esm2022/directives/touchable/touchable.directive.mjs +0 -71
- package/esm2022/index.mjs +0 -4
- package/esm2022/services/index.mjs +0 -2
- package/esm2022/services/keyboard.service.mjs +0 -53
- package/esm2022/services/taiga-ui-addon-mobile-services.mjs +0 -5
- package/esm2022/taiga-ui-addon-mobile.mjs +0 -5
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-dialog.mjs +0 -65
- package/fesm2022/taiga-ui-addon-mobile-components-mobile-dialog.mjs.map +0 -1
- package/fesm2022/taiga-ui-addon-mobile-directives-sidebar.mjs +0 -114
- package/fesm2022/taiga-ui-addon-mobile-directives-sidebar.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -17,13 +17,13 @@ consisting of multiple base libraries and several add-ons
|
|
|
17
17
|
|
|
18
18
|
Install base packages:
|
|
19
19
|
|
|
20
|
-
```
|
|
20
|
+
```bash
|
|
21
21
|
npm i @taiga-ui/{cdk,core,kit}
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
Install addon-mobile:
|
|
25
25
|
|
|
26
|
-
```
|
|
26
|
+
```bash
|
|
27
27
|
npm i @taiga-ui/addon-mobile
|
|
28
28
|
```
|
|
29
29
|
|
package/components/index.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ export * from '@taiga-ui/addon-mobile/components/bottom-sheet';
|
|
|
2
2
|
export * from '@taiga-ui/addon-mobile/components/mobile-calendar';
|
|
3
3
|
export * from '@taiga-ui/addon-mobile/components/mobile-calendar-dropdown';
|
|
4
4
|
export * from '@taiga-ui/addon-mobile/components/mobile-calendar-sheet';
|
|
5
|
-
export * from '@taiga-ui/addon-mobile/components/mobile-dialog';
|
|
6
5
|
export * from '@taiga-ui/addon-mobile/components/pull-to-refresh';
|
|
7
6
|
export * from '@taiga-ui/addon-mobile/components/sheet-dialog';
|
|
8
7
|
export * from '@taiga-ui/addon-mobile/components/swipe-action';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { InjectionToken, type Provider } from '@angular/core';
|
|
2
|
+
import { type TuiValueTransformer } from '@taiga-ui/cdk/classes';
|
|
3
|
+
import { type TuiDay, type TuiDayRange } from '@taiga-ui/cdk/date-time';
|
|
4
|
+
import { type Observable } from 'rxjs';
|
|
5
|
+
export declare const TUI_CALENDAR_DATE_STREAM: InjectionToken<Observable<TuiDay | TuiDayRange | null>>;
|
|
6
|
+
export declare function tuiDateStreamWithTransformer(transformer: InjectionToken<TuiValueTransformer<any>>): Provider;
|
|
@@ -17,11 +17,12 @@ export declare class TuiMobileCalendar implements AfterViewInit {
|
|
|
17
17
|
protected readonly isIOS: boolean;
|
|
18
18
|
protected readonly isE2E: boolean;
|
|
19
19
|
protected readonly icons: import("@taiga-ui/core/tokens").TuiCommonIcons;
|
|
20
|
-
protected readonly closeWord
|
|
21
|
-
protected readonly cancelWord
|
|
22
|
-
protected readonly doneWord
|
|
20
|
+
protected readonly closeWord: import("@angular/core").Signal<string>;
|
|
21
|
+
protected readonly cancelWord: import("@angular/core").Signal<string>;
|
|
22
|
+
protected readonly doneWord: import("@angular/core").Signal<string>;
|
|
23
|
+
protected readonly monthNames: import("@angular/core").Signal<readonly [January: string, February: string, March: string, April: string, May: string, June: string, July: string, August: string, September: string, October: string, November: string, December: string]>;
|
|
23
24
|
protected readonly unorderedWeekDays$: import("rxjs").Observable<readonly [Monday: string, Tuesday: string, Wednesday: string, Thursday: string, Friday: string, Saturday: string, Sunday: string]>;
|
|
24
|
-
protected readonly chooseDayOrRangeTexts
|
|
25
|
+
protected readonly chooseDayOrRangeTexts: import("@angular/core").Signal<readonly [choose_day: string, choose_range: string, choose_days: string]> | null;
|
|
25
26
|
protected readonly years: number[];
|
|
26
27
|
protected readonly months: TuiMonth[];
|
|
27
28
|
/**
|
|
@@ -37,8 +38,8 @@ export declare class TuiMobileCalendar implements AfterViewInit {
|
|
|
37
38
|
max: TuiDay;
|
|
38
39
|
disabledItemHandler: TuiBooleanHandler<TuiDay>;
|
|
39
40
|
readonly cancel: EventEmitter<void>;
|
|
40
|
-
readonly confirm: EventEmitter<
|
|
41
|
-
readonly valueChange: import("rxjs").Observable<
|
|
41
|
+
readonly confirm: EventEmitter<TuiDay | TuiDayRange | readonly TuiDay[]>;
|
|
42
|
+
readonly valueChange: import("rxjs").Observable<TuiDay | TuiDayRange | readonly TuiDay[] | null>;
|
|
42
43
|
constructor();
|
|
43
44
|
set value(value: TuiDay | TuiDayRange | readonly TuiDay[] | null | undefined);
|
|
44
45
|
get value(): TuiDay | TuiDayRange | readonly TuiDay[] | null;
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
import { type CdkVirtualScrollViewport, type VirtualScrollStrategy } from '@angular/cdk/scrolling';
|
|
2
|
-
import { type TuiScrollService } from '@taiga-ui/cdk/services';
|
|
3
2
|
import { type Observable } from 'rxjs';
|
|
4
3
|
/**
|
|
5
|
-
* This scroll strategy is hard
|
|
4
|
+
* This scroll strategy is hard-wired with styles for iOS and Android.
|
|
6
5
|
* It is dependent on month height on those platforms and is designed to
|
|
7
6
|
* work for {@link TuiMobileCalendar} with years 1906 to 2102
|
|
8
7
|
*/
|
|
9
8
|
export declare class TuiMobileCalendarStrategy implements VirtualScrollStrategy {
|
|
10
9
|
private readonly isIOS;
|
|
11
|
-
private readonly
|
|
10
|
+
private readonly destroy$;
|
|
12
11
|
private readonly index$;
|
|
13
12
|
private viewport;
|
|
14
|
-
private readonly destroy$;
|
|
15
|
-
constructor(isIOS: boolean, scrollService: TuiScrollService);
|
|
16
13
|
get scrolledIndexChange(): Observable<number>;
|
|
17
14
|
attach(viewport: CdkVirtualScrollViewport): void;
|
|
18
15
|
detach(): void;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { type ValueProvider } from '@angular/core';
|
|
2
1
|
import { TuiDay, TuiDayRange } from '@taiga-ui/cdk/date-time';
|
|
3
2
|
import { type TuiBooleanHandler } from '@taiga-ui/cdk/types';
|
|
4
|
-
import {
|
|
3
|
+
import { TuiMobileCalendarDropdown } from './mobile-calendar-dropdown.directive';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
import * as i1 from "@taiga-ui/cdk/directives/active-zone";
|
|
7
6
|
import * as i2 from "@taiga-ui/cdk/directives/animated";
|
|
@@ -12,7 +11,7 @@ export interface TuiMobileCalendarData {
|
|
|
12
11
|
multi?: boolean;
|
|
13
12
|
single?: boolean;
|
|
14
13
|
}
|
|
15
|
-
export declare class
|
|
14
|
+
export declare class TuiMobileCalendarDropdownComponent {
|
|
16
15
|
private readonly dropdown;
|
|
17
16
|
private readonly keyboard;
|
|
18
17
|
private readonly context;
|
|
@@ -20,9 +19,9 @@ export declare class TuiMobileCalendarDropdown {
|
|
|
20
19
|
private readonly data;
|
|
21
20
|
private selectedPeriod;
|
|
22
21
|
protected readonly control: any;
|
|
23
|
-
protected readonly directive:
|
|
24
|
-
protected readonly range: boolean;
|
|
22
|
+
protected readonly directive: TuiMobileCalendarDropdown | null;
|
|
25
23
|
protected readonly multi: boolean;
|
|
24
|
+
protected readonly range: boolean;
|
|
26
25
|
protected readonly single: boolean;
|
|
27
26
|
protected readonly value: import("@angular/core").Signal<TuiDay | TuiDayRange | null>;
|
|
28
27
|
constructor();
|
|
@@ -34,7 +33,6 @@ export declare class TuiMobileCalendarDropdown {
|
|
|
34
33
|
protected confirm(value: TuiDay | TuiDayRange | readonly TuiDay[]): void;
|
|
35
34
|
private calculateDisabledItemHandler;
|
|
36
35
|
private is;
|
|
37
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
38
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
36
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiMobileCalendarDropdownComponent, never>;
|
|
37
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiMobileCalendarDropdownComponent, "tui-mobile-calendar-dropdown", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiActiveZone; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiAnimated; inputs: {}; outputs: {}; }]>;
|
|
39
38
|
}
|
|
40
|
-
export declare function tuiProvideMobileCalendar(): ValueProvider;
|
|
@@ -4,12 +4,12 @@ import { type TuiInputDateBase, TuiInputDateDirective } from '@taiga-ui/kit/comp
|
|
|
4
4
|
import { TuiInputDateRangeDirective } from '@taiga-ui/kit/components/input-date-range';
|
|
5
5
|
import { TuiInputDateTimeDirective } from '@taiga-ui/kit/components/input-date-time';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
export declare class
|
|
8
|
-
readonly single
|
|
9
|
-
readonly range
|
|
10
|
-
readonly dateTime
|
|
7
|
+
export declare class TuiMobileCalendarDropdown {
|
|
8
|
+
readonly single: import("@angular/core").Signal<TuiInputDateDirective | undefined>;
|
|
9
|
+
readonly range: import("@angular/core").Signal<TuiInputDateRangeDirective | undefined>;
|
|
10
|
+
readonly dateTime: import("@angular/core").Signal<TuiInputDateTimeDirective | undefined>;
|
|
11
11
|
readonly handlers: TuiItemsHandlersDirective<any>;
|
|
12
12
|
get date(): TuiInputDateBase<readonly [TuiDay, TuiTime | null]> | TuiInputDateBase<TuiDay> | TuiInputDateBase<TuiDayRange> | undefined;
|
|
13
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
14
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<
|
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiMobileCalendarDropdown, never>;
|
|
14
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiMobileCalendarDropdown, "[tuiMobileCalendar]", never, {}, {}, ["single", "range", "dateTime"], never, true, never>;
|
|
15
15
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type AfterViewInit } from '@angular/core';
|
|
2
|
-
import { type
|
|
2
|
+
import { type TuiPortalContext } from '@taiga-ui/cdk/portals';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import { type TuiSheetDialogOptions } from './sheet-dialog.options';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -8,7 +8,7 @@ export declare class TuiSheetDialogComponent<I> implements AfterViewInit {
|
|
|
8
8
|
private readonly stops;
|
|
9
9
|
private readonly el;
|
|
10
10
|
private pointers;
|
|
11
|
-
protected readonly context:
|
|
11
|
+
protected readonly context: TuiPortalContext<TuiSheetDialogOptions<I>, any>;
|
|
12
12
|
protected readonly close$: Subject<void>;
|
|
13
13
|
protected readonly $: import("rxjs").Subscription;
|
|
14
14
|
ngAfterViewInit(): void;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
|
|
2
1
|
import { type TuiSheetDialogOptions } from './sheet-dialog.options';
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
|
-
|
|
3
|
+
import * as i1 from "@taiga-ui/cdk/portals";
|
|
4
|
+
export declare class TuiSheetDialog {
|
|
5
|
+
readonly tuiSheetDialogOptions: import("@angular/core").InputSignal<Partial<TuiSheetDialogOptions<undefined>>>;
|
|
5
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiSheetDialog, never>;
|
|
6
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSheetDialog, "ng-template[tuiSheetDialog]", never, { "
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSheetDialog, "ng-template[tuiSheetDialog]", never, { "tuiSheetDialogOptions": { "alias": "tuiSheetDialogOptions"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiPortalDirective; inputs: { "options": "tuiSheetDialogOptions"; "open": "tuiSheetDialog"; }; outputs: { "openChange": "tuiSheetDialogChange"; }; }]>;
|
|
7
8
|
}
|
|
@@ -1,23 +1,17 @@
|
|
|
1
|
-
import { InjectionToken, type Provider } from '@angular/core';
|
|
2
|
-
import { type TuiPopover } from '@taiga-ui/cdk/services';
|
|
3
|
-
import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
4
1
|
import { type Observable } from 'rxjs';
|
|
5
2
|
export interface TuiSheetDialogOptions<I = undefined> {
|
|
6
3
|
readonly appearance: string;
|
|
7
|
-
readonly
|
|
8
|
-
readonly data: I;
|
|
4
|
+
readonly closable: Observable<boolean> | boolean;
|
|
5
|
+
readonly data: I extends void ? undefined : I;
|
|
9
6
|
readonly initial: number;
|
|
10
|
-
readonly label:
|
|
7
|
+
readonly label: string;
|
|
11
8
|
readonly offset: number;
|
|
12
9
|
readonly stops: readonly string[];
|
|
13
10
|
readonly bar: boolean;
|
|
14
|
-
/** @deprecated add 'fullscreen' in appearance string */
|
|
15
|
-
readonly fullscreen: boolean;
|
|
16
11
|
readonly required: boolean;
|
|
17
12
|
}
|
|
18
13
|
export declare const TUI_SHEET_DIALOG_DEFAULT_OPTIONS: TuiSheetDialogOptions;
|
|
19
14
|
/**
|
|
20
15
|
* Default parameters for mobile dialog component
|
|
21
16
|
*/
|
|
22
|
-
export declare const TUI_SHEET_DIALOG_OPTIONS: InjectionToken<TuiSheetDialogOptions<undefined
|
|
23
|
-
export declare function tuiSheetDialogOptionsProvider(options: Partial<TuiSheetDialogOptions>): Provider;
|
|
17
|
+
export declare const TUI_SHEET_DIALOG_OPTIONS: import("@angular/core").InjectionToken<TuiSheetDialogOptions<undefined>>, tuiSheetDialogOptionsProvider: (item: Partial<TuiSheetDialogOptions<undefined>> | (() => Partial<TuiSheetDialogOptions<undefined>>)) => import("@angular/core").FactoryProvider;
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { type TuiModalComponent, TuiModalService } from '@taiga-ui/core/portals/modal';
|
|
2
|
+
import { type PolymorpheusComponent } from '@taiga-ui/polymorpheus';
|
|
3
|
+
import { TuiSheetDialogComponent } from './sheet-dialog.component';
|
|
2
4
|
import { type TuiSheetDialogOptions } from './sheet-dialog.options';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class TuiSheetDialogService extends
|
|
6
|
+
export declare class TuiSheetDialogService extends TuiModalService<TuiSheetDialogOptions<any>> {
|
|
5
7
|
private readonly theme;
|
|
6
|
-
private initial;
|
|
7
|
-
|
|
8
|
+
private readonly initial;
|
|
9
|
+
private count;
|
|
10
|
+
protected readonly options: TuiSheetDialogOptions<undefined>;
|
|
11
|
+
protected readonly content: typeof TuiSheetDialogComponent;
|
|
12
|
+
protected add(component: PolymorpheusComponent<TuiModalComponent<TuiSheetDialogOptions>>): () => void;
|
|
8
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiSheetDialogService, never>;
|
|
9
14
|
static ɵprov: i0.ɵɵInjectableDeclaration<TuiSheetDialogService>;
|
|
10
15
|
}
|
|
@@ -1,27 +1,23 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import {
|
|
3
|
-
import { TuiDropdownDirective } from '@taiga-ui/core/directives/dropdown';
|
|
4
|
-
import { TuiDropdownMobile } from './dropdown-mobile.directive';
|
|
1
|
+
import { type OnDestroy } from '@angular/core';
|
|
2
|
+
import { TuiDropdownDirective } from '@taiga-ui/core/portals/dropdown';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@taiga-ui/cdk/directives/
|
|
7
|
-
import * as i2 from "@taiga-ui/cdk/directives/
|
|
8
|
-
export declare class TuiDropdownMobileComponent implements OnDestroy
|
|
4
|
+
import * as i1 from "@taiga-ui/cdk/directives/animated";
|
|
5
|
+
import * as i2 from "@taiga-ui/cdk/directives/active-zone";
|
|
6
|
+
export declare class TuiDropdownMobileComponent implements OnDestroy {
|
|
9
7
|
private readonly el;
|
|
10
8
|
private readonly keyboard;
|
|
11
9
|
private readonly doc;
|
|
12
10
|
private readonly scrollTop;
|
|
13
11
|
private readonly observer;
|
|
14
|
-
protected readonly directive: TuiDropdownMobile;
|
|
15
12
|
protected readonly dropdown: TuiDropdownDirective;
|
|
13
|
+
protected readonly context: {
|
|
14
|
+
$implicit: () => void;
|
|
15
|
+
};
|
|
16
16
|
constructor();
|
|
17
|
-
ngAfterViewInit(): void;
|
|
18
17
|
ngOnDestroy(): void;
|
|
19
|
-
protected readonly close: () => void;
|
|
20
18
|
protected onClick(event: MouseEvent): void;
|
|
21
|
-
protected
|
|
22
|
-
protected onIntersection({ isIntersecting }: IntersectionObserverEntry): void;
|
|
23
|
-
protected refresh({ offsetTop, height }: VisualViewport): void;
|
|
19
|
+
protected refresh(): void;
|
|
24
20
|
private get focused();
|
|
25
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownMobileComponent, never>;
|
|
26
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdownMobileComponent, "tui-dropdown-mobile", never, {}, {}, never, never, true, [{ directive: typeof i1.
|
|
22
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdownMobileComponent, "tui-dropdown-mobile", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiAnimated; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiActiveZone; inputs: {}; outputs: {}; }]>;
|
|
27
23
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
export declare class TuiDropdownMobile {
|
|
3
3
|
private readonly isMobile;
|
|
4
|
-
tuiDropdownMobile: string;
|
|
5
4
|
protected onMouseDown(event: MouseEvent): void;
|
|
6
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownMobile, never>;
|
|
7
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownMobile, "[tuiDropdownMobile]", never, {
|
|
6
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownMobile, "[tuiDropdownMobile]", never, {}, {}, never, never, true, never>;
|
|
8
7
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TuiDropdownDirective } from '@taiga-ui/core/portals/dropdown';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiDropdownSheetComponent {
|
|
4
|
+
private readonly content;
|
|
5
|
+
private readonly dialogs;
|
|
6
|
+
private readonly directive;
|
|
7
|
+
protected readonly dropdown: TuiDropdownDirective;
|
|
8
|
+
protected readonly context: {
|
|
9
|
+
$implicit: () => void;
|
|
10
|
+
};
|
|
11
|
+
protected readonly sub: import("rxjs").Subscription;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownSheetComponent, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdownSheetComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class TuiDropdownSheet {
|
|
3
|
+
readonly tuiDropdownSheet: import("@angular/core").InputSignal<string>;
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownSheet, never>;
|
|
5
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownSheet, "[tuiDropdownSheet]", never, { "tuiDropdownSheet": { "alias": "tuiDropdownSheet"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
6
|
+
}
|
package/directives/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export * from '@taiga-ui/addon-mobile/directives/dropdown-mobile';
|
|
2
|
+
export * from '@taiga-ui/addon-mobile/directives/dropdown-sheet';
|
|
2
3
|
export * from '@taiga-ui/addon-mobile/directives/elastic-sticky';
|
|
3
4
|
export * from '@taiga-ui/addon-mobile/directives/responsive-dialog';
|
|
4
5
|
export * from '@taiga-ui/addon-mobile/directives/ripple';
|
|
5
|
-
export * from '@taiga-ui/addon-mobile/directives/sidebar';
|
|
6
6
|
export * from '@taiga-ui/addon-mobile/directives/touchable';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
|
|
2
1
|
import { type TuiResponsiveDialogOptions } from './responsive-dialog.service';
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import * as i1 from "@taiga-ui/cdk/portals";
|
|
4
|
+
export declare class TuiResponsiveDialog<T> {
|
|
5
|
+
readonly tuiResponsiveDialogOptions: import("@angular/core").InputSignal<Partial<TuiResponsiveDialogOptions<T>>>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiResponsiveDialog<any>, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiResponsiveDialog<any>, "ng-template[tuiResponsiveDialog]", never, { "tuiResponsiveDialogOptions": { "alias": "tuiResponsiveDialogOptions"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiPortalDirective; inputs: { "options": "tuiResponsiveDialogOptions"; "open": "tuiResponsiveDialog"; }; outputs: { "openChange": "tuiResponsiveDialogChange"; }; }]>;
|
|
7
8
|
}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { type TuiSheetDialogOptions } from '@taiga-ui/addon-mobile/components/sheet-dialog';
|
|
2
|
-
import { type
|
|
2
|
+
import { type TuiPortalContext } from '@taiga-ui/cdk/portals';
|
|
3
|
+
import { type TuiDialogOptions } from '@taiga-ui/core/portals/dialog';
|
|
3
4
|
import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
4
5
|
import { type Observable } from 'rxjs';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
|
-
export interface TuiResponsiveDialogOptions<I = undefined> extends
|
|
7
|
-
readonly data: I extends void ? undefined : I & {
|
|
8
|
-
button?: string;
|
|
9
|
-
};
|
|
10
|
-
readonly label: PolymorpheusContent;
|
|
7
|
+
export interface TuiResponsiveDialogOptions<I = undefined> extends TuiDialogOptions<I>, TuiSheetDialogOptions<I> {
|
|
11
8
|
}
|
|
12
9
|
/**
|
|
13
10
|
* Same as `TuiDialogService` but automatically switches to `TuiSheetDialogService` on mobile
|
|
@@ -16,7 +13,7 @@ export declare class TuiResponsiveDialogService {
|
|
|
16
13
|
private readonly isMobile;
|
|
17
14
|
private readonly dialogs;
|
|
18
15
|
private readonly sheets;
|
|
19
|
-
open<G = void>(content: PolymorpheusContent<
|
|
16
|
+
open<G = void>(content: PolymorpheusContent<TuiPortalContext<TuiResponsiveDialogOptions, G>>, options?: Partial<TuiResponsiveDialogOptions<any>>): Observable<G>;
|
|
20
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiResponsiveDialogService, never>;
|
|
21
18
|
static ɵprov: i0.ɵɵInjectableDeclaration<TuiResponsiveDialogService>;
|
|
22
19
|
}
|
|
@@ -2,7 +2,7 @@ import * as i0 from "@angular/core";
|
|
|
2
2
|
export declare class TuiRipple {
|
|
3
3
|
private readonly doc;
|
|
4
4
|
private readonly destroyRef;
|
|
5
|
-
private readonly
|
|
5
|
+
private readonly duration;
|
|
6
6
|
protected readonly nothing: undefined;
|
|
7
7
|
tuiRipple: string;
|
|
8
8
|
protected start(x: number, y: number, target: HTMLElement, el: HTMLElement): void;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { NgForOf } from '@angular/common';
|
|
2
1
|
import * as i0 from '@angular/core';
|
|
3
|
-
import {
|
|
2
|
+
import { Input, ViewChild, ViewChildren, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
4
3
|
import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
|
|
5
4
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
6
5
|
import { tuiHeaderOptionsProvider } from '@taiga-ui/layout/components/header';
|
|
@@ -24,19 +23,20 @@ class TuiBottomSheet {
|
|
|
24
23
|
const scrolled = Math.min(scrollTop, height - top);
|
|
25
24
|
const transform = `translate3d(0, ${-1 * scrolled}px, 0)`;
|
|
26
25
|
this.el.style.setProperty('--t-height', `${scrollHeight}px`);
|
|
26
|
+
this.el.style.setProperty('overflow', 'scroll');
|
|
27
27
|
this.el.animate([{ transform }], OPTIONS);
|
|
28
28
|
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
30
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiBottomSheet, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TuiBottomSheet, isStandalone: true, selector: "tui-bottom-sheet", inputs: { stops: "stops" }, host: { listeners: { "scroll.zoneless": "onScroll()", "resize": "onScroll()" }, properties: { "style.--t-initial": "stops[0]", "style.scroll-snap-type": "stops.length > 1 ? \"y mandatory\" : null" } }, providers: [tuiHeaderOptionsProvider({ size: 'h5' })], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "elements", predicate: ["stops"], descendants: true }], ngImport: i0, template: "@for (stop of stops; track stop) {\n <div\n #stops\n class=\"t-stop\"\n [style.inset-block-start]=\"stop\"\n ></div>\n}\n<div\n #content\n class=\"t-content\"\n (resize)=\"onScroll()\"\n>\n <ng-content />\n</div>\n<div class=\"t-bottom\"></div>\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;position:absolute;top:100%;left:0;right:0;display:block;block-size:calc(100% - 1rem);max-inline-size:40rem;margin:calc(-1 * var(--t-initial)) auto 0;background:var(--tui-background-elevation-1);border-top-left-radius:var(--tui-radius-l);border-top-right-radius:var(--tui-radius-l);overflow:auto;box-shadow:0 1rem var(--tui-background-elevation-1),var(--tui-shadow-medium)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:before{content:\"\";position:sticky;top:.625rem;left:50%;z-index:1;display:block;inset-inline-start:50%;inline-size:2rem;block-size:.25rem;margin-block-end:-.25rem;transform:translate(calc(-50% * var(--tui-inline)));background:var(--tui-background-elevation-1);box-shadow:0 0 0 20rem var(--tui-background-elevation-1),inset 0 0 0 1rem var(--tui-border-normal);border-radius:1rem;clip-path:polygon(-100vw -1rem,100vw -1rem,100vw calc(100% + .625rem),-100vw calc(100% + .625rem))}:host:after{content:\"\";position:absolute;top:calc(100% - var(--t-initial));inline-size:1rem;block-size:calc(var(--t-height) - 100% + var(--t-initial));scroll-snap-align:start;scroll-snap-stop:always}.t-content{position:sticky;top:0;padding:2.25rem 1rem 1.5rem}.t-bottom{block-size:calc(100% - var(--t-initial))}.t-stop{position:absolute;block-size:var(--t-initial);inline-size:1rem;pointer-events:none;transform:translateY(-100%);scroll-snap-align:start;scroll-snap-stop:always}.t-stop:last-child{scroll-snap-align:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
31
31
|
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiBottomSheet, decorators: [{
|
|
33
33
|
type: Component,
|
|
34
|
-
args: [{
|
|
34
|
+
args: [{ selector: 'tui-bottom-sheet', changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiHeaderOptionsProvider({ size: 'h5' })], host: {
|
|
35
35
|
'[style.--t-initial]': 'stops[0]',
|
|
36
36
|
'[style.scroll-snap-type]': 'stops.length > 1 ? "y mandatory" : null',
|
|
37
37
|
'(scroll.zoneless)': 'onScroll()',
|
|
38
38
|
'(resize)': 'onScroll()',
|
|
39
|
-
}, template: "
|
|
39
|
+
}, template: "@for (stop of stops; track stop) {\n <div\n #stops\n class=\"t-stop\"\n [style.inset-block-start]=\"stop\"\n ></div>\n}\n<div\n #content\n class=\"t-content\"\n (resize)=\"onScroll()\"\n>\n <ng-content />\n</div>\n<div class=\"t-bottom\"></div>\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;position:absolute;top:100%;left:0;right:0;display:block;block-size:calc(100% - 1rem);max-inline-size:40rem;margin:calc(-1 * var(--t-initial)) auto 0;background:var(--tui-background-elevation-1);border-top-left-radius:var(--tui-radius-l);border-top-right-radius:var(--tui-radius-l);overflow:auto;box-shadow:0 1rem var(--tui-background-elevation-1),var(--tui-shadow-medium)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:before{content:\"\";position:sticky;top:.625rem;left:50%;z-index:1;display:block;inset-inline-start:50%;inline-size:2rem;block-size:.25rem;margin-block-end:-.25rem;transform:translate(calc(-50% * var(--tui-inline)));background:var(--tui-background-elevation-1);box-shadow:0 0 0 20rem var(--tui-background-elevation-1),inset 0 0 0 1rem var(--tui-border-normal);border-radius:1rem;clip-path:polygon(-100vw -1rem,100vw -1rem,100vw calc(100% + .625rem),-100vw calc(100% + .625rem))}:host:after{content:\"\";position:absolute;top:calc(100% - var(--t-initial));inline-size:1rem;block-size:calc(var(--t-height) - 100% + var(--t-initial));scroll-snap-align:start;scroll-snap-stop:always}.t-content{position:sticky;top:0;padding:2.25rem 1rem 1.5rem}.t-bottom{block-size:calc(100% - var(--t-initial))}.t-stop{position:absolute;block-size:var(--t-initial);inline-size:1rem;pointer-events:none;transform:translateY(-100%);scroll-snap-align:start;scroll-snap-stop:always}.t-stop:last-child{scroll-snap-align:none}\n"] }]
|
|
40
40
|
}], propDecorators: { elements: [{
|
|
41
41
|
type: ViewChildren,
|
|
42
42
|
args: ['stops']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-mobile-components-bottom-sheet.mjs","sources":["../../../projects/addon-mobile/components/bottom-sheet/bottom-sheet.component.ts","../../../projects/addon-mobile/components/bottom-sheet/bottom-sheet.template.html","../../../projects/addon-mobile/components/bottom-sheet/taiga-ui-addon-mobile-components-bottom-sheet.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-mobile-components-bottom-sheet.mjs","sources":["../../../projects/addon-mobile/components/bottom-sheet/bottom-sheet.component.ts","../../../projects/addon-mobile/components/bottom-sheet/bottom-sheet.template.html","../../../projects/addon-mobile/components/bottom-sheet/taiga-ui-addon-mobile-components-bottom-sheet.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n type ElementRef,\n Input,\n type QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiHeaderOptionsProvider} from '@taiga-ui/layout/components/header';\n\nconst OPTIONS = {\n duration: 20,\n easing: 'ease-in',\n fill: 'forwards',\n} as const;\n\n@Component({\n selector: 'tui-bottom-sheet',\n templateUrl: './bottom-sheet.template.html',\n styleUrl: './bottom-sheet.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiHeaderOptionsProvider({size: 'h5'})],\n host: {\n '[style.--t-initial]': 'stops[0]',\n '[style.scroll-snap-type]': 'stops.length > 1 ? \"y mandatory\" : null',\n '(scroll.zoneless)': 'onScroll()',\n '(resize)': 'onScroll()',\n },\n})\nexport class TuiBottomSheet {\n @ViewChildren('stops')\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n @ViewChild('content')\n private readonly content?: ElementRef<HTMLElement>;\n\n private readonly el = tuiInjectElement();\n\n @Input()\n public stops: readonly string[] = ['1.5rem'];\n\n protected onScroll(): void {\n const {clientHeight, scrollTop, scrollHeight} = this.el;\n const top = this.elements.get(0)?.nativeElement.clientHeight || 0;\n const max = this.content?.nativeElement.clientHeight || Infinity;\n const height = Math.min(clientHeight, max);\n const scrolled = Math.min(scrollTop, height - top);\n const transform = `translate3d(0, ${-1 * scrolled}px, 0)`;\n\n this.el.style.setProperty('--t-height', `${scrollHeight}px`);\n this.el.style.setProperty('overflow', 'scroll');\n this.el.animate([{transform}], OPTIONS);\n }\n}\n","@for (stop of stops; track stop) {\n <div\n #stops\n class=\"t-stop\"\n [style.inset-block-start]=\"stop\"\n ></div>\n}\n<div\n #content\n class=\"t-content\"\n (resize)=\"onScroll()\"\n>\n <ng-content />\n</div>\n<div class=\"t-bottom\"></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate } from 'tslib';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { inject, Directive,
|
|
3
|
+
import { contentChild, inject, Directive, computed, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
4
4
|
import { TuiMobileCalendar } from '@taiga-ui/addon-mobile/components/mobile-calendar';
|
|
5
5
|
import { TuiKeyboardService } from '@taiga-ui/addon-mobile/services';
|
|
6
6
|
import { TuiControl } from '@taiga-ui/cdk/classes';
|
|
@@ -11,9 +11,8 @@ import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
|
|
|
11
11
|
import * as i2 from '@taiga-ui/cdk/directives/animated';
|
|
12
12
|
import { TuiAnimated } from '@taiga-ui/cdk/directives/animated';
|
|
13
13
|
import { tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
14
|
-
import { TUI_DROPDOWN_COMPONENT, TuiDropdownDirective } from '@taiga-ui/core/
|
|
14
|
+
import { TUI_DROPDOWN_COMPONENT, TuiDropdownDirective } from '@taiga-ui/core/portals/dropdown';
|
|
15
15
|
import { TUI_DAY_CAPS_MAPPER, calculateDisabledItemHandler } from '@taiga-ui/kit/components/calendar-range';
|
|
16
|
-
import { TUI_MOBILE_CALENDAR } from '@taiga-ui/kit/tokens';
|
|
17
16
|
import { injectContext } from '@taiga-ui/polymorpheus';
|
|
18
17
|
import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
|
|
19
18
|
import { TuiItemsHandlersDirective } from '@taiga-ui/core/directives/items-handlers';
|
|
@@ -21,51 +20,42 @@ import { TuiInputDateDirective } from '@taiga-ui/kit/components/input-date';
|
|
|
21
20
|
import { TuiInputDateRangeDirective } from '@taiga-ui/kit/components/input-date-range';
|
|
22
21
|
import { TuiInputDateTimeDirective } from '@taiga-ui/kit/components/input-date-time';
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
class TuiMobileCalendarDropdownNew {
|
|
23
|
+
class TuiMobileCalendarDropdown {
|
|
26
24
|
constructor() {
|
|
25
|
+
this.single = contentChild(TuiInputDateDirective);
|
|
26
|
+
this.range = contentChild(TuiInputDateRangeDirective);
|
|
27
|
+
this.dateTime = contentChild(TuiInputDateTimeDirective);
|
|
27
28
|
this.handlers = inject(TuiItemsHandlersDirective);
|
|
28
29
|
}
|
|
29
30
|
get date() {
|
|
30
|
-
return this.single || this.range || this.dateTime;
|
|
31
|
+
return this.single() || this.range() || this.dateTime();
|
|
31
32
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
33
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiMobileCalendarDropdown, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "19.2.17", type: TuiMobileCalendarDropdown, isStandalone: true, selector: "[tuiMobileCalendar]", providers: [
|
|
34
35
|
{
|
|
35
36
|
provide: TUI_DROPDOWN_COMPONENT,
|
|
36
37
|
useFactory: () => inject(TUI_IS_MOBILE)
|
|
37
|
-
?
|
|
38
|
+
? TuiMobileCalendarDropdownComponent
|
|
38
39
|
: inject(TUI_DROPDOWN_COMPONENT, { skipSelf: true }),
|
|
39
40
|
},
|
|
40
|
-
], queries: [{ propertyName: "single", first: true, predicate: TuiInputDateDirective, descendants: true }, { propertyName: "range", first: true, predicate: TuiInputDateRangeDirective, descendants: true }, { propertyName: "dateTime", first: true, predicate: TuiInputDateTimeDirective, descendants: true }], ngImport: i0 }); }
|
|
41
|
+
], queries: [{ propertyName: "single", first: true, predicate: TuiInputDateDirective, descendants: true, isSignal: true }, { propertyName: "range", first: true, predicate: TuiInputDateRangeDirective, descendants: true, isSignal: true }, { propertyName: "dateTime", first: true, predicate: TuiInputDateTimeDirective, descendants: true, isSignal: true }], ngImport: i0 }); }
|
|
41
42
|
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiMobileCalendarDropdown, decorators: [{
|
|
43
44
|
type: Directive,
|
|
44
45
|
args: [{
|
|
45
|
-
standalone: true,
|
|
46
46
|
selector: '[tuiMobileCalendar]',
|
|
47
47
|
providers: [
|
|
48
48
|
{
|
|
49
49
|
provide: TUI_DROPDOWN_COMPONENT,
|
|
50
50
|
useFactory: () => inject(TUI_IS_MOBILE)
|
|
51
|
-
?
|
|
51
|
+
? TuiMobileCalendarDropdownComponent
|
|
52
52
|
: inject(TUI_DROPDOWN_COMPONENT, { skipSelf: true }),
|
|
53
53
|
},
|
|
54
54
|
],
|
|
55
55
|
}]
|
|
56
|
-
}]
|
|
57
|
-
type: ContentChild,
|
|
58
|
-
args: [TuiInputDateDirective]
|
|
59
|
-
}], range: [{
|
|
60
|
-
type: ContentChild,
|
|
61
|
-
args: [TuiInputDateRangeDirective]
|
|
62
|
-
}], dateTime: [{
|
|
63
|
-
type: ContentChild,
|
|
64
|
-
args: [TuiInputDateTimeDirective]
|
|
65
|
-
}] } });
|
|
56
|
+
}] });
|
|
66
57
|
|
|
67
|
-
|
|
68
|
-
class TuiMobileCalendarDropdown {
|
|
58
|
+
class TuiMobileCalendarDropdownComponent {
|
|
69
59
|
constructor() {
|
|
70
60
|
// TODO: Rework to use TuiDropdownOpenDirective so the focus returns to the field on closing
|
|
71
61
|
this.dropdown = inject(TuiDropdownDirective, { optional: true });
|
|
@@ -76,11 +66,11 @@ class TuiMobileCalendarDropdown {
|
|
|
76
66
|
this.selectedPeriod = null;
|
|
77
67
|
// TODO: Refactor to proper Date, DateMulti and DateRange components after they are added to kit
|
|
78
68
|
this.control = inject(TuiControl, { optional: true });
|
|
79
|
-
this.directive = inject(
|
|
80
|
-
this.range = !!this.directive?.range || this.is('tui-input-date-range');
|
|
69
|
+
this.directive = inject(TuiMobileCalendarDropdown, { optional: true });
|
|
81
70
|
this.multi = this.data.multi || this.is('tui-input-date[multiple]');
|
|
82
|
-
this.
|
|
83
|
-
|
|
71
|
+
this.range = !!this.directive?.range() || this.is('tui-input-date-range');
|
|
72
|
+
this.single = !!this.directive?.single() ||
|
|
73
|
+
!!this.directive?.dateTime() ||
|
|
84
74
|
this.data.single || // TODO(v5): use `rangeMode` from DI token `TUI_CALENDAR_SHEET_DEFAULT_OPTIONS`
|
|
85
75
|
this.is('tui-input-date:not([multiple])');
|
|
86
76
|
this.value = computed((value = this.directive?.date?.value()) => Array.isArray(value) ? value[0] : value);
|
|
@@ -141,26 +131,20 @@ class TuiMobileCalendarDropdown {
|
|
|
141
131
|
is(selector) {
|
|
142
132
|
return !!this.dropdown?.el.closest(selector);
|
|
143
133
|
}
|
|
144
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
145
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
134
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiMobileCalendarDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
135
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: TuiMobileCalendarDropdownComponent, isStandalone: true, selector: "tui-mobile-calendar-dropdown", hostDirectives: [{ directive: i1.TuiActiveZone }, { directive: i2.TuiAnimated }], ngImport: i0, template: "<tui-mobile-calendar\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [max]=\"max()\"\n [min]=\"min()\"\n [multi]=\"multi\"\n [single]=\"single\"\n [value]=\"value()\"\n (cancel)=\"close()\"\n (confirm)=\"confirm($event)\"\n (valueChange)=\"onValueChange($event)\"\n/>\n", styles: [":host{position:fixed;top:0;left:0;inline-size:100%;block-size:100%;background:var(--tui-background-elevation-1);box-shadow:0 10rem var(--tui-background-elevation-1),0 -90vh 1rem 2rem var(--tui-service-backdrop);block-size:calc(100% - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}\n"], dependencies: [{ kind: "component", type: TuiMobileCalendar, selector: "tui-mobile-calendar", inputs: ["single", "multi", "min", "max", "disabledItemHandler", "value"], outputs: ["cancel", "confirm", "valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
146
136
|
}
|
|
147
137
|
__decorate([
|
|
148
138
|
tuiPure
|
|
149
|
-
],
|
|
150
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
139
|
+
], TuiMobileCalendarDropdownComponent.prototype, "calculateDisabledItemHandler", null);
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiMobileCalendarDropdownComponent, decorators: [{
|
|
151
141
|
type: Component,
|
|
152
|
-
args: [{
|
|
153
|
-
}], ctorParameters:
|
|
154
|
-
function tuiProvideMobileCalendar() {
|
|
155
|
-
return {
|
|
156
|
-
provide: TUI_MOBILE_CALENDAR,
|
|
157
|
-
useValue: TuiMobileCalendarDropdown,
|
|
158
|
-
};
|
|
159
|
-
}
|
|
142
|
+
args: [{ selector: 'tui-mobile-calendar-dropdown', imports: [TuiMobileCalendar], changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [TuiActiveZone, TuiAnimated], template: "<tui-mobile-calendar\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [max]=\"max()\"\n [min]=\"min()\"\n [multi]=\"multi\"\n [single]=\"single\"\n [value]=\"value()\"\n (cancel)=\"close()\"\n (confirm)=\"confirm($event)\"\n (valueChange)=\"onValueChange($event)\"\n/>\n", styles: [":host{position:fixed;top:0;left:0;inline-size:100%;block-size:100%;background:var(--tui-background-elevation-1);box-shadow:0 10rem var(--tui-background-elevation-1),0 -90vh 1rem 2rem var(--tui-service-backdrop);block-size:calc(100% - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}\n"] }]
|
|
143
|
+
}], ctorParameters: () => [], propDecorators: { calculateDisabledItemHandler: [] } });
|
|
160
144
|
|
|
161
145
|
/**
|
|
162
146
|
* Generated bundle index. Do not edit.
|
|
163
147
|
*/
|
|
164
148
|
|
|
165
|
-
export { TuiMobileCalendarDropdown,
|
|
149
|
+
export { TuiMobileCalendarDropdown, TuiMobileCalendarDropdownComponent };
|
|
166
150
|
//# sourceMappingURL=taiga-ui-addon-mobile-components-mobile-calendar-dropdown.mjs.map
|