@taiga-ui/core 2.27.1 → 2.28.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 (100) hide show
  1. package/bundles/taiga-ui-core-components-dialog.umd.js +1 -1
  2. package/bundles/taiga-ui-core-components-dialog.umd.min.js +2 -2
  3. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  4. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  6. package/bundles/taiga-ui-core-components-root.umd.js +12 -7
  7. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  8. package/bundles/taiga-ui-core-components-root.umd.min.js +2 -2
  9. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  10. package/bundles/taiga-ui-core-components-svg.umd.js +10 -4
  11. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  12. package/bundles/taiga-ui-core-components-svg.umd.min.js +1 -1
  13. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  14. package/bundles/taiga-ui-core-constants.umd.js +1 -1
  15. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  16. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  17. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-core-modules-notifications.umd.js +1 -1
  19. package/bundles/taiga-ui-core-modules-notifications.umd.js.map +1 -1
  20. package/bundles/taiga-ui-core-modules-notifications.umd.min.js +1 -1
  21. package/bundles/taiga-ui-core-modules-notifications.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-core-providers.umd.js +19 -4
  23. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  24. package/bundles/taiga-ui-core-providers.umd.min.js +1 -1
  25. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-core-tokens.umd.js +12 -4
  27. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  28. package/bundles/taiga-ui-core-tokens.umd.min.js +2 -2
  29. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  30. package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
  31. package/components/notification/taiga-ui-core-components-notification.metadata.json +1 -1
  32. package/components/root/root.component.d.ts +2 -1
  33. package/components/root/taiga-ui-core-components-root.metadata.json +1 -1
  34. package/components/svg/svg.component.d.ts +3 -1
  35. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  36. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  37. package/constants/version.d.ts +1 -1
  38. package/esm2015/components/dialog/dialog.component.js +1 -1
  39. package/esm2015/components/notification/notification.component.js +1 -1
  40. package/esm2015/components/root/root.component.js +12 -6
  41. package/esm2015/components/svg/svg.component.js +12 -6
  42. package/esm2015/constants/version.js +2 -2
  43. package/esm2015/modules/notifications/notification-alert/notification-alert.component.js +1 -1
  44. package/esm2015/modules/notifications/notifications-host/notifications-host.component.js +1 -1
  45. package/esm2015/modules/notifications/notifications.service.js +1 -1
  46. package/esm2015/providers/index.js +2 -1
  47. package/esm2015/providers/is-mobile-resolution.provider.js +17 -0
  48. package/esm2015/tokens/index.js +3 -1
  49. package/esm2015/tokens/is-mobile-resolution.js +3 -0
  50. package/esm2015/tokens/svg-src-processor.js +6 -0
  51. package/esm5/components/dialog/dialog.component.js +1 -1
  52. package/esm5/components/notification/notification.component.js +1 -1
  53. package/esm5/components/root/root.component.js +12 -6
  54. package/esm5/components/svg/svg.component.js +12 -6
  55. package/esm5/constants/version.js +2 -2
  56. package/esm5/modules/notifications/notification-alert/notification-alert.component.js +1 -1
  57. package/esm5/modules/notifications/notifications-host/notifications-host.component.js +1 -1
  58. package/esm5/modules/notifications/notifications.service.js +1 -1
  59. package/esm5/providers/index.js +2 -1
  60. package/esm5/providers/is-mobile-resolution.provider.js +19 -0
  61. package/esm5/tokens/index.js +3 -1
  62. package/esm5/tokens/is-mobile-resolution.js +3 -0
  63. package/esm5/tokens/svg-src-processor.js +6 -0
  64. package/fesm2015/taiga-ui-core-components-dialog.js +1 -1
  65. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  66. package/fesm2015/taiga-ui-core-components-root.js +11 -5
  67. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  68. package/fesm2015/taiga-ui-core-components-svg.js +11 -5
  69. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  70. package/fesm2015/taiga-ui-core-constants.js +1 -1
  71. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  72. package/fesm2015/taiga-ui-core-modules-notifications.js +1 -1
  73. package/fesm2015/taiga-ui-core-modules-notifications.js.map +1 -1
  74. package/fesm2015/taiga-ui-core-providers.js +18 -6
  75. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  76. package/fesm2015/taiga-ui-core-tokens.js +8 -1
  77. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  78. package/fesm5/taiga-ui-core-components-dialog.js +1 -1
  79. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  80. package/fesm5/taiga-ui-core-components-root.js +11 -5
  81. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  82. package/fesm5/taiga-ui-core-components-svg.js +11 -5
  83. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  84. package/fesm5/taiga-ui-core-constants.js +1 -1
  85. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  86. package/fesm5/taiga-ui-core-modules-notifications.js +1 -1
  87. package/fesm5/taiga-ui-core-modules-notifications.js.map +1 -1
  88. package/fesm5/taiga-ui-core-providers.js +20 -6
  89. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  90. package/fesm5/taiga-ui-core-tokens.js +8 -1
  91. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  92. package/modules/notifications/taiga-ui-core-modules-notifications.metadata.json +1 -1
  93. package/package.json +3 -3
  94. package/providers/index.d.ts +1 -0
  95. package/providers/is-mobile-resolution.provider.d.ts +5 -0
  96. package/providers/taiga-ui-core-providers.metadata.json +1 -1
  97. package/tokens/index.d.ts +2 -0
  98. package/tokens/is-mobile-resolution.d.ts +3 -0
  99. package/tokens/svg-src-processor.d.ts +3 -0
  100. package/tokens/taiga-ui-core-tokens.metadata.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-notification.js","sources":["ng://@taiga-ui/core/components/notification/notification.component.ts","ng://@taiga-ui/core/components/notification/notification.module.ts","ng://@taiga-ui/core/components/notification/taiga-ui-core-components-notification.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n NotificationTokenOptions,\n TUI_CLOSE_WORD,\n TUI_NOTIFICATION_OPTIONS,\n} from '@taiga-ui/core/tokens';\nimport {Observable} from 'rxjs';\n\nexport const STATUS_ICON = {\n info: 'tuiIconInfo',\n success: 'tuiIconCheckCircle',\n error: 'tuiIconCancel',\n warning: 'tuiIconAttention',\n} as const;\n\n// @bad TODO: Think about moving to kit\n@Component({\n selector: 'tui-notification',\n templateUrl: './notification.template.html',\n styleUrls: ['./notification.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiNotificationComponent {\n @Input()\n @HostBinding('class._has-icon')\n @tuiDefaultProp()\n hasIcon = this.options.hasIcon;\n\n @Input()\n @HostBinding('attr.data-tui-host-status')\n @tuiDefaultProp()\n status: 'info' | 'error' | 'warning' | 'success' = this.options.status;\n\n @Output()\n readonly close = new EventEmitter<void>();\n\n constructor(\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n @Inject(TUI_NOTIFICATION_OPTIONS)\n public readonly options: NotificationTokenOptions,\n ) {}\n\n get icon(): string {\n return STATUS_ICON[this.status];\n }\n\n @HostBinding('class._has-close-button')\n get hasClose(): boolean {\n return !!this.close.observers.length;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiButtonModule} from '@taiga-ui/core/components/button';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\n\nimport {TuiNotificationComponent} from './notification.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiButtonModule],\n declarations: [TuiNotificationComponent],\n exports: [TuiNotificationComponent],\n})\nexport class TuiNotificationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;MAiBa,WAAW,GAAG;IACvB,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,oBAAoB;IAC7B,KAAK,EAAE,eAAe;IACtB,OAAO,EAAE,kBAAkB;EACpB;AAEX;IAOa,wBAAwB,GAArC,MAAa,wBAAwB;IAcjC,YACqC,UAA8B,EAE/C,OAAiC;QAFhB,eAAU,GAAV,UAAU,CAAoB;QAE/C,YAAO,GAAP,OAAO,CAA0B;QAbrD,YAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAK/B,WAAM,GAA6C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAG9D,UAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;KAMtC;IAEJ,IAAI,IAAI;QACJ,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnC;IAGD,IAAI,QAAQ;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;KACxC;EACJ;;YAboD,UAAU,uBAAtD,MAAM,SAAC,cAAc;4CACrB,MAAM,SAAC,wBAAwB;;AAZpC;IAHC,KAAK,EAAE;IACP,WAAW,CAAC,iBAAiB,CAAC;IAC9B,cAAc,EAAE;yDACc;AAK/B;IAHC,KAAK,EAAE;IACP,WAAW,CAAC,2BAA2B,CAAC;IACxC,cAAc,EAAE;wDACsD;AAGvE;IADC,MAAM,EAAE;uDACiC;AAa1C;IADC,WAAW,CAAC,yBAAyB,CAAC;wDAGtC;AA3BQ,wBAAwB;IANpC,SAAS,CAAC;QACP,QAAQ,EAAE,kBAAkB;QAC5B,qfAA2C;QAE3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;;KAClD,CAAC;IAgBO,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;IACtB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;GAhB5B,wBAAwB,CA4BpC;;IC/CY,qBAAqB,GAAlC,MAAa,qBAAqB;EAAG;AAAxB,qBAAqB;IALjC,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC;QACtD,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;KACtC,CAAC;GACW,qBAAqB,CAAG;;ACZrC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-notification.js","sources":["ng://@taiga-ui/core/components/notification/notification.component.ts","ng://@taiga-ui/core/components/notification/notification.module.ts","ng://@taiga-ui/core/components/notification/taiga-ui-core-components-notification.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n NotificationTokenOptions,\n TUI_CLOSE_WORD,\n TUI_NOTIFICATION_OPTIONS,\n} from '@taiga-ui/core/tokens';\nimport {Observable} from 'rxjs';\n\nexport const STATUS_ICON = {\n info: 'tuiIconInfo',\n success: 'tuiIconCheckCircle',\n error: 'tuiIconCancel',\n warning: 'tuiIconAttention',\n} as const;\n\n// @bad TODO: Think about moving to kit\n@Component({\n selector: 'tui-notification',\n templateUrl: './notification.template.html',\n styleUrls: ['./notification.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiNotificationComponent {\n @Input()\n @HostBinding('class._has-icon')\n @tuiDefaultProp()\n hasIcon = this.options.hasIcon;\n\n @Input()\n @HostBinding('attr.data-tui-host-status')\n @tuiDefaultProp()\n status: 'info' | 'error' | 'warning' | 'success' = this.options.status;\n\n @Output()\n readonly close = new EventEmitter<void>();\n\n constructor(\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n @Inject(TUI_NOTIFICATION_OPTIONS)\n readonly options: NotificationTokenOptions,\n ) {}\n\n get icon(): string {\n return STATUS_ICON[this.status];\n }\n\n @HostBinding('class._has-close-button')\n get hasClose(): boolean {\n return !!this.close.observers.length;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiButtonModule} from '@taiga-ui/core/components/button';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\n\nimport {TuiNotificationComponent} from './notification.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiButtonModule],\n declarations: [TuiNotificationComponent],\n exports: [TuiNotificationComponent],\n})\nexport class TuiNotificationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;MAiBa,WAAW,GAAG;IACvB,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,oBAAoB;IAC7B,KAAK,EAAE,eAAe;IACtB,OAAO,EAAE,kBAAkB;EACpB;AAEX;IAOa,wBAAwB,GAArC,MAAa,wBAAwB;IAcjC,YACqC,UAA8B,EAEtD,OAAiC;QAFT,eAAU,GAAV,UAAU,CAAoB;QAEtD,YAAO,GAAP,OAAO,CAA0B;QAb9C,YAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAK/B,WAAM,GAA6C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAG9D,UAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;KAMtC;IAEJ,IAAI,IAAI;QACJ,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnC;IAGD,IAAI,QAAQ;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;KACxC;EACJ;;YAboD,UAAU,uBAAtD,MAAM,SAAC,cAAc;4CACrB,MAAM,SAAC,wBAAwB;;AAZpC;IAHC,KAAK,EAAE;IACP,WAAW,CAAC,iBAAiB,CAAC;IAC9B,cAAc,EAAE;yDACc;AAK/B;IAHC,KAAK,EAAE;IACP,WAAW,CAAC,2BAA2B,CAAC;IACxC,cAAc,EAAE;wDACsD;AAGvE;IADC,MAAM,EAAE;uDACiC;AAa1C;IADC,WAAW,CAAC,yBAAyB,CAAC;wDAGtC;AA3BQ,wBAAwB;IANpC,SAAS,CAAC;QACP,QAAQ,EAAE,kBAAkB;QAC5B,qfAA2C;QAE3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;;KAClD,CAAC;IAgBO,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;IACtB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;GAhB5B,wBAAwB,CA4BpC;;IC/CY,qBAAqB,GAAlC,MAAa,qBAAqB;EAAG;AAAxB,qBAAqB;IALjC,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC;QACtD,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;KACtC,CAAC;GACW,qBAAqB,CAAG;;ACZrC;;;;;;"}
