@taiga-ui/addon-mobile 3.22.0 → 3.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-addon-mobile-components-mobile-dialog.umd.js +1 -1
- package/bundles/taiga-ui-addon-mobile-components-mobile-dialog.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.js +1 -1
- package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-mobile-components-sheet.umd.js +2 -2
- package/bundles/taiga-ui-addon-mobile-components-sheet.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-mobile-components-theme-android.umd.js +1 -1
- package/bundles/taiga-ui-addon-mobile-components-theme-android.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-mobile-components-theme-ios.umd.js +1 -1
- package/bundles/taiga-ui-addon-mobile-components-theme-ios.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-mobile-directives-mobile-tabs.umd.js +1 -1
- package/bundles/taiga-ui-addon-mobile-directives-mobile-tabs.umd.js.map +1 -1
- package/esm2015/components/mobile-dialog/mobile-dialog.component.js +1 -1
- package/esm2015/components/pull-to-refresh/loader-android/loader-android.component.js +1 -1
- package/esm2015/components/sheet/components/sheet/sheet.component.js +2 -2
- package/esm2015/components/sheet/components/sheet-heading/sheet-heading.component.js +1 -1
- package/esm2015/components/theme-android/theme-android.component.js +1 -1
- package/esm2015/components/theme-ios/theme-ios.component.js +1 -1
- package/esm2015/directives/mobile-tabs/mobile-tabs.component.js +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-mobile-dialog.js +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-mobile-dialog.js.map +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-pull-to-refresh.js +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-pull-to-refresh.js.map +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-sheet.js +2 -2
- package/fesm2015/taiga-ui-addon-mobile-components-sheet.js.map +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-theme-android.js +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-theme-android.js.map +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-theme-ios.js +1 -1
- package/fesm2015/taiga-ui-addon-mobile-components-theme-ios.js.map +1 -1
- package/fesm2015/taiga-ui-addon-mobile-directives-mobile-tabs.js +1 -1
- package/fesm2015/taiga-ui-addon-mobile-directives-mobile-tabs.js.map +1 -1
- package/package.json +4 -4
|
@@ -20,7 +20,7 @@ class TuiMobileDialogComponent {
|
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
TuiMobileDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiMobileDialogComponent, deps: [{ token: TUI_IS_IOS }, { token: POLYMORPHEUS_CONTEXT }], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
-
TuiMobileDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiMobileDialogComponent, selector: "tui-mobile-dialog", host: { properties: { "class._ios": "isIOS" } }, ngImport: i0, template: "<h2\n *ngIf=\"!!context.label\"\n automation-id=\"tui-mobile-dialog__label\"\n class=\"t-heading\"\n [id]=\"context.id\"\n>\n {{ context.label }}\n</h2>\n<div class=\"t-content\">\n <!-- TODO: Polymorpheus fix type -->\n <ng-container *polymorpheusOutlet=\"$any(context.content) as text; context: context\">\n {{ text }}\n </ng-container>\n</div>\n<button\n *ngFor=\"let action of context.actions; let index = index\"\n tuiButton\n tuiRipple\n type=\"button\"\n size=\"s\"\n appearance=\"flat\"\n class=\"t-button\"\n [class.t-button_column]=\"context.actions.length > 2\"\n (click)=\"onAction(index)\"\n>\n {{ action }}\n</button>\n", styles: [":host{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:block;background:var(--tui-base-01);word-break:break-word;overflow:hidden;padding:1.25rem .75rem 0 1.5rem}:host:not(._ios){max-width:17.5rem;border-radius:.125rem;text-align:left;box-shadow:0 1.5rem 1.5rem
|
|
23
|
+
TuiMobileDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiMobileDialogComponent, selector: "tui-mobile-dialog", host: { properties: { "class._ios": "isIOS" } }, ngImport: i0, template: "<h2\n *ngIf=\"!!context.label\"\n automation-id=\"tui-mobile-dialog__label\"\n class=\"t-heading\"\n [id]=\"context.id\"\n>\n {{ context.label }}\n</h2>\n<div class=\"t-content\">\n <!-- TODO: Polymorpheus fix type -->\n <ng-container *polymorpheusOutlet=\"$any(context.content) as text; context: context\">\n {{ text }}\n </ng-container>\n</div>\n<button\n *ngFor=\"let action of context.actions; let index = index\"\n tuiButton\n tuiRipple\n type=\"button\"\n size=\"s\"\n appearance=\"flat\"\n class=\"t-button\"\n [class.t-button_column]=\"context.actions.length > 2\"\n (click)=\"onAction(index)\"\n>\n {{ action }}\n</button>\n", styles: [":host{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:block;background:var(--tui-base-01);word-break:break-word;overflow:hidden;padding:1.25rem .75rem 0 1.5rem}:host:not(._ios){max-width:17.5rem;border-radius:.125rem;text-align:left;box-shadow:0 1.5rem 1.5rem #00000052}:host._ios{max-width:16.875rem;padding:1.5rem 0 0;border-radius:.75rem;text-align:center}.t-heading{font-size:1rem}:host._ios .t-heading{font-weight:bold;font-size:1.125rem}.t-content{margin-top:.75rem;font-size:.875rem;line-height:1.25rem;padding-right:.75rem}:host._ios .t-content{margin-top:.25rem;padding-left:1.5rem;padding-right:1.5rem}.t-button{border-radius:0}:host._ios .t-button{border-top:#b8b8b8 1px solid;height:2.625rem;width:100%}:host._ios .t-button:first-of-type{margin-top:1.125rem}:host:not(._ios) .t-button{margin:.5rem 0 .5rem .5rem;float:right}:host:not(._ios) .t-button_column{display:block;float:none;margin-left:auto}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.TuiRippleDirective, selector: "[tuiRipple]", inputs: ["tuiRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
24
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiMobileDialogComponent, decorators: [{
|
|
25
25
|
type: Component,
|
|
26
26
|
args: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-mobile-components-mobile-dialog.js","sources":["../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.component.ts","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.template.html","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.tokens.ts","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.service.ts","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.module.ts","../../../projects/addon-mobile/components/mobile-dialog/taiga-ui-addon-mobile-components-mobile-dialog.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {TUI_IS_IOS, TuiDialog} from '@taiga-ui/cdk';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiMobileDialogOptions} from './mobile-dialog-options';\n\n@Component({\n selector: 'tui-mobile-dialog',\n templateUrl: './mobile-dialog.template.html',\n styleUrls: ['./mobile-dialog.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class._ios]': 'isIOS',\n },\n})\nexport class TuiMobileDialogComponent<I> {\n constructor(\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiDialog<TuiMobileDialogOptions<I>, number>,\n ) {}\n\n onAction(index: number): void {\n this.context.completeWith(index);\n }\n}\n","<h2\n *ngIf=\"!!context.label\"\n automation-id=\"tui-mobile-dialog__label\"\n class=\"t-heading\"\n [id]=\"context.id\"\n>\n {{ context.label }}\n</h2>\n<div class=\"t-content\">\n <!-- TODO: Polymorpheus fix type -->\n <ng-container *polymorpheusOutlet=\"$any(context.content) as text; context: context\">\n {{ text }}\n </ng-container>\n</div>\n<button\n *ngFor=\"let action of context.actions; let index = index\"\n tuiButton\n tuiRipple\n type=\"button\"\n size=\"s\"\n appearance=\"flat\"\n class=\"t-button\"\n [class.t-button_column]=\"context.actions.length > 2\"\n (click)=\"onAction(index)\"\n>\n {{ action }}\n</button>\n","import {InjectionToken, ValueProvider} from '@angular/core';\n\nimport {TuiMobileDialogOptions} from './mobile-dialog-options';\n\ntype TuiMobileDialogDefaultOptions = Omit<TuiMobileDialogOptions<unknown>, 'data'>;\n\nexport const TUI_MOBILE_DIALOG_DEFAULT_OPTIONS: TuiMobileDialogDefaultOptions = {\n label: ``,\n actions: [`OK`],\n};\n\n/**\n * Default parameters for mobile dialog component\n */\nexport const TUI_MOBILE_DIALOG_OPTIONS =\n new InjectionToken<TuiMobileDialogDefaultOptions>(`[TUI_MOBILE_DIALOG_OPTIONS]`, {\n factory: () => TUI_MOBILE_DIALOG_DEFAULT_OPTIONS,\n });\n\nexport function tuiMobileDialogOptionsProvider(\n options: Partial<TuiMobileDialogDefaultOptions>,\n): ValueProvider {\n return {\n provide: TUI_MOBILE_DIALOG_OPTIONS,\n useValue: {...TUI_MOBILE_DIALOG_DEFAULT_OPTIONS, ...options},\n };\n}\n","import {inject, Injectable} from '@angular/core';\nimport {AbstractTuiDialogService, TuiBaseDialogContext} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent, PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {TuiMobileDialogComponent} from './mobile-dialog.component';\nimport {TUI_MOBILE_DIALOG_OPTIONS} from './mobile-dialog.tokens';\nimport {TuiMobileDialogOptions} from './mobile-dialog-options';\n\nconst DIALOG = new PolymorpheusComponent(TuiMobileDialogComponent);\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiMobileDialogService extends AbstractTuiDialogService<\n TuiMobileDialogOptions<any>,\n number\n> {\n protected readonly component = DIALOG;\n protected readonly defaultOptions: TuiMobileDialogOptions<any> = {\n ...inject(TUI_MOBILE_DIALOG_OPTIONS),\n data: undefined,\n };\n\n override open(\n content: PolymorpheusContent<\n TuiBaseDialogContext<number> & TuiMobileDialogOptions<any>\n >,\n options: Partial<TuiMobileDialogOptions<any>> = {},\n ): Observable<number> {\n return super.open(content, options);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiRippleModule} from '@taiga-ui/addon-mobile/directives/ripple';\nimport {tuiAsDialog} from '@taiga-ui/cdk';\nimport {TuiButtonModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiMobileDialogComponent} from './mobile-dialog.component';\nimport {TuiMobileDialogService} from './mobile-dialog.service';\n\n@NgModule({\n imports: [CommonModule, TuiButtonModule, TuiRippleModule, PolymorpheusModule],\n declarations: [TuiMobileDialogComponent],\n exports: [TuiMobileDialogComponent],\n providers: [tuiAsDialog(TuiMobileDialogService)],\n})\nexport class TuiMobileDialogModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;MAea,wBAAwB,CAAA;IACjC,WACiC,CAAA,KAAc,EAElC,OAAqD,EAAA;QAFjC,IAAK,CAAA,KAAA,GAAL,KAAK,CAAS;QAElC,IAAO,CAAA,OAAA,GAAP,OAAO,CAA8C;KAC9D;AAEJ,IAAA,QAAQ,CAAC,KAAa,EAAA;AAClB,QAAA,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KACpC;;sHATQ,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAErB,UAAU,EAAA,EAAA,EAAA,KAAA,EACV,oBAAoB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAHvB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,0GCfrC,wrBA2BA,EAAA,MAAA,EAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-mobile-components-mobile-dialog.js","sources":["../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.component.ts","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.template.html","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.tokens.ts","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.service.ts","../../../projects/addon-mobile/components/mobile-dialog/mobile-dialog.module.ts","../../../projects/addon-mobile/components/mobile-dialog/taiga-ui-addon-mobile-components-mobile-dialog.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {TUI_IS_IOS, TuiDialog} from '@taiga-ui/cdk';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiMobileDialogOptions} from './mobile-dialog-options';\n\n@Component({\n selector: 'tui-mobile-dialog',\n templateUrl: './mobile-dialog.template.html',\n styleUrls: ['./mobile-dialog.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class._ios]': 'isIOS',\n },\n})\nexport class TuiMobileDialogComponent<I> {\n constructor(\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiDialog<TuiMobileDialogOptions<I>, number>,\n ) {}\n\n onAction(index: number): void {\n this.context.completeWith(index);\n }\n}\n","<h2\n *ngIf=\"!!context.label\"\n automation-id=\"tui-mobile-dialog__label\"\n class=\"t-heading\"\n [id]=\"context.id\"\n>\n {{ context.label }}\n</h2>\n<div class=\"t-content\">\n <!-- TODO: Polymorpheus fix type -->\n <ng-container *polymorpheusOutlet=\"$any(context.content) as text; context: context\">\n {{ text }}\n </ng-container>\n</div>\n<button\n *ngFor=\"let action of context.actions; let index = index\"\n tuiButton\n tuiRipple\n type=\"button\"\n size=\"s\"\n appearance=\"flat\"\n class=\"t-button\"\n [class.t-button_column]=\"context.actions.length > 2\"\n (click)=\"onAction(index)\"\n>\n {{ action }}\n</button>\n","import {InjectionToken, ValueProvider} from '@angular/core';\n\nimport {TuiMobileDialogOptions} from './mobile-dialog-options';\n\ntype TuiMobileDialogDefaultOptions = Omit<TuiMobileDialogOptions<unknown>, 'data'>;\n\nexport const TUI_MOBILE_DIALOG_DEFAULT_OPTIONS: TuiMobileDialogDefaultOptions = {\n label: ``,\n actions: [`OK`],\n};\n\n/**\n * Default parameters for mobile dialog component\n */\nexport const TUI_MOBILE_DIALOG_OPTIONS =\n new InjectionToken<TuiMobileDialogDefaultOptions>(`[TUI_MOBILE_DIALOG_OPTIONS]`, {\n factory: () => TUI_MOBILE_DIALOG_DEFAULT_OPTIONS,\n });\n\nexport function tuiMobileDialogOptionsProvider(\n options: Partial<TuiMobileDialogDefaultOptions>,\n): ValueProvider {\n return {\n provide: TUI_MOBILE_DIALOG_OPTIONS,\n useValue: {...TUI_MOBILE_DIALOG_DEFAULT_OPTIONS, ...options},\n };\n}\n","import {inject, Injectable} from '@angular/core';\nimport {AbstractTuiDialogService, TuiBaseDialogContext} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent, PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {TuiMobileDialogComponent} from './mobile-dialog.component';\nimport {TUI_MOBILE_DIALOG_OPTIONS} from './mobile-dialog.tokens';\nimport {TuiMobileDialogOptions} from './mobile-dialog-options';\n\nconst DIALOG = new PolymorpheusComponent(TuiMobileDialogComponent);\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiMobileDialogService extends AbstractTuiDialogService<\n TuiMobileDialogOptions<any>,\n number\n> {\n protected readonly component = DIALOG;\n protected readonly defaultOptions: TuiMobileDialogOptions<any> = {\n ...inject(TUI_MOBILE_DIALOG_OPTIONS),\n data: undefined,\n };\n\n override open(\n content: PolymorpheusContent<\n TuiBaseDialogContext<number> & TuiMobileDialogOptions<any>\n >,\n options: Partial<TuiMobileDialogOptions<any>> = {},\n ): Observable<number> {\n return super.open(content, options);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiRippleModule} from '@taiga-ui/addon-mobile/directives/ripple';\nimport {tuiAsDialog} from '@taiga-ui/cdk';\nimport {TuiButtonModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiMobileDialogComponent} from './mobile-dialog.component';\nimport {TuiMobileDialogService} from './mobile-dialog.service';\n\n@NgModule({\n imports: [CommonModule, TuiButtonModule, TuiRippleModule, PolymorpheusModule],\n declarations: [TuiMobileDialogComponent],\n exports: [TuiMobileDialogComponent],\n providers: [tuiAsDialog(TuiMobileDialogService)],\n})\nexport class TuiMobileDialogModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ class TuiMobileLoaderAndroidComponent {
|
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
TuiMobileLoaderAndroidComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiMobileLoaderAndroidComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
-
TuiMobileLoaderAndroidComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiMobileLoaderAndroidComponent, selector: "tui-mobile-android-loader", inputs: { pulled: "pulled" }, host: { properties: { "class._hidden": "this.hidden" } }, ngImport: i0, template: "<svg\n *ngIf=\"pulled !== 100; else loading\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.transform]=\"transform\"\n>\n <defs>\n <mask id=\"mask-1\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"white\"\n />\n </mask>\n </defs>\n <g mask=\"url(#mask-1)\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"black\"\n />\n </g>\n</svg>\n<ng-template #loading>\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-loading\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n</ng-template>\n", styles: [":host{box-shadow:0 1.5rem 1rem
|
|
31
|
+
TuiMobileLoaderAndroidComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiMobileLoaderAndroidComponent, selector: "tui-mobile-android-loader", inputs: { pulled: "pulled" }, host: { properties: { "class._hidden": "this.hidden" } }, ngImport: i0, template: "<svg\n *ngIf=\"pulled !== 100; else loading\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.transform]=\"transform\"\n>\n <defs>\n <mask id=\"mask-1\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"white\"\n />\n </mask>\n </defs>\n <g mask=\"url(#mask-1)\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"black\"\n />\n </g>\n</svg>\n<ng-template #loading>\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-loading\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n</ng-template>\n", styles: [":host{box-shadow:0 1.5rem 1rem #00000008,0 .75rem .75rem #0000000a,0 .25rem .375rem #0000000d;display:flex;height:2.25rem;width:2.25rem;background-color:#fff;border-radius:6.25rem;align-items:center;justify-content:center}:host._hidden{visibility:hidden;transition:0s}.t-loading{display:block;width:1rem;border-radius:100%;animation:tuiLoaderRotate 3s linear infinite}.t-circle{fill:none;stroke:var(--tui-text-01);stroke-width:1.5rem;animation:tuiLoaderDashOffset 3s linear infinite}\n"], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiMobileLoaderAndroidComponent, decorators: [{
|
|
33
33
|
type: Component,
|
|
34
34
|
args: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-mobile-components-pull-to-refresh.js","sources":["../../../projects/addon-mobile/components/pull-to-refresh/loader-android/loader-android.component.ts","../../../projects/addon-mobile/components/pull-to-refresh/loader-android/loader-android.template.html","../../../projects/addon-mobile/components/pull-to-refresh/loader-ios/loader-ios.component.ts","../../../projects/addon-mobile/components/pull-to-refresh/loader-ios/loader-ios.template.html","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.providers.ts","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.component.ts","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.template.html","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.module.ts","../../../projects/addon-mobile/components/pull-to-refresh/taiga-ui-addon-mobile-components-pull-to-refresh.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\n\nconst HIDDEN_DISTANCE = 2;\nconst ROTATE_X_DEFAULT = 180;\nconst ROTATE_X_MAX = 500;\nconst ROTATE_X_MULTIPLIER = 2.3;\n\n@Component({\n selector: 'tui-mobile-android-loader',\n templateUrl: './loader-android.template.html',\n styleUrls: ['./loader-android.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiMobileLoaderAndroidComponent {\n @Input()\n pulled = 0;\n\n get transform(): string {\n const rotateX = Math.min(\n ROTATE_X_DEFAULT + this.pulled * ROTATE_X_MULTIPLIER,\n ROTATE_X_MAX,\n );\n\n return `rotate(${rotateX} 0 0)`;\n }\n\n @HostBinding('class._hidden')\n get hidden(): boolean {\n return this.pulled < HIDDEN_DISTANCE;\n }\n}\n","<svg\n *ngIf=\"pulled !== 100; else loading\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.transform]=\"transform\"\n>\n <defs>\n <mask id=\"mask-1\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"white\"\n />\n </mask>\n </defs>\n <g mask=\"url(#mask-1)\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"black\"\n />\n </g>\n</svg>\n<ng-template #loading>\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-loading\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Input} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\n\nconst LOADED_STEP = 8;\nconst ROTATE_X_STEP = 30;\n\n@Component({\n selector: 'tui-mobile-ios-loader',\n templateUrl: './loader-ios.template.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiMobileLoaderIOSComponent {\n @Input()\n pulled = 0;\n\n readonly steps = 12;\n\n get finished(): boolean {\n return this.pulled >= 100;\n }\n\n isShown(index: number): boolean {\n return this.pulled > (index + 1) * LOADED_STEP;\n }\n\n calculateTransform(index: number): string {\n return `rotate(${index * ROTATE_X_STEP} 50 50)`;\n }\n\n calculateAnimationBegin(index: number): string {\n return `${(index * LOADED_STEP) / 100}s`;\n }\n}\n","<svg\n width=\"36\"\n height=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n viewBox=\"0 0 100 100\"\n preserveAspectRatio=\"xMidYMid\"\n>\n <ng-container *tuiRepeatTimes=\"let index of steps\">\n <g\n *ngIf=\"isShown(index)\"\n [attr.transform]=\"calculateTransform(index)\"\n >\n <rect\n x=\"47\"\n y=\"22\"\n rx=\"7.05\"\n ry=\"3.3\"\n width=\"6\"\n height=\"16\"\n fill=\"#c7c9cc\"\n >\n <animate\n *ngIf=\"finished\"\n attributeName=\"opacity\"\n values=\"1;0\"\n keyTimes=\"0;1\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n [attr.begin]=\"calculateAnimationBegin(index)\"\n ></animate>\n </rect>\n </g>\n </ng-container>\n</svg>\n","import {ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {TUI_LOADED} from '@taiga-ui/addon-mobile/tokens';\nimport {TUI_IS_IOS, tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {endWith, filter, map, scan, switchMap, takeUntil} from 'rxjs/operators';\n\nexport const MICRO_OFFSET = 10 ** -6;\nexport const PULLED_DISTANCE = 50;\n\n/**\n * Stream that emits content pulling\n */\nexport const TUI_PULLING = new InjectionToken<Observable<number>>(`[TUI_PULLING]`);\n\nexport const TUI_PULL_TO_REFRESH_PROVIDERS: Provider[] = [\n {\n provide: TUI_PULLING,\n deps: [TUI_IS_IOS, TUI_LOADED, ElementRef],\n useFactory: (\n isIOS: boolean,\n loaded$: Observable<unknown>,\n {nativeElement}: ElementRef<HTMLElement>,\n ): Observable<number> => {\n return merge(\n tuiTypedFromEvent(nativeElement, `touchstart`, {passive: true}).pipe(\n filter(() => nativeElement.scrollTop === 0),\n switchMap(touchStart =>\n tuiTypedFromEvent(nativeElement, `touchmove`).pipe(\n map(\n touchMove =>\n touchMove.touches[0].clientY -\n touchStart.touches[0].clientY,\n ),\n takeUntil(tuiTypedFromEvent(nativeElement, `touchend`)),\n endWith(0),\n ),\n ),\n ),\n loaded$.pipe(map(() => NaN)),\n ).pipe(\n scan((max, current) => {\n if (Number.isNaN(current)) {\n return 0;\n }\n\n const androidLoading = !isIOS && max === PULLED_DISTANCE;\n const dropped = current === 0 && max > PULLED_DISTANCE;\n\n return androidLoading || dropped\n ? PULLED_DISTANCE\n : current + MICRO_OFFSET;\n }, 0),\n );\n },\n },\n];\n","import {ChangeDetectionStrategy, Component, Inject, Output} from '@angular/core';\nimport {TUI_IS_IOS, tuiPure} from '@taiga-ui/cdk';\nimport {Observable, of} from 'rxjs';\nimport {distinctUntilChanged, filter, map} from 'rxjs/operators';\n\nimport {\n MICRO_OFFSET,\n PULLED_DISTANCE,\n TUI_PULL_TO_REFRESH_PROVIDERS,\n TUI_PULLING,\n} from './pull-to-refresh.providers';\n\nconst IOS_LOADING_DISTANCE = PULLED_DISTANCE / 2;\nconst ANDROID_MAX_DISTANCE = PULLED_DISTANCE * 1.5;\n\nfunction translateY(distance: number): string {\n return `translateY(${distance}px)`;\n}\n\n@Component({\n selector: 'tui-pull-to-refresh',\n templateUrl: './pull-to-refresh.template.html',\n styleUrls: ['./pull-to-refresh.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_PULL_TO_REFRESH_PROVIDERS,\n})\nexport class TuiPullToRefreshComponent {\n @Output()\n readonly pulled: Observable<void> = this.pulling$.pipe(\n distinctUntilChanged(),\n filter(distance => distance === PULLED_DISTANCE),\n map(() => undefined),\n );\n\n readonly pulledInPercent$: Observable<number> = this.pulling$.pipe(\n map(distance => (distance * 100) / PULLED_DISTANCE),\n );\n\n readonly dropped$: Observable<boolean> = this.pulling$.pipe(\n map(distance => distance <= MICRO_OFFSET || distance === PULLED_DISTANCE),\n distinctUntilChanged(),\n );\n\n readonly contentTransform$: Observable<string | null> = this.isIOS\n ? this.pulling$.pipe(\n map(distance =>\n distance === PULLED_DISTANCE ? IOS_LOADING_DISTANCE : distance,\n ),\n map(translateY),\n )\n : of(null);\n\n constructor(\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(TUI_PULLING) private readonly pulling$: Observable<number>,\n ) {}\n\n @tuiPure\n get loaderTransform$(): Observable<string> {\n return this.pulling$.pipe(\n map(distance => translateY(Math.min(distance, ANDROID_MAX_DISTANCE))),\n );\n }\n}\n","<div\n tuiOverscroll\n [class.t-drop-animation]=\"dropped$ | async\"\n [style.transform]=\"contentTransform$ | async\"\n>\n <ng-content></ng-content>\n</div>\n\n<tui-mobile-ios-loader\n *ngIf=\"isIOS; else androidLoader\"\n class=\"t-ios-spinner\"\n [pulled]=\"(pulledInPercent$ | async) || 0\"\n></tui-mobile-ios-loader>\n\n<ng-template #androidLoader>\n <tui-mobile-android-loader\n class=\"t-android-loader\"\n [class.t-drop-animation]=\"dropped$ | async\"\n [style.transform]=\"loaderTransform$ | async\"\n [pulled]=\"(pulledInPercent$ | async) || 0\"\n ></tui-mobile-android-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiOverscrollModule, TuiRepeatTimesModule} from '@taiga-ui/cdk';\nimport {TuiSvgModule} from '@taiga-ui/core';\n\nimport {TuiMobileLoaderAndroidComponent} from './loader-android/loader-android.component';\nimport {TuiMobileLoaderIOSComponent} from './loader-ios/loader-ios.component';\nimport {TuiPullToRefreshComponent} from './pull-to-refresh.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiOverscrollModule, TuiRepeatTimesModule],\n declarations: [\n TuiPullToRefreshComponent,\n TuiMobileLoaderAndroidComponent,\n TuiMobileLoaderIOSComponent,\n ],\n exports: [TuiPullToRefreshComponent],\n})\nexport class TuiPullToRefreshModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i1.TuiMobileLoaderIOSComponent","i2.TuiMobileLoaderAndroidComponent","i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-mobile-components-pull-to-refresh.js","sources":["../../../projects/addon-mobile/components/pull-to-refresh/loader-android/loader-android.component.ts","../../../projects/addon-mobile/components/pull-to-refresh/loader-android/loader-android.template.html","../../../projects/addon-mobile/components/pull-to-refresh/loader-ios/loader-ios.component.ts","../../../projects/addon-mobile/components/pull-to-refresh/loader-ios/loader-ios.template.html","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.providers.ts","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.component.ts","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.template.html","../../../projects/addon-mobile/components/pull-to-refresh/pull-to-refresh.module.ts","../../../projects/addon-mobile/components/pull-to-refresh/taiga-ui-addon-mobile-components-pull-to-refresh.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\n\nconst HIDDEN_DISTANCE = 2;\nconst ROTATE_X_DEFAULT = 180;\nconst ROTATE_X_MAX = 500;\nconst ROTATE_X_MULTIPLIER = 2.3;\n\n@Component({\n selector: 'tui-mobile-android-loader',\n templateUrl: './loader-android.template.html',\n styleUrls: ['./loader-android.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiMobileLoaderAndroidComponent {\n @Input()\n pulled = 0;\n\n get transform(): string {\n const rotateX = Math.min(\n ROTATE_X_DEFAULT + this.pulled * ROTATE_X_MULTIPLIER,\n ROTATE_X_MAX,\n );\n\n return `rotate(${rotateX} 0 0)`;\n }\n\n @HostBinding('class._hidden')\n get hidden(): boolean {\n return this.pulled < HIDDEN_DISTANCE;\n }\n}\n","<svg\n *ngIf=\"pulled !== 100; else loading\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.transform]=\"transform\"\n>\n <defs>\n <mask id=\"mask-1\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"white\"\n />\n </mask>\n </defs>\n <g mask=\"url(#mask-1)\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"black\"\n />\n </g>\n</svg>\n<ng-template #loading>\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-loading\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Input} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\n\nconst LOADED_STEP = 8;\nconst ROTATE_X_STEP = 30;\n\n@Component({\n selector: 'tui-mobile-ios-loader',\n templateUrl: './loader-ios.template.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiMobileLoaderIOSComponent {\n @Input()\n pulled = 0;\n\n readonly steps = 12;\n\n get finished(): boolean {\n return this.pulled >= 100;\n }\n\n isShown(index: number): boolean {\n return this.pulled > (index + 1) * LOADED_STEP;\n }\n\n calculateTransform(index: number): string {\n return `rotate(${index * ROTATE_X_STEP} 50 50)`;\n }\n\n calculateAnimationBegin(index: number): string {\n return `${(index * LOADED_STEP) / 100}s`;\n }\n}\n","<svg\n width=\"36\"\n height=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n viewBox=\"0 0 100 100\"\n preserveAspectRatio=\"xMidYMid\"\n>\n <ng-container *tuiRepeatTimes=\"let index of steps\">\n <g\n *ngIf=\"isShown(index)\"\n [attr.transform]=\"calculateTransform(index)\"\n >\n <rect\n x=\"47\"\n y=\"22\"\n rx=\"7.05\"\n ry=\"3.3\"\n width=\"6\"\n height=\"16\"\n fill=\"#c7c9cc\"\n >\n <animate\n *ngIf=\"finished\"\n attributeName=\"opacity\"\n values=\"1;0\"\n keyTimes=\"0;1\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n [attr.begin]=\"calculateAnimationBegin(index)\"\n ></animate>\n </rect>\n </g>\n </ng-container>\n</svg>\n","import {ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {TUI_LOADED} from '@taiga-ui/addon-mobile/tokens';\nimport {TUI_IS_IOS, tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {endWith, filter, map, scan, switchMap, takeUntil} from 'rxjs/operators';\n\nexport const MICRO_OFFSET = 10 ** -6;\nexport const PULLED_DISTANCE = 50;\n\n/**\n * Stream that emits content pulling\n */\nexport const TUI_PULLING = new InjectionToken<Observable<number>>(`[TUI_PULLING]`);\n\nexport const TUI_PULL_TO_REFRESH_PROVIDERS: Provider[] = [\n {\n provide: TUI_PULLING,\n deps: [TUI_IS_IOS, TUI_LOADED, ElementRef],\n useFactory: (\n isIOS: boolean,\n loaded$: Observable<unknown>,\n {nativeElement}: ElementRef<HTMLElement>,\n ): Observable<number> => {\n return merge(\n tuiTypedFromEvent(nativeElement, `touchstart`, {passive: true}).pipe(\n filter(() => nativeElement.scrollTop === 0),\n switchMap(touchStart =>\n tuiTypedFromEvent(nativeElement, `touchmove`).pipe(\n map(\n touchMove =>\n touchMove.touches[0].clientY -\n touchStart.touches[0].clientY,\n ),\n takeUntil(tuiTypedFromEvent(nativeElement, `touchend`)),\n endWith(0),\n ),\n ),\n ),\n loaded$.pipe(map(() => NaN)),\n ).pipe(\n scan((max, current) => {\n if (Number.isNaN(current)) {\n return 0;\n }\n\n const androidLoading = !isIOS && max === PULLED_DISTANCE;\n const dropped = current === 0 && max > PULLED_DISTANCE;\n\n return androidLoading || dropped\n ? PULLED_DISTANCE\n : current + MICRO_OFFSET;\n }, 0),\n );\n },\n },\n];\n","import {ChangeDetectionStrategy, Component, Inject, Output} from '@angular/core';\nimport {TUI_IS_IOS, tuiPure} from '@taiga-ui/cdk';\nimport {Observable, of} from 'rxjs';\nimport {distinctUntilChanged, filter, map} from 'rxjs/operators';\n\nimport {\n MICRO_OFFSET,\n PULLED_DISTANCE,\n TUI_PULL_TO_REFRESH_PROVIDERS,\n TUI_PULLING,\n} from './pull-to-refresh.providers';\n\nconst IOS_LOADING_DISTANCE = PULLED_DISTANCE / 2;\nconst ANDROID_MAX_DISTANCE = PULLED_DISTANCE * 1.5;\n\nfunction translateY(distance: number): string {\n return `translateY(${distance}px)`;\n}\n\n@Component({\n selector: 'tui-pull-to-refresh',\n templateUrl: './pull-to-refresh.template.html',\n styleUrls: ['./pull-to-refresh.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_PULL_TO_REFRESH_PROVIDERS,\n})\nexport class TuiPullToRefreshComponent {\n @Output()\n readonly pulled: Observable<void> = this.pulling$.pipe(\n distinctUntilChanged(),\n filter(distance => distance === PULLED_DISTANCE),\n map(() => undefined),\n );\n\n readonly pulledInPercent$: Observable<number> = this.pulling$.pipe(\n map(distance => (distance * 100) / PULLED_DISTANCE),\n );\n\n readonly dropped$: Observable<boolean> = this.pulling$.pipe(\n map(distance => distance <= MICRO_OFFSET || distance === PULLED_DISTANCE),\n distinctUntilChanged(),\n );\n\n readonly contentTransform$: Observable<string | null> = this.isIOS\n ? this.pulling$.pipe(\n map(distance =>\n distance === PULLED_DISTANCE ? IOS_LOADING_DISTANCE : distance,\n ),\n map(translateY),\n )\n : of(null);\n\n constructor(\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(TUI_PULLING) private readonly pulling$: Observable<number>,\n ) {}\n\n @tuiPure\n get loaderTransform$(): Observable<string> {\n return this.pulling$.pipe(\n map(distance => translateY(Math.min(distance, ANDROID_MAX_DISTANCE))),\n );\n }\n}\n","<div\n tuiOverscroll\n [class.t-drop-animation]=\"dropped$ | async\"\n [style.transform]=\"contentTransform$ | async\"\n>\n <ng-content></ng-content>\n</div>\n\n<tui-mobile-ios-loader\n *ngIf=\"isIOS; else androidLoader\"\n class=\"t-ios-spinner\"\n [pulled]=\"(pulledInPercent$ | async) || 0\"\n></tui-mobile-ios-loader>\n\n<ng-template #androidLoader>\n <tui-mobile-android-loader\n class=\"t-android-loader\"\n [class.t-drop-animation]=\"dropped$ | async\"\n [style.transform]=\"loaderTransform$ | async\"\n [pulled]=\"(pulledInPercent$ | async) || 0\"\n ></tui-mobile-android-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiOverscrollModule, TuiRepeatTimesModule} from '@taiga-ui/cdk';\nimport {TuiSvgModule} from '@taiga-ui/core';\n\nimport {TuiMobileLoaderAndroidComponent} from './loader-android/loader-android.component';\nimport {TuiMobileLoaderIOSComponent} from './loader-ios/loader-ios.component';\nimport {TuiPullToRefreshComponent} from './pull-to-refresh.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiOverscrollModule, TuiRepeatTimesModule],\n declarations: [\n TuiPullToRefreshComponent,\n TuiMobileLoaderAndroidComponent,\n TuiMobileLoaderIOSComponent,\n ],\n exports: [TuiPullToRefreshComponent],\n})\nexport class TuiPullToRefreshModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i1.TuiMobileLoaderIOSComponent","i2.TuiMobileLoaderAndroidComponent","i3"],"mappings":"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"}
|
|
@@ -71,7 +71,7 @@ class TuiSheetHeadingComponent {
|
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
TuiSheetHeadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSheetHeadingComponent, deps: [{ token: TuiIdService }, { token: ElementRef }, { token: TUI_CLOSE_WORD }], target: i0.ɵɵFactoryTarget.Component });
|
|
74
|
-
TuiSheetHeadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSheetHeadingComponent, selector: "[tuiSheetHeading]", ngImport: i0, template: "<button\n tuiIconButton\n size=\"xs\"\n appearance=\"icon\"\n type=\"button\"\n icon=\"tuiIconCloseLarge\"\n class=\"t-close\"\n [title]=\"closeWord$ | async\"\n (click)=\"onClick()\"\n></button>\n<span [id]=\"id\">\n <ng-content></ng-content>\n</span>\n", styles: [":host{position:-webkit-sticky;position:sticky;top:0;z-index:1;min-height:2rem;box-sizing:border-box;margin:-1.25rem -1rem 0;padding:1.5rem 1rem 1rem;background:var(--tui-elevation-01);border-radius:.75rem .75rem 0 0;font:var(--tui-font-heading-6);box-shadow:inset 0 1px
|
|
74
|
+
TuiSheetHeadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSheetHeadingComponent, selector: "[tuiSheetHeading]", ngImport: i0, template: "<button\n tuiIconButton\n size=\"xs\"\n appearance=\"icon\"\n type=\"button\"\n icon=\"tuiIconCloseLarge\"\n class=\"t-close\"\n [title]=\"closeWord$ | async\"\n (click)=\"onClick()\"\n></button>\n<span [id]=\"id\">\n <ng-content></ng-content>\n</span>\n", styles: [":host{position:-webkit-sticky;position:sticky;top:0;z-index:1;min-height:2rem;box-sizing:border-box;margin:-1.25rem -1rem 0;padding:1.5rem 1rem 1rem;background:var(--tui-elevation-01);border-radius:.75rem .75rem 0 0;font:var(--tui-font-heading-6);box-shadow:inset 0 1px #ffffff40}:host:after{content:\"\";position:absolute;top:100%;left:0;right:0;height:1px;background:var(--tui-base-03);opacity:0}:host :host-context(._stuck):after{opacity:1}.t-close{display:none;float:right;margin-right:-.25rem}:host-context(.t-wrapper_closeable) .t-close{display:block}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
75
75
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSheetHeadingComponent, decorators: [{
|
|
76
76
|
type: Component,
|
|
77
77
|
args: [{
|
|
@@ -296,7 +296,7 @@ class TuiSheetComponent {
|
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
298
|
TuiSheetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSheetComponent, deps: [{ token: TUI_SHEET_SCROLL }, { token: ElementRef }, { token: NgZone }, { token: TUI_IS_IOS }, { token: TUI_MORE_WORD }], target: i0.ɵɵFactoryTarget.Component });
|
|
299
|
-
TuiSheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSheetComponent, selector: "tui-sheet", inputs: { item: "item" }, host: { attributes: { "role": "dialog" }, listeners: { "$.class._stuck": "stuck$", "tui-sheet-id": "onId($event.detail)" }, properties: { "attr.aria-labelledby": "id", "class._ios": "isIos", "$.class._stuck": "stuck$" } }, providers: TUI_SHEET_PROVIDERS, viewQueries: [{ propertyName: "sheet", first: true, predicate: ["sheet"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "stopsRefs", predicate: ["stops"], descendants: true }], ngImport: i0, template: "<div\n class=\"t-bumpers\"\n (click)=\"close()\"\n>\n <div\n *ngFor=\"let stop of item.stops\"\n #stops\n class=\"t-bumper\"\n [style.marginTop]=\"stop\"\n ></div>\n</div>\n<div\n #sheet\n class=\"t-wrapper\"\n [class.t-wrapper_shadow]=\"!item.image\"\n>\n <header\n *ngIf=\"item.image\"\n class=\"t-top\"\n [tuiSheetTop]=\"imageStop\"\n >\n <img\n *polymorpheusOutlet=\"item.image as src; context: context\"\n alt=\"\"\n class=\"t-image\"\n [src]=\"src\"\n />\n </header>\n <section\n #content\n tuiSheetStop\n class=\"t-sheet\"\n >\n <div class=\"t-bar\"></div>\n <tui-sheet-bar>\n <button\n type=\"button\"\n class=\"t-button\"\n [title]=\"moreWord$ | async\"\n (click)=\"scrollTo(stops[1])\"\n ></button>\n </tui-sheet-bar>\n <div class=\"t-content\">\n <h2\n *polymorpheusOutlet=\"item.content as text; context: context\"\n tuiSheetHeading\n class=\"t-heading\"\n >\n {{ text }}\n </h2>\n </div>\n </section>\n</div>\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;position:absolute;top:0;left:0;bottom:0;right:0;transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;top:auto;border-radius:.75rem .75rem 0 0;overflow-y:auto;overflow-x:hidden
|
|
299
|
+
TuiSheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSheetComponent, selector: "tui-sheet", inputs: { item: "item" }, host: { attributes: { "role": "dialog" }, listeners: { "$.class._stuck": "stuck$", "tui-sheet-id": "onId($event.detail)" }, properties: { "attr.aria-labelledby": "id", "class._ios": "isIos", "$.class._stuck": "stuck$" } }, providers: TUI_SHEET_PROVIDERS, viewQueries: [{ propertyName: "sheet", first: true, predicate: ["sheet"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "stopsRefs", predicate: ["stops"], descendants: true }], ngImport: i0, template: "<div\n class=\"t-bumpers\"\n (click)=\"close()\"\n>\n <div\n *ngFor=\"let stop of item.stops\"\n #stops\n class=\"t-bumper\"\n [style.marginTop]=\"stop\"\n ></div>\n</div>\n<div\n #sheet\n class=\"t-wrapper\"\n [class.t-wrapper_shadow]=\"!item.image\"\n>\n <header\n *ngIf=\"item.image\"\n class=\"t-top\"\n [tuiSheetTop]=\"imageStop\"\n >\n <img\n *polymorpheusOutlet=\"item.image as src; context: context\"\n alt=\"\"\n class=\"t-image\"\n [src]=\"src\"\n />\n </header>\n <section\n #content\n tuiSheetStop\n class=\"t-sheet\"\n >\n <div class=\"t-bar\"></div>\n <tui-sheet-bar>\n <button\n type=\"button\"\n class=\"t-button\"\n [title]=\"moreWord$ | async\"\n (click)=\"scrollTo(stops[1])\"\n ></button>\n </tui-sheet-bar>\n <div class=\"t-content\">\n <h2\n *polymorpheusOutlet=\"item.content as text; context: context\"\n tuiSheetHeading\n class=\"t-heading\"\n >\n {{ text }}\n </h2>\n </div>\n </section>\n</div>\n", styles: [":host{scrollbar-width:none;-ms-overflow-style:none;position:absolute;top:0;left:0;bottom:0;right:0;transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;top:auto;border-radius:.75rem .75rem 0 0;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;box-shadow:0 50vh var(--tui-elevation-01);padding-right:1rem;margin-left:-1rem;transform:scaleX(-1);-webkit-clip-path:inset(0 1rem 0 0 round .75rem .75rem 0 0);clip-path:inset(0 1rem 0 0 round .75rem .75rem 0 0)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}:host._stuck{scroll-snap-type:none}@supports (-moz-appearance: none){:host{scroll-snap-type:none}}.t-bumpers{display:flex;height:100%}:host-context(.t-wrapper_closeable) .t-bumpers{scroll-snap-stop:always;scroll-snap-align:start;scroll-margin:-1px}.t-bumper{scroll-snap-stop:always;scroll-snap-align:start;height:1rem;width:1rem}.t-wrapper{border-radius:inherit;scroll-snap-stop:always;scroll-snap-align:start}.t-wrapper_shadow{box-shadow:0 .25rem 1.5rem #0000001f}.t-top{box-shadow:0 .25rem 1.5rem #0000001f;position:-webkit-sticky;position:sticky;top:0;border-radius:.8rem .8rem 0 0;transform:scaleX(-1);overflow:hidden}.t-top._clickthrough{pointer-events:none}:host-context(._overlay:not(._visible)) .t-top{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;transform:scaleX(-1)!important}.t-image{display:block;width:100%}.t-sheet{position:relative;border-radius:inherit;scroll-snap-stop:always;scroll-snap-align:start;transform:scaleX(-1)}.t-top:not(._rounded)~.t-sheet .t-bar{border-radius:0}.t-bar{transition-property:border-radius;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:-webkit-sticky;position:sticky;top:0;z-index:1;height:1.5rem;margin-bottom:-1.5rem;border-radius:inherit;background:var(--tui-elevation-01);box-shadow:inset 0 1px #ffffff40}.t-button{position:absolute;top:0;height:1.5rem;width:3rem;padding:0;border:0;opacity:0}.t-content{padding:1rem;margin-top:-1rem;border-radius:inherit;background:var(--tui-elevation-01)}.t-heading{padding-bottom:.5rem;background:var(--tui-elevation-01)}\n"], components: [{ type: TuiSheetBarComponent, selector: "tui-sheet-bar" }, { type: TuiSheetHeadingComponent, selector: "[tuiSheetHeading]" }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TuiSheetTopDirective, selector: "[tuiSheetTop]", inputs: ["tuiSheetTop"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: TuiSheetStopDirective, selector: "[tuiSheetStop]" }], pipes: { "async": i2.AsyncPipe }, animations: [tuiSlideInTop], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
300
300
|
__decorate([
|
|
301
301
|
tuiPure
|
|
302
302
|
], TuiSheetComponent.prototype, "context", null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-mobile-components-sheet.js","sources":["../../../projects/addon-mobile/components/sheet/ios.hacks.ts","../../../projects/addon-mobile/components/sheet/sheet-tokens.ts","../../../projects/addon-mobile/components/sheet/components/sheet-heading/sheet-heading.component.ts","../../../projects/addon-mobile/components/sheet/components/sheet-heading/sheet-heading.template.html","../../../projects/addon-mobile/components/sheet/components/sheet/sheet.providers.ts","../../../projects/addon-mobile/components/sheet/components/sheet-bar/sheet-bar.component.ts","../../../projects/addon-mobile/components/sheet/components/sheet-bar/sheet-bar.template.html","../../../projects/addon-mobile/components/sheet/directives/sheet-top/sheet-top.directive.ts","../../../projects/addon-mobile/components/sheet/directives/sheet-stop/sheet-stop.directive.ts","../../../projects/addon-mobile/components/sheet/components/sheet/sheet.component.ts","../../../projects/addon-mobile/components/sheet/components/sheet/sheet.template.html","../../../projects/addon-mobile/components/sheet/sheet-options.ts","../../../projects/addon-mobile/components/sheet/sheet.service.ts","../../../projects/addon-mobile/components/sheet/directives/sheet-wrapper/sheet-wrapper.directive.ts","../../../projects/addon-mobile/components/sheet/directives/sheet-close/sheet-close.directive.ts","../../../projects/addon-mobile/components/sheet/components/sheets-host/sheets-host.component.ts","../../../projects/addon-mobile/components/sheet/components/sheets-host/sheets-host.template.html","../../../projects/addon-mobile/components/sheet/sheet.directive.ts","../../../projects/addon-mobile/components/sheet/sheet.module.ts","../../../projects/addon-mobile/components/sheet/taiga-ui-addon-mobile-components-sheet.ts"],"sourcesContent":["import {NgZone} from '@angular/core';\nimport {tuiTypedFromEvent, tuiZonefree} from '@taiga-ui/cdk';\nimport {concat, merge, Observable, zip} from 'rxjs';\nimport {delay, map, share, switchMap, take, takeUntil} from 'rxjs/operators';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function iosScrollFactory(\n element: HTMLElement,\n documentRef: Document,\n ngZone: NgZone,\n): Observable<number> {\n const load$ = tuiTypedFromEvent(element, `load`, {capture: true});\n const touchstart$ = tuiTypedFromEvent(element, `touchstart`, {passive: true});\n const touchmove$ = tuiTypedFromEvent(documentRef, `touchmove`, {passive: true});\n const touchend$ = tuiTypedFromEvent(documentRef, `touchend`);\n const scroll$ = tuiTypedFromEvent(element, `scroll`).pipe(\n map(() => element.scrollTop),\n );\n const result$ = merge(\n load$.pipe(\n delay(0),\n map(() => element.scrollTop),\n ),\n touchstart$.pipe(\n switchMap(({touches}) => {\n const {screenY} = touches[0];\n const {scrollTop} = element;\n\n return concat(\n // Sometimes touch is triggered without scroll in iOS, filter that\n zip(touchmove$, scroll$).pipe(\n map(([{touches}]) => scrollTop + screenY - touches[0].screenY),\n takeUntil(touchend$),\n ),\n scroll$,\n );\n }),\n ),\n );\n\n return concat(scroll$.pipe(take(1)), result$).pipe(tuiZonefree(ngZone), share());\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function fakeSmoothScroll({style}: HTMLElement, offset: number): void {\n style.transition = `none`;\n style.transform = `scaleX(-1) translate3d(0, ${offset}px, 0)`;\n\n setTimeout(() => {\n style.transition = ``;\n style.transform = ``;\n });\n}\n","import {InjectionToken} from '@angular/core';\n\nimport {TuiSheetRequiredProps} from './sheet';\n\n/**\n * Sheet main component\n */\nexport const TUI_SHEET = new InjectionToken<TuiSheetRequiredProps>(`[TUI_SHEET]`);\n\n/**\n * Current scrollTop of a sheet\n */\nexport const TUI_SHEET_SCROLL = new InjectionToken<number>(`[TUI_SHEET_SCROLL]`);\n\n/**\n * The sheet is being dragged\n */\nexport const TUI_SHEET_DRAGGED = new InjectionToken<boolean>(`[TUI_SHEET_DRAGGED]`);\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n} from '@angular/core';\nimport {TuiIdService} from '@taiga-ui/cdk';\nimport {TUI_CLOSE_WORD} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nexport const TUI_SHEET_CLOSE = 'tui-sheet-close';\nexport const TUI_SHEET_ID = 'tui-sheet-id';\n\n@Component({\n selector: '[tuiSheetHeading]',\n templateUrl: './sheet-heading.template.html',\n styleUrls: ['./sheet-heading.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSheetHeadingComponent implements AfterViewInit {\n readonly id = this.idService.generate();\n\n constructor(\n @Inject(TuiIdService) private readonly idService: TuiIdService,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n ) {}\n\n ngAfterViewInit(): void {\n this.elementRef.nativeElement.dispatchEvent(\n new CustomEvent(TUI_SHEET_ID, {bubbles: true, detail: this.id}),\n );\n }\n\n onClick(): void {\n this.elementRef.nativeElement.dispatchEvent(\n new CustomEvent(TUI_SHEET_CLOSE, {bubbles: true}),\n );\n }\n}\n","<button\n tuiIconButton\n size=\"xs\"\n appearance=\"icon\"\n type=\"button\"\n icon=\"tuiIconCloseLarge\"\n class=\"t-close\"\n [title]=\"closeWord$ | async\"\n (click)=\"onClick()\"\n></button>\n<span [id]=\"id\">\n <ng-content></ng-content>\n</span>\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, forwardRef, NgZone, Provider} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n ALWAYS_TRUE_HANDLER,\n TUI_IS_IOS,\n tuiTypedFromEvent,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core';\nimport {merge, Observable} from 'rxjs';\nimport {map, share} from 'rxjs/operators';\n\nimport {iosScrollFactory} from '../../ios.hacks';\nimport {TUI_SHEET, TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiSheetComponent} from './sheet.component';\n\nexport const TUI_SHEET_PROVIDERS: Provider[] = [\n {\n provide: TUI_SHEET_DRAGGED,\n deps: [ElementRef],\n useFactory: ({nativeElement}: ElementRef<HTMLElement>): Observable<boolean> => {\n return merge(\n tuiTypedFromEvent(nativeElement, `touchstart`, {passive: true}).pipe(\n map(ALWAYS_TRUE_HANDLER),\n ),\n tuiTypedFromEvent(nativeElement, `touchend`).pipe(\n map(ALWAYS_FALSE_HANDLER),\n ),\n );\n },\n },\n {\n provide: TUI_SHEET_SCROLL,\n deps: [ElementRef, NgZone, DOCUMENT, TUI_IS_IOS],\n useFactory: (\n {nativeElement}: ElementRef<HTMLElement>,\n ngZone: NgZone,\n documentRef: Document,\n isIos: boolean,\n ): Observable<number> => {\n return isIos\n ? iosScrollFactory(nativeElement, documentRef, ngZone)\n : merge(\n tuiTypedFromEvent(nativeElement, `scroll`),\n tuiTypedFromEvent(nativeElement, `load`, {capture: true}),\n ).pipe(\n map(() => nativeElement.scrollTop),\n tuiZonefree(ngZone),\n share(),\n );\n },\n },\n {\n provide: TUI_SCROLL_REF,\n useExisting: ElementRef,\n },\n {\n provide: TUI_SHEET,\n useExisting: forwardRef(() => TuiSheetComponent),\n },\n];\n","import {ChangeDetectionStrategy, Component, Inject, NgZone} from '@angular/core';\nimport {tuiClamp} from '@taiga-ui/cdk';\nimport {tuiZonefulMap} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TuiSheetRequiredProps} from '../../sheet';\nimport {TUI_SHEET, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n@Component({\n selector: 'tui-sheet-bar',\n templateUrl: './sheet-bar.template.html',\n styleUrls: ['./sheet-bar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSheetBarComponent {\n readonly rotate$ = this.scroll$.pipe(\n tuiZonefulMap(y => tuiClamp(10 - (y - this.stop) / 5, 0, 10), this.ngZone),\n );\n\n constructor(\n @Inject(TUI_SHEET) private readonly sheet: TuiSheetRequiredProps,\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(NgZone) private readonly ngZone: NgZone,\n ) {}\n\n private get stop(): number {\n return this.sheet.stops[0] || 0;\n }\n}\n","<!-- eslint-disable @html-eslint/no-inline-styles -->\n<ng-container *tuiLet=\"rotate$ | async as deg\">\n <div\n style=\"transform: rotate(-{{ deg }}deg)\"\n class=\"t-bar\"\n ></div>\n <ng-content *ngIf=\"deg\"></ng-content>\n <div\n style=\"transform: rotate({{ deg }}deg)\"\n class=\"t-bar\"\n ></div>\n</ng-container>\n","import {Directive, Inject, Input} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiClamp, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiSheetRequiredProps} from '../../sheet';\nimport {TUI_SHEET, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n// So that borders get rounded when image is visible for at least 10px\nconst OFFSET = 10;\n\n@Directive({\n selector: '[tuiSheetTop]',\n host: {\n '[$.style.transform]': 'transform$',\n '($.style.transform)': 'transform$',\n '[$.class._rounded]': 'rounded$',\n '($.class._rounded)': 'rounded$',\n '[$.class._clickthrough]': 'clickthrough$',\n '($.class._clickthrough)': 'clickthrough$',\n },\n})\nexport class TuiSheetTopDirective {\n @Input('tuiSheetTop')\n @tuiDefaultProp()\n stop = 0;\n\n readonly transform$ = this.scroll$.pipe(\n map(y => `translateY(${this.getY(y)}%) scaleX(-1)`),\n );\n\n readonly rounded$ = this.scroll$.pipe(map(y => y < this.stop + OFFSET));\n\n readonly clickthrough$ = this.scroll$.pipe(map(y => !!Math.round(this.getY(y))));\n\n constructor(\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(TUI_SHEET)\n private readonly component: TuiSheetRequiredProps,\n @Inject(WINDOW) private readonly windowRef: Window,\n ) {}\n\n private getY(scrollTop: number): number {\n const value = scrollTop - this.stop;\n const total = this.windowRef.innerHeight - this.component.item.offset - this.stop;\n\n return this.stop && tuiClamp(100 - (value / total) * 100, 0, 100);\n }\n}\n","import {Directive, ElementRef, Inject, Self} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n takeUntil,\n throttleTime,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n@Directive({\n selector: '[tuiSheetStop]',\n providers: [TuiDestroyService],\n})\nexport class TuiSheetStopDirective {\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(TUI_SHEET_DRAGGED) dragged$: Observable<boolean>,\n @Inject(TUI_SHEET_SCROLL) scroll$: Observable<number>,\n @Inject(TUI_SCROLL_REF) {nativeElement}: ElementRef<HTMLElement>,\n ) {\n scroll$\n .pipe(\n map(y => Math.floor(y) > elementRef.nativeElement.offsetTop),\n distinctUntilChanged(),\n withLatestFrom(dragged$),\n map(([above, dragged]) => !above && !dragged),\n filter(Boolean),\n throttleTime(100),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n nativeElement.style.overflow = 'hidden';\n nativeElement.classList.remove('_stuck'); // iOS\n nativeElement.scrollTop = elementRef.nativeElement.offsetTop;\n\n setTimeout(() => {\n nativeElement.style.overflow = '';\n }, 100);\n });\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Inject,\n Input,\n NgZone,\n QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport {EMPTY_QUERY, TUI_IS_IOS, tuiPure, tuiZonefull} from '@taiga-ui/cdk';\nimport {tuiSlideInTop} from '@taiga-ui/core';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {fakeSmoothScroll} from '../../ios.hacks';\nimport {TuiSheet, TuiSheetRequiredProps} from '../../sheet';\nimport {TUI_SHEET_SCROLL} from '../../sheet-tokens';\nimport {TUI_SHEET_ID} from '../sheet-heading/sheet-heading.component';\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TUI_SHEET_PROVIDERS} from './sheet.providers';\n\n@Component({\n selector: 'tui-sheet',\n templateUrl: './sheet.template.html',\n styleUrls: ['./sheet.style.less'],\n providers: TUI_SHEET_PROVIDERS,\n animations: [tuiSlideInTop],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n role: 'dialog',\n '[attr.aria-labelledby]': 'id',\n '[class._ios]': 'isIos',\n // '[class._stuck]': 'true', // Initially disable snapping for Firefox\n '[$.class._stuck]': 'stuck$',\n '($.class._stuck)': 'stuck$',\n },\n})\nexport class TuiSheetComponent<T> implements TuiSheetRequiredProps<T>, AfterViewInit {\n @ViewChild('sheet')\n private readonly sheet?: ElementRef<HTMLElement>;\n\n @ViewChild('content')\n private readonly content?: ElementRef<HTMLElement>;\n\n @ViewChildren('stops')\n private readonly stopsRefs: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n @Input()\n item!: TuiSheet<T>;\n\n id = '';\n\n readonly stuck$ = this.scroll$.pipe(map(y => Math.floor(y) > this.contentTop));\n\n constructor(\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_IS_IOS) readonly isIos: boolean,\n @Inject(TUI_MORE_WORD) readonly moreWord$: Observable<string>,\n ) {}\n\n get stops(): readonly number[] {\n return this.getStops(this.stopsRefs);\n }\n\n get imageStop(): number {\n return (this.item.imageSlide && this.stops[this.stops.length - 1]) || 0;\n }\n\n get imageHeight(): number {\n return this.contentTop - this.sheetTop;\n }\n\n @tuiPure\n get context(): TuiSheet<T> {\n return {\n ...this.item,\n scroll$: this.scroll$.pipe(tuiZonefull(this.ngZone)),\n };\n }\n\n @HostListener(TUI_SHEET_ID, ['$event.detail'])\n onId(id: string): void {\n this.id = id;\n }\n\n ngAfterViewInit(): void {\n const stops = [...this.stops, this.sheetTop, this.contentTop];\n\n this.elementRef.nativeElement.scrollTop = stops[this.item.initial];\n }\n\n scrollTo(top: number = this.sheetTop): void {\n const {nativeElement} = this.elementRef;\n\n if (this.isIos) {\n fakeSmoothScroll(nativeElement, top - nativeElement.scrollTop - 16);\n }\n\n nativeElement.scrollTo({top, behavior: 'smooth'});\n }\n\n close(): void {\n if (this.context.closeable) {\n this.context.$implicit.complete();\n }\n }\n\n private get contentTop(): number {\n return this.content?.nativeElement.offsetTop ?? Infinity;\n }\n\n private get sheetTop(): number {\n return this.sheet?.nativeElement.offsetTop ?? Infinity;\n }\n\n @tuiPure\n private getStops(stops: QueryList<ElementRef<HTMLElement>>): readonly number[] {\n return stops.map(\n ({nativeElement}) => nativeElement.offsetTop + nativeElement.clientHeight,\n );\n }\n}\n","<div\n class=\"t-bumpers\"\n (click)=\"close()\"\n>\n <div\n *ngFor=\"let stop of item.stops\"\n #stops\n class=\"t-bumper\"\n [style.marginTop]=\"stop\"\n ></div>\n</div>\n<div\n #sheet\n class=\"t-wrapper\"\n [class.t-wrapper_shadow]=\"!item.image\"\n>\n <header\n *ngIf=\"item.image\"\n class=\"t-top\"\n [tuiSheetTop]=\"imageStop\"\n >\n <img\n *polymorpheusOutlet=\"item.image as src; context: context\"\n alt=\"\"\n class=\"t-image\"\n [src]=\"src\"\n />\n </header>\n <section\n #content\n tuiSheetStop\n class=\"t-sheet\"\n >\n <div class=\"t-bar\"></div>\n <tui-sheet-bar>\n <button\n type=\"button\"\n class=\"t-button\"\n [title]=\"moreWord$ | async\"\n (click)=\"scrollTo(stops[1])\"\n ></button>\n </tui-sheet-bar>\n <div class=\"t-content\">\n <h2\n *polymorpheusOutlet=\"item.content as text; context: context\"\n tuiSheetHeading\n class=\"t-heading\"\n >\n {{ text }}\n </h2>\n </div>\n </section>\n</div>\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiSheet} from './sheet';\n\nexport interface TuiSheetOptions<I = undefined, O = unknown> {\n readonly image: PolymorpheusContent<TuiSheet<O, I>>;\n readonly imageSlide: boolean;\n readonly stops: readonly string[];\n readonly initial: number;\n readonly offset: number;\n readonly closeable: boolean;\n readonly overlay: boolean;\n readonly data: I;\n}\n\nexport const TUI_SHEET_DEFAULT_OPTIONS: Omit<TuiSheetOptions, 'data'> = {\n image: ``,\n imageSlide: true,\n stops: [],\n initial: 0,\n offset: 16,\n closeable: true,\n overlay: false,\n};\n\n/**\n * Default parameters for sheet component\n */\nexport const TUI_SHEET_OPTIONS = new InjectionToken<Omit<TuiSheetOptions, 'data'>>(\n `[TUI_SHEET_OPTIONS]`,\n {\n factory: () => ({...TUI_SHEET_DEFAULT_OPTIONS}),\n },\n);\n","import {Inject, Injectable} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, EMPTY, Observable} from 'rxjs';\n\nimport {TuiSheet} from './sheet';\nimport {TUI_SHEET_OPTIONS, TuiSheetOptions} from './sheet-options';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiSheetService {\n readonly sheets$ = new BehaviorSubject<Array<TuiSheet<any, any>>>([]);\n\n constructor(@Inject(TUI_SHEET_OPTIONS) private readonly options: TuiSheetOptions) {}\n\n open<G>(\n content: PolymorpheusContent<TuiSheet<G>>,\n options: Partial<TuiSheetOptions> = {},\n ): Observable<G> {\n return new Observable($implicit => {\n const completeWith = (result: G): void => {\n $implicit.next(result);\n $implicit.complete();\n };\n const sheet: TuiSheet<any> = {\n ...this.options,\n ...options,\n content,\n completeWith,\n $implicit,\n scroll$: EMPTY,\n };\n\n this.sheets$.next([...this.sheets$.value, sheet]);\n\n return () => {\n this.sheets$.next(this.sheets$.value.filter(item => item !== sheet));\n };\n });\n }\n}\n","import {ContentChild, Directive, Inject, Input, NgZone} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n ALWAYS_FALSE_HANDLER,\n tuiClamp,\n tuiIsFalsy,\n tuiPure,\n tuiZonefull,\n} from '@taiga-ui/cdk';\nimport {Observable, race, timer} from 'rxjs';\nimport {\n debounceTime,\n distinctUntilChanged,\n filter,\n map,\n startWith,\n switchMap,\n take,\n} from 'rxjs/operators';\n\nimport {TuiSheetComponent} from '../../components/sheet/sheet.component';\nimport {TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n// Safety offset for shadow\nconst OFFSET = 16;\n\n@Directive({\n selector: '[tuiSheetWrapper]',\n exportAs: 'tuiSheetWrapper',\n})\nexport class TuiSheetWrapperDirective {\n @ContentChild(TuiSheetComponent)\n private readonly sheet?: TuiSheetComponent<unknown>;\n\n @ContentChild(TuiSheetComponent, {read: TUI_SHEET_DRAGGED, static: true})\n private readonly dragged$!: Observable<boolean>;\n\n @ContentChild(TuiSheetComponent, {read: TUI_SHEET_SCROLL, static: true})\n private readonly scroll$!: Observable<number>;\n\n @Input()\n tuiSheetWrapper = 16;\n\n constructor(\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(WINDOW) private readonly windowRef: Window,\n ) {}\n\n @tuiPure\n get overlay$(): Observable<boolean> {\n return this.scroll$.pipe(\n map(y => y + 16 > this.windowRef.innerHeight - this.tuiSheetWrapper),\n distinctUntilChanged(),\n tuiZonefull(this.ngZone),\n );\n }\n\n @tuiPure\n get visible$(): Observable<boolean> {\n return processDragged(this.dragged$, this.scroll$).pipe(\n distinctUntilChanged(),\n tuiZonefull(this.ngZone),\n );\n }\n\n @tuiPure\n get height$(): Observable<number | null> {\n return this.scroll$.pipe(map(this.getHeight.bind(this)));\n }\n\n private getHeight(value: number): number | null {\n return this.sheet?.context.overlay\n ? null\n : tuiClamp(\n this.withImage(value) + OFFSET,\n OFFSET,\n this.windowRef.innerHeight,\n );\n }\n\n private withImage(value: number): number {\n return !this.sheet?.imageStop || Math.floor(value) > this.sheet.imageStop\n ? value\n : value - this.sheet.imageHeight;\n }\n}\n\nfunction processDragged(\n dragged$: Observable<boolean>,\n scroll$: Observable<unknown>,\n): Observable<boolean> {\n const touchstart$ = dragged$.pipe(filter(Boolean));\n const touchend$ = dragged$.pipe(filter(tuiIsFalsy));\n const race$ = race(scroll$, timer(100)).pipe(\n debounceTime(200),\n take(1),\n map(ALWAYS_FALSE_HANDLER),\n );\n\n return touchstart$.pipe(\n switchMap(() =>\n touchend$.pipe(\n switchMap(() => race$),\n startWith(true),\n ),\n ),\n startWith(false),\n );\n}\n","import {Directive, ElementRef, Inject, NgZone, Output} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiIfMap, tuiIsFalsy, tuiTypedFromEvent, tuiZonefull} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {distinctUntilChanged, filter, startWith} from 'rxjs/operators';\n\nimport {TuiSheetComponent} from '../../components/sheet/sheet.component';\nimport {TUI_SHEET_CLOSE} from '../../components/sheet-heading/sheet-heading.component';\nimport {TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n@Directive({\n selector: 'tui-sheet[close]',\n})\nexport class TuiSheetCloseDirective {\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n readonly close: Observable<unknown> = merge(\n tuiTypedFromEvent(this.elementRef.nativeElement, TUI_SHEET_CLOSE),\n this.dragged$.pipe(\n startWith(false),\n tuiIfMap(\n () =>\n this.scroll$.pipe(startWith(this.elementRef.nativeElement.scrollTop)),\n tuiIsFalsy,\n ),\n filter(y => this.sheet.item?.closeable && this.shouldClose(y)),\n distinctUntilChanged(),\n tuiZonefull(this.ngZone),\n ),\n );\n\n constructor(\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_SHEET_DRAGGED) private readonly dragged$: Observable<boolean>,\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiSheetComponent) private readonly sheet: TuiSheetComponent<unknown>,\n ) {}\n\n private shouldClose(scrollTop: number): boolean {\n const height = Math.min(\n this.windowRef.innerHeight,\n this.elementRef.nativeElement.scrollHeight - this.windowRef.innerHeight,\n );\n const min = Math.min(height, this.sheet.stops[0] || Infinity);\n\n return scrollTop < min / 2;\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {TUI_WINDOW_HEIGHT} from '@taiga-ui/cdk';\nimport {TUI_ANIMATION_OPTIONS, tuiFadeIn, tuiSlideInTop} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TuiSheet} from '../../sheet';\nimport {TuiSheetService} from '../../sheet.service';\n\n@Component({\n selector: 'tui-sheets-host',\n templateUrl: './sheets-host.template.html',\n styleUrls: ['./sheets-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiSlideInTop, tuiFadeIn],\n})\nexport class TuiSheetsHostComponent {\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) readonly options: AnimationOptions,\n @Inject(TuiSheetService) readonly service: TuiSheetService,\n @Inject(TUI_WINDOW_HEIGHT) readonly height$: Observable<number>,\n ) {}\n\n close({closeable, $implicit}: TuiSheet<unknown>): void {\n if (closeable) {\n $implicit.complete();\n }\n }\n}\n","<ng-container *ngIf=\"service.sheets$ | async as items\">\n <div\n *ngFor=\"let item of items\"\n #wrapper=\"tuiSheetWrapper\"\n class=\"t-wrapper\"\n [@tuiSlideInTop]=\"options\"\n [@tuiFadeIn]=\"options\"\n [tuiSheetWrapper]=\"item.offset\"\n [class.t-wrapper_closeable]=\"item.closeable\"\n [class.t-wrapper_overlay]=\"item.overlay || (wrapper.overlay$ | async)\"\n [class.t-wrapper_visible]=\"wrapper.visible$ | async\"\n [style.height.px]=\"wrapper.height$ | async\"\n (click.self)=\"close(item)\"\n >\n <tui-sheet\n tuiScrollRef\n tuiOverscroll=\"all\"\n [style.height.px]=\"((height$ | async) || 0) - item.offset\"\n [item]=\"item\"\n (close)=\"close(item)\"\n ></tui-sheet>\n </div>\n <div\n class=\"t-overlay\"\n (click)=\"close(items[0])\"\n ></div>\n</ng-container>\n","import {\n ChangeDetectorRef,\n Directive,\n Inject,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport {tuiDefaultProp, tuiIfMap, tuiRequiredSetter} from '@taiga-ui/cdk';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {endWith, ignoreElements, share} from 'rxjs/operators';\n\nimport {TuiSheet} from './sheet';\nimport {TuiSheetService} from './sheet.service';\nimport {TuiSheetOptions} from './sheet-options';\n\n@Directive({\n selector: 'ng-template[tuiSheet]',\n})\nexport class TuiSheetDirective extends PolymorpheusTemplate<TuiSheet<never>> {\n private readonly open$ = new Subject<boolean>();\n\n @Input('tuiSheetOptions')\n @tuiDefaultProp()\n options: Partial<TuiSheetOptions> = {};\n\n @Input()\n @tuiRequiredSetter()\n set tuiSheet(open: boolean) {\n this.open$.next(open);\n }\n\n @Output()\n readonly tuiSheetChange = this.open$.pipe(\n tuiIfMap(() =>\n this.service.open(this, this.options).pipe(ignoreElements(), endWith(false)),\n ),\n share(),\n );\n\n constructor(\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TemplateRef) templateRef: TemplateRef<TuiSheet<never>>,\n @Inject(TuiSheetService) private readonly service: TuiSheetService,\n ) {\n super(templateRef, changeDetectorRef);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule, NO_ERRORS_SCHEMA} from '@angular/core';\nimport {TuiLetModule, TuiOverscrollModule} from '@taiga-ui/cdk';\nimport {TuiButtonModule, TuiScrollbarModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiSheetComponent} from './components/sheet/sheet.component';\nimport {TuiSheetBarComponent} from './components/sheet-bar/sheet-bar.component';\nimport {TuiSheetHeadingComponent} from './components/sheet-heading/sheet-heading.component';\nimport {TuiSheetsHostComponent} from './components/sheets-host/sheets-host.component';\nimport {TuiSheetCloseDirective} from './directives/sheet-close/sheet-close.directive';\nimport {TuiSheetStopDirective} from './directives/sheet-stop/sheet-stop.directive';\nimport {TuiSheetTopDirective} from './directives/sheet-top/sheet-top.directive';\nimport {TuiSheetWrapperDirective} from './directives/sheet-wrapper/sheet-wrapper.directive';\nimport {TuiSheetDirective} from './sheet.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiButtonModule,\n TuiOverscrollModule,\n TuiScrollbarModule,\n ],\n declarations: [\n TuiSheetsHostComponent,\n TuiSheetComponent,\n TuiSheetBarComponent,\n TuiSheetHeadingComponent,\n TuiSheetTopDirective,\n TuiSheetDirective,\n TuiSheetWrapperDirective,\n TuiSheetCloseDirective,\n TuiSheetStopDirective,\n ],\n exports: [\n TuiSheetsHostComponent,\n TuiSheetComponent,\n TuiSheetHeadingComponent,\n TuiSheetDirective,\n ],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class TuiSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","OFFSET","i1.TuiSheetBarComponent","i2.TuiSheetHeadingComponent","i3","i4.TuiSheetTopDirective","i6.TuiSheetStopDirective","i1.TuiSheetComponent","i3.TuiSheetWrapperDirective","i4.TuiSheetCloseDirective","i5","i6"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-mobile-components-sheet.js","sources":["../../../projects/addon-mobile/components/sheet/ios.hacks.ts","../../../projects/addon-mobile/components/sheet/sheet-tokens.ts","../../../projects/addon-mobile/components/sheet/components/sheet-heading/sheet-heading.component.ts","../../../projects/addon-mobile/components/sheet/components/sheet-heading/sheet-heading.template.html","../../../projects/addon-mobile/components/sheet/components/sheet/sheet.providers.ts","../../../projects/addon-mobile/components/sheet/components/sheet-bar/sheet-bar.component.ts","../../../projects/addon-mobile/components/sheet/components/sheet-bar/sheet-bar.template.html","../../../projects/addon-mobile/components/sheet/directives/sheet-top/sheet-top.directive.ts","../../../projects/addon-mobile/components/sheet/directives/sheet-stop/sheet-stop.directive.ts","../../../projects/addon-mobile/components/sheet/components/sheet/sheet.component.ts","../../../projects/addon-mobile/components/sheet/components/sheet/sheet.template.html","../../../projects/addon-mobile/components/sheet/sheet-options.ts","../../../projects/addon-mobile/components/sheet/sheet.service.ts","../../../projects/addon-mobile/components/sheet/directives/sheet-wrapper/sheet-wrapper.directive.ts","../../../projects/addon-mobile/components/sheet/directives/sheet-close/sheet-close.directive.ts","../../../projects/addon-mobile/components/sheet/components/sheets-host/sheets-host.component.ts","../../../projects/addon-mobile/components/sheet/components/sheets-host/sheets-host.template.html","../../../projects/addon-mobile/components/sheet/sheet.directive.ts","../../../projects/addon-mobile/components/sheet/sheet.module.ts","../../../projects/addon-mobile/components/sheet/taiga-ui-addon-mobile-components-sheet.ts"],"sourcesContent":["import {NgZone} from '@angular/core';\nimport {tuiTypedFromEvent, tuiZonefree} from '@taiga-ui/cdk';\nimport {concat, merge, Observable, zip} from 'rxjs';\nimport {delay, map, share, switchMap, take, takeUntil} from 'rxjs/operators';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function iosScrollFactory(\n element: HTMLElement,\n documentRef: Document,\n ngZone: NgZone,\n): Observable<number> {\n const load$ = tuiTypedFromEvent(element, `load`, {capture: true});\n const touchstart$ = tuiTypedFromEvent(element, `touchstart`, {passive: true});\n const touchmove$ = tuiTypedFromEvent(documentRef, `touchmove`, {passive: true});\n const touchend$ = tuiTypedFromEvent(documentRef, `touchend`);\n const scroll$ = tuiTypedFromEvent(element, `scroll`).pipe(\n map(() => element.scrollTop),\n );\n const result$ = merge(\n load$.pipe(\n delay(0),\n map(() => element.scrollTop),\n ),\n touchstart$.pipe(\n switchMap(({touches}) => {\n const {screenY} = touches[0];\n const {scrollTop} = element;\n\n return concat(\n // Sometimes touch is triggered without scroll in iOS, filter that\n zip(touchmove$, scroll$).pipe(\n map(([{touches}]) => scrollTop + screenY - touches[0].screenY),\n takeUntil(touchend$),\n ),\n scroll$,\n );\n }),\n ),\n );\n\n return concat(scroll$.pipe(take(1)), result$).pipe(tuiZonefree(ngZone), share());\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function fakeSmoothScroll({style}: HTMLElement, offset: number): void {\n style.transition = `none`;\n style.transform = `scaleX(-1) translate3d(0, ${offset}px, 0)`;\n\n setTimeout(() => {\n style.transition = ``;\n style.transform = ``;\n });\n}\n","import {InjectionToken} from '@angular/core';\n\nimport {TuiSheetRequiredProps} from './sheet';\n\n/**\n * Sheet main component\n */\nexport const TUI_SHEET = new InjectionToken<TuiSheetRequiredProps>(`[TUI_SHEET]`);\n\n/**\n * Current scrollTop of a sheet\n */\nexport const TUI_SHEET_SCROLL = new InjectionToken<number>(`[TUI_SHEET_SCROLL]`);\n\n/**\n * The sheet is being dragged\n */\nexport const TUI_SHEET_DRAGGED = new InjectionToken<boolean>(`[TUI_SHEET_DRAGGED]`);\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n} from '@angular/core';\nimport {TuiIdService} from '@taiga-ui/cdk';\nimport {TUI_CLOSE_WORD} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nexport const TUI_SHEET_CLOSE = 'tui-sheet-close';\nexport const TUI_SHEET_ID = 'tui-sheet-id';\n\n@Component({\n selector: '[tuiSheetHeading]',\n templateUrl: './sheet-heading.template.html',\n styleUrls: ['./sheet-heading.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSheetHeadingComponent implements AfterViewInit {\n readonly id = this.idService.generate();\n\n constructor(\n @Inject(TuiIdService) private readonly idService: TuiIdService,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n ) {}\n\n ngAfterViewInit(): void {\n this.elementRef.nativeElement.dispatchEvent(\n new CustomEvent(TUI_SHEET_ID, {bubbles: true, detail: this.id}),\n );\n }\n\n onClick(): void {\n this.elementRef.nativeElement.dispatchEvent(\n new CustomEvent(TUI_SHEET_CLOSE, {bubbles: true}),\n );\n }\n}\n","<button\n tuiIconButton\n size=\"xs\"\n appearance=\"icon\"\n type=\"button\"\n icon=\"tuiIconCloseLarge\"\n class=\"t-close\"\n [title]=\"closeWord$ | async\"\n (click)=\"onClick()\"\n></button>\n<span [id]=\"id\">\n <ng-content></ng-content>\n</span>\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, forwardRef, NgZone, Provider} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n ALWAYS_TRUE_HANDLER,\n TUI_IS_IOS,\n tuiTypedFromEvent,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core';\nimport {merge, Observable} from 'rxjs';\nimport {map, share} from 'rxjs/operators';\n\nimport {iosScrollFactory} from '../../ios.hacks';\nimport {TUI_SHEET, TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiSheetComponent} from './sheet.component';\n\nexport const TUI_SHEET_PROVIDERS: Provider[] = [\n {\n provide: TUI_SHEET_DRAGGED,\n deps: [ElementRef],\n useFactory: ({nativeElement}: ElementRef<HTMLElement>): Observable<boolean> => {\n return merge(\n tuiTypedFromEvent(nativeElement, `touchstart`, {passive: true}).pipe(\n map(ALWAYS_TRUE_HANDLER),\n ),\n tuiTypedFromEvent(nativeElement, `touchend`).pipe(\n map(ALWAYS_FALSE_HANDLER),\n ),\n );\n },\n },\n {\n provide: TUI_SHEET_SCROLL,\n deps: [ElementRef, NgZone, DOCUMENT, TUI_IS_IOS],\n useFactory: (\n {nativeElement}: ElementRef<HTMLElement>,\n ngZone: NgZone,\n documentRef: Document,\n isIos: boolean,\n ): Observable<number> => {\n return isIos\n ? iosScrollFactory(nativeElement, documentRef, ngZone)\n : merge(\n tuiTypedFromEvent(nativeElement, `scroll`),\n tuiTypedFromEvent(nativeElement, `load`, {capture: true}),\n ).pipe(\n map(() => nativeElement.scrollTop),\n tuiZonefree(ngZone),\n share(),\n );\n },\n },\n {\n provide: TUI_SCROLL_REF,\n useExisting: ElementRef,\n },\n {\n provide: TUI_SHEET,\n useExisting: forwardRef(() => TuiSheetComponent),\n },\n];\n","import {ChangeDetectionStrategy, Component, Inject, NgZone} from '@angular/core';\nimport {tuiClamp} from '@taiga-ui/cdk';\nimport {tuiZonefulMap} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TuiSheetRequiredProps} from '../../sheet';\nimport {TUI_SHEET, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n@Component({\n selector: 'tui-sheet-bar',\n templateUrl: './sheet-bar.template.html',\n styleUrls: ['./sheet-bar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSheetBarComponent {\n readonly rotate$ = this.scroll$.pipe(\n tuiZonefulMap(y => tuiClamp(10 - (y - this.stop) / 5, 0, 10), this.ngZone),\n );\n\n constructor(\n @Inject(TUI_SHEET) private readonly sheet: TuiSheetRequiredProps,\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(NgZone) private readonly ngZone: NgZone,\n ) {}\n\n private get stop(): number {\n return this.sheet.stops[0] || 0;\n }\n}\n","<!-- eslint-disable @html-eslint/no-inline-styles -->\n<ng-container *tuiLet=\"rotate$ | async as deg\">\n <div\n style=\"transform: rotate(-{{ deg }}deg)\"\n class=\"t-bar\"\n ></div>\n <ng-content *ngIf=\"deg\"></ng-content>\n <div\n style=\"transform: rotate({{ deg }}deg)\"\n class=\"t-bar\"\n ></div>\n</ng-container>\n","import {Directive, Inject, Input} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiClamp, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiSheetRequiredProps} from '../../sheet';\nimport {TUI_SHEET, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n// So that borders get rounded when image is visible for at least 10px\nconst OFFSET = 10;\n\n@Directive({\n selector: '[tuiSheetTop]',\n host: {\n '[$.style.transform]': 'transform$',\n '($.style.transform)': 'transform$',\n '[$.class._rounded]': 'rounded$',\n '($.class._rounded)': 'rounded$',\n '[$.class._clickthrough]': 'clickthrough$',\n '($.class._clickthrough)': 'clickthrough$',\n },\n})\nexport class TuiSheetTopDirective {\n @Input('tuiSheetTop')\n @tuiDefaultProp()\n stop = 0;\n\n readonly transform$ = this.scroll$.pipe(\n map(y => `translateY(${this.getY(y)}%) scaleX(-1)`),\n );\n\n readonly rounded$ = this.scroll$.pipe(map(y => y < this.stop + OFFSET));\n\n readonly clickthrough$ = this.scroll$.pipe(map(y => !!Math.round(this.getY(y))));\n\n constructor(\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(TUI_SHEET)\n private readonly component: TuiSheetRequiredProps,\n @Inject(WINDOW) private readonly windowRef: Window,\n ) {}\n\n private getY(scrollTop: number): number {\n const value = scrollTop - this.stop;\n const total = this.windowRef.innerHeight - this.component.item.offset - this.stop;\n\n return this.stop && tuiClamp(100 - (value / total) * 100, 0, 100);\n }\n}\n","import {Directive, ElementRef, Inject, Self} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n takeUntil,\n throttleTime,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n@Directive({\n selector: '[tuiSheetStop]',\n providers: [TuiDestroyService],\n})\nexport class TuiSheetStopDirective {\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(TUI_SHEET_DRAGGED) dragged$: Observable<boolean>,\n @Inject(TUI_SHEET_SCROLL) scroll$: Observable<number>,\n @Inject(TUI_SCROLL_REF) {nativeElement}: ElementRef<HTMLElement>,\n ) {\n scroll$\n .pipe(\n map(y => Math.floor(y) > elementRef.nativeElement.offsetTop),\n distinctUntilChanged(),\n withLatestFrom(dragged$),\n map(([above, dragged]) => !above && !dragged),\n filter(Boolean),\n throttleTime(100),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n nativeElement.style.overflow = 'hidden';\n nativeElement.classList.remove('_stuck'); // iOS\n nativeElement.scrollTop = elementRef.nativeElement.offsetTop;\n\n setTimeout(() => {\n nativeElement.style.overflow = '';\n }, 100);\n });\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Inject,\n Input,\n NgZone,\n QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport {EMPTY_QUERY, TUI_IS_IOS, tuiPure, tuiZonefull} from '@taiga-ui/cdk';\nimport {tuiSlideInTop} from '@taiga-ui/core';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {fakeSmoothScroll} from '../../ios.hacks';\nimport {TuiSheet, TuiSheetRequiredProps} from '../../sheet';\nimport {TUI_SHEET_SCROLL} from '../../sheet-tokens';\nimport {TUI_SHEET_ID} from '../sheet-heading/sheet-heading.component';\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TUI_SHEET_PROVIDERS} from './sheet.providers';\n\n@Component({\n selector: 'tui-sheet',\n templateUrl: './sheet.template.html',\n styleUrls: ['./sheet.style.less'],\n providers: TUI_SHEET_PROVIDERS,\n animations: [tuiSlideInTop],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n role: 'dialog',\n '[attr.aria-labelledby]': 'id',\n '[class._ios]': 'isIos',\n // '[class._stuck]': 'true', // Initially disable snapping for Firefox\n '[$.class._stuck]': 'stuck$',\n '($.class._stuck)': 'stuck$',\n },\n})\nexport class TuiSheetComponent<T> implements TuiSheetRequiredProps<T>, AfterViewInit {\n @ViewChild('sheet')\n private readonly sheet?: ElementRef<HTMLElement>;\n\n @ViewChild('content')\n private readonly content?: ElementRef<HTMLElement>;\n\n @ViewChildren('stops')\n private readonly stopsRefs: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n @Input()\n item!: TuiSheet<T>;\n\n id = '';\n\n readonly stuck$ = this.scroll$.pipe(map(y => Math.floor(y) > this.contentTop));\n\n constructor(\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_IS_IOS) readonly isIos: boolean,\n @Inject(TUI_MORE_WORD) readonly moreWord$: Observable<string>,\n ) {}\n\n get stops(): readonly number[] {\n return this.getStops(this.stopsRefs);\n }\n\n get imageStop(): number {\n return (this.item.imageSlide && this.stops[this.stops.length - 1]) || 0;\n }\n\n get imageHeight(): number {\n return this.contentTop - this.sheetTop;\n }\n\n @tuiPure\n get context(): TuiSheet<T> {\n return {\n ...this.item,\n scroll$: this.scroll$.pipe(tuiZonefull(this.ngZone)),\n };\n }\n\n @HostListener(TUI_SHEET_ID, ['$event.detail'])\n onId(id: string): void {\n this.id = id;\n }\n\n ngAfterViewInit(): void {\n const stops = [...this.stops, this.sheetTop, this.contentTop];\n\n this.elementRef.nativeElement.scrollTop = stops[this.item.initial];\n }\n\n scrollTo(top: number = this.sheetTop): void {\n const {nativeElement} = this.elementRef;\n\n if (this.isIos) {\n fakeSmoothScroll(nativeElement, top - nativeElement.scrollTop - 16);\n }\n\n nativeElement.scrollTo({top, behavior: 'smooth'});\n }\n\n close(): void {\n if (this.context.closeable) {\n this.context.$implicit.complete();\n }\n }\n\n private get contentTop(): number {\n return this.content?.nativeElement.offsetTop ?? Infinity;\n }\n\n private get sheetTop(): number {\n return this.sheet?.nativeElement.offsetTop ?? Infinity;\n }\n\n @tuiPure\n private getStops(stops: QueryList<ElementRef<HTMLElement>>): readonly number[] {\n return stops.map(\n ({nativeElement}) => nativeElement.offsetTop + nativeElement.clientHeight,\n );\n }\n}\n","<div\n class=\"t-bumpers\"\n (click)=\"close()\"\n>\n <div\n *ngFor=\"let stop of item.stops\"\n #stops\n class=\"t-bumper\"\n [style.marginTop]=\"stop\"\n ></div>\n</div>\n<div\n #sheet\n class=\"t-wrapper\"\n [class.t-wrapper_shadow]=\"!item.image\"\n>\n <header\n *ngIf=\"item.image\"\n class=\"t-top\"\n [tuiSheetTop]=\"imageStop\"\n >\n <img\n *polymorpheusOutlet=\"item.image as src; context: context\"\n alt=\"\"\n class=\"t-image\"\n [src]=\"src\"\n />\n </header>\n <section\n #content\n tuiSheetStop\n class=\"t-sheet\"\n >\n <div class=\"t-bar\"></div>\n <tui-sheet-bar>\n <button\n type=\"button\"\n class=\"t-button\"\n [title]=\"moreWord$ | async\"\n (click)=\"scrollTo(stops[1])\"\n ></button>\n </tui-sheet-bar>\n <div class=\"t-content\">\n <h2\n *polymorpheusOutlet=\"item.content as text; context: context\"\n tuiSheetHeading\n class=\"t-heading\"\n >\n {{ text }}\n </h2>\n </div>\n </section>\n</div>\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiSheet} from './sheet';\n\nexport interface TuiSheetOptions<I = undefined, O = unknown> {\n readonly image: PolymorpheusContent<TuiSheet<O, I>>;\n readonly imageSlide: boolean;\n readonly stops: readonly string[];\n readonly initial: number;\n readonly offset: number;\n readonly closeable: boolean;\n readonly overlay: boolean;\n readonly data: I;\n}\n\nexport const TUI_SHEET_DEFAULT_OPTIONS: Omit<TuiSheetOptions, 'data'> = {\n image: ``,\n imageSlide: true,\n stops: [],\n initial: 0,\n offset: 16,\n closeable: true,\n overlay: false,\n};\n\n/**\n * Default parameters for sheet component\n */\nexport const TUI_SHEET_OPTIONS = new InjectionToken<Omit<TuiSheetOptions, 'data'>>(\n `[TUI_SHEET_OPTIONS]`,\n {\n factory: () => ({...TUI_SHEET_DEFAULT_OPTIONS}),\n },\n);\n","import {Inject, Injectable} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, EMPTY, Observable} from 'rxjs';\n\nimport {TuiSheet} from './sheet';\nimport {TUI_SHEET_OPTIONS, TuiSheetOptions} from './sheet-options';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiSheetService {\n readonly sheets$ = new BehaviorSubject<Array<TuiSheet<any, any>>>([]);\n\n constructor(@Inject(TUI_SHEET_OPTIONS) private readonly options: TuiSheetOptions) {}\n\n open<G>(\n content: PolymorpheusContent<TuiSheet<G>>,\n options: Partial<TuiSheetOptions> = {},\n ): Observable<G> {\n return new Observable($implicit => {\n const completeWith = (result: G): void => {\n $implicit.next(result);\n $implicit.complete();\n };\n const sheet: TuiSheet<any> = {\n ...this.options,\n ...options,\n content,\n completeWith,\n $implicit,\n scroll$: EMPTY,\n };\n\n this.sheets$.next([...this.sheets$.value, sheet]);\n\n return () => {\n this.sheets$.next(this.sheets$.value.filter(item => item !== sheet));\n };\n });\n }\n}\n","import {ContentChild, Directive, Inject, Input, NgZone} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n ALWAYS_FALSE_HANDLER,\n tuiClamp,\n tuiIsFalsy,\n tuiPure,\n tuiZonefull,\n} from '@taiga-ui/cdk';\nimport {Observable, race, timer} from 'rxjs';\nimport {\n debounceTime,\n distinctUntilChanged,\n filter,\n map,\n startWith,\n switchMap,\n take,\n} from 'rxjs/operators';\n\nimport {TuiSheetComponent} from '../../components/sheet/sheet.component';\nimport {TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n// Safety offset for shadow\nconst OFFSET = 16;\n\n@Directive({\n selector: '[tuiSheetWrapper]',\n exportAs: 'tuiSheetWrapper',\n})\nexport class TuiSheetWrapperDirective {\n @ContentChild(TuiSheetComponent)\n private readonly sheet?: TuiSheetComponent<unknown>;\n\n @ContentChild(TuiSheetComponent, {read: TUI_SHEET_DRAGGED, static: true})\n private readonly dragged$!: Observable<boolean>;\n\n @ContentChild(TuiSheetComponent, {read: TUI_SHEET_SCROLL, static: true})\n private readonly scroll$!: Observable<number>;\n\n @Input()\n tuiSheetWrapper = 16;\n\n constructor(\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(WINDOW) private readonly windowRef: Window,\n ) {}\n\n @tuiPure\n get overlay$(): Observable<boolean> {\n return this.scroll$.pipe(\n map(y => y + 16 > this.windowRef.innerHeight - this.tuiSheetWrapper),\n distinctUntilChanged(),\n tuiZonefull(this.ngZone),\n );\n }\n\n @tuiPure\n get visible$(): Observable<boolean> {\n return processDragged(this.dragged$, this.scroll$).pipe(\n distinctUntilChanged(),\n tuiZonefull(this.ngZone),\n );\n }\n\n @tuiPure\n get height$(): Observable<number | null> {\n return this.scroll$.pipe(map(this.getHeight.bind(this)));\n }\n\n private getHeight(value: number): number | null {\n return this.sheet?.context.overlay\n ? null\n : tuiClamp(\n this.withImage(value) + OFFSET,\n OFFSET,\n this.windowRef.innerHeight,\n );\n }\n\n private withImage(value: number): number {\n return !this.sheet?.imageStop || Math.floor(value) > this.sheet.imageStop\n ? value\n : value - this.sheet.imageHeight;\n }\n}\n\nfunction processDragged(\n dragged$: Observable<boolean>,\n scroll$: Observable<unknown>,\n): Observable<boolean> {\n const touchstart$ = dragged$.pipe(filter(Boolean));\n const touchend$ = dragged$.pipe(filter(tuiIsFalsy));\n const race$ = race(scroll$, timer(100)).pipe(\n debounceTime(200),\n take(1),\n map(ALWAYS_FALSE_HANDLER),\n );\n\n return touchstart$.pipe(\n switchMap(() =>\n touchend$.pipe(\n switchMap(() => race$),\n startWith(true),\n ),\n ),\n startWith(false),\n );\n}\n","import {Directive, ElementRef, Inject, NgZone, Output} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiIfMap, tuiIsFalsy, tuiTypedFromEvent, tuiZonefull} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {distinctUntilChanged, filter, startWith} from 'rxjs/operators';\n\nimport {TuiSheetComponent} from '../../components/sheet/sheet.component';\nimport {TUI_SHEET_CLOSE} from '../../components/sheet-heading/sheet-heading.component';\nimport {TUI_SHEET_DRAGGED, TUI_SHEET_SCROLL} from '../../sheet-tokens';\n\n@Directive({\n selector: 'tui-sheet[close]',\n})\nexport class TuiSheetCloseDirective {\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n readonly close: Observable<unknown> = merge(\n tuiTypedFromEvent(this.elementRef.nativeElement, TUI_SHEET_CLOSE),\n this.dragged$.pipe(\n startWith(false),\n tuiIfMap(\n () =>\n this.scroll$.pipe(startWith(this.elementRef.nativeElement.scrollTop)),\n tuiIsFalsy,\n ),\n filter(y => this.sheet.item?.closeable && this.shouldClose(y)),\n distinctUntilChanged(),\n tuiZonefull(this.ngZone),\n ),\n );\n\n constructor(\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_SHEET_DRAGGED) private readonly dragged$: Observable<boolean>,\n @Inject(TUI_SHEET_SCROLL) private readonly scroll$: Observable<number>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiSheetComponent) private readonly sheet: TuiSheetComponent<unknown>,\n ) {}\n\n private shouldClose(scrollTop: number): boolean {\n const height = Math.min(\n this.windowRef.innerHeight,\n this.elementRef.nativeElement.scrollHeight - this.windowRef.innerHeight,\n );\n const min = Math.min(height, this.sheet.stops[0] || Infinity);\n\n return scrollTop < min / 2;\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {TUI_WINDOW_HEIGHT} from '@taiga-ui/cdk';\nimport {TUI_ANIMATION_OPTIONS, tuiFadeIn, tuiSlideInTop} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TuiSheet} from '../../sheet';\nimport {TuiSheetService} from '../../sheet.service';\n\n@Component({\n selector: 'tui-sheets-host',\n templateUrl: './sheets-host.template.html',\n styleUrls: ['./sheets-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiSlideInTop, tuiFadeIn],\n})\nexport class TuiSheetsHostComponent {\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) readonly options: AnimationOptions,\n @Inject(TuiSheetService) readonly service: TuiSheetService,\n @Inject(TUI_WINDOW_HEIGHT) readonly height$: Observable<number>,\n ) {}\n\n close({closeable, $implicit}: TuiSheet<unknown>): void {\n if (closeable) {\n $implicit.complete();\n }\n }\n}\n","<ng-container *ngIf=\"service.sheets$ | async as items\">\n <div\n *ngFor=\"let item of items\"\n #wrapper=\"tuiSheetWrapper\"\n class=\"t-wrapper\"\n [@tuiSlideInTop]=\"options\"\n [@tuiFadeIn]=\"options\"\n [tuiSheetWrapper]=\"item.offset\"\n [class.t-wrapper_closeable]=\"item.closeable\"\n [class.t-wrapper_overlay]=\"item.overlay || (wrapper.overlay$ | async)\"\n [class.t-wrapper_visible]=\"wrapper.visible$ | async\"\n [style.height.px]=\"wrapper.height$ | async\"\n (click.self)=\"close(item)\"\n >\n <tui-sheet\n tuiScrollRef\n tuiOverscroll=\"all\"\n [style.height.px]=\"((height$ | async) || 0) - item.offset\"\n [item]=\"item\"\n (close)=\"close(item)\"\n ></tui-sheet>\n </div>\n <div\n class=\"t-overlay\"\n (click)=\"close(items[0])\"\n ></div>\n</ng-container>\n","import {\n ChangeDetectorRef,\n Directive,\n Inject,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport {tuiDefaultProp, tuiIfMap, tuiRequiredSetter} from '@taiga-ui/cdk';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {endWith, ignoreElements, share} from 'rxjs/operators';\n\nimport {TuiSheet} from './sheet';\nimport {TuiSheetService} from './sheet.service';\nimport {TuiSheetOptions} from './sheet-options';\n\n@Directive({\n selector: 'ng-template[tuiSheet]',\n})\nexport class TuiSheetDirective extends PolymorpheusTemplate<TuiSheet<never>> {\n private readonly open$ = new Subject<boolean>();\n\n @Input('tuiSheetOptions')\n @tuiDefaultProp()\n options: Partial<TuiSheetOptions> = {};\n\n @Input()\n @tuiRequiredSetter()\n set tuiSheet(open: boolean) {\n this.open$.next(open);\n }\n\n @Output()\n readonly tuiSheetChange = this.open$.pipe(\n tuiIfMap(() =>\n this.service.open(this, this.options).pipe(ignoreElements(), endWith(false)),\n ),\n share(),\n );\n\n constructor(\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TemplateRef) templateRef: TemplateRef<TuiSheet<never>>,\n @Inject(TuiSheetService) private readonly service: TuiSheetService,\n ) {\n super(templateRef, changeDetectorRef);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule, NO_ERRORS_SCHEMA} from '@angular/core';\nimport {TuiLetModule, TuiOverscrollModule} from '@taiga-ui/cdk';\nimport {TuiButtonModule, TuiScrollbarModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiSheetComponent} from './components/sheet/sheet.component';\nimport {TuiSheetBarComponent} from './components/sheet-bar/sheet-bar.component';\nimport {TuiSheetHeadingComponent} from './components/sheet-heading/sheet-heading.component';\nimport {TuiSheetsHostComponent} from './components/sheets-host/sheets-host.component';\nimport {TuiSheetCloseDirective} from './directives/sheet-close/sheet-close.directive';\nimport {TuiSheetStopDirective} from './directives/sheet-stop/sheet-stop.directive';\nimport {TuiSheetTopDirective} from './directives/sheet-top/sheet-top.directive';\nimport {TuiSheetWrapperDirective} from './directives/sheet-wrapper/sheet-wrapper.directive';\nimport {TuiSheetDirective} from './sheet.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiButtonModule,\n TuiOverscrollModule,\n TuiScrollbarModule,\n ],\n declarations: [\n TuiSheetsHostComponent,\n TuiSheetComponent,\n TuiSheetBarComponent,\n TuiSheetHeadingComponent,\n TuiSheetTopDirective,\n TuiSheetDirective,\n TuiSheetWrapperDirective,\n TuiSheetCloseDirective,\n TuiSheetStopDirective,\n ],\n exports: [\n TuiSheetsHostComponent,\n TuiSheetComponent,\n TuiSheetHeadingComponent,\n TuiSheetDirective,\n ],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class TuiSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","OFFSET","i1.TuiSheetBarComponent","i2.TuiSheetHeadingComponent","i3","i4.TuiSheetTopDirective","i6.TuiSheetStopDirective","i1.TuiSheetComponent","i3.TuiSheetWrapperDirective","i4.TuiSheetCloseDirective","i5","i6"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { AbstractTuiThemeSwitcher } from '@taiga-ui/cdk';
|
|
|
5
5
|
class TuiThemeAndroidComponent extends AbstractTuiThemeSwitcher {
|
|
6
6
|
}
|
|
7
7
|
TuiThemeAndroidComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeAndroidComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
-
TuiThemeAndroidComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiThemeAndroidComponent, selector: "tui-theme-android", usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: ["body{
|
|
8
|
+
TuiThemeAndroidComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiThemeAndroidComponent, selector: "tui-theme-android", usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: ["body{overscroll-behavior:none}*{outline:none;scrollbar-width:none;-webkit-tap-highlight-color:transparent}input,textarea,[contenteditable] *{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}::selection{background-color:transparent}.tui-island{padding:1rem;border-radius:.125rem;box-shadow:0 0 .125rem #0003,0 .0625rem .125rem #0003}.tui-island:before{display:none}a[tuiButton],a[tuiIconButton],button[tuiButton],button[tuiIconButton]{font-size:.875rem!important;font-weight:500;text-transform:uppercase;font-family:-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
9
9
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeAndroidComponent, decorators: [{
|
|
10
10
|
type: Component,
|
|
11
11
|
args: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-mobile-components-theme-android.js","sources":["../../../projects/addon-mobile/components/theme-android/theme-android.component.ts","../../../projects/addon-mobile/components/theme-android/theme-android.module.ts","../../../projects/addon-mobile/components/theme-android/taiga-ui-addon-mobile-components-theme-android.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\nimport {AbstractTuiThemeSwitcher} from '@taiga-ui/cdk';\n\n@Component({\n selector: 'tui-theme-android',\n styleUrls: ['./theme-android.style.less'],\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiThemeAndroidComponent extends AbstractTuiThemeSwitcher {}\n","import {NgModule} from '@angular/core';\n\nimport {TuiThemeAndroidComponent} from './theme-android.component';\n\n@NgModule({\n declarations: [TuiThemeAndroidComponent],\n exports: [TuiThemeAndroidComponent],\n})\nexport class TuiThemeAndroidModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAUM,MAAO,wBAAyB,SAAQ,wBAAwB,CAAA;;sHAAzD,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,gFAJvB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-mobile-components-theme-android.js","sources":["../../../projects/addon-mobile/components/theme-android/theme-android.component.ts","../../../projects/addon-mobile/components/theme-android/theme-android.module.ts","../../../projects/addon-mobile/components/theme-android/taiga-ui-addon-mobile-components-theme-android.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\nimport {AbstractTuiThemeSwitcher} from '@taiga-ui/cdk';\n\n@Component({\n selector: 'tui-theme-android',\n styleUrls: ['./theme-android.style.less'],\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiThemeAndroidComponent extends AbstractTuiThemeSwitcher {}\n","import {NgModule} from '@angular/core';\n\nimport {TuiThemeAndroidComponent} from './theme-android.component';\n\n@NgModule({\n declarations: [TuiThemeAndroidComponent],\n exports: [TuiThemeAndroidComponent],\n})\nexport class TuiThemeAndroidModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAUM,MAAO,wBAAyB,SAAQ,wBAAwB,CAAA;;sHAAzD,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,gFAJvB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,0nBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4FAIH,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;oBAC7B,SAAS,EAAE,CAAC,4BAA4B,CAAC;AACzC,oBAAA,QAAQ,EAAE,EAAE;oBACZ,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAClD,iBAAA,CAAA;;;MCDY,qBAAqB,CAAA;;mHAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;oHAArB,qBAAqB,EAAA,YAAA,EAAA,CAHf,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAC7B,wBAAwB,CAAA,EAAA,CAAA,CAAA;oHAEzB,qBAAqB,EAAA,CAAA,CAAA;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,YAAY,EAAE,CAAC,wBAAwB,CAAC;oBACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;AACtC,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
|
|
@@ -5,7 +5,7 @@ import { AbstractTuiThemeSwitcher } from '@taiga-ui/cdk';
|
|
|
5
5
|
class TuiThemeIosComponent extends AbstractTuiThemeSwitcher {
|
|
6
6
|
}
|
|
7
7
|
TuiThemeIosComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeIosComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
-
TuiThemeIosComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiThemeIosComponent, selector: "tui-theme-ios", usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: ["html{touch-action:manipulation}body{
|
|
8
|
+
TuiThemeIosComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiThemeIosComponent, selector: "tui-theme-ios", usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: ["html{touch-action:manipulation}body{overscroll-behavior:none}*{outline:none;scrollbar-width:none;-webkit-tap-highlight-color:transparent}input,textarea,[contenteditable] *{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}::selection{background-color:transparent}.tui-island{padding:1rem;border-radius:.75rem;box-shadow:0 .625rem 1.875rem #0003}.tui-island:before{display:none}a[tuiButton],a[tuiIconButton],button[tuiButton],button[tuiIconButton]{border-radius:.5rem;font-size:1.0625rem!important;font-family:-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
9
9
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeIosComponent, decorators: [{
|
|
10
10
|
type: Component,
|
|
11
11
|
args: [{
|