@taiga-ui/addon-mobile 2.40.0 → 2.42.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.
Files changed (106) hide show
  1. package/bundles/taiga-ui-addon-mobile-components-mobile-calendar.umd.js +2 -2
  2. package/bundles/taiga-ui-addon-mobile-components-mobile-calendar.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-mobile-components-mobile-calendar.umd.min.js +1 -1
  4. package/bundles/taiga-ui-addon-mobile-components-mobile-calendar.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-addon-mobile-components-mobile-dialog.umd.js +1 -1
  6. package/bundles/taiga-ui-addon-mobile-components-mobile-dialog.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-mobile-components-mobile-dialog.umd.min.js +1 -1
  8. package/bundles/taiga-ui-addon-mobile-components-mobile-dialog.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.js +1 -1
  10. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.js.map +1 -1
  11. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.min.js +1 -1
  12. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.js +3 -3
  14. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.js.map +1 -1
  15. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.min.js +2 -2
  16. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.js +1 -1
  18. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.js.map +1 -1
  19. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.min.js +1 -1
  20. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-addon-mobile-directives-mobile-tabs.umd.js +304 -0
  22. package/bundles/taiga-ui-addon-mobile-directives-mobile-tabs.umd.js.map +1 -0
  23. package/bundles/taiga-ui-addon-mobile-directives-mobile-tabs.umd.min.js +16 -0
  24. package/bundles/taiga-ui-addon-mobile-directives-mobile-tabs.umd.min.js.map +1 -0
  25. package/bundles/taiga-ui-addon-mobile-directives-ripple.umd.js +3 -1
  26. package/bundles/taiga-ui-addon-mobile-directives-ripple.umd.js.map +1 -1
  27. package/bundles/taiga-ui-addon-mobile-directives-ripple.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-addon-mobile-directives.umd.js +12 -4
  29. package/bundles/taiga-ui-addon-mobile-directives.umd.js.map +1 -1
  30. package/bundles/taiga-ui-addon-mobile-directives.umd.min.js +1 -1
  31. package/components/mobile-calendar/taiga-ui-addon-mobile-components-mobile-calendar.metadata.json +1 -1
  32. package/components/mobile-dialog/taiga-ui-addon-mobile-components-mobile-dialog.metadata.json +1 -1
  33. package/components/pull-to-refresh/taiga-ui-addon-mobile-components-pull-to-refresh.metadata.json +1 -1
  34. package/components/sheet/taiga-ui-addon-mobile-components-sheet.metadata.json +1 -1
  35. package/directives/index.d.ts +1 -0
  36. package/directives/mobile-tabs/index.d.ts +3 -0
  37. package/directives/mobile-tabs/mobile-tabs.component.d.ts +2 -0
  38. package/directives/mobile-tabs/mobile-tabs.directive.d.ts +7 -0
  39. package/directives/mobile-tabs/mobile-tabs.module.d.ts +2 -0
  40. package/directives/mobile-tabs/package.json +13 -0
  41. package/directives/mobile-tabs/taiga-ui-addon-mobile-directives-mobile-tabs.d.ts +4 -0
  42. package/directives/mobile-tabs/taiga-ui-addon-mobile-directives-mobile-tabs.metadata.json +1 -0
  43. package/directives/taiga-ui-addon-mobile-directives.metadata.json +1 -1
  44. package/esm2015/components/mobile-calendar/mobile-calendar.component.js +2 -2
  45. package/esm2015/components/mobile-calendar/mobile-calendar.providers.js +2 -2
  46. package/esm2015/components/mobile-dialog/mobile-dialog.component.js +2 -2
  47. package/esm2015/components/pull-to-refresh/loader-iOS/loader-iOS.component.js +2 -2
  48. package/esm2015/components/sheet/components/sheet/sheet.component.js +2 -2
  49. package/esm2015/components/sheet/components/sheet-bar/sheet-bar.component.js +2 -2
  50. package/esm2015/components/sheet/components/sheets-host/sheets-host.component.js +2 -2
  51. package/esm2015/directives/elastic-sticky/elastic-sticky.service.js +2 -2
  52. package/esm2015/directives/index.js +2 -1
  53. package/esm2015/directives/mobile-tabs/index.js +4 -0
  54. package/esm2015/directives/mobile-tabs/mobile-tabs.component.js +13 -0
  55. package/esm2015/directives/mobile-tabs/mobile-tabs.directive.js +46 -0
  56. package/esm2015/directives/mobile-tabs/mobile-tabs.module.js +15 -0
  57. package/esm2015/directives/mobile-tabs/taiga-ui-addon-mobile-directives-mobile-tabs.js +5 -0
  58. package/esm2015/directives/ripple/ripple.directive.js +4 -2
  59. package/esm5/components/mobile-calendar/mobile-calendar.component.js +2 -2
  60. package/esm5/components/mobile-calendar/mobile-calendar.providers.js +2 -2
  61. package/esm5/components/mobile-dialog/mobile-dialog.component.js +2 -2
  62. package/esm5/components/pull-to-refresh/loader-iOS/loader-iOS.component.js +2 -2
  63. package/esm5/components/sheet/components/sheet/sheet.component.js +2 -2
  64. package/esm5/components/sheet/components/sheet-bar/sheet-bar.component.js +2 -2
  65. package/esm5/components/sheet/components/sheets-host/sheets-host.component.js +2 -2
  66. package/esm5/directives/elastic-sticky/elastic-sticky.service.js +2 -2
  67. package/esm5/directives/index.js +2 -1
  68. package/esm5/directives/mobile-tabs/index.js +4 -0
  69. package/esm5/directives/mobile-tabs/mobile-tabs.component.js +16 -0
  70. package/esm5/directives/mobile-tabs/mobile-tabs.directive.js +51 -0
  71. package/esm5/directives/mobile-tabs/mobile-tabs.module.js +18 -0
  72. package/esm5/directives/mobile-tabs/taiga-ui-addon-mobile-directives-mobile-tabs.js +5 -0
  73. package/esm5/directives/ripple/ripple.directive.js +4 -2
  74. package/fesm2015/taiga-ui-addon-mobile-components-mobile-calendar.js +2 -2
  75. package/fesm2015/taiga-ui-addon-mobile-components-mobile-calendar.js.map +1 -1
  76. package/fesm2015/taiga-ui-addon-mobile-components-mobile-dialog.js +1 -1
  77. package/fesm2015/taiga-ui-addon-mobile-components-mobile-dialog.js.map +1 -1
  78. package/fesm2015/taiga-ui-addon-mobile-components-pull-to-refresh.js +1 -1
  79. package/fesm2015/taiga-ui-addon-mobile-components-pull-to-refresh.js.map +1 -1
  80. package/fesm2015/taiga-ui-addon-mobile-components-sheet.js +3 -3
  81. package/fesm2015/taiga-ui-addon-mobile-components-sheet.js.map +1 -1
  82. package/fesm2015/taiga-ui-addon-mobile-directives-elastic-sticky.js +2 -2
  83. package/fesm2015/taiga-ui-addon-mobile-directives-elastic-sticky.js.map +1 -1
  84. package/fesm2015/taiga-ui-addon-mobile-directives-mobile-tabs.js +71 -0
  85. package/fesm2015/taiga-ui-addon-mobile-directives-mobile-tabs.js.map +1 -0
  86. package/fesm2015/taiga-ui-addon-mobile-directives-ripple.js +3 -1
  87. package/fesm2015/taiga-ui-addon-mobile-directives-ripple.js.map +1 -1
  88. package/fesm2015/taiga-ui-addon-mobile-directives.js +1 -0
  89. package/fesm2015/taiga-ui-addon-mobile-directives.js.map +1 -1
  90. package/fesm5/taiga-ui-addon-mobile-components-mobile-calendar.js +2 -2
  91. package/fesm5/taiga-ui-addon-mobile-components-mobile-calendar.js.map +1 -1
  92. package/fesm5/taiga-ui-addon-mobile-components-mobile-dialog.js +1 -1
  93. package/fesm5/taiga-ui-addon-mobile-components-mobile-dialog.js.map +1 -1
  94. package/fesm5/taiga-ui-addon-mobile-components-pull-to-refresh.js +1 -1
  95. package/fesm5/taiga-ui-addon-mobile-components-pull-to-refresh.js.map +1 -1
  96. package/fesm5/taiga-ui-addon-mobile-components-sheet.js +3 -3
  97. package/fesm5/taiga-ui-addon-mobile-components-sheet.js.map +1 -1
  98. package/fesm5/taiga-ui-addon-mobile-directives-elastic-sticky.js +2 -2
  99. package/fesm5/taiga-ui-addon-mobile-directives-elastic-sticky.js.map +1 -1
  100. package/fesm5/taiga-ui-addon-mobile-directives-mobile-tabs.js +82 -0
  101. package/fesm5/taiga-ui-addon-mobile-directives-mobile-tabs.js.map +1 -0
  102. package/fesm5/taiga-ui-addon-mobile-directives-ripple.js +3 -1
  103. package/fesm5/taiga-ui-addon-mobile-directives-ripple.js.map +1 -1
  104. package/fesm5/taiga-ui-addon-mobile-directives.js +1 -0
  105. package/fesm5/taiga-ui-addon-mobile-directives.js.map +1 -1
  106. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-mobile-directives-elastic-sticky.js","sources":["ng://@taiga-ui/addon-mobile/directives/elastic-sticky/elastic-sticky.service.ts","ng://@taiga-ui/addon-mobile/directives/elastic-sticky/elastic-sticky.directive.ts","ng://@taiga-ui/addon-mobile/directives/elastic-sticky/elastic-sticky.module.ts","ng://@taiga-ui/addon-mobile/directives/elastic-sticky/taiga-ui-addon-mobile-directives-elastic-sticky.ts"],"sourcesContent":["import {ElementRef, Inject, Injectable, NgZone, Optional} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n getElementOffset,\n TuiDestroyService,\n tuiZoneOptimized,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {SCROLL_REF_SELECTOR, TUI_SCROLL_REF} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n map,\n skip,\n startWith,\n switchMap,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\n// @dynamic\n@Injectable()\nexport class TuiElasticStickyService extends Observable<number> {\n constructor(\n @Optional()\n @Inject(TUI_SCROLL_REF)\n scrollRef: ElementRef<HTMLElement> | null,\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(WINDOW) windowRef: Window,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n super(subscriber =>\n ngZone.onStable\n .pipe(\n take(1),\n switchMap(() => {\n const closest = nativeElement.closest(SCROLL_REF_SELECTOR);\n const host = scrollRef?.nativeElement ?? closest;\n const {offsetHeight} = nativeElement;\n const offsetTop = this.getInitialOffset(\n host || windowRef,\n nativeElement,\n );\n\n return typedFromEvent(host || windowRef, 'scroll').pipe(\n map(() =>\n Math.max(\n 1 -\n Math.max(\n Math.round(\n host\n ? host.scrollTop\n : windowRef.pageYOffset,\n ) - offsetTop,\n 0,\n ) /\n offsetHeight,\n 0,\n ),\n ),\n );\n }),\n startWith(1),\n distinctUntilChanged(),\n takeUntil(destroy$),\n skip(1),\n tuiZoneOptimized(ngZone),\n )\n .subscribe(subscriber),\n );\n }\n\n private getInitialOffset(host: Element | Window, element: HTMLElement): number {\n // TODO: iframe warning\n return host instanceof Element\n ? getElementOffset(host, element).offsetTop\n : element.getBoundingClientRect().top;\n }\n}\n","import {Directive, Inject, Output} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nimport {TuiElasticStickyService} from './elastic-sticky.service';\n\n@Directive({\n selector: '[tuiElasticSticky]',\n exportAs: 'tuiElasticSticky',\n providers: [TuiElasticStickyService, TuiDestroyService],\n})\nexport class TuiElasticStickyDirective {\n @Output()\n readonly tuiElasticSticky: Observable<number>;\n\n constructor(\n @Inject(TuiElasticStickyService) elasticStickyService: TuiElasticStickyService,\n ) {\n this.tuiElasticSticky = elasticStickyService;\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiElasticStickyDirective} from './elastic-sticky.directive';\n\n@NgModule({\n declarations: [TuiElasticStickyDirective],\n exports: [TuiElasticStickyDirective],\n})\nexport class TuiElasticStickyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-mobile-directives-elastic-sticky.js","sources":["ng://@taiga-ui/addon-mobile/directives/elastic-sticky/elastic-sticky.service.ts","ng://@taiga-ui/addon-mobile/directives/elastic-sticky/elastic-sticky.directive.ts","ng://@taiga-ui/addon-mobile/directives/elastic-sticky/elastic-sticky.module.ts","ng://@taiga-ui/addon-mobile/directives/elastic-sticky/taiga-ui-addon-mobile-directives-elastic-sticky.ts"],"sourcesContent":["import {ElementRef, Inject, Injectable, NgZone, Optional} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n getElementOffset,\n TuiDestroyService,\n tuiZoneOptimized,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {SCROLL_REF_SELECTOR, TUI_SCROLL_REF} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n map,\n skip,\n startWith,\n switchMap,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\n// @dynamic\n@Injectable()\nexport class TuiElasticStickyService extends Observable<number> {\n constructor(\n @Optional()\n @Inject(TUI_SCROLL_REF)\n scrollRef: ElementRef<HTMLElement> | null,\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(WINDOW) windowRef: Window,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n super(subscriber =>\n ngZone.onStable\n .pipe(\n take(1),\n switchMap(() => {\n const closest = nativeElement.closest(SCROLL_REF_SELECTOR);\n const host = scrollRef?.nativeElement ?? closest;\n const {offsetHeight} = nativeElement;\n const offsetTop = this.getInitialOffset(\n host || windowRef,\n nativeElement,\n );\n\n return typedFromEvent(host || windowRef, 'scroll').pipe(\n map(() =>\n Math.max(\n 1 -\n Math.max(\n Math.round(\n host\n ? host.scrollTop\n : windowRef.pageYOffset,\n ) - offsetTop,\n 0,\n ) /\n offsetHeight,\n 0,\n ),\n ),\n );\n }),\n startWith(1),\n distinctUntilChanged(),\n skip(1),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n )\n .subscribe(subscriber),\n );\n }\n\n private getInitialOffset(host: Element | Window, element: HTMLElement): number {\n // TODO: iframe warning\n return host instanceof Element\n ? getElementOffset(host, element).offsetTop\n : element.getBoundingClientRect().top;\n }\n}\n","import {Directive, Inject, Output} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nimport {TuiElasticStickyService} from './elastic-sticky.service';\n\n@Directive({\n selector: '[tuiElasticSticky]',\n exportAs: 'tuiElasticSticky',\n providers: [TuiElasticStickyService, TuiDestroyService],\n})\nexport class TuiElasticStickyDirective {\n @Output()\n readonly tuiElasticSticky: Observable<number>;\n\n constructor(\n @Inject(TuiElasticStickyService) elasticStickyService: TuiElasticStickyService,\n ) {\n this.tuiElasticSticky = elasticStickyService;\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiElasticStickyDirective} from './elastic-sticky.directive';\n\n@NgModule({\n declarations: [TuiElasticStickyDirective],\n exports: [TuiElasticStickyDirective],\n})\nexport class TuiElasticStickyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ import { __decorate, __param } from 'tslib';