@@ -3,8 +3,9 @@ import { Inject, ElementRef, Optional, Component, ChangeDetectionStrategy, NgMod
3
3
  import { tuiAssert, TUI_DIALOGS, TUI_IS_MOBILE, TuiDragModule, TuiPortalHostModule, TuiDialogHostModule } from '@taiga-ui/cdk';
4
4
  import { VERSION } from '@taiga-ui/core/constants';
5
5
  import { TuiNotificationsHostComponent } from '@taiga-ui/core/modules/notifications';
6
- import { TUI_ANIMATIONS_DURATION, TUI_ASSERT_ENABLED } from '@taiga-ui/core/tokens';
7
- import { merge, of } from 'rxjs';
6
+ import { TUI_IS_MOBILE_RES_PROVIDER } from '@taiga-ui/core/providers';
7
+ import { TUI_ANIMATIONS_DURATION, TUI_ASSERT_ENABLED, TUI_IS_MOBILE_RES } from '@taiga-ui/core/tokens';
8
+ import { merge, of, Observable } from 'rxjs';
8
9
  import { map } from 'rxjs/operators';
9
10
  import { CommonModule } from '@angular/common';
10
11
  import { TuiHintsHostModule } from '@taiga-ui/core/components/hints-host';
@@ -14,12 +15,13 @@ import { EventPluginsModule } from '@tinkoff/ng-event-plugins';
14
15
 
15
16
  // @dynamic
16
17
  let TuiRootComponent = class TuiRootComponent {
17
- constructor(duration, elementRef, dialogs, notificationsHost, isMobile, enabled) {
18
+ constructor(duration, elementRef, dialogs, notificationsHost, isMobile, enabled, isMobileRes$) {
18
19
  this.duration = duration;
19
20
  this.elementRef = elementRef;
20
21
  this.dialogs = dialogs;
21
22
  this.notificationsHost = notificationsHost;
22
23
  this.isMobile = isMobile;
24
+ this.isMobileRes$ = isMobileRes$;
23
25
  this.scrollbars$ = this.dialogs && !this.isMobile
24
26
  ? merge(...this.dialogs).pipe(map(({ length }) => !length))
25
27
  : of(!this.isMobile);
@@ -32,16 +34,19 @@ TuiRootComponent.ctorParameters = () => [
32
34
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [TUI_DIALOGS,] }] },
33
35
  { type: TuiNotificationsHostComponent, decorators: [{ type: Optional }, { type: Inject, args: [TuiNotificationsHostComponent,] }] },
34
36
  { type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_MOBILE,] }] },
35
- { type: Boolean, decorators: [{ type: Inject, args: [TUI_ASSERT_ENABLED,] }] }
37
+ { type: Boolean, decorators: [{ type: Inject, args: [TUI_ASSERT_ENABLED,] }] },
38
+ { type: Observable, decorators: [{ type: Inject, args: [TUI_IS_MOBILE_RES,] }] }
36
39
  ];
