{"version":3,"file":"taiga-ui-layout-components-app-bar.mjs","sources":["../../../projects/layout/components/app-bar/app-bar.providers.ts","../../../projects/layout/components/app-bar/app-bar.component.ts","../../../projects/layout/components/app-bar/app-bar.template.html","../../../projects/layout/components/app-bar/app-bar.directive.ts","../../../projects/layout/components/app-bar/app-bar-back.component.ts","../../../projects/layout/components/app-bar/app-bar-back.template.html","../../../projects/layout/components/app-bar/app-bar-size.directive.ts","../../../projects/layout/components/app-bar/app-bar.ts","../../../projects/layout/components/app-bar/taiga-ui-layout-components-app-bar.ts"],"sourcesContent":["import {type Provider} from '@angular/core';\nimport {\n    WA_MUTATION_OBSERVER_INIT,\n    WaMutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {WaResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\n\nexport const TUI_APP_BAR_PROVIDERS: Provider[] = [\n    WaResizeObserverService,\n    WaMutationObserverService,\n    {\n        provide: WA_MUTATION_OBSERVER_INIT,\n        useValue: {\n            characterData: true,\n            childList: true,\n            subtree: true,\n        },\n    },\n    tuiButtonOptionsProvider({appearance: 'action'}),\n];\n","import {AsyncPipe} from '@angular/common';\nimport {\n    type AfterViewInit,\n    ChangeDetectionStrategy,\n    Component,\n    type ElementRef,\n    inject,\n    input,\n    viewChildren,\n    ViewEncapsulation,\n} from '@angular/core';\nimport {WaMutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {WaResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {tuiZonefull} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\nimport {TuiFade} from '@taiga-ui/kit/directives/fade';\nimport {map, merge} from 'rxjs';\n\nimport {TUI_APP_BAR_PROVIDERS} from './app-bar.providers';\n\n@Component({\n    selector: 'tui-app-bar',\n    imports: [AsyncPipe, TuiFade],\n    templateUrl: './app-bar.template.html',\n    styles: `\n        [data-tui-version='${TUI_VERSION}'] {\n            @import './app-bar.style.less';\n        }\n    `,\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: TUI_APP_BAR_PROVIDERS,\n    host: {'data-tui-version': TUI_VERSION, '[attr.data-size]': 'size()'},\n})\nexport class TuiAppBarComponent implements AfterViewInit {\n    private readonly side = viewChildren<ElementRef<HTMLElement>>('side');\n\n    private readonly el = tuiInjectElement();\n\n    protected readonly width$ = merge(\n        inject(WaResizeObserverService, {self: true}),\n        inject(WaMutationObserverService, {self: true}),\n    ).pipe(\n        tuiZonefull(),\n        map(\n            () =>\n                2 *\n                Math.max(\n                    this.side()[0]?.nativeElement.clientWidth ?? 0,\n                    this.side()[this.side().length - 1]?.nativeElement.clientWidth ?? 0,\n                ),\n        ),\n    );\n\n    public readonly size = input<TuiSizeL>('m');\n\n    // TODO: Remove after :has support\n    public ngAfterViewInit(): void {\n        this.el.closest('tui-dialog')?.classList.add('tui-app-bar');\n    }\n}\n","<div #side>\n    <ng-content select=\"[tuiSlot='start']\" />\n</div>\n<div\n    tuiFade\n    class=\"t-content\"\n    [style.--t-sides.px]=\"width$ | async\"\n>\n    <ng-content />\n</div>\n<div #side>\n    <ng-content select=\"[tuiSlot='end']\" />\n</div>\n","import {Directive, input} from '@angular/core';\n\n@Directive({selector: '[tuiSlot]'})\nexport class TuiAppBarDirective {\n    public readonly tuiSlot = input('start');\n}\n","import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {\n    type TuiAppearanceOptions,\n    tuiAppearanceOptionsProvider,\n    TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\n\n@Component({\n    selector: 'button[tuiAppBarBack], a[tuiAppBarBack]',\n    imports: [TuiIcon],\n    templateUrl: './app-bar-back.template.html',\n    styleUrl: './app-bar-back.style.less',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: [tuiAppearanceOptionsProvider(TuiAppBarBack)],\n    hostDirectives: [TuiWithAppearance],\n})\nexport class TuiAppBarBack implements TuiAppearanceOptions {\n    protected readonly icons = inject(TUI_COMMON_ICONS);\n\n    public readonly appearance = 'link';\n}\n","<svg\n    height=\"24\"\n    viewBox=\"0 0 24 24\"\n    width=\"24\"\n    xmlns=\"http://www.w3.org/2000/svg\"\n    class=\"t-ios\"\n>\n    <path\n        d=\"M7.44025 12L14.9826 4.43872C15.5391 3.88083 15.5391 2.97631 14.9826 2.41842C14.4261 1.86053 13.5239 1.86053 12.9674 2.41842L4.41737 10.9898C3.86088 11.5477 3.86088 12.4523 4.41737 13.0102L12.9674 21.5816C13.5239 22.1395 14.4261 22.1395 14.9826 21.5816C15.5391 21.0237 15.5391 20.1192 14.9826 19.5613L7.44025 12Z\"\n        fill=\"currentColor\"\n    />\n</svg>\n<svg\n    height=\"24\"\n    viewBox=\"0 0 24 24\"\n    width=\"24\"\n    xmlns=\"http://www.w3.org/2000/svg\"\n    class=\"t-android\"\n>\n    <path\n        d=\"M19.6999 11.5899C19.6999 11.0377 19.2522 10.5899 18.6999 10.5899H7.49992L12.3999 5.68995C12.7865 5.30335 12.7865 4.67655 12.3999 4.28995V4.28995C12.0133 3.90335 11.3865 3.90335 10.9999 4.28995L4.40703 10.8828C4.0165 11.2734 4.01651 11.9065 4.40703 12.2971L10.9999 18.89C11.3865 19.2765 12.0133 19.2765 12.3999 18.8899V18.8899C12.7865 18.5034 12.7865 17.8765 12.3999 17.49L7.49992 12.5899H18.6999C19.2522 12.5899 19.6999 12.1422 19.6999 11.5899V11.5899Z\"\n        fill=\"currentColor\"\n    />\n</svg>\n<tui-icon\n    class=\"t-web\"\n    [icon]=\"icons.decrement\"\n/>\n<ng-content />\n","import {computed, Directive, inject} from '@angular/core';\nimport {TUI_PLATFORM} from '@taiga-ui/cdk/tokens';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/di';\n\nimport {TuiAppBarComponent} from './app-bar.component';\n\n@Directive({selector: 'tui-app-bar[tuiAppBarSize]'})\nexport class TuiAppBarSizeDirective {\n    private readonly platform = inject(TUI_PLATFORM);\n    protected readonly size = tuiDirectiveBinding(\n        TuiAppBarComponent,\n        'size',\n        computed(() => (this.platform === 'web' ? 'l' : 'm')),\n    );\n}\n","import {TuiAppBarComponent} from './app-bar.component';\nimport {TuiAppBarDirective} from './app-bar.directive';\nimport {TuiAppBarBack} from './app-bar-back.component';\nimport {TuiAppBarSizeDirective} from './app-bar-size.directive';\n\nexport const TuiAppBar = [\n    TuiAppBarComponent,\n    TuiAppBarDirective,\n    TuiAppBarBack,\n    TuiAppBarSizeDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}