UNPKG

@taiga-ui/kit

Version:

Taiga UI Angular main components kit

1 lines 15.3 kB
{"version":3,"file":"taiga-ui-kit-components-toast.mjs","sources":["../../../projects/kit/components/toast/toast.directive.ts","../../../projects/kit/components/toast/toast.component.ts","../../../projects/kit/components/toast/toast.template.html","../../../projects/kit/components/toast/toast.options.ts","../../../projects/kit/components/toast/toast.service.ts","../../../projects/kit/components/toast/toast.ts","../../../projects/kit/components/toast/taiga-ui-kit-components-toast.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {TUI_PLATFORM} from '@taiga-ui/cdk/tokens';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {TUI_COMMON_ICONS, TUI_ICON_END} from '@taiga-ui/core/tokens';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\nimport {tuiBadgeOptionsProvider} from '@taiga-ui/kit/components/badge';\nimport {TuiShrinkWrapDirective} from '@taiga-ui/kit/components/shrink-wrap';\n\n@Component({\n template: '',\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import '@taiga-ui/styles/components/toast.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: `tui-toast-${TUI_VERSION}`,\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiToast]:not(ng-template)',\n providers: [\n tuiBadgeOptionsProvider({size: 'l'}),\n tuiAvatarOptionsProvider(() => ({\n size: inject(TUI_PLATFORM) === 'web' ? 's' : 'm',\n })),\n tuiButtonOptionsProvider(() => ({\n size: 's',\n appearance:\n inject(TUI_PLATFORM) === 'web' ? 'secondary-grayscale' : 'secondary',\n })),\n {\n provide: TUI_ICON_END,\n useFactory: () =>\n tuiInjectElement().matches('a, button')\n ? inject(TUI_COMMON_ICONS).more\n : '',\n },\n ],\n hostDirectives: [TuiWithIcons, TuiShrinkWrapDirective],\n})\nexport class TuiToastDirective {\n public readonly tuiShrinkWrap = input('min(calc(100vw - 4rem), 25rem)');\n protected readonly nothing = tuiWithStyles(Styles);\n\n protected readonly width = tuiDirectiveBinding(\n TuiShrinkWrapDirective,\n 'tuiShrinkWrap',\n this.tuiShrinkWrap,\n );\n}\n","import {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n viewChild,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {TuiSwipe} from '@taiga-ui/cdk/directives/swipe';\nimport {type TuiPortalContext} from '@taiga-ui/cdk/portals';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {TuiAlertDirective} from '@taiga-ui/core/portals/alert';\nimport {TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {TuiShrinkWrap} from '@taiga-ui/kit/components/shrink-wrap';\nimport {injectContext, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {EMPTY, fromEvent, of, repeat, switchMap, takeUntil, timer} from 'rxjs';\n\nimport {TuiToastDirective} from './toast.directive';\nimport {type TuiToastOptions} from './toast.options';\n\n@Component({\n selector: 'tui-toast',\n imports: [PolymorpheusOutlet, TuiButton, TuiShrinkWrap, TuiSwipe, TuiToastDirective],\n templateUrl: './toast.template.html',\n styleUrl: './toast.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiAnimated, TuiAlertDirective],\n host: {\n role: 'status',\n '[attr.data-appearance]': 'context.appearance',\n '[class._mobile]': 'isMobile',\n },\n})\nexport class TuiToastComponent<O, I> implements AfterViewInit {\n private readonly close = viewChild(TuiButton, {read: ElementRef});\n private readonly el = tuiInjectElement();\n protected readonly isMobile = inject(WA_IS_MOBILE);\n protected readonly context = injectContext<TuiPortalContext<TuiToastOptions<I>, O>>();\n protected readonly icons = inject(TUI_COMMON_ICONS);\n\n protected readonly $ = of(this.context.autoClose)\n .pipe(\n switchMap((autoClose) => (autoClose ? timer(autoClose) : EMPTY)),\n takeUntil(fromEvent(this.el, 'mouseenter')),\n repeat({delay: () => fromEvent(this.el, 'mouseleave')}),\n takeUntilDestroyed(),\n )\n .subscribe(() => this.context.$implicit.complete());\n\n public ngAfterViewInit(): void {\n const close = this.close();\n\n if (close) {\n this.el.querySelector('[tuiToast]')?.appendChild(close.nativeElement);\n }\n }\n\n protected onSwipe(): void {\n if (this.context.closable) {\n this.context.$implicit.complete();\n }\n }\n}\n","<div\n class=\"t-wrapper\"\n (tuiSwipe)=\"onSwipe()\"\n>\n <div\n *polymorpheusOutlet=\"context.content as text; context: context\"\n tuiToast\n [iconStart]=\"context.data?.toString() || ''\"\n >\n <tui-shrink-wrap><span [innerHTML]=\"text\"></span></tui-shrink-wrap>\n </div>\n @if (context.closable && !isMobile) {\n <button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click.stop.prevent)=\"context.$implicit.complete()\"\n >\n Close\n </button>\n }\n</div>\n","import {inject, InjectionToken} from '@angular/core';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiPositionOptions} from '@taiga-ui/core/portals/alert';\n\nexport interface TuiToastOptions<I> extends TuiPositionOptions {\n readonly autoClose: number;\n readonly closable: boolean;\n readonly appearance: string;\n readonly data?: I;\n}\n\nexport const TUI_TOAST_CONCURRENCY = new InjectionToken(\n ngDevMode ? 'TUI_TOAST_CONCURRENCY' : '',\n {factory: () => (inject(WA_IS_MOBILE) ? 1 : 2)},\n);\n\nexport const [TUI_TOAST_OPTIONS, tuiToastOptionsProvider] = tuiCreateOptions<\n TuiToastOptions<any>\n>({\n appearance: '',\n autoClose: 5000,\n closable: true,\n block: 'start',\n inline: 'center',\n});\n","import {Directive, inject, Injectable, input} from '@angular/core';\nimport {tuiAsPortal, TuiPortalDirective} from '@taiga-ui/cdk/portals';\nimport {TuiAlertService} from '@taiga-ui/core/portals/alert';\n\nimport {TuiToastComponent} from './toast.component';\nimport {\n TUI_TOAST_CONCURRENCY,\n TUI_TOAST_OPTIONS,\n type TuiToastOptions,\n} from './toast.options';\n\n@Injectable({providedIn: 'root'})\nexport class TuiToastService extends TuiAlertService<TuiToastOptions<any>> {\n protected override readonly options = inject(TUI_TOAST_OPTIONS);\n protected override readonly component = TuiToastComponent;\n\n constructor() {\n super(inject(TUI_TOAST_CONCURRENCY));\n }\n}\n\n@Directive({\n selector: 'ng-template[tuiToast]',\n providers: [tuiAsPortal(TuiToastService)],\n hostDirectives: [\n {\n directive: TuiPortalDirective,\n inputs: ['options: tuiToastOptions', 'open: tuiToast'],\n outputs: ['openChange: tuiToastChange'],\n },\n ],\n})\nexport class TuiToastTemplate<T> {\n public readonly tuiToastOptions = input<Partial<TuiToastOptions<T>>>({});\n}\n","import {TuiToastDirective} from './toast.directive';\nimport {TuiToastTemplate} from './toast.service';\n\nexport const TuiToast = [TuiToastDirective, TuiToastTemplate] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3"],"mappings":"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"}