37
40
  TuiRootComponent = __decorate([
38
41
  Component({
39
42
  selector: 'tui-root',
40
43
  template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-portal-host>\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host *ngIf=\"dialogs && dialogs.length\"></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <ng-container\n *ngIf=\"notificationsHost\"\n [ngComponentOutlet]=\"notificationsHost\"\n ></ng-container>\n <ng-content select=\"tuiOverNotifications\"></ng-content>\n</tui-portal-host>\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n",
41
44
  changeDetection: ChangeDetectionStrategy.OnPush,
45
+ providers: [TUI_IS_MOBILE_RES_PROVIDER],
42
46
  host: {
43
47
  'data-tui-version': VERSION,
44
48
  '[style.--tui-duration]': 'duration + "ms"',
49
+ '($.class._mobile)': 'isMobileRes$',
45
50
  },
46
51
  styles: [":host{position:relative;display:block;flex:1}.scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.content{position:relative;z-index:0;height:100%}"]
47
52
  }),
@@ -52,7 +57,8 @@ TuiRootComponent = __decorate([
52
57
  __param(3, Optional()),
53
58
  __param(3, Inject(TuiNotificationsHostComponent)),
54
59
  __param(4, Inject(TUI_IS_MOBILE)),
55
- __param(5, Inject(TUI_ASSERT_ENABLED))
60
+ __param(5, Inject(TUI_ASSERT_ENABLED)),
61
+ __param(6, Inject(TUI_IS_MOBILE_RES))
56
62
  ], TuiRootComponent);
57
63
 
58
64
  let TuiRootModule = class TuiRootModule {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-root.js","sources":["ng://@taiga-ui/core/components/root/root.component.ts","ng://@taiga-ui/core/components/root/root.module.ts","ng://@taiga-ui/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Optional,\n} from '@angular/core';\nimport {TUI_DIALOGS, TUI_IS_MOBILE, tuiAssert} from '@taiga-ui/cdk';\nimport {VERSION} from '@taiga-ui/core/constants';\nimport {TuiNotificationsHostComponent} from '@taiga-ui/core/modules/notifications';\nimport {TUI_ANIMATIONS_DURATION, TUI_ASSERT_ENABLED} from '@taiga-ui/core/tokens';\nimport {merge, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-root',\n templateUrl: 'root.template.html',\n styleUrls: ['./root.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'data-tui-version': VERSION,\n '[style.--tui-duration]': 'duration + \"ms\"',\n },\n})\nexport class TuiRootComponent {\n readonly scrollbars$ =\n this.dialogs && !this.isMobile\n ? merge(...this.dialogs).pipe(map(({length}) => !length))\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(ElementRef) readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DIALOGS)\n readonly dialogs: readonly Observable<readonly unknown[]>[] | null,\n @Optional()\n @Inject(TuiNotificationsHostComponent)\n readonly notificationsHost: TuiNotificationsHostComponent,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_ASSERT_ENABLED) enabled: boolean,\n ) {\n tuiAssert.enabled = enabled;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiDialogHostModule, TuiDragModule, TuiPortalHostModule} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDragModule,\n TuiPortalHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAcA;IAWa,gBAAgB,GAA7B,MAAa,gBAAgB;IAMzB,YAC8C,QAAgB,EAC7B,UAAmC,EAGvD,OAAyD,EAGzD,iBAAgD,EACjB,QAAiB,EAC7B,OAAgB;QATF,aAAQ,GAAR,QAAQ,CAAQ;QAC7B,eAAU,GAAV,UAAU,CAAyB;QAGvD,YAAO,GAAP,OAAO,CAAkD;QAGzD,sBAAiB,GAAjB,iBAAiB,CAA+B;QACjB,aAAQ,GAAR,QAAQ,CAAS;QAdpD,gBAAW,GAChB,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ;cACxB,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;cACvD,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAczB,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;KAC/B;EACJ;;yCAbQ,MAAM,SAAC,uBAAuB;YACU,UAAU,uBAAlD,MAAM,SAAC,UAAU;4CACjB,QAAQ,YACR,MAAM,SAAC,WAAW;YAIS,6BAA6B,uBAFxD,QAAQ,YACR,MAAM,SAAC,6BAA6B;0CAEpC,MAAM,SAAC,aAAa;0CACpB,MAAM,SAAC,kBAAkB;;AAhBrB,gBAAgB;IAV5B,SAAS,CAAC;QACP,QAAQ,EAAE,UAAU;QACpB,6xBAAiC;QAEjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,IAAI,EAAE;YACF,kBAAkB,EAAE,OAAO;YAC3B,wBAAwB,EAAE,iBAAiB;SAC9C;;KACJ,CAAC;IAQO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;IAC/B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;IAEnB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAErC,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;GAhBtB,gBAAgB,CAoB5B;;ICrBY,aAAa,GAA1B,MAAa,aAAa;EAAG;AAAhB,aAAa;IAdzB,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,aAAa;YACb,mBAAmB;YACnB,oBAAoB;YACpB,kBAAkB;YAClB,mBAAmB;YACnB,uBAAuB;SAC1B;QACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;QAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC9B,CAAC;GACW,aAAa,CAAG;;ACxB7B;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-root.js","sources":["ng://@taiga-ui/core/components/root/root.component.ts","ng://@taiga-ui/core/components/root/root.module.ts","ng://@taiga-ui/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Optional,\n} from '@angular/core';\nimport {TUI_DIALOGS, TUI_IS_MOBILE, tuiAssert} from '@taiga-ui/cdk';\nimport {VERSION} from '@taiga-ui/core/constants';\nimport {TuiNotificationsHostComponent} from '@taiga-ui/core/modules/notifications';\nimport {TUI_IS_MOBILE_RES_PROVIDER} from '@taiga-ui/core/providers';\nimport {\n TUI_ANIMATIONS_DURATION,\n TUI_ASSERT_ENABLED,\n TUI_IS_MOBILE_RES,\n} from '@taiga-ui/core/tokens';\nimport {merge, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-root',\n templateUrl: 'root.template.html',\n styleUrls: ['./root.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_IS_MOBILE_RES_PROVIDER],\n host: {\n 'data-tui-version': VERSION,\n '[style.--tui-duration]': 'duration + \"ms\"',\n '($.class._mobile)': 'isMobileRes$',\n },\n})\nexport class TuiRootComponent {\n readonly scrollbars$ =\n this.dialogs && !this.isMobile\n ? merge(...this.dialogs).pipe(map(({length}) => !length))\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(ElementRef) readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DIALOGS)\n readonly dialogs: readonly Observable<readonly unknown[]>[] | null,\n @Optional()\n @Inject(TuiNotificationsHostComponent)\n readonly notificationsHost: TuiNotificationsHostComponent,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_ASSERT_ENABLED) enabled: boolean,\n @Inject(TUI_IS_MOBILE_RES) readonly isMobileRes$: Observable<boolean>,\n ) {\n tuiAssert.enabled = enabled;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiDialogHostModule, TuiDragModule, TuiPortalHostModule} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDragModule,\n TuiPortalHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAmBA;IAaa,gBAAgB,GAA7B,MAAa,gBAAgB;IAMzB,YAC8C,QAAgB,EAC7B,UAAmC,EAGvD,OAAyD,EAGzD,iBAAgD,EACjB,QAAiB,EAC7B,OAAgB,EACR,YAAiC;QAV3B,aAAQ,GAAR,QAAQ,CAAQ;QAC7B,eAAU,GAAV,UAAU,CAAyB;QAGvD,YAAO,GAAP,OAAO,CAAkD;QAGzD,sBAAiB,GAAjB,iBAAiB,CAA+B;QACjB,aAAQ,GAAR,QAAQ,CAAS;QAErB,iBAAY,GAAZ,YAAY,CAAqB;QAhBhE,gBAAW,GAChB,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ;cACxB,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;cACvD,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAezB,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;KAC/B;EACJ;;yCAdQ,MAAM,SAAC,uBAAuB;YACU,UAAU,uBAAlD,MAAM,SAAC,UAAU;4CACjB,QAAQ,YACR,MAAM,SAAC,WAAW;YAIS,6BAA6B,uBAFxD,QAAQ,YACR,MAAM,SAAC,6BAA6B;0CAEpC,MAAM,SAAC,aAAa;0CACpB,MAAM,SAAC,kBAAkB;YACwB,UAAU,uBAA3D,MAAM,SAAC,iBAAiB;;AAjBpB,gBAAgB;IAZ5B,SAAS,CAAC;QACP,QAAQ,EAAE,UAAU;QACpB,6xBAAiC;QAEjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,CAAC,0BAA0B,CAAC;QACvC,IAAI,EAAE;YACF,kBAAkB,EAAE,OAAO;YAC3B,wBAAwB,EAAE,iBAAiB;YAC3C,mBAAmB,EAAE,cAAc;SACtC;;KACJ,CAAC;IAQO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;IAC/B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;IAEnB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAErC,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAC1B,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;GAjBrB,gBAAgB,CAqB5B;;IC7BY,aAAa,GAA1B,MAAa,aAAa;EAAG;AAAhB,aAAa;IAdzB,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,aAAa;YACb,mBAAmB;YACnB,oBAAoB;YACpB,kBAAkB;YAClB,mBAAmB;YACnB,uBAAuB;SAC1B;QACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;QAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC9B,CAAC;GACW,aAAa,CAAG;;ACxB7B;;;;;;"}
@@ -6,7 +6,7 @@ import { WINDOW, USER_AGENT } from '@ng-web-apis/common';
6
6
  import { isIE, getDocumentOrShadowRoot, tuiCustomEvent, tuiAssert, TuiStaticRequestService, tuiRequiredSetter, tuiPure, TuiLetModule } from '@taiga-ui/cdk';
7
7
  import { TUI_ICON_ERROR } from '@taiga-ui/core/constants';
8
8
  import { TuiSvgService } from '@taiga-ui/core/services';
9
- import { TUI_ICONS_PATH, TUI_SANITIZER } from '@taiga-ui/core/tokens';
9
+ import { TUI_ICONS_PATH, TUI_SANITIZER, TUI_SVG_SRC_PROCESSOR } from '@taiga-ui/core/tokens';
10
10
  import { isPresumedHTMLString } from '@taiga-ui/core/utils/miscellaneous';
11
11
  import { ReplaySubject, of } from 'rxjs';
12
12
  import { switchMap, startWith, catchError, map } from 'rxjs/operators';
@@ -17,7 +17,7 @@ const FAILED_EXTERNAL_ICON = 'Failed to load external SVG';
17
17
  // TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent
18
18
  // @dynamic
19
19
  let TuiSvgComponent = class TuiSvgComponent {
20
- constructor(documentRef, windowRef, iconsPath, tuiSanitizer, svgService, staticRequestService, sanitizer, elementRef, userAgent) {
20
+ constructor(documentRef, windowRef, iconsPath, tuiSanitizer, svgService, staticRequestService, sanitizer, elementRef, userAgent, processor) {
21
21
  this.documentRef = documentRef;
22
22
  this.windowRef = windowRef;
23
23
  this.iconsPath = iconsPath;
@@ -27,6 +27,7 @@ let TuiSvgComponent = class TuiSvgComponent {
27
27
  this.sanitizer = sanitizer;
28
28
  this.elementRef = elementRef;
29
29
  this.userAgent = userAgent;
30
+ this.processor = processor;
30
31
  this.src$ = new ReplaySubject(1);
31
32
  this.isIE = isIE(this.userAgent);
32
33
  this.icon = '';
@@ -35,9 +36,12 @@ let TuiSvgComponent = class TuiSvgComponent {
35
36
  : of(this.getSafeHtml(this.icon))), startWith(''));
36
37
  }
37
38
  set src(src) {
38
- this.icon = src;
39
+ this.icon = this.processor(src);
39
40
  this.src$.next();
40
41
  }
42
+ get src() {
43
+ return this.icon;
44
+ }
41
45
  get use() {
42
46
  return this.icon.includes('.svg#')
43
47
  ? this.icon
@@ -120,7 +124,8 @@ TuiSvgComponent.ctorParameters = () => [
120
124
  { type: TuiStaticRequestService, decorators: [{ type: Inject, args: [TuiStaticRequestService,] }] },
121
125
  { type: DomSanitizer, decorators: [{ type: Inject, args: [DomSanitizer,] }] },
122
126
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
123
- { type: String, decorators: [{ type: Inject, args: [USER_AGENT,] }] }
127
+ { type: String, decorators: [{ type: Inject, args: [USER_AGENT,] }] },
128
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_SVG_SRC_PROCESSOR,] }] }
124
129
  ];
125
130
  __decorate([
126
131
  Input(),
@@ -145,7 +150,8 @@ TuiSvgComponent = __decorate([
145
150
  __param(5, Inject(TuiStaticRequestService)),
146
151
  __param(6, Inject(DomSanitizer)),
147
152
  __param(7, Inject(ElementRef)),
148
- __param(8, Inject(USER_AGENT))
153
+ __param(8, Inject(USER_AGENT)),
154
+ __param(9, Inject(TUI_SVG_SRC_PROCESSOR))
149
155
  ], TuiSvgComponent);
150
156
 
151
157
  let TuiSvgModule = class TuiSvgModule {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-svg.js","sources":["ng://@taiga-ui/core/components/svg/svg.component.ts","ng://@taiga-ui/core/components/svg/svg.module.ts","ng://@taiga-ui/core/components/svg/taiga-ui-core-components-svg.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Sanitizer,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {USER_AGENT, WINDOW} from '@ng-web-apis/common';\nimport {\n getDocumentOrShadowRoot,\n isIE,\n tuiAssert,\n tuiCustomEvent,\n tuiPure,\n tuiRequiredSetter,\n TuiStaticRequestService,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TUI_ICON_ERROR} from '@taiga-ui/core/constants';\nimport {TuiIconError} from '@taiga-ui/core/interfaces';\nimport {TuiSvgService} from '@taiga-ui/core/services';\nimport {TUI_ICONS_PATH, TUI_SANITIZER} from '@taiga-ui/core/tokens';\nimport {isPresumedHTMLString} from '@taiga-ui/core/utils/miscellaneous';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {catchError, map, startWith, switchMap} from 'rxjs/operators';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent\n// @dynamic\n@Component({\n selector: 'tui-svg',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private readonly src$ = new ReplaySubject<void>(1);\n private readonly isIE = isIE(this.userAgent);\n private icon = '';\n\n @Input()\n @tuiRequiredSetter()\n set src(src: string) {\n this.icon = src;\n this.src$.next();\n }\n\n readonly innerHTML$: Observable<SafeHtml>;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_ICONS_PATH) private readonly iconsPath: TuiStringHandler<string>,\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(TuiSvgService) private readonly svgService: TuiSvgService,\n @Inject(TuiStaticRequestService)\n private readonly staticRequestService: TuiStaticRequestService,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(ElementRef) private readonly elementRef: ElementRef<Element>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n ) {\n this.innerHTML$ = this.src$.pipe(\n switchMap(() =>\n this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon)),\n ),\n startWith(''),\n );\n }\n\n get use(): string {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.iconsPath);\n }\n\n get isInnerHTML(): boolean {\n return this.isSrc || this.isExternal || (this.isName && this.isShadowDOM);\n }\n\n private get isShadowDOM(): boolean {\n return (\n getDocumentOrShadowRoot(this.elementRef.nativeElement) !== this.documentRef\n );\n }\n\n private get isUse(): boolean {\n return this.use.includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return this.isUrl || (this.isIE && this.isUse) || this.isCrossDomain;\n }\n\n private get isUrl(): boolean {\n return this.icon.endsWith('.svg');\n }\n\n private get isSrc(): boolean {\n return isPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, windowRef} = this;\n\n return (\n isUse &&\n use.startsWith('http') &&\n !!windowRef.origin &&\n !use.startsWith(windowRef.origin)\n );\n }\n\n onError(message: string = MISSING_EXTERNAL_ICON) {\n const {icon} = this;\n const event = tuiCustomEvent<TuiIconError>(\n TUI_ICON_ERROR,\n {\n bubbles: true,\n detail: {\n message,\n icon,\n },\n },\n this.documentRef,\n );\n\n tuiAssert.assert(false, message, icon);\n this.elementRef.nativeElement.dispatchEvent(event);\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiStringHandler<string>): string {\n return iconsPath(name);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n // Empty line for innerHTML when icon is shown through USE tag\n return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');\n }\n\n private sanitize(src: string): SafeHtml | string {\n return this.tuiSanitizer\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n // @bad TODO: Create a simple XMLHttpRequest to Observable service\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map(response =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiSvgComponent} from './svg.component';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [TuiSvgComponent],\n exports: [TuiSvgComponent],\n})\nexport class TuiSvgModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-svg.js","sources":["ng://@taiga-ui/core/components/svg/svg.component.ts","ng://@taiga-ui/core/components/svg/svg.module.ts","ng://@taiga-ui/core/components/svg/taiga-ui-core-components-svg.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Sanitizer,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {USER_AGENT, WINDOW} from '@ng-web-apis/common';\nimport {\n getDocumentOrShadowRoot,\n isIE,\n tuiAssert,\n tuiCustomEvent,\n tuiPure,\n tuiRequiredSetter,\n TuiStaticRequestService,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TUI_ICON_ERROR} from '@taiga-ui/core/constants';\nimport {TuiIconError} from '@taiga-ui/core/interfaces';\nimport {TuiSvgService} from '@taiga-ui/core/services';\nimport {\n TUI_ICONS_PATH,\n TUI_SANITIZER,\n TUI_SVG_SRC_PROCESSOR,\n} from '@taiga-ui/core/tokens';\nimport {isPresumedHTMLString} from '@taiga-ui/core/utils/miscellaneous';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {catchError, map, startWith, switchMap} from 'rxjs/operators';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent\n// @dynamic\n@Component({\n selector: 'tui-svg',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private readonly src$ = new ReplaySubject<void>(1);\n private readonly isIE = isIE(this.userAgent);\n private icon = '';\n\n @Input()\n @tuiRequiredSetter()\n set src(src: string) {\n this.icon = this.processor(src);\n this.src$.next();\n }\n\n readonly innerHTML$: Observable<SafeHtml>;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_ICONS_PATH) private readonly iconsPath: TuiStringHandler<string>,\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(TuiSvgService) private readonly svgService: TuiSvgService,\n @Inject(TuiStaticRequestService)\n private readonly staticRequestService: TuiStaticRequestService,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(ElementRef) private readonly elementRef: ElementRef<Element>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_SVG_SRC_PROCESSOR)\n private readonly processor: TuiStringHandler<string>,\n ) {\n this.innerHTML$ = this.src$.pipe(\n switchMap(() =>\n this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon)),\n ),\n startWith(''),\n );\n }\n\n get src(): string {\n return this.icon;\n }\n\n get use(): string {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.iconsPath);\n }\n\n get isInnerHTML(): boolean {\n return this.isSrc || this.isExternal || (this.isName && this.isShadowDOM);\n }\n\n private get isShadowDOM(): boolean {\n return (\n getDocumentOrShadowRoot(this.elementRef.nativeElement) !== this.documentRef\n );\n }\n\n private get isUse(): boolean {\n return this.use.includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return this.isUrl || (this.isIE && this.isUse) || this.isCrossDomain;\n }\n\n private get isUrl(): boolean {\n return this.icon.endsWith('.svg');\n }\n\n private get isSrc(): boolean {\n return isPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, windowRef} = this;\n\n return (\n isUse &&\n use.startsWith('http') &&\n !!windowRef.origin &&\n !use.startsWith(windowRef.origin)\n );\n }\n\n onError(message: string = MISSING_EXTERNAL_ICON) {\n const {icon} = this;\n const event = tuiCustomEvent<TuiIconError>(\n TUI_ICON_ERROR,\n {\n bubbles: true,\n detail: {\n message,\n icon,\n },\n },\n this.documentRef,\n );\n\n tuiAssert.assert(false, message, icon);\n this.elementRef.nativeElement.dispatchEvent(event);\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiStringHandler<string>): string {\n return iconsPath(name);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n // Empty line for innerHTML when icon is shown through USE tag\n return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');\n }\n\n private sanitize(src: string): SafeHtml | string {\n return this.tuiSanitizer\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n // @bad TODO: Create a simple XMLHttpRequest to Observable service\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map(response =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiSvgComponent} from './svg.component';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [TuiSvgComponent],\n exports: [TuiSvgComponent],\n})\nexport class TuiSvgModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -63,7 +63,7 @@ const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\/#!$%\\^&\\*;:{}=\\-_\`~()]$/;
63
63
  const TUI_LATIN_REGEXP = /[A-z]/;
64
64
  const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;
65
65
 
66
- const VERSION = '2.27.1';
66
+ const VERSION = '2.28.0';
67
67
 
68
68
  /**
69
69
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-constants.js","sources":["ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/editing-keys.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/version.ts","ng://@taiga-ui/core/constants/taiga-ui-core-constants.ts"],"sourcesContent":["export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const TUI_DECIMAL_SYMBOLS: ReadonlyArray<string> = [',', '.'];\n","import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_\\`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","export const VERSION = '2.27.1';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;MAAa,cAAc,GAAG,EAAE;MACnB,kBAAkB,GAAG,GAAG;MACxB,kBAAkB,GAAG,IAAI;MACzB,iBAAiB,GAAG;;MCHpB,mBAAmB,GAA0B,CAAC,GAAG,EAAE,GAAG;;MCEtD,kBAAkB,GAA6B,IAAI,IAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI;;MCA/B,0BAA0B,GAAqB,MAAM;;MCHrD,cAAc,GAAsB;IAC7C,UAAU;IACV,WAAW;IACX,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;;;ACTV;;;;MAIa,iBAAiB,GAAG,oBAAoB;AAErD;;;MAGa,oBAAoB,GAAG,uBAAuB;AAE3D;;;;MAIa,cAAc,GAAG,iBAAiB;AAE/C;;;MAGa,cAAc,GAAG;;MCpBjB,eAAe,GAAG;;ACA/B;;;;MAIa,KAAK,GAAG;IACjB,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;;;MCRT,gBAAgB,GAAG,KAAK;MACxB,oBAAoB,GAAG,KAAK;MAC5B,qBAAqB,GAAG,OAAO;MAC/B,yBAAyB,GAAG,MAAM;MAClC,gCAAgC,GAAG,oCAAoC;MACvE,gBAAgB,GAAG,QAAQ;MAC3B,4BAA4B,GAAG;;MCN/B,OAAO,GAAG;;ACAvB;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-constants.js","sources":["ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/editing-keys.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/version.ts","ng://@taiga-ui/core/constants/taiga-ui-core-constants.ts"],"sourcesContent":["export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const TUI_DECIMAL_SYMBOLS: ReadonlyArray<string> = [',', '.'];\n","import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_\\`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","export const VERSION = '2.28.0';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;MAAa,cAAc,GAAG,EAAE;MACnB,kBAAkB,GAAG,GAAG;MACxB,kBAAkB,GAAG,IAAI;MACzB,iBAAiB,GAAG;;MCHpB,mBAAmB,GAA0B,CAAC,GAAG,EAAE,GAAG;;MCEtD,kBAAkB,GAA6B,IAAI,IAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI;;MCA/B,0BAA0B,GAAqB,MAAM;;MCHrD,cAAc,GAAsB;IAC7C,UAAU;IACV,WAAW;IACX,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;;;ACTV;;;;MAIa,iBAAiB,GAAG,oBAAoB;AAErD;;;MAGa,oBAAoB,GAAG,uBAAuB;AAE3D;;;;MAIa,cAAc,GAAG,iBAAiB;AAE/C;;;MAGa,cAAc,GAAG;;MCpBjB,eAAe,GAAG;;ACA/B;;;;MAIa,KAAK,GAAG;IACjB,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;;;MCRT,gBAAgB,GAAG,KAAK;MACxB,oBAAoB,GAAG,KAAK;MAC5B,qBAAqB,GAAG,OAAO;MAC/B,yBAAyB,GAAG,MAAM;MAClC,gCAAgC,GAAG,oCAAoC;MACvE,gBAAgB,GAAG,QAAQ;MAC3B,4BAA4B,GAAG;;MCN/B,OAAO,GAAG;;ACAvB;;;;;;"}
@@ -160,7 +160,7 @@ TuiNotificationsHostComponent = __decorate([
160
160
  changeDetection: ChangeDetectionStrategy.OnPush,
161
161
  template: "<ng-container *tuiLet=\"service.items$ | async as items\">\n <div\n *ngIf=\"items.length\"\n class=\"wrapper\"\n [@tuiFadeInList]=\"getAnimation(items.length)\"\n [@tuiHeightCollapseList]=\"getAnimation(items.length)\"\n [@tuiSlideInRightList]=\"getAnimation(items.length)\"\n >\n <tui-notification-alert\n *ngFor=\"let item of items\"\n role=\"alert\"\n class=\"alert\"\n [item]=\"item\"\n ></tui-notification-alert>\n </div>\n</ng-container>\n",
162
162
  animations: [tuiFadeInList, tuiSlideInRightList, tuiHeightCollapseList],
163
- styles: [":host{position:fixed;top:0;left:0;width:100%;height:0}.wrapper{width:18rem;margin-left:auto;padding:2rem 3rem 0 0;pointer-events:none}@media screen and (max-width:47.9375em){.wrapper{padding:1rem 1rem 0 0}}@media screen and (min-width:80em){.wrapper{width:23rem}}.alert{pointer-events:auto}.alert:not(:first-child){margin-top:.75rem}"]
163
+ styles: [":host{position:fixed;top:0;left:0;width:100%;height:0}.wrapper{width:18rem;margin-left:auto;padding:2rem 3rem 0 0;pointer-events:none}:host-context(tui-root._mobile) .wrapper{padding:1rem 1rem 0 0}@media screen and (min-width:80em){.wrapper{width:23rem}}.alert{pointer-events:auto}.alert:not(:first-child){margin-top:.75rem}"]
164
164
  }),
165
165
  __param(0, Inject(TUI_ANIMATION_OPTIONS)),
166
166
  __param(1, Inject(TuiNotificationsService))
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-modules-notifications.js","sources":["ng://@taiga-ui/core/modules/notifications/notification-alert/Notification-alert.ts","ng://@taiga-ui/core/modules/notifications/notification-alert/notification-alert.component.ts","ng://@taiga-ui/core/modules/notifications/notification-alert/notification-alert.module.ts","ng://@taiga-ui/core/modules/notifications/notifications.service.ts","ng://@taiga-ui/core/modules/notifications/notifications-host/notifications-host.component.ts","ng://@taiga-ui/core/modules/notifications/notifications.module.ts","ng://@taiga-ui/core/modules/notifications/taiga-ui-core-modules-notifications.ts"],"sourcesContent":["import {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {\n TuiNotificationOptions,\n TuiNotificationOptionsWithData,\n} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observer} from 'rxjs';\n\nimport {TuiNotificationContentContext} from '../notification-content-context';\n\nexport class NotificationAlert<O, I> {\n readonly status = this.options.status;\n\n readonly hasIcon = this.options.hasIcon;\n\n readonly autoClose: boolean | number;\n\n readonly hasCloseButton = this.options.hasCloseButton;\n\n readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>> =\n this.options.label;\n\n readonly data!: I;\n\n constructor(\n readonly observer: Observer<O>,\n readonly content: PolymorpheusContent<TuiNotificationContentContext<O, I>>,\n private readonly options: Required<\n TuiNotificationOptions | TuiNotificationOptionsWithData<I>\n >,\n ) {\n this.autoClose =\n typeof this.options.autoClose === 'function'\n ? this.options.autoClose(this.options.status)\n : this.options.autoClose;\n\n if (options && this.withData(options)) {\n this.data = options.data;\n }\n }\n\n private withData(\n options: TuiNotificationOptions | TuiNotificationOptionsWithData<I>,\n ): options is TuiNotificationOptionsWithData<I> {\n return 'data' in options;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n OnInit,\n} from '@angular/core';\nimport {isNumber, TuiDestroyService, tuiPure} from '@taiga-ui/cdk';\nimport {NotificationTokenOptions, TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/tokens';\nimport {fromEvent, timer} from 'rxjs';\nimport {repeatWhen, takeUntil} from 'rxjs/operators';\n\nimport {TuiNotificationContentContext} from '../notification-content-context';\nimport {NotificationAlert} from './Notification-alert';\n\nexport const DEFAULT_ALERT_AUTOCLOSE_TIMEOUT = 3000;\n\n@Component({\n selector: 'tui-notification-alert',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './notification-alert.template.html',\n styleUrls: ['./notification-alert.style.less'],\n providers: [TuiDestroyService],\n})\nexport class TuiNotificationAlertComponent<O, I> implements OnInit {\n @Input()\n item!: NotificationAlert<O, I>;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiDestroyService) private readonly destroy$: TuiDestroyService,\n @Inject(TUI_NOTIFICATION_OPTIONS)\n public readonly options: NotificationTokenOptions,\n ) {}\n\n ngOnInit() {\n this.initAutoClose();\n }\n\n get context(): TuiNotificationContentContext<O, I> {\n return this.calculateContext(this.item);\n }\n\n closeNotification() {\n this.item.observer.complete();\n }\n\n @tuiPure\n private calculateContext({\n status,\n data,\n label,\n observer,\n }: NotificationAlert<O, I>): TuiNotificationContentContext<O, I> {\n return {\n $implicit: status,\n data: data,\n label: label,\n closeHook: () => {\n observer.complete();\n },\n emitHook: (data: O) => {\n observer.next(data);\n },\n emitAndCloseHook: (data: O) => {\n observer.next(data);\n observer.complete();\n },\n };\n }\n\n private initAutoClose() {\n if (!this.item.autoClose) {\n return;\n }\n\n timer(\n isNumber(this.item.autoClose)\n ? this.item.autoClose\n : DEFAULT_ALERT_AUTOCLOSE_TIMEOUT,\n )\n .pipe(\n takeUntil(fromEvent(this.elementRef.nativeElement, 'mouseenter')),\n repeatWhen(() => fromEvent(this.elementRef.nativeElement, 'mouseleave')),\n takeUntil(this.destroy$),\n )\n .subscribe(() => this.closeNotification());\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiNotificationModule} from '@taiga-ui/core/components/notification';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiNotificationAlertComponent} from './notification-alert.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiNotificationModule],\n declarations: [TuiNotificationAlertComponent],\n exports: [TuiNotificationAlertComponent],\n})\nexport class TuiNotificationAlertModule {}\n","import {Inject, Injectable} from '@angular/core';\nimport {tuiAssert} from '@taiga-ui/cdk';\nimport {\n TuiNotificationOptions,\n TuiNotificationOptionsWithData,\n} from '@taiga-ui/core/interfaces';\nimport {NotificationTokenOptions, TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable, Observer} from 'rxjs';\n\nimport {NotificationAlert} from './notification-alert/Notification-alert';\nimport {TuiNotificationContentContext} from './notification-content-context';\n\nconst NO_HOST =\n 'Notifications are disabled, enable support by adding TuiNotificationsModule to your main app module';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiNotificationsService {\n /** @internal */\n readonly items$ = new BehaviorSubject<ReadonlyArray<NotificationAlert<any, any>>>([]);\n\n constructor(\n @Inject(TUI_NOTIFICATION_OPTIONS)\n public readonly options: NotificationTokenOptions,\n ) {}\n\n show<O = void>(\n content: PolymorpheusContent<TuiNotificationContentContext<O>>,\n ): Observable<O>;\n show<O = void>(\n content: PolymorpheusContent<TuiNotificationContentContext<O>>,\n options: TuiNotificationOptions,\n ): Observable<O>;\n show<O, I>(\n content: PolymorpheusContent<TuiNotificationContentContext<O, I>>,\n options: TuiNotificationOptionsWithData<I>,\n ): Observable<O>;\n show<O, I>(\n content: PolymorpheusContent<TuiNotificationContentContext<O, I>>,\n options: TuiNotificationOptions | TuiNotificationOptionsWithData<I> = {},\n ): Observable<O> {\n return new Observable((observer: Observer<O>) => {\n tuiAssert.assert(!!this.items$.observers.length, NO_HOST);\n\n const notification = new NotificationAlert(observer, content, {\n ...this.options,\n ...options,\n });\n\n this.items$.next([...this.items$.value, notification]);\n\n return () => {\n this.items$.next(this.items$.value.filter(item => item !== notification));\n };\n });\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {tuiPure} from '@taiga-ui/cdk';\nimport {\n tuiFadeInList,\n tuiHeightCollapseList,\n tuiSlideInRightList,\n} from '@taiga-ui/core/animations';\nimport {TuiAnimationOptions} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\nimport {TuiNotificationsService} from '../notifications.service';\n\n@Component({\n selector: 'tui-notifications-host',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './notifications-host.template.html',\n styleUrls: ['./notifications-host.style.less'],\n animations: [tuiFadeInList, tuiSlideInRightList, tuiHeightCollapseList],\n})\nexport class TuiNotificationsHostComponent {\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(TuiNotificationsService) readonly service: TuiNotificationsService,\n ) {}\n\n @tuiPure\n getAnimation(value: number): TuiAnimationOptions {\n return {\n value: String(value),\n ...this.options,\n };\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiNotificationAlertModule} from './notification-alert/notification-alert.module';\nimport {TuiNotificationsHostComponent} from './notifications-host/notifications-host.component';\n\n// TODO: remove in ivy compilation\nexport const NOTIFICATIONS_HOST = TuiNotificationsHostComponent;\n\n@NgModule({\n imports: [CommonModule, TuiNotificationAlertModule, TuiLetModule],\n declarations: [TuiNotificationsHostComponent],\n exports: [TuiNotificationsHostComponent],\n entryComponents: [TuiNotificationsHostComponent],\n providers: [\n {\n provide: TuiNotificationsHostComponent,\n useValue: NOTIFICATIONS_HOST,\n },\n ],\n})\nexport class TuiNotificationsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;MAWa,iBAAiB;IAc1B,YACa,QAAqB,EACrB,OAAiE,EACzD,OAEhB;QAJQ,aAAQ,GAAR,QAAQ,CAAa;QACrB,YAAO,GAAP,OAAO,CAA0D;QACzD,YAAO,GAAP,OAAO,CAEvB;QAlBI,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAE7B,YAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAI/B,mBAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAE7C,UAAK,GACV,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAWnB,IAAI,CAAC,SAAS;YACV,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,UAAU;kBACtC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;kBAC3C,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAEjC,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YACnC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;SAC5B;KACJ;IAEO,QAAQ,CACZ,OAAmE;QAEnE,OAAO,MAAM,IAAI,OAAO,CAAC;KAC5B;;;MC9BQ,+BAA+B,GAAG,KAAK;IASvC,6BAA6B,GAA1C,MAAa,6BAA6B;IAItC,YACyC,UAAmC,EAC5B,QAA2B,EAEvD,OAAiC;QAHZ,eAAU,GAAV,UAAU,CAAyB;QAC5B,aAAQ,GAAR,QAAQ,CAAmB;QAEvD,YAAO,GAAP,OAAO,CAA0B;KACjD;IAEJ,QAAQ;QACJ,IAAI,CAAC,aAAa,EAAE,CAAC;KACxB;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3C;IAED,iBAAiB;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;KACjC;IAGO,gBAAgB,CAAC,EACrB,MAAM,EACN,IAAI,EACJ,KAAK,EACL,QAAQ,GACc;QACtB,OAAO;YACH,SAAS,EAAE,MAAM;YACjB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK;YACZ,SAAS,EAAE;gBACP,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACvB;YACD,QAAQ,EAAE,CAAC,IAAO;gBACd,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvB;YACD,gBAAgB,EAAE,CAAC,IAAO;gBACtB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACvB;SACJ,CAAC;KACL;IAEO,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACtB,OAAO;SACV;QAED,KAAK,CACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;cACvB,IAAI,CAAC,IAAI,CAAC,SAAS;cACnB,+BAA+B,CACxC;aACI,IAAI,CACD,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,EACjE,UAAU,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,EACxE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC3B;aACA,SAAS,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;KAClD;EACJ;;YA3DwD,UAAU,uBAA1D,MAAM,SAAC,UAAU;YACoC,iBAAiB,uBAAtE,MAAM,SAAC,iBAAiB;4CACxB,MAAM,SAAC,wBAAwB;;AALpC;IADC,KAAK,EAAE;2DACuB;AAsB/B;IADC,OAAO;qEAsBP;AA7CQ,6BAA6B;IAPzC,SAAS,CAAC;QACP,QAAQ,EAAE,wBAAwB;QAClC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,wwCAAiD;QAEjD,SAAS,EAAE,CAAC,iBAAiB,CAAC;;KACjC,CAAC;IAMO,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACzB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;GAP5B,6BAA6B,CAgEzC;;IC7EY,0BAA0B,GAAvC,MAAa,0BAA0B;EAAG;AAA7B,0BAA0B;IALtC,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,CAAC;QAClE,YAAY,EAAE,CAAC,6BAA6B,CAAC;QAC7C,OAAO,EAAE,CAAC,6BAA6B,CAAC;KAC3C,CAAC;GACW,0BAA0B,CAAG;;ACC1C,MAAM,OAAO,GACT,qGAAqG,CAAC;IAK7F,uBAAuB,GAApC,MAAa,uBAAuB;IAIhC,YAEoB,OAAiC;QAAjC,YAAO,GAAP,OAAO,CAA0B;;QAJ5C,WAAM,GAAG,IAAI,eAAe,CAA6C,EAAE,CAAC,CAAC;KAKlF;IAaJ,IAAI,CACA,OAAiE,EACjE,UAAsE,EAAE;QAExE,OAAO,IAAI,UAAU,CAAC,CAAC,QAAqB;YACxC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAE1D,MAAM,YAAY,GAAG,IAAI,iBAAiB,CAAC,QAAQ,EAAE,OAAO,kCACrD,IAAI,CAAC,OAAO,GACZ,OAAO,EACZ,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;YAEvD,OAAO;gBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC;aAC7E,CAAC;SACL,CAAC,CAAC;KACN;EACJ;;4CAlCQ,MAAM,SAAC,wBAAwB;;;AAL3B,uBAAuB;IAHnC,UAAU,CAAC;QACR,UAAU,EAAE,MAAM;KACrB,CAAC;IAMO,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;GAL5B,uBAAuB,CAuCnC;;ICtCY,6BAA6B,GAA1C,MAAa,6BAA6B;IACtC,YACoD,OAAyB,EAC/B,OAAgC;QAD1B,YAAO,GAAP,OAAO,CAAkB;QAC/B,YAAO,GAAP,OAAO,CAAyB;KAC1E;IAGJ,YAAY,CAAC,KAAa;QACtB,uBACI,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,IACjB,IAAI,CAAC,OAAO,EACjB;KACL;EACJ;;4CAXQ,MAAM,SAAC,qBAAqB;YACsB,uBAAuB,uBAAzE,MAAM,SAAC,uBAAuB;;AAInC;IADC,OAAO;iEAMP;AAZQ,6BAA6B;IAPzC,SAAS,CAAC;QACP,QAAQ,EAAE,wBAAwB;QAClC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,+iBAAiD;QAEjD,UAAU,EAAE,CAAC,aAAa,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;;KAC1E,CAAC;IAGO,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;IAC7B,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;GAH3B,6BAA6B,CAazC;;AC1BD;MACa,kBAAkB,GAAG,8BAA8B;IAcnD,sBAAsB,GAAnC,MAAa,sBAAsB;EAAG;AAAzB,sBAAsB;IAZlC,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,0BAA0B,EAAE,YAAY,CAAC;QACjE,YAAY,EAAE,CAAC,6BAA6B,CAAC;QAC7C,OAAO,EAAE,CAAC,6BAA6B,CAAC;QACxC,eAAe,EAAE,CAAC,6BAA6B,CAAC;QAChD,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,6BAA6B;gBACtC,QAAQ,EAAE,kBAAkB;aAC/B;SACJ;KACJ,CAAC;GACW,sBAAsB,CAAG;;ACtBtC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-modules-notifications.js","sources":["ng://@taiga-ui/core/modules/notifications/notification-alert/Notification-alert.ts","ng://@taiga-ui/core/modules/notifications/notification-alert/notification-alert.component.ts","ng://@taiga-ui/core/modules/notifications/notification-alert/notification-alert.module.ts","ng://@taiga-ui/core/modules/notifications/notifications.service.ts","ng://@taiga-ui/core/modules/notifications/notifications-host/notifications-host.component.ts","ng://@taiga-ui/core/modules/notifications/notifications.module.ts","ng://@taiga-ui/core/modules/notifications/taiga-ui-core-modules-notifications.ts"],"sourcesContent":["import {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {\n TuiNotificationOptions,\n TuiNotificationOptionsWithData,\n} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observer} from 'rxjs';\n\nimport {TuiNotificationContentContext} from '../notification-content-context';\n\nexport class NotificationAlert<O, I> {\n readonly status = this.options.status;\n\n readonly hasIcon = this.options.hasIcon;\n\n readonly autoClose: boolean | number;\n\n readonly hasCloseButton = this.options.hasCloseButton;\n\n readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>> =\n this.options.label;\n\n readonly data!: I;\n\n constructor(\n readonly observer: Observer<O>,\n readonly content: PolymorpheusContent<TuiNotificationContentContext<O, I>>,\n private readonly options: Required<\n TuiNotificationOptions | TuiNotificationOptionsWithData<I>\n >,\n ) {\n this.autoClose =\n typeof this.options.autoClose === 'function'\n ? this.options.autoClose(this.options.status)\n : this.options.autoClose;\n\n if (options && this.withData(options)) {\n this.data = options.data;\n }\n }\n\n private withData(\n options: TuiNotificationOptions | TuiNotificationOptionsWithData<I>,\n ): options is TuiNotificationOptionsWithData<I> {\n return 'data' in options;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n OnInit,\n} from '@angular/core';\nimport {isNumber, TuiDestroyService, tuiPure} from '@taiga-ui/cdk';\nimport {NotificationTokenOptions, TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/tokens';\nimport {fromEvent, timer} from 'rxjs';\nimport {repeatWhen, takeUntil} from 'rxjs/operators';\n\nimport {TuiNotificationContentContext} from '../notification-content-context';\nimport {NotificationAlert} from './Notification-alert';\n\nexport const DEFAULT_ALERT_AUTOCLOSE_TIMEOUT = 3000;\n\n@Component({\n selector: 'tui-notification-alert',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './notification-alert.template.html',\n styleUrls: ['./notification-alert.style.less'],\n providers: [TuiDestroyService],\n})\nexport class TuiNotificationAlertComponent<O, I> implements OnInit {\n @Input()\n item!: NotificationAlert<O, I>;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiDestroyService) private readonly destroy$: TuiDestroyService,\n @Inject(TUI_NOTIFICATION_OPTIONS)\n readonly options: NotificationTokenOptions,\n ) {}\n\n ngOnInit() {\n this.initAutoClose();\n }\n\n get context(): TuiNotificationContentContext<O, I> {\n return this.calculateContext(this.item);\n }\n\n closeNotification() {\n this.item.observer.complete();\n }\n\n @tuiPure\n private calculateContext({\n status,\n data,\n label,\n observer,\n }: NotificationAlert<O, I>): TuiNotificationContentContext<O, I> {\n return {\n $implicit: status,\n data: data,\n label: label,\n closeHook: () => {\n observer.complete();\n },\n emitHook: (data: O) => {\n observer.next(data);\n },\n emitAndCloseHook: (data: O) => {\n observer.next(data);\n observer.complete();\n },\n };\n }\n\n private initAutoClose() {\n if (!this.item.autoClose) {\n return;\n }\n\n timer(\n isNumber(this.item.autoClose)\n ? this.item.autoClose\n : DEFAULT_ALERT_AUTOCLOSE_TIMEOUT,\n )\n .pipe(\n takeUntil(fromEvent(this.elementRef.nativeElement, 'mouseenter')),\n repeatWhen(() => fromEvent(this.elementRef.nativeElement, 'mouseleave')),\n takeUntil(this.destroy$),\n )\n .subscribe(() => this.closeNotification());\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiNotificationModule} from '@taiga-ui/core/components/notification';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiNotificationAlertComponent} from './notification-alert.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiNotificationModule],\n declarations: [TuiNotificationAlertComponent],\n exports: [TuiNotificationAlertComponent],\n})\nexport class TuiNotificationAlertModule {}\n","import {Inject, Injectable} from '@angular/core';\nimport {tuiAssert} from '@taiga-ui/cdk';\nimport {\n TuiNotificationOptions,\n TuiNotificationOptionsWithData,\n} from '@taiga-ui/core/interfaces';\nimport {NotificationTokenOptions, TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable, Observer} from 'rxjs';\n\nimport {NotificationAlert} from './notification-alert/Notification-alert';\nimport {TuiNotificationContentContext} from './notification-content-context';\n\nconst NO_HOST =\n 'Notifications are disabled, enable support by adding TuiNotificationsModule to your main app module';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiNotificationsService {\n /** @internal */\n readonly items$ = new BehaviorSubject<ReadonlyArray<NotificationAlert<any, any>>>([]);\n\n constructor(\n @Inject(TUI_NOTIFICATION_OPTIONS)\n readonly options: NotificationTokenOptions,\n ) {}\n\n show<O = void>(\n content: PolymorpheusContent<TuiNotificationContentContext<O>>,\n ): Observable<O>;\n show<O = void>(\n content: PolymorpheusContent<TuiNotificationContentContext<O>>,\n options: TuiNotificationOptions,\n ): Observable<O>;\n show<O, I>(\n content: PolymorpheusContent<TuiNotificationContentContext<O, I>>,\n options: TuiNotificationOptionsWithData<I>,\n ): Observable<O>;\n show<O, I>(\n content: PolymorpheusContent<TuiNotificationContentContext<O, I>>,\n options: TuiNotificationOptions | TuiNotificationOptionsWithData<I> = {},\n ): Observable<O> {\n return new Observable((observer: Observer<O>) => {\n tuiAssert.assert(!!this.items$.observers.length, NO_HOST);\n\n const notification = new NotificationAlert(observer, content, {\n ...this.options,\n ...options,\n });\n\n this.items$.next([...this.items$.value, notification]);\n\n return () => {\n this.items$.next(this.items$.value.filter(item => item !== notification));\n };\n });\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {tuiPure} from '@taiga-ui/cdk';\nimport {\n tuiFadeInList,\n tuiHeightCollapseList,\n tuiSlideInRightList,\n} from '@taiga-ui/core/animations';\nimport {TuiAnimationOptions} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\nimport {TuiNotificationsService} from '../notifications.service';\n\n@Component({\n selector: 'tui-notifications-host',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './notifications-host.template.html',\n styleUrls: ['./notifications-host.style.less'],\n animations: [tuiFadeInList, tuiSlideInRightList, tuiHeightCollapseList],\n})\nexport class TuiNotificationsHostComponent {\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(TuiNotificationsService) readonly service: TuiNotificationsService,\n ) {}\n\n @tuiPure\n getAnimation(value: number): TuiAnimationOptions {\n return {\n value: String(value),\n ...this.options,\n };\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiNotificationAlertModule} from './notification-alert/notification-alert.module';\nimport {TuiNotificationsHostComponent} from './notifications-host/notifications-host.component';\n\n// TODO: remove in ivy compilation\nexport const NOTIFICATIONS_HOST = TuiNotificationsHostComponent;\n\n@NgModule({\n imports: [CommonModule, TuiNotificationAlertModule, TuiLetModule],\n declarations: [TuiNotificationsHostComponent],\n exports: [TuiNotificationsHostComponent],\n entryComponents: [TuiNotificationsHostComponent],\n providers: [\n {\n provide: TuiNotificationsHostComponent,\n useValue: NOTIFICATIONS_HOST,\n },\n ],\n})\nexport class TuiNotificationsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,21 @@
1
- import { Optional, ElementRef } from '@angular/core';
1
+ import { ElementRef, NgZone, Optional } from '@angular/core';
2
+ import { WINDOW } from '@ng-web-apis/common';
3
+ import { tuiZoneOptimized, watch } from '@taiga-ui/cdk';
4
+ import { TUI_IS_MOBILE_RES, TUI_MEDIA, TUI_MODE } from '@taiga-ui/core/tokens';
5
+ import { fromEvent, EMPTY } from 'rxjs';
6
+ import { startWith, map, distinctUntilChanged, takeUntil } from 'rxjs/operators';
2
7
  import { TuiModeDirective } from '@taiga-ui/core/directives/mode';
3
- import { TUI_MODE } from '@taiga-ui/core/tokens';
4
- import { EMPTY } from 'rxjs';
5
- import { startWith, map, takeUntil } from 'rxjs/operators';
6
- import { watch } from '@taiga-ui/cdk';
8
+
9
+ function isMobileResFactory(windowRef, { mobile }, { nativeElement }, ngZone) {
10
+ const mobile$ = fromEvent(windowRef, 'resize').pipe(startWith(null), map(() => windowRef.innerWidth < mobile), distinctUntilChanged(), tuiZoneOptimized(ngZone));
11
+ nativeElement['$.class._mobile'] = mobile$;
12
+ return mobile$;
13
+ }
14
+ const TUI_IS_MOBILE_RES_PROVIDER = {
15
+ provide: TUI_IS_MOBILE_RES,
16
+ deps: [WINDOW, TUI_MEDIA, ElementRef, NgZone],
17
+ useFactory: isMobileResFactory,
18
+ };
7
19
 
8
20
  function modeFactory(mode, { nativeElement }) {
9
21
  const mode$ = mode
@@ -26,5 +38,5 @@ function watchedControllerFactory(controller, changeDetectorRef, destroy$) {
26
38
  * Generated bundle index. Do not edit.
27
39
  */
28
40
 
29
- export { MODE_PROVIDER, modeFactory, watchedControllerFactory };
41
+ export { MODE_PROVIDER, TUI_IS_MOBILE_RES_PROVIDER, isMobileResFactory, modeFactory, watchedControllerFactory };
30
42
  //# sourceMappingURL=taiga-ui-core-providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-providers.js","sources":["ng://@taiga-ui/core/providers/mode.provider.ts","ng://@taiga-ui/core/providers/watched-controller-provider-factory.ts","ng://@taiga-ui/core/providers/taiga-ui-core-providers.ts"],"sourcesContent":["import {ElementRef, Optional, Provider} from '@angular/core';\nimport {TuiModeDirective} from '@taiga-ui/core/directives/mode';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {EMPTY, Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\nexport function modeFactory(\n mode: TuiModeDirective | null,\n {nativeElement}: ElementRef,\n): Observable<TuiBrightness | null> {\n const mode$ = mode\n ? mode.change$.pipe(\n startWith(null),\n map(() => mode.mode),\n )\n : EMPTY;\n\n return (nativeElement['$.data-mode.attr'] = mode$);\n}\n\nexport const MODE_PROVIDER: Provider = {\n provide: TUI_MODE,\n deps: [[new Optional(), TuiModeDirective], ElementRef],\n useFactory: modeFactory,\n};\n","import {ChangeDetectorRef} from '@angular/core';\nimport {TuiController, watch} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nexport function watchedControllerFactory(\n controller: TuiController,\n changeDetectorRef: ChangeDetectorRef,\n destroy$: Observable<void>,\n): TuiController {\n controller.change$.pipe(watch(changeDetectorRef), takeUntil(destroy$)).subscribe();\n\n return controller;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;SAOgB,WAAW,CACvB,IAA6B,EAC7B,EAAC,aAAa,EAAa;IAE3B,MAAM,KAAK,GAAG,IAAI;UACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CACvB;UACD,KAAK,CAAC;IAEZ,QAAQ,aAAa,CAAC,kBAAkB,CAAC,GAAG,KAAK,EAAE;AACvD,CAAC;MAEY,aAAa,GAAa;IACnC,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,gBAAgB,CAAC,EAAE,UAAU,CAAC;IACtD,UAAU,EAAE,WAAW;;;SCnBX,wBAAwB,CACpC,UAAyB,EACzB,iBAAoC,EACpC,QAA0B;IAE1B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAEnF,OAAO,UAAU,CAAC;AACtB;;ACbA;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-providers.js","sources":["ng://@taiga-ui/core/providers/is-mobile-resolution.provider.ts","ng://@taiga-ui/core/providers/mode.provider.ts","ng://@taiga-ui/core/providers/watched-controller-provider-factory.ts","ng://@taiga-ui/core/providers/taiga-ui-core-providers.ts"],"sourcesContent":["import {ElementRef, NgZone, Provider} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\nimport {TUI_IS_MOBILE_RES, TUI_MEDIA} from '@taiga-ui/core/tokens';\nimport {fromEvent, Observable} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nexport function isMobileResFactory(\n windowRef: Window,\n {mobile}: TuiMedia,\n {nativeElement}: ElementRef,\n ngZone: NgZone,\n): Observable<boolean> {\n const mobile$ = fromEvent(windowRef, 'resize').pipe(\n startWith(null),\n map(() => windowRef.innerWidth < mobile),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n );\n\n nativeElement['$.class._mobile'] = mobile$;\n\n return mobile$;\n}\n\nexport const TUI_IS_MOBILE_RES_PROVIDER: Provider = {\n provide: TUI_IS_MOBILE_RES,\n deps: [WINDOW, TUI_MEDIA, ElementRef, NgZone],\n useFactory: isMobileResFactory,\n};\n","import {ElementRef, Optional, Provider} from '@angular/core';\nimport {TuiModeDirective} from '@taiga-ui/core/directives/mode';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {EMPTY, Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\nexport function modeFactory(\n mode: TuiModeDirective | null,\n {nativeElement}: ElementRef,\n): Observable<TuiBrightness | null> {\n const mode$ = mode\n ? mode.change$.pipe(\n startWith(null),\n map(() => mode.mode),\n )\n : EMPTY;\n\n return (nativeElement['$.data-mode.attr'] = mode$);\n}\n\nexport const MODE_PROVIDER: Provider = {\n provide: TUI_MODE,\n deps: [[new Optional(), TuiModeDirective], ElementRef],\n useFactory: modeFactory,\n};\n","import {ChangeDetectorRef} from '@angular/core';\nimport {TuiController, watch} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nexport function watchedControllerFactory(\n controller: TuiController,\n changeDetectorRef: ChangeDetectorRef,\n destroy$: Observable<void>,\n): TuiController {\n controller.change$.pipe(watch(changeDetectorRef), takeUntil(destroy$)).subscribe();\n\n return controller;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;SAQgB,kBAAkB,CAC9B,SAAiB,EACjB,EAAC,MAAM,EAAW,EAClB,EAAC,aAAa,EAAa,EAC3B,MAAc;IAEd,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,IAAI,CAC/C,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,EACxC,oBAAoB,EAAE,EACtB,gBAAgB,CAAC,MAAM,CAAC,CAC3B,CAAC;IAEF,aAAa,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC;IAE3C,OAAO,OAAO,CAAC;AACnB,CAAC;MAEY,0BAA0B,GAAa;IAChD,OAAO,EAAE,iBAAiB;IAC1B,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC;IAC7C,UAAU,EAAE,kBAAkB;;;SCtBlB,WAAW,CACvB,IAA6B,EAC7B,EAAC,aAAa,EAAa;IAE3B,MAAM,KAAK,GAAG,IAAI;UACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CACvB;UACD,KAAK,CAAC;IAEZ,QAAQ,aAAa,CAAC,kBAAkB,CAAC,GAAG,KAAK,EAAE;AACvD,CAAC;MAEY,aAAa,GAAa;IACnC,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,gBAAgB,CAAC,EAAE,UAAU,CAAC;IACtD,UAAU,EAAE,WAAW;;;SCnBX,wBAAwB,CACpC,UAAyB,EACzB,iBAAoC,EACpC,QAA0B;IAE1B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAEnF,OAAO,UAAU,CAAC;AACtB;;ACbA;;;;;;"}
@@ -3,6 +3,7 @@ import { extractI18n } from '@taiga-ui/i18n';
3
3
  import { iconsPathFactory } from '@taiga-ui/core/utils';
4
4
  import { CHAR_NO_BREAK_SPACE, TUI_SANITIZER as TUI_SANITIZER$1 } from '@taiga-ui/cdk';
5
5
  import { map } from 'rxjs/operators';
6
+ import { identity } from 'rxjs';
6
7
 
7
8
  const TUI_ANIMATIONS_DURATION = new InjectionToken('Duration of all Taiga UI animations in ms', {
8
9
  factory: () => 300,
@@ -61,6 +62,8 @@ const TUI_ICONS_PATH = new InjectionToken('A handler to retrieve USE id for icon
61
62
  factory: () => iconsPathFactory('assets/taiga-ui/icons/'),
62
63
  });
63
64
 
65
+ const TUI_IS_MOBILE_RES = new InjectionToken('Mobile resolution stream for private providers');
66
+
64
67
  const TUI_MEDIA = new InjectionToken('Token for media constant', {
65
68
  factory: () => ({
66
69
  mobile: 768,
@@ -115,6 +118,10 @@ const TUI_SANITIZER = TUI_SANITIZER$1;
115
118
 
116
119
  const TUI_SCROLL_REF = new InjectionToken('Scrollable container');
117
120
 
121
+ const TUI_SVG_SRC_PROCESSOR = new InjectionToken('Source path processor for svg', {
122
+ factory: () => identity,
123
+ });
124
+
118
125
  const TUI_TEXTFIELD_APPEARANCE = new InjectionToken('Appearance for inputs', {
119
126
  factory: () => "textfield" /* Textfield */,
120
127
  });
@@ -125,5 +132,5 @@ const TUI_VALUE_ACCESSOR = new InjectionToken('Buffer token to pass NG_VALUE_ACC
125
132
  * Generated bundle index. Do not edit.
126
133
  */
127
134
 
128
- export { TUI_ANIMATIONS_DURATION, TUI_ANIMATION_OPTIONS, TUI_ASSERT_ENABLED, TUI_CLOSE_WORD, TUI_DATA_LIST_ACCESSOR, TUI_DATA_LIST_HOST, TUI_DEFAULT_ERROR_MESSAGE, TUI_DOCUMENT_OR_SHADOW_ROOT, TUI_DROPDOWN_DIRECTIVE, TUI_ELEMENT_REF, TUI_FIRST_DAY_OF_WEEK, TUI_ICONS, TUI_ICONS_PATH, TUI_MEDIA, TUI_MODE, TUI_MONTHS, TUI_NOTHING_FOUND_MESSAGE, TUI_NOTIFICATION_DEFAULT_OPTIONS, TUI_NOTIFICATION_OPTIONS, TUI_NUMBER_FORMAT, TUI_OPTION_CONTENT, TUI_ORDERED_SHORT_WEEK_DAYS, TUI_SANITIZER, TUI_SCROLL_REF, TUI_SHORT_WEEK_DAYS, TUI_SPIN_TEXTS, TUI_TEXTFIELD_APPEARANCE, TUI_VALUE_ACCESSOR, convertToSundayFirstWeekFormat };
135
+ export { TUI_ANIMATIONS_DURATION, TUI_ANIMATION_OPTIONS, TUI_ASSERT_ENABLED, TUI_CLOSE_WORD, TUI_DATA_LIST_ACCESSOR, TUI_DATA_LIST_HOST, TUI_DEFAULT_ERROR_MESSAGE, TUI_DOCUMENT_OR_SHADOW_ROOT, TUI_DROPDOWN_DIRECTIVE, TUI_ELEMENT_REF, TUI_FIRST_DAY_OF_WEEK, TUI_ICONS, TUI_ICONS_PATH, TUI_IS_MOBILE_RES, TUI_MEDIA, TUI_MODE, TUI_MONTHS, TUI_NOTHING_FOUND_MESSAGE, TUI_NOTIFICATION_DEFAULT_OPTIONS, TUI_NOTIFICATION_OPTIONS, TUI_NUMBER_FORMAT, TUI_OPTION_CONTENT, TUI_ORDERED_SHORT_WEEK_DAYS, TUI_SANITIZER, TUI_SCROLL_REF, TUI_SHORT_WEEK_DAYS, TUI_SPIN_TEXTS, TUI_SVG_SRC_PROCESSOR, TUI_TEXTFIELD_APPEARANCE, TUI_VALUE_ACCESSOR, convertToSundayFirstWeekFormat };
129
136
  //# sourceMappingURL=taiga-ui-core-tokens.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-tokens.js","sources":["ng://@taiga-ui/core/tokens/animations-duration.ts","ng://@taiga-ui/core/tokens/animation-options.ts","ng://@taiga-ui/core/tokens/assert-enabled.ts","ng://@taiga-ui/core/tokens/data-list-accessor.ts","ng://@taiga-ui/core/tokens/data-list-host.ts","ng://@taiga-ui/core/tokens/document-or-shadow-root.ts","ng://@taiga-ui/core/tokens/dropdown-directive.ts","ng://@taiga-ui/core/tokens/element-ref.ts","ng://@taiga-ui/core/tokens/first-day-of-week.ts","ng://@taiga-ui/core/tokens/i18n.ts","ng://@taiga-ui/core/tokens/icons.ts","ng://@taiga-ui/core/tokens/icons-path.ts","ng://@taiga-ui/core/tokens/media.ts","ng://@taiga-ui/core/tokens/mode.ts","ng://@taiga-ui/core/tokens/notification-options.ts","ng://@taiga-ui/core/tokens/number-format.ts","ng://@taiga-ui/core/tokens/option-content.ts","ng://@taiga-ui/core/tokens/ordered-short-week-days.ts","ng://@taiga-ui/core/tokens/sanitizer.ts","ng://@taiga-ui/core/tokens/scroll-ref.ts","ng://@taiga-ui/core/tokens/textfield-appearance.ts","ng://@taiga-ui/core/tokens/value-accessor.ts","ng://@taiga-ui/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n 'Duration of all Taiga UI animations in ms',\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n 'Options for Taiga UI animations',\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\nexport const TUI_ASSERT_ENABLED = new InjectionToken(\n 'Flag to enable assertions across Taiga UI',\n {\n factory: () => isDevMode(),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n 'Accessor for options',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<any>>(\n 'DataList controller',\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n 'Document or ShadowRoot',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDropdown} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DROPDOWN_DIRECTIVE = new InjectionToken<TuiDropdown>(\n 'Directive controlling TuiDropdownBoxComponent',\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(\n 'ElementRef when you cannot use @Input for single time injection',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n 'The first day of the week index',\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {extractI18n} from '@taiga-ui/i18n';\n\nexport const TUI_MONTHS = new InjectionToken('Localized months names', {\n factory: extractI18n('months'),\n});\n\nexport const TUI_CLOSE_WORD = new InjectionToken(`i18n 'close' word`, {\n factory: extractI18n('close'),\n});\n\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `i18n 'Nothing found' message`,\n {\n factory: extractI18n('nothingFoundMessage'),\n },\n);\n\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(`i18n of error message`, {\n factory: extractI18n('defaultErrorMessage'),\n});\n\nexport const TUI_SPIN_TEXTS = new InjectionToken('spin i18n texts', {\n factory: extractI18n('spinTexts'),\n});\n\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken('calendars i18n texts', {\n factory: extractI18n('shortWeekDays'),\n});\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(\n 'A key/value dictionary of icon names and src to be defined with TuiSvgService',\n {\n factory: () => ({}),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {iconsPathFactory} from '@taiga-ui/core/utils';\n\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n 'A handler to retrieve USE id for icon by name',\n {\n factory: () => iconsPathFactory('assets/taiga-ui/icons/'),\n },\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>('Token for media constant', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(\n 'Mode stream for private providers',\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiNotificationAutoClose} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface NotificationTokenOptions {\n readonly autoClose: TuiNotificationAutoClose;\n readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>>;\n readonly status: TuiNotification;\n readonly hasIcon: boolean;\n readonly hasCloseButton: boolean;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: NotificationTokenOptions = {\n autoClose: true,\n label: '',\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n};\n\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<NotificationTokenOptions>(\n 'Default parameters for notification alert component',\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk';\nimport {NumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport const TUI_NUMBER_FORMAT = new InjectionToken<NumberFormatSettings>(\n 'Formatting configuration for displayed numbers',\n {\n factory: () => ({\n decimalSeparator: ',',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n zeroPadding: true,\n }),\n },\n);\n","import {InjectionToken, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<{}>>>\n>('Content for tuiOption component');\n","import {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK, TUI_SHORT_WEEK_DAYS} from './index';\n\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\n// TODO: Remove export in ivy compiation\nexport const convertToSundayFirstWeekFormat = (weekDaysNames: WEEK_DAYS_NAMES) => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>('Ordered calendars i18n texts', {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {TUI_SANITIZER as TOKEN} from '@taiga-ui/cdk';\n\nexport const TUI_SANITIZER = TOKEN;\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n 'Scrollable container',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n 'Appearance for inputs',\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n 'Buffer token to pass NG_VALUE_ACCESSOR to a different Injector',\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TOKEN"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-tokens.js","sources":["ng://@taiga-ui/core/tokens/animations-duration.ts","ng://@taiga-ui/core/tokens/animation-options.ts","ng://@taiga-ui/core/tokens/assert-enabled.ts","ng://@taiga-ui/core/tokens/data-list-accessor.ts","ng://@taiga-ui/core/tokens/data-list-host.ts","ng://@taiga-ui/core/tokens/document-or-shadow-root.ts","ng://@taiga-ui/core/tokens/dropdown-directive.ts","ng://@taiga-ui/core/tokens/element-ref.ts","ng://@taiga-ui/core/tokens/first-day-of-week.ts","ng://@taiga-ui/core/tokens/i18n.ts","ng://@taiga-ui/core/tokens/icons.ts","ng://@taiga-ui/core/tokens/icons-path.ts","ng://@taiga-ui/core/tokens/is-mobile-resolution.ts","ng://@taiga-ui/core/tokens/media.ts","ng://@taiga-ui/core/tokens/mode.ts","ng://@taiga-ui/core/tokens/notification-options.ts","ng://@taiga-ui/core/tokens/number-format.ts","ng://@taiga-ui/core/tokens/option-content.ts","ng://@taiga-ui/core/tokens/ordered-short-week-days.ts","ng://@taiga-ui/core/tokens/sanitizer.ts","ng://@taiga-ui/core/tokens/scroll-ref.ts","ng://@taiga-ui/core/tokens/svg-src-processor.ts","ng://@taiga-ui/core/tokens/textfield-appearance.ts","ng://@taiga-ui/core/tokens/value-accessor.ts","ng://@taiga-ui/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n 'Duration of all Taiga UI animations in ms',\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n 'Options for Taiga UI animations',\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\nexport const TUI_ASSERT_ENABLED = new InjectionToken(\n 'Flag to enable assertions across Taiga UI',\n {\n factory: () => isDevMode(),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n 'Accessor for options',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<any>>(\n 'DataList controller',\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n 'Document or ShadowRoot',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDropdown} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DROPDOWN_DIRECTIVE = new InjectionToken<TuiDropdown>(\n 'Directive controlling TuiDropdownBoxComponent',\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(\n 'ElementRef when you cannot use @Input for single time injection',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n 'The first day of the week index',\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {extractI18n} from '@taiga-ui/i18n';\n\nexport const TUI_MONTHS = new InjectionToken('Localized months names', {\n factory: extractI18n('months'),\n});\n\nexport const TUI_CLOSE_WORD = new InjectionToken(`i18n 'close' word`, {\n factory: extractI18n('close'),\n});\n\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `i18n 'Nothing found' message`,\n {\n factory: extractI18n('nothingFoundMessage'),\n },\n);\n\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(`i18n of error message`, {\n factory: extractI18n('defaultErrorMessage'),\n});\n\nexport const TUI_SPIN_TEXTS = new InjectionToken('spin i18n texts', {\n factory: extractI18n('spinTexts'),\n});\n\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken('calendars i18n texts', {\n factory: extractI18n('shortWeekDays'),\n});\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(\n 'A key/value dictionary of icon names and src to be defined with TuiSvgService',\n {\n factory: () => ({}),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {iconsPathFactory} from '@taiga-ui/core/utils';\n\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n 'A handler to retrieve USE id for icon by name',\n {\n factory: () => iconsPathFactory('assets/taiga-ui/icons/'),\n },\n );\n","import {InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\n\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n 'Mobile resolution stream for private providers',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>('Token for media constant', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(\n 'Mode stream for private providers',\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiNotificationAutoClose} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface NotificationTokenOptions {\n readonly autoClose: TuiNotificationAutoClose;\n readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>>;\n readonly status: TuiNotification;\n readonly hasIcon: boolean;\n readonly hasCloseButton: boolean;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: NotificationTokenOptions = {\n autoClose: true,\n label: '',\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n};\n\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<NotificationTokenOptions>(\n 'Default parameters for notification alert component',\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk';\nimport {NumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport const TUI_NUMBER_FORMAT = new InjectionToken<NumberFormatSettings>(\n 'Formatting configuration for displayed numbers',\n {\n factory: () => ({\n decimalSeparator: ',',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n zeroPadding: true,\n }),\n },\n);\n","import {InjectionToken, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<{}>>>\n>('Content for tuiOption component');\n","import {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK, TUI_SHORT_WEEK_DAYS} from './index';\n\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\n// TODO: Remove export in ivy compiation\nexport const convertToSundayFirstWeekFormat = (weekDaysNames: WEEK_DAYS_NAMES) => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>('Ordered calendars i18n texts', {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {TUI_SANITIZER as TOKEN} from '@taiga-ui/cdk';\n\nexport const TUI_SANITIZER = TOKEN;\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n 'Scrollable container',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {identity} from 'rxjs';\n\nexport const TUI_SVG_SRC_PROCESSOR: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>('Source path processor for svg', {\n factory: () => identity,\n });\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n 'Appearance for inputs',\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n 'Buffer token to pass NG_VALUE_ACCESSOR to a different Injector',\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TOKEN"],"mappings":"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"}
@@ -159,7 +159,7 @@ var TuiDialogComponent = /** @class */ (function () {
159
159
  changeDetection: ChangeDetectionStrategy.OnPush,
160
160
  providers: TUI_DIALOG_PROVIDERS,
161
161
  animations: [tuiSlideInTop, tuiFadeIn],
162
- styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1rem;border:40px solid transparent}:host:after{position:absolute;top:0;left:0;width:100%;height:100%;box-shadow:0 1.125rem 1.875rem rgba(0,0,0,.48);content:'';border-radius:inherit;pointer-events:none}:host[data-size='s']{width:30rem}:host[data-size='s'] .content{padding:1.5rem}:host[data-size='s'] .heading{margin-bottom:.5rem}:host[data-size='m']{width:42.5rem}:host[data-size='m'] .heading{margin-bottom:.75rem}:host[data-size='l']{width:55rem}:host[data-size='l'] .heading{margin-bottom:1rem}:host[data-size=fullscreen],:host[data-size=page]{width:100vw;min-height:100vh;border-radius:0;border:none;background:var(--tui-base-01)}:host[data-size=fullscreen] .content,:host[data-size=page] .content{padding:3rem calc(50vw - (45rem / 2))}:host[data-size=fullscreen] .heading,:host[data-size=page] .heading{margin-bottom:1rem}:host[data-size=page] .content{padding:0}:host._centered{text-align:center}@media screen and (max-width:47.9375em){:host[data-size]{min-width:100vw;width:100vw;max-width:100vw;border-radius:0;border:none;margin:auto 0 0}:host[data-size] .content{padding:2rem 1.5rem}:host[data-size] .heading{margin-bottom:.5rem}:host[data-size=fullscreen] .header{flex:1}}.heading{margin:0;word-wrap:break-word}.heading:empty{display:none}.header{display:flex;border-top-left-radius:inherit;border-top-right-radius:inherit;overflow:hidden}.content{border-radius:inherit;padding:2rem;background:var(--tui-base-01)}.content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.wrapper{position:sticky;top:0;order:-1}.close{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:fixed;top:1.5rem;right:1.5rem;color:var(--tui-base-01);background:rgba(104,104,104,.96)}.close:hover{background:rgba(159,159,159,.86)}:host:not([data-size=fullscreen]) .close{-webkit-animation:tuiFadeIn var(--tui-duration);animation:tuiFadeIn var(--tui-duration)}:host:not([data-size=fullscreen]).ng-animating .close{display:none}@media screen and (max-width:47.9375em){.close{position:absolute;top:0;right:0;background:0 0;color:var(--tui-base-06)}.close:hover{color:var(--tui-base-07)}}.buttons{margin-top:1.25rem;text-align:right}"]
162
+ styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1rem;border:40px solid transparent}:host:after{position:absolute;top:0;left:0;width:100%;height:100%;box-shadow:0 1.125rem 1.875rem rgba(0,0,0,.48);content:'';border-radius:inherit;pointer-events:none}:host[data-size='s']{width:30rem}:host[data-size='s'] .content{padding:1.5rem}:host[data-size='s'] .heading{margin-bottom:.5rem}:host[data-size='m']{width:42.5rem}:host[data-size='m'] .heading{margin-bottom:.75rem}:host[data-size='l']{width:55rem}:host[data-size='l'] .heading{margin-bottom:1rem}:host[data-size=fullscreen],:host[data-size=page]{width:100vw;min-height:100vh;border-radius:0;border:none;background:var(--tui-base-01)}:host[data-size=fullscreen] .content,:host[data-size=page] .content{padding:3rem calc(50vw - (45rem / 2))}:host[data-size=fullscreen] .heading,:host[data-size=page] .heading{margin-bottom:1rem}:host[data-size=page] .content{padding:0}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-width:100vw;width:100vw;max-width:100vw;border-radius:0;border:none;margin:auto 0 0}:host :host-context(tui-root._mobile)[data-size] .content{padding:2rem 1.5rem}:host :host-context(tui-root._mobile)[data-size] .heading{margin-bottom:.5rem}.heading{margin:0;word-wrap:break-word}.heading:empty{display:none}.header{display:flex;border-top-left-radius:inherit;border-top-right-radius:inherit;overflow:hidden}:host[data-size=fullscreen] :host-context(tui-root._mobile) .header{flex:1}.content{border-radius:inherit;padding:2rem;background:var(--tui-base-01)}.content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.wrapper{position:sticky;top:0;order:-1}.close{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:fixed;top:1.5rem;right:1.5rem;color:var(--tui-base-01);background:rgba(104,104,104,.96)}.close:hover{background:rgba(159,159,159,.86)}:host:not([data-size=fullscreen]) .close{-webkit-animation:tuiFadeIn var(--tui-duration);animation:tuiFadeIn var(--tui-duration)}:host:not([data-size=fullscreen]).ng-animating .close{display:none}:host-context(tui-root._mobile) .close{position:absolute;top:0;right:0;background:0 0;color:var(--tui-base-06)}:host-context(tui-root._mobile) .close:hover{color:var(--tui-base-07)}.buttons{margin-top:1.25rem;text-align:right}"]
163
163
  }),
164
164
  __param(0, Inject(TUI_ANIMATIONS_DURATION)),
165
165
  __param(1, Inject(TUI_IS_MOBILE)),
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-notification.js","sources":["ng://@taiga-ui/core/components/notification/notification.component.ts","ng://@taiga-ui/core/components/notification/notification.module.ts","ng://@taiga-ui/core/components/notification/taiga-ui-core-components-notification.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n NotificationTokenOptions,\n TUI_CLOSE_WORD,\n TUI_NOTIFICATION_OPTIONS,\n} from '@taiga-ui/core/tokens';\nimport {Observable} from 'rxjs';\n\nexport const STATUS_ICON = {\n info: 'tuiIconInfo',\n success: 'tuiIconCheckCircle',\n error: 'tuiIconCancel',\n warning: 'tuiIconAttention',\n} as const;\n\n// @bad TODO: Think about moving to kit\n@Component({\n selector: 'tui-notification',\n templateUrl: './notification.template.html',\n styleUrls: ['./notification.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiNotificationComponent {\n @Input()\n @HostBinding('class._has-icon')\n @tuiDefaultProp()\n hasIcon = this.options.hasIcon;\n\n @Input()\n @HostBinding('attr.data-tui-host-status')\n @tuiDefaultProp()\n status: 'info' | 'error' | 'warning' | 'success' = this.options.status;\n\n @Output()\n readonly close = new EventEmitter<void>();\n\n constructor(\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n @Inject(TUI_NOTIFICATION_OPTIONS)\n public readonly options: NotificationTokenOptions,\n ) {}\n\n get icon(): string {\n return STATUS_ICON[this.status];\n }\n\n @HostBinding('class._has-close-button')\n get hasClose(): boolean {\n return !!this.close.observers.length;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiButtonModule} from '@taiga-ui/core/components/button';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\n\nimport {TuiNotificationComponent} from './notification.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiButtonModule],\n declarations: [TuiNotificationComponent],\n exports: [TuiNotificationComponent],\n})\nexport class TuiNotificationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;IAiBa,WAAW,GAAG;IACvB,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,oBAAoB;IAC7B,KAAK,EAAE,eAAe;IACtB,OAAO,EAAE,kBAAkB;EACpB;AAEX;;IAqBI,kCACqC,UAA8B,EAE/C,OAAiC;QAFhB,eAAU,GAAV,UAAU,CAAoB;QAE/C,YAAO,GAAP,OAAO,CAA0B;QAbrD,YAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAK/B,WAAM,GAA6C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAG9D,UAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;KAMtC;IAEJ,sBAAI,0CAAI;aAAR;YACI,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACnC;;;OAAA;IAGD,sBAAI,8CAAQ;aAAZ;YACI,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;SACxC;;;OAAA;;gBAZgD,UAAU,uBAAtD,MAAM,SAAC,cAAc;gDACrB,MAAM,SAAC,wBAAwB;;IAZpC;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,iBAAiB,CAAC;QAC9B,cAAc,EAAE;6DACc;IAK/B;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,2BAA2B,CAAC;QACxC,cAAc,EAAE;4DACsD;IAGvE;QADC,MAAM,EAAE;2DACiC;IAa1C;QADC,WAAW,CAAC,yBAAyB,CAAC;4DAGtC;IA3BQ,wBAAwB;QANpC,SAAS,CAAC;YACP,QAAQ,EAAE,kBAAkB;YAC5B,qfAA2C;YAE3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;;SAClD,CAAC;QAgBO,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;QACtB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;OAhB5B,wBAAwB,CA4BpC;IAAD,+BAAC;CA5BD;;;ICnBA;KAAqC;IAAxB,qBAAqB;QALjC,QAAQ,CAAC;YACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC;YACtD,YAAY,EAAE,CAAC,wBAAwB,CAAC;YACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;SACtC,CAAC;OACW,qBAAqB,CAAG;IAAD,4BAAC;CAArC;;ACZA;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-notification.js","sources":["ng://@taiga-ui/core/components/notification/notification.component.ts","ng://@taiga-ui/core/components/notification/notification.module.ts","ng://@taiga-ui/core/components/notification/taiga-ui-core-components-notification.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n NotificationTokenOptions,\n TUI_CLOSE_WORD,\n TUI_NOTIFICATION_OPTIONS,\n} from '@taiga-ui/core/tokens';\nimport {Observable} from 'rxjs';\n\nexport const STATUS_ICON = {\n info: 'tuiIconInfo',\n success: 'tuiIconCheckCircle',\n error: 'tuiIconCancel',\n warning: 'tuiIconAttention',\n} as const;\n\n// @bad TODO: Think about moving to kit\n@Component({\n selector: 'tui-notification',\n templateUrl: './notification.template.html',\n styleUrls: ['./notification.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiNotificationComponent {\n @Input()\n @HostBinding('class._has-icon')\n @tuiDefaultProp()\n hasIcon = this.options.hasIcon;\n\n @Input()\n @HostBinding('attr.data-tui-host-status')\n @tuiDefaultProp()\n status: 'info' | 'error' | 'warning' | 'success' = this.options.status;\n\n @Output()\n readonly close = new EventEmitter<void>();\n\n constructor(\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n @Inject(TUI_NOTIFICATION_OPTIONS)\n readonly options: NotificationTokenOptions,\n ) {}\n\n get icon(): string {\n return STATUS_ICON[this.status];\n }\n\n @HostBinding('class._has-close-button')\n get hasClose(): boolean {\n return !!this.close.observers.length;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiButtonModule} from '@taiga-ui/core/components/button';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\n\nimport {TuiNotificationComponent} from './notification.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiButtonModule],\n declarations: [TuiNotificationComponent],\n exports: [TuiNotificationComponent],\n})\nexport class TuiNotificationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;IAiBa,WAAW,GAAG;IACvB,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,oBAAoB;IAC7B,KAAK,EAAE,eAAe;IACtB,OAAO,EAAE,kBAAkB;EACpB;AAEX;;IAqBI,kCACqC,UAA8B,EAEtD,OAAiC;QAFT,eAAU,GAAV,UAAU,CAAoB;QAEtD,YAAO,GAAP,OAAO,CAA0B;QAb9C,YAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAK/B,WAAM,GAA6C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAG9D,UAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;KAMtC;IAEJ,sBAAI,0CAAI;aAAR;YACI,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACnC;;;OAAA;IAGD,sBAAI,8CAAQ;aAAZ;YACI,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;SACxC;;;OAAA;;gBAZgD,UAAU,uBAAtD,MAAM,SAAC,cAAc;gDACrB,MAAM,SAAC,wBAAwB;;IAZpC;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,iBAAiB,CAAC;QAC9B,cAAc,EAAE;6DACc;IAK/B;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,2BAA2B,CAAC;QACxC,cAAc,EAAE;4DACsD;IAGvE;QADC,MAAM,EAAE;2DACiC;IAa1C;QADC,WAAW,CAAC,yBAAyB,CAAC;4DAGtC;IA3BQ,wBAAwB;QANpC,SAAS,CAAC;YACP,QAAQ,EAAE,kBAAkB;YAC5B,qfAA2C;YAE3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;;SAClD,CAAC;QAgBO,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;QACtB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;OAhB5B,wBAAwB,CA4BpC;IAAD,+BAAC;CA5BD;;;ICnBA;KAAqC;IAAxB,qBAAqB;QALjC,QAAQ,CAAC;YACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC;YACtD,YAAY,EAAE,CAAC,wBAAwB,CAAC;YACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;SACtC,CAAC;OACW,qBAAqB,CAAG;IAAD,4BAAC;CAArC;;ACZA;;;;;;"}