2
+ import { Component, ViewEncapsulation, Inject, HostBinding, Directive, NgModule } from '@angular/core';
3
+ import { TUI_IS_IOS, TUI_IS_ANDROID, TuiDirectiveStylesService } from '@taiga-ui/cdk';
4
+ import { TUI_TAB_MARGIN } from '@taiga-ui/kit';
5
+
6
+ var TuiMobileTabsComponent = /** @class */ (function () {
7
+ function TuiMobileTabsComponent() {
8
+ }
9
+ TuiMobileTabsComponent = __decorate([
10
+ Component({
11
+ template: '',
12
+ encapsulation: ViewEncapsulation.None,
13
+ styles: ["[tuiMobileTabs] tui-tabs[data-platform=android],tui-tabs[tuiMobileTabs][data-platform=android]{height:auto}[tuiMobileTabs] tui-tabs[data-platform=android] tui-underline,tui-tabs[tuiMobileTabs][data-platform=android] tui-underline{box-shadow:inset 0 -.1875rem var(--tui-link)}[tuiMobileTabs] tui-tabs[data-platform=android] [tuiTab],tui-tabs[tuiMobileTabs][data-platform=android] [tuiTab]{transition-property:opacity;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;height:3rem;flex:1;flex-shrink:0;justify-content:center;text-transform:uppercase;color:var(--tui-base-09);opacity:.5;font-size:.875rem;font-weight:500;letter-spacing:-.008125rem;font-family:-apple-system,BlinkMacSystemFont,Roboto,'Helvetica Neue',sans-serif}[tuiMobileTabs] tui-tabs[data-platform=android] [tuiTab]:hover,tui-tabs[tuiMobileTabs][data-platform=android] [tuiTab]:hover{box-shadow:none}[tuiMobileTabs] tui-tabs[data-platform=android] [tuiTab]._active,tui-tabs[tuiMobileTabs][data-platform=android] [tuiTab]._active{opacity:1;color:var(--tui-base-09)}[tuiMobileTabs] tui-tabs[data-platform=ios],tui-tabs[tuiMobileTabs][data-platform=ios]{height:auto;border:2px solid transparent;border-radius:.5625rem;background:var(--tui-link);box-shadow:none}[tuiMobileTabs] tui-tabs[data-platform=ios] tui-underline,tui-tabs[tuiMobileTabs][data-platform=ios] tui-underline{border-radius:.4375rem;background:var(--tui-base-01);box-shadow:0 .1875rem .0625rem rgba(0,0,0,.04),0 .1875rem .5rem rgba(0,0,0,.12)}[tuiMobileTabs] tui-tabs[data-platform=ios] [tuiTab],tui-tabs[tuiMobileTabs][data-platform=ios] [tuiTab]{height:1.75rem;flex:1;flex-shrink:0;justify-content:center;color:var(--tui-base-01);opacity:1;font-size:.8125rem;font-weight:500;letter-spacing:-.005rem;font-family:-apple-system,BlinkMacSystemFont,Roboto,'Helvetica Neue',sans-serif}[tuiMobileTabs] tui-tabs[data-platform=ios] [tuiTab]:hover,tui-tabs[tuiMobileTabs][data-platform=ios] [tuiTab]:hover{box-shadow:none}[tuiMobileTabs] tui-tabs[data-platform=ios] [tuiTab]._active,tui-tabs[tuiMobileTabs][data-platform=ios] [tuiTab]._active{font-size:.875rem;font-weight:600;color:var(--tui-link)}"]
14
+ })
15
+ ], TuiMobileTabsComponent);
16
+ return TuiMobileTabsComponent;
17
+ }());
18
+
19
+ // @dynamic
20
+ var TuiMobileTabsDirective = /** @class */ (function () {
21
+ function TuiMobileTabsDirective(isIos, isAndroid, directiveStyles) {
22
+ this.isIos = isIos;
23
+ this.isAndroid = isAndroid;
24
+ directiveStyles.addComponent(TuiMobileTabsComponent);
25
+ }
26
+ Object.defineProperty(TuiMobileTabsDirective.prototype, "platform", {
27
+ get: function () {
28
+ if (this.isIos) {
29
+ return 'ios';
30
+ }
31
+ if (this.isAndroid) {
32
+ return 'android';
33
+ }
34
+ return null;
35
+ },
36
+ enumerable: true,
37
+ configurable: true
38
+ });
39
+ TuiMobileTabsDirective.ctorParameters = function () { return [
40
+ { type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_IOS,] }] },
41
+ { type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_ANDROID,] }] },
42
+ { type: TuiDirectiveStylesService, decorators: [{ type: Inject, args: [TuiDirectiveStylesService,] }] }
43
+ ]; };
44
+ __decorate([
45
+ HostBinding('attr.data-platform')
46
+ ], TuiMobileTabsDirective.prototype, "platform", null);
47
+ TuiMobileTabsDirective = __decorate([
48
+ Directive({
49
+ selector: '[tuiMobileTabs]',
50
+ providers: [
51
+ {
52
+ provide: TUI_TAB_MARGIN,
53
+ useValue: 0,
54
+ },
55
+ ],
56
+ }),
57
+ __param(0, Inject(TUI_IS_IOS)),
58
+ __param(1, Inject(TUI_IS_ANDROID)),
59
+ __param(2, Inject(TuiDirectiveStylesService))
60
+ ], TuiMobileTabsDirective);
61
+ return TuiMobileTabsDirective;
62
+ }());
63
+
64
+ var TuiMobileTabsModule = /** @class */ (function () {
65
+ function TuiMobileTabsModule() {
66
+ }
67
+ TuiMobileTabsModule = __decorate([
68
+ NgModule({
69
+ declarations: [TuiMobileTabsDirective, TuiMobileTabsComponent],
70
+ exports: [TuiMobileTabsDirective, TuiMobileTabsComponent],
71
+ entryComponents: [TuiMobileTabsComponent],
72
+ })
73
+ ], TuiMobileTabsModule);
74
+ return TuiMobileTabsModule;
75
+ }());
76
+
77
+ /**
78
+ * Generated bundle index. Do not edit.
79
+ */
80
+
81
+ export { TuiMobileTabsComponent, TuiMobileTabsDirective, TuiMobileTabsModule };
82
+ //# sourceMappingURL=taiga-ui-addon-mobile-directives-mobile-tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-addon-mobile-directives-mobile-tabs.js","sources":["ng://@taiga-ui/addon-mobile/directives/mobile-tabs/mobile-tabs.component.ts","ng://@taiga-ui/addon-mobile/directives/mobile-tabs/mobile-tabs.directive.ts","ng://@taiga-ui/addon-mobile/directives/mobile-tabs/mobile-tabs.module.ts","ng://@taiga-ui/addon-mobile/directives/mobile-tabs/taiga-ui-addon-mobile-directives-mobile-tabs.ts"],"sourcesContent":["import {Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n template: '',\n styleUrls: ['mobile-tabs.style.less'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class TuiMobileTabsComponent {}\n","import {Directive, HostBinding, Inject} from '@angular/core';\nimport {TUI_IS_ANDROID, TUI_IS_IOS, TuiDirectiveStylesService} from '@taiga-ui/cdk';\nimport {TUI_TAB_MARGIN} from '@taiga-ui/kit';\n\nimport {TuiMobileTabsComponent} from './mobile-tabs.component';\n\n// @dynamic\n@Directive({\n selector: '[tuiMobileTabs]',\n providers: [\n {\n provide: TUI_TAB_MARGIN,\n useValue: 0,\n },\n ],\n})\nexport class TuiMobileTabsDirective {\n constructor(\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n @Inject(TUI_IS_ANDROID) private readonly isAndroid: boolean,\n @Inject(TuiDirectiveStylesService) directiveStyles: TuiDirectiveStylesService,\n ) {\n directiveStyles.addComponent(TuiMobileTabsComponent);\n }\n\n @HostBinding('attr.data-platform')\n get platform(): 'ios' | 'android' | null {\n if (this.isIos) {\n return 'ios';\n }\n\n if (this.isAndroid) {\n return 'android';\n }\n\n return null;\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiMobileTabsComponent} from './mobile-tabs.component';\nimport {TuiMobileTabsDirective} from './mobile-tabs.directive';\n\n@NgModule({\n declarations: [TuiMobileTabsDirective, TuiMobileTabsComponent],\n exports: [TuiMobileTabsDirective, TuiMobileTabsComponent],\n entryComponents: [TuiMobileTabsComponent],\n})\nexport class TuiMobileTabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;IAOA;KAAsC;IAAzB,sBAAsB;QALlC,SAAS,CAAC;YACP,QAAQ,EAAE,EAAE;YAEZ,aAAa,EAAE,iBAAiB,CAAC,IAAI;;SACxC,CAAC;OACW,sBAAsB,CAAG;IAAD,6BAAC;CAAtC;;ACDA;;IAWI,gCACyC,KAAc,EACV,SAAkB,EACxB,eAA0C;QAFxC,UAAK,GAAL,KAAK,CAAS;QACV,cAAS,GAAT,SAAS,CAAS;QAG3D,eAAe,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;KACxD;IAGD,sBAAI,4CAAQ;aAAZ;YACI,IAAI,IAAI,CAAC,KAAK,EAAE;gBACZ,OAAO,KAAK,CAAC;aAChB;YAED,IAAI,IAAI,CAAC,SAAS,EAAE;gBAChB,OAAO,SAAS,CAAC;aACpB;YAED,OAAO,IAAI,CAAC;SACf;;;OAAA;;8CAlBI,MAAM,SAAC,UAAU;8CACjB,MAAM,SAAC,cAAc;gBAC8B,yBAAyB,uBAA5E,MAAM,SAAC,yBAAyB;;IAMrC;QADC,WAAW,CAAC,oBAAoB,CAAC;0DAWjC;IApBQ,sBAAsB;QATlC,SAAS,CAAC;YACP,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,cAAc;oBACvB,QAAQ,EAAE,CAAC;iBACd;aACJ;SACJ,CAAC;QAGO,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;QAClB,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;QACtB,WAAA,MAAM,CAAC,yBAAyB,CAAC,CAAA;OAJ7B,sBAAsB,CAqBlC;IAAD,6BAAC;CArBD;;;ICNA;KAAmC;IAAtB,mBAAmB;QAL/B,QAAQ,CAAC;YACN,YAAY,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;YAC9D,OAAO,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;YACzD,eAAe,EAAE,CAAC,sBAAsB,CAAC;SAC5C,CAAC;OACW,mBAAmB,CAAG;IAAD,0BAAC;CAAnC;;ACVA;;;;;;"}
@@ -67,7 +67,9 @@ var TuiRippleDirective = /** @class */ (function () {
67
67
  start$
68
68
  .pipe(mergeMap(function (ripple) {
69
69
  var animationEndOn$ = typedFromEvent(ripple, 'animationend');
70
- return race(timer(TOUCH_MOVE_DELAY).pipe(mapTo(false)), touchEnd$.pipe(mapTo(true))).pipe(take(1), takeUntil(touchMove$), tap(function () {
70
+ return race(timer(TOUCH_MOVE_DELAY).pipe(mapTo(false)), touchEnd$.pipe(mapTo(true))).pipe(take(1),
71
+ // eslint-disable-next-line rxjs/no-unsafe-takeuntil
72
+ takeUntil(touchMove$), tap(function () {
71
73
  renderer.setStyle(ripple, 'background', _this.tuiRipple || null);
72
74
  renderer.appendChild(nativeElement, ripple);
73
75
  }), switchMap(function (isTap) {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-mobile-directives-ripple.js","sources":["ng://@taiga-ui/addon-mobile/directives/ripple/ripple.providers.ts","ng://@taiga-ui/addon-mobile/directives/ripple/ripple.directive.ts","ng://@taiga-ui/addon-mobile/directives/ripple/ripple.module.ts","ng://@taiga-ui/addon-mobile/directives/ripple/taiga-ui-addon-mobile-directives-ripple.ts"],"sourcesContent":["import {ElementRef, InjectionToken, Provider, Renderer2} from '@angular/core';\nimport {\n isPresent,\n TUI_IS_IOS,\n TUI_TOUCH_SUPPORTED,\n TuiDestroyService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {EMPTY, Observable} from 'rxjs';\nimport {filter, map, takeUntil} from 'rxjs/operators';\n\nexport const RIPPLE_ON = 'tuiRippleOn';\nexport const RIPPLE_OFF = 'tuiRippleOff';\nexport const TUI_RIPPLE_START = new InjectionToken<Observable<HTMLElement>>(\n 'Stream of ripple elements to add',\n);\nexport const TUI_RIPPLE_END = new InjectionToken<Observable<HTMLElement>>(\n 'Stream of ripple elements to remove',\n);\nexport const TUI_RIPPLE_PROVIDERS: Provider[] = [\n TuiDestroyService,\n {\n provide: TUI_RIPPLE_START,\n deps: [TUI_TOUCH_SUPPORTED, TUI_IS_IOS, ElementRef, Renderer2],\n useFactory: rippleStartFactory,\n },\n {\n provide: TUI_RIPPLE_END,\n deps: [TUI_TOUCH_SUPPORTED, TUI_IS_IOS, ElementRef, TuiDestroyService],\n useFactory: rippleEndFactory,\n },\n];\n\nexport function rippleStartFactory(\n touchSupported: boolean,\n isIOS: boolean,\n {nativeElement}: ElementRef<HTMLElement>,\n renderer: Renderer2,\n): Observable<HTMLElement> {\n return isIOS || !touchSupported\n ? EMPTY\n : typedFromEvent(nativeElement, 'touchstart').pipe(\n map(({touches}) => {\n const {clientX, clientY} = touches[touches.length - 1];\n const {width, height, top, left} =\n nativeElement.getBoundingClientRect();\n const radius = Math.sqrt(width * width + height * height);\n const dimension = radius * 2;\n const x = clientX - left - radius;\n const y = clientY - top - radius;\n const ripple = renderer.createElement('div');\n\n renderer.addClass(ripple, 'tui-ripple');\n renderer.setAttribute(\n ripple,\n 'style',\n `\n width: ${dimension}px;\n height: ${dimension}px;\n left: ${x}px;\n top: ${y}px;\n animation-name: ${RIPPLE_ON};\n `,\n );\n\n return ripple;\n }),\n );\n}\n\nexport function rippleEndFactory(\n touchSupported: boolean,\n isIOS: boolean,\n {nativeElement}: ElementRef<HTMLElement>,\n destroy$: Observable<void>,\n): Observable<EventTarget> {\n return isIOS || !touchSupported\n ? EMPTY\n : typedFromEvent(nativeElement, 'animationend').pipe(\n filter(({animationName}) => animationName === RIPPLE_OFF),\n map(({target}) => target),\n filter(isPresent),\n takeUntil(destroy$),\n );\n}\n","import {Directive, ElementRef, Inject, Input, Renderer2} from '@angular/core';\nimport {\n TuiDestroyService,\n TuiDirectiveStylesService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {Observable, race, timer} from 'rxjs';\nimport {\n mapTo,\n mergeMap,\n switchMap,\n switchMapTo,\n take,\n takeUntil,\n tap,\n} from 'rxjs/operators';\n\nimport {\n RIPPLE_OFF,\n RIPPLE_ON,\n TUI_RIPPLE_END,\n TUI_RIPPLE_PROVIDERS,\n TUI_RIPPLE_START,\n} from './ripple.providers';\n\nconst TOUCH_MOVE_DELAY = 100;\nconst STYLE = `\n@keyframes ${RIPPLE_ON} {\n from {\n transform: scale(0);\n opacity: 0.12;\n }\n\n to {\n transform: none;\n opacity: 0.12;\n }\n}\n\n@keyframes ${RIPPLE_OFF} {\n from {\n transform: none;\n opacity: 0.12;\n }\n\n to {\n transform: none;\n opacity: 0;\n }\n}\n\n*[tuiRipple] {\n position: relative;\n overflow: hidden;\n}\n\n.tui-ripple {\n position: absolute;\n border-radius: 100%;\n background: currentColor;\n z-index: 100;\n transform: scale(0);\n animation-duration: 450ms;\n animation-fill-mode: forwards;\n pointer-events: none;\n}\n`;\n\n@Directive({\n selector: '[tuiRipple]',\n providers: TUI_RIPPLE_PROVIDERS,\n})\nexport class TuiRippleDirective {\n @Input()\n tuiRipple?: string;\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(TuiDirectiveStylesService) directiveStyles: TuiDirectiveStylesService,\n @Inject(Renderer2) renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(TUI_RIPPLE_START) start$: Observable<HTMLElement>,\n @Inject(TUI_RIPPLE_END) end$: Observable<EventTarget>,\n ) {\n directiveStyles.addStyle(STYLE, 'TuiRippleDirective');\n\n const touchEnd$ = typedFromEvent(nativeElement, 'touchend');\n const touchMove$ = typedFromEvent(nativeElement, 'touchmove');\n\n end$.subscribe(element => {\n renderer.removeChild(nativeElement, element);\n });\n start$\n .pipe(\n mergeMap(ripple => {\n const animationEndOn$ = typedFromEvent(ripple, 'animationend');\n\n return race(\n timer(TOUCH_MOVE_DELAY).pipe(mapTo(false)),\n touchEnd$.pipe(mapTo(true)),\n ).pipe(\n take(1),\n takeUntil(touchMove$),\n tap(() => {\n renderer.setStyle(\n ripple,\n 'background',\n this.tuiRipple || null,\n );\n renderer.appendChild(nativeElement, ripple);\n }),\n switchMap(isTap =>\n isTap\n ? animationEndOn$\n : race<unknown>(\n touchEnd$.pipe(switchMapTo(animationEndOn$)),\n animationEndOn$.pipe(switchMapTo(touchEnd$)),\n ),\n ),\n mapTo(ripple),\n );\n }),\n takeUntil(destroy$),\n )\n .subscribe(element => {\n renderer.setStyle(element, 'animationName', RIPPLE_OFF);\n });\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiRippleDirective} from './ripple.directive';\n\n@NgModule({\n declarations: [TuiRippleDirective],\n exports: [TuiRippleDirective],\n})\nexport class TuiRippleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-mobile-directives-ripple.js","sources":["ng://@taiga-ui/addon-mobile/directives/ripple/ripple.providers.ts","ng://@taiga-ui/addon-mobile/directives/ripple/ripple.directive.ts","ng://@taiga-ui/addon-mobile/directives/ripple/ripple.module.ts","ng://@taiga-ui/addon-mobile/directives/ripple/taiga-ui-addon-mobile-directives-ripple.ts"],"sourcesContent":["import {ElementRef, InjectionToken, Provider, Renderer2} from '@angular/core';\nimport {\n isPresent,\n TUI_IS_IOS,\n TUI_TOUCH_SUPPORTED,\n TuiDestroyService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {EMPTY, Observable} from 'rxjs';\nimport {filter, map, takeUntil} from 'rxjs/operators';\n\nexport const RIPPLE_ON = 'tuiRippleOn';\nexport const RIPPLE_OFF = 'tuiRippleOff';\nexport const TUI_RIPPLE_START = new InjectionToken<Observable<HTMLElement>>(\n 'Stream of ripple elements to add',\n);\nexport const TUI_RIPPLE_END = new InjectionToken<Observable<HTMLElement>>(\n 'Stream of ripple elements to remove',\n);\nexport const TUI_RIPPLE_PROVIDERS: Provider[] = [\n TuiDestroyService,\n {\n provide: TUI_RIPPLE_START,\n deps: [TUI_TOUCH_SUPPORTED, TUI_IS_IOS, ElementRef, Renderer2],\n useFactory: rippleStartFactory,\n },\n {\n provide: TUI_RIPPLE_END,\n deps: [TUI_TOUCH_SUPPORTED, TUI_IS_IOS, ElementRef, TuiDestroyService],\n useFactory: rippleEndFactory,\n },\n];\n\nexport function rippleStartFactory(\n touchSupported: boolean,\n isIOS: boolean,\n {nativeElement}: ElementRef<HTMLElement>,\n renderer: Renderer2,\n): Observable<HTMLElement> {\n return isIOS || !touchSupported\n ? EMPTY\n : typedFromEvent(nativeElement, 'touchstart').pipe(\n map(({touches}) => {\n const {clientX, clientY} = touches[touches.length - 1];\n const {width, height, top, left} =\n nativeElement.getBoundingClientRect();\n const radius = Math.sqrt(width * width + height * height);\n const dimension = radius * 2;\n const x = clientX - left - radius;\n const y = clientY - top - radius;\n const ripple = renderer.createElement('div');\n\n renderer.addClass(ripple, 'tui-ripple');\n renderer.setAttribute(\n ripple,\n 'style',\n `\n width: ${dimension}px;\n height: ${dimension}px;\n left: ${x}px;\n top: ${y}px;\n animation-name: ${RIPPLE_ON};\n `,\n );\n\n return ripple;\n }),\n );\n}\n\nexport function rippleEndFactory(\n touchSupported: boolean,\n isIOS: boolean,\n {nativeElement}: ElementRef<HTMLElement>,\n destroy$: Observable<void>,\n): Observable<EventTarget> {\n return isIOS || !touchSupported\n ? EMPTY\n : typedFromEvent(nativeElement, 'animationend').pipe(\n filter(({animationName}) => animationName === RIPPLE_OFF),\n map(({target}) => target),\n filter(isPresent),\n takeUntil(destroy$),\n );\n}\n","import {Directive, ElementRef, Inject, Input, Renderer2} from '@angular/core';\nimport {\n TuiDestroyService,\n TuiDirectiveStylesService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {Observable, race, timer} from 'rxjs';\nimport {\n mapTo,\n mergeMap,\n switchMap,\n switchMapTo,\n take,\n takeUntil,\n tap,\n} from 'rxjs/operators';\n\nimport {\n RIPPLE_OFF,\n RIPPLE_ON,\n TUI_RIPPLE_END,\n TUI_RIPPLE_PROVIDERS,\n TUI_RIPPLE_START,\n} from './ripple.providers';\n\nconst TOUCH_MOVE_DELAY = 100;\nconst STYLE = `\n@keyframes ${RIPPLE_ON} {\n from {\n transform: scale(0);\n opacity: 0.12;\n }\n\n to {\n transform: none;\n opacity: 0.12;\n }\n}\n\n@keyframes ${RIPPLE_OFF} {\n from {\n transform: none;\n opacity: 0.12;\n }\n\n to {\n transform: none;\n opacity: 0;\n }\n}\n\n*[tuiRipple] {\n position: relative;\n overflow: hidden;\n}\n\n.tui-ripple {\n position: absolute;\n border-radius: 100%;\n background: currentColor;\n z-index: 100;\n transform: scale(0);\n animation-duration: 450ms;\n animation-fill-mode: forwards;\n pointer-events: none;\n}\n`;\n\n@Directive({\n selector: '[tuiRipple]',\n providers: TUI_RIPPLE_PROVIDERS,\n})\nexport class TuiRippleDirective {\n @Input()\n tuiRipple?: string;\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(TuiDirectiveStylesService) directiveStyles: TuiDirectiveStylesService,\n @Inject(Renderer2) renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(TUI_RIPPLE_START) start$: Observable<HTMLElement>,\n @Inject(TUI_RIPPLE_END) end$: Observable<EventTarget>,\n ) {\n directiveStyles.addStyle(STYLE, 'TuiRippleDirective');\n\n const touchEnd$ = typedFromEvent(nativeElement, 'touchend');\n const touchMove$ = typedFromEvent(nativeElement, 'touchmove');\n\n end$.subscribe(element => {\n renderer.removeChild(nativeElement, element);\n });\n start$\n .pipe(\n mergeMap(ripple => {\n const animationEndOn$ = typedFromEvent(ripple, 'animationend');\n\n return race(\n timer(TOUCH_MOVE_DELAY).pipe(mapTo(false)),\n touchEnd$.pipe(mapTo(true)),\n ).pipe(\n take(1),\n // eslint-disable-next-line rxjs/no-unsafe-takeuntil\n takeUntil(touchMove$),\n tap(() => {\n renderer.setStyle(\n ripple,\n 'background',\n this.tuiRipple || null,\n );\n renderer.appendChild(nativeElement, ripple);\n }),\n switchMap(isTap =>\n isTap\n ? animationEndOn$\n : race<unknown>(\n touchEnd$.pipe(switchMapTo(animationEndOn$)),\n animationEndOn$.pipe(switchMapTo(touchEnd$)),\n ),\n ),\n mapTo(ripple),\n );\n }),\n takeUntil(destroy$),\n )\n .subscribe(element => {\n renderer.setStyle(element, 'animationName', RIPPLE_OFF);\n });\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiRippleDirective} from './ripple.directive';\n\n@NgModule({\n declarations: [TuiRippleDirective],\n exports: [TuiRippleDirective],\n})\nexport class TuiRippleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export * from '@taiga-ui/addon-mobile/directives/elastic-sticky';
2
+ export * from '@taiga-ui/addon-mobile/directives/mobile-tabs';
2
3
  export * from '@taiga-ui/addon-mobile/directives/ripple';
3
4
  export * from '@taiga-ui/addon-mobile/directives/sidebar';
4
5
  export * from '@taiga-ui/addon-mobile/directives/touchable';
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-mobile-directives.js","sources":["ng://@taiga-ui/addon-mobile/directives/taiga-ui-addon-mobile-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAAA;;"}
1
+ {"version":3,"file":"taiga-ui-addon-mobile-directives.js","sources":["ng://@taiga-ui/addon-mobile/directives/taiga-ui-addon-mobile-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAAA;;"}
package/package.json CHANGED
@@ -1,24 +1,24 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-mobile",
3
- "version": "2.40.0",
3
+ "version": "2.42.0",
4
4
  "description": "Extension package for Taiga UI that adds support for mobile specific behaviors such as custom data pickers, dropdowns, etc.",
5
5
  "keywords": [
6
6
  "angular",
7
7
  "component",
8
8
  "mobile"
9
9
  ],
10
- "license": "Apache-2.0",
11
- "repository": "https://github.com/tinkoff/taiga-ui",
12
10
  "homepage": "https://github.com/tinkoff/taiga-ui",
11
+ "repository": "https://github.com/tinkoff/taiga-ui",
12
+ "license": "Apache-2.0",
13
13
  "peerDependencies": {
14
14
  "@angular/cdk": ">=9.0.0",
15
15
  "@angular/common": ">=9.0.0",
16
16
  "@angular/core": ">=9.0.0",
17
17
  "@ng-web-apis/common": ">=1.12.1 < 2",
18
+ "@taiga-ui/cdk": ">=2.42.0",
19
+ "@taiga-ui/core": ">=2.42.0",
20
+ "@taiga-ui/kit": ">=2.42.0",
18
21
  "@tinkoff/ng-polymorpheus": ">=3.1.12 < 4",
19
- "@taiga-ui/cdk": ">=2.40.0",
20
- "@taiga-ui/core": ">=2.40.0",
21
- "@taiga-ui/kit": ">=2.40.0",
22
22
  "rxjs": ">=6.0.0"
23
23
  },
24
24
  "main": "bundles/taiga-ui-addon-mobile.umd.js",