@taiga-ui/layout 4.66.0 → 5.0.0-rc.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 (154) hide show
  1. package/README.md +2 -2
  2. package/components/app-bar/app-bar-back.component.d.ts +1 -1
  3. package/components/app-bar/app-bar-size.directive.d.ts +1 -0
  4. package/components/app-bar/app-bar.component.d.ts +2 -2
  5. package/components/app-bar/app-bar.directive.d.ts +2 -3
  6. package/components/block-status/block-status.component.d.ts +3 -3
  7. package/components/block-status/block-status.directive.d.ts +2 -3
  8. package/components/card/collapsed.directive.d.ts +2 -2
  9. package/components/card/large.directive.d.ts +3 -14
  10. package/components/card/medium.directive.d.ts +2 -1
  11. package/components/dynamic-header/dynamic-header-anchor.directive.d.ts +1 -1
  12. package/components/dynamic-header/dynamic-header-container.directive.d.ts +2 -2
  13. package/components/elastic-container/elastic-container.component.d.ts +8 -0
  14. package/components/elastic-container/elastic-container.directive.d.ts +7 -0
  15. package/components/elastic-container/index.d.ts +2 -0
  16. package/components/floating-container/floating-container.directive.d.ts +8 -0
  17. package/components/floating-container/index.d.ts +1 -0
  18. package/components/form/form.directive.d.ts +3 -4
  19. package/components/form/form.options.d.ts +2 -2
  20. package/components/header/header.directive.d.ts +8 -11
  21. package/components/index.d.ts +5 -1
  22. package/components/input-search/input-search.component.d.ts +7 -8
  23. package/components/item-group/item-group.directive.d.ts +3 -3
  24. package/components/navigation/aside-group.component.d.ts +7 -8
  25. package/components/navigation/aside-item.directive.d.ts +1 -1
  26. package/components/navigation/aside.component.d.ts +2 -3
  27. package/components/navigation/drawer.component.d.ts +6 -7
  28. package/components/navigation/hint-aside.directive.d.ts +3 -4
  29. package/components/navigation/subheader.component.d.ts +1 -1
  30. package/components/pdf-viewer/index.d.ts +1 -0
  31. package/components/pdf-viewer/pdf-viewer.component.d.ts +13 -0
  32. package/components/search/search-filter.component.d.ts +4 -3
  33. package/components/search/search-filters.component.d.ts +7 -9
  34. package/components/slides/index.d.ts +1 -0
  35. package/components/slides/slides.directive.d.ts +11 -0
  36. package/components/surface/index.d.ts +1 -0
  37. package/components/surface/surface.directive.d.ts +6 -0
  38. package/fesm2022/taiga-ui-layout-components-app-bar.mjs +28 -39
  39. package/fesm2022/taiga-ui-layout-components-app-bar.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-layout-components-block-details.mjs +10 -13
  41. package/fesm2022/taiga-ui-layout-components-block-details.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-layout-components-block-status.mjs +16 -23
  43. package/fesm2022/taiga-ui-layout-components-block-status.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-layout-components-card.mjs +56 -71
  45. package/fesm2022/taiga-ui-layout-components-card.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-layout-components-dynamic-header.mjs +39 -58
  47. package/fesm2022/taiga-ui-layout-components-dynamic-header.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-layout-components-elastic-container.mjs +62 -0
  49. package/fesm2022/taiga-ui-layout-components-elastic-container.mjs.map +1 -0
  50. package/fesm2022/taiga-ui-layout-components-floating-container.mjs +40 -0
  51. package/fesm2022/taiga-ui-layout-components-floating-container.mjs.map +1 -0
  52. package/fesm2022/taiga-ui-layout-components-form.mjs +33 -46
  53. package/fesm2022/taiga-ui-layout-components-form.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-layout-components-header.mjs +15 -33
  55. package/fesm2022/taiga-ui-layout-components-header.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-layout-components-input-search.mjs +28 -41
  57. package/fesm2022/taiga-ui-layout-components-input-search.mjs.map +1 -1
  58. package/fesm2022/taiga-ui-layout-components-item-group.mjs +18 -32
  59. package/fesm2022/taiga-ui-layout-components-item-group.mjs.map +1 -1
  60. package/fesm2022/taiga-ui-layout-components-navigation.mjs +113 -145
  61. package/fesm2022/taiga-ui-layout-components-navigation.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-layout-components-pdf-viewer.mjs +46 -0
  63. package/fesm2022/taiga-ui-layout-components-pdf-viewer.mjs.map +1 -0
  64. package/fesm2022/taiga-ui-layout-components-search.mjs +37 -59
  65. package/fesm2022/taiga-ui-layout-components-search.mjs.map +1 -1
  66. package/fesm2022/taiga-ui-layout-components-slides.mjs +49 -0
  67. package/fesm2022/taiga-ui-layout-components-slides.mjs.map +1 -0
  68. package/fesm2022/taiga-ui-layout-components-surface.mjs +33 -0
  69. package/fesm2022/taiga-ui-layout-components-surface.mjs.map +1 -0
  70. package/fesm2022/taiga-ui-layout-components.mjs +5 -1
  71. package/fesm2022/taiga-ui-layout-components.mjs.map +1 -1
  72. package/fesm2022/taiga-ui-layout-tokens.mjs +2 -7
  73. package/fesm2022/taiga-ui-layout-tokens.mjs.map +1 -1
  74. package/package.json +35 -46
  75. package/tokens/common-icons.d.ts +3 -5
  76. package/tokens/i18n.d.ts +1 -1
  77. package/components/cell/cell.directive.d.ts +0 -10
  78. package/components/cell/cell.options.d.ts +0 -6
  79. package/components/cell/index.d.ts +0 -2
  80. package/esm2022/components/app-bar/app-bar-back.component.mjs +0 -20
  81. package/esm2022/components/app-bar/app-bar-size.directive.mjs +0 -24
  82. package/esm2022/components/app-bar/app-bar.component.mjs +0 -39
  83. package/esm2022/components/app-bar/app-bar.directive.mjs +0 -20
  84. package/esm2022/components/app-bar/app-bar.mjs +0 -11
  85. package/esm2022/components/app-bar/app-bar.providers.mjs +0 -19
  86. package/esm2022/components/app-bar/index.mjs +0 -7
  87. package/esm2022/components/app-bar/taiga-ui-layout-components-app-bar.mjs +0 -5
  88. package/esm2022/components/block-details/block-details.directive.mjs +0 -29
  89. package/esm2022/components/block-details/index.mjs +0 -2
  90. package/esm2022/components/block-details/taiga-ui-layout-components-block-details.mjs +0 -5
  91. package/esm2022/components/block-status/block-status.component.mjs +0 -23
  92. package/esm2022/components/block-status/block-status.directive.mjs +0 -20
  93. package/esm2022/components/block-status/block-status.mjs +0 -4
  94. package/esm2022/components/block-status/index.mjs +0 -4
  95. package/esm2022/components/block-status/taiga-ui-layout-components-block-status.mjs +0 -5
  96. package/esm2022/components/card/card.mjs +0 -11
  97. package/esm2022/components/card/collapsed.directive.mjs +0 -38
  98. package/esm2022/components/card/index.mjs +0 -6
  99. package/esm2022/components/card/large.directive.mjs +0 -42
  100. package/esm2022/components/card/medium.directive.mjs +0 -29
  101. package/esm2022/components/card/row.directive.mjs +0 -29
  102. package/esm2022/components/card/taiga-ui-layout-components-card.mjs +0 -5
  103. package/esm2022/components/cell/cell.directive.mjs +0 -53
  104. package/esm2022/components/cell/cell.options.mjs +0 -3
  105. package/esm2022/components/cell/index.mjs +0 -3
  106. package/esm2022/components/cell/taiga-ui-layout-components-cell.mjs +0 -5
  107. package/esm2022/components/dynamic-header/dynamic-header-anchor.directive.mjs +0 -34
  108. package/esm2022/components/dynamic-header/dynamic-header-container.directive.mjs +0 -41
  109. package/esm2022/components/dynamic-header/dynamic-header.component.mjs +0 -59
  110. package/esm2022/components/dynamic-header/dynamic-header.mjs +0 -9
  111. package/esm2022/components/dynamic-header/index.mjs +0 -5
  112. package/esm2022/components/dynamic-header/taiga-ui-layout-components-dynamic-header.mjs +0 -5
  113. package/esm2022/components/form/form.directive.mjs +0 -95
  114. package/esm2022/components/form/form.options.mjs +0 -3
  115. package/esm2022/components/form/index.mjs +0 -3
  116. package/esm2022/components/form/taiga-ui-layout-components-form.mjs +0 -5
  117. package/esm2022/components/header/header.directive.mjs +0 -54
  118. package/esm2022/components/header/index.mjs +0 -2
  119. package/esm2022/components/header/taiga-ui-layout-components-header.mjs +0 -5
  120. package/esm2022/components/index.mjs +0 -13
  121. package/esm2022/components/input-search/index.mjs +0 -2
  122. package/esm2022/components/input-search/input-search.component.mjs +0 -96
  123. package/esm2022/components/input-search/taiga-ui-layout-components-input-search.mjs +0 -5
  124. package/esm2022/components/item-group/index.mjs +0 -2
  125. package/esm2022/components/item-group/item-group.directive.mjs +0 -58
  126. package/esm2022/components/item-group/taiga-ui-layout-components-item-group.mjs +0 -5
  127. package/esm2022/components/navigation/aside-group.component.mjs +0 -59
  128. package/esm2022/components/navigation/aside-item.directive.mjs +0 -92
  129. package/esm2022/components/navigation/aside.component.mjs +0 -67
  130. package/esm2022/components/navigation/drawer.component.mjs +0 -97
  131. package/esm2022/components/navigation/header.component.mjs +0 -34
  132. package/esm2022/components/navigation/hint-aside.directive.mjs +0 -41
  133. package/esm2022/components/navigation/index.mjs +0 -12
  134. package/esm2022/components/navigation/logo.component.mjs +0 -12
  135. package/esm2022/components/navigation/main.component.mjs +0 -14
  136. package/esm2022/components/navigation/nav.component.mjs +0 -23
  137. package/esm2022/components/navigation/navigation.mjs +0 -24
  138. package/esm2022/components/navigation/subheader.component.mjs +0 -68
  139. package/esm2022/components/navigation/taiga-ui-layout-components-navigation.mjs +0 -5
  140. package/esm2022/components/search/index.mjs +0 -4
  141. package/esm2022/components/search/search-filter.component.mjs +0 -44
  142. package/esm2022/components/search/search-filters.component.mjs +0 -81
  143. package/esm2022/components/search/search.component.mjs +0 -26
  144. package/esm2022/components/search/search.mjs +0 -9
  145. package/esm2022/components/search/taiga-ui-layout-components-search.mjs +0 -5
  146. package/esm2022/components/taiga-ui-layout-components.mjs +0 -5
  147. package/esm2022/index.mjs +0 -3
  148. package/esm2022/taiga-ui-layout.mjs +0 -5
  149. package/esm2022/tokens/common-icons.mjs +0 -21
  150. package/esm2022/tokens/i18n.mjs +0 -6
  151. package/esm2022/tokens/index.mjs +0 -3
  152. package/esm2022/tokens/taiga-ui-layout-tokens.mjs +0 -5
  153. package/fesm2022/taiga-ui-layout-components-cell.mjs +0 -61
  154. package/fesm2022/taiga-ui-layout-components-cell.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-layout-components-navigation.mjs","sources":["../../../projects/layout/components/navigation/aside.component.ts","../../../projects/layout/components/navigation/aside-group.component.ts","../../../projects/layout/components/navigation/aside-group.template.html","../../../projects/layout/components/navigation/hint-aside.directive.ts","../../../projects/layout/components/navigation/aside-item.directive.ts","../../../projects/layout/components/navigation/drawer.component.ts","../../../projects/layout/components/navigation/header.component.ts","../../../projects/layout/components/navigation/logo.component.ts","../../../projects/layout/components/navigation/main.component.ts","../../../projects/layout/components/navigation/nav.component.ts","../../../projects/layout/components/navigation/subheader.component.ts","../../../projects/layout/components/navigation/navigation.ts","../../../projects/layout/components/navigation/taiga-ui-layout-components-navigation.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiScrollable, TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/directives/dropdown';\nimport {TuiFade} from '@taiga-ui/kit/directives/fade';\n\n@Component({\n standalone: true,\n selector: 'aside[tuiNavigationAside]',\n imports: [TuiFade, TuiScrollable, TuiScrollbar],\n template: `\n <ng-content select=\"header\" />\n <tui-scrollbar class=\"t-nav-scrollbar\">\n <div\n tuiFade=\"vertical\"\n tuiScrollable\n class=\"t-nav-content\"\n >\n <ng-content />\n </div>\n </tui-scrollbar>\n <ng-content select=\"footer\" />\n `,\n styleUrls: ['./aside.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 's', appearance: 'flat-grayscale'}),\n tuiDropdownOptionsProvider({\n appearance: 'dropdown-navigation',\n align: 'right',\n offset: 12,\n }),\n ],\n host: {\n tuiNavigationAside: '',\n tuiTheme: 'dark',\n '[class._expanded]': 'expanded()',\n },\n})\nexport class TuiAsideComponent {\n // TODO: refactor to signal inputs after Angular update\n public readonly expanded = signal(false);\n\n @Input()\n public set tuiNavigationAside(expanded: boolean) {\n this.expanded.set(expanded);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n ContentChild,\n inject,\n Input,\n Output,\n signal,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toObservable} from '@angular/core/rxjs-interop';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAsDataListHost,\n TuiDataList,\n type TuiDataListHost,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiExpand} from '@taiga-ui/core/components/expand';\nimport {\n TuiDropdownDirective,\n TuiDropdownHover,\n TuiDropdownOpen,\n TuiDropdownPositionSided,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiChevron} from '@taiga-ui/kit/directives/chevron';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {skip} from 'rxjs';\n\nimport {TuiAsideComponent} from './aside.component';\n\n@Component({\n standalone: true,\n selector: 'tui-aside-group',\n imports: [PolymorpheusOutlet, TuiDataList, TuiExpand],\n templateUrl: './aside-group.template.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListHost(TuiAsideGroupComponent)],\n hostDirectives: [\n TuiDropdownDirective,\n TuiDropdownHover,\n TuiDropdownPositionSided,\n TuiDropdownOpen,\n ],\n})\nexport class TuiAsideGroupComponent implements TuiDataListHost<unknown> {\n @ViewChild('datalist', {static: true})\n private readonly datalist: PolymorpheusContent;\n\n @ContentChild(TuiChevron, {static: true})\n private readonly chevron?: TuiChevron;\n\n private readonly aside = inject(TuiAsideComponent);\n private readonly open = signal(false);\n\n @ContentChild(TemplateRef)\n protected readonly template: TemplateRef<any> | null = null;\n\n protected readonly expanded = computed(() => this.aside.expanded() && this.open());\n protected readonly binding = tuiDirectiveBinding(\n TuiDropdownDirective,\n 'tuiDropdown',\n computed(() => (this.aside.expanded() ? null : this.datalist)),\n );\n\n @Output()\n public readonly openChange = toObservable(this.open).pipe(skip(1));\n\n public readonly size = 's';\n\n @Input('open')\n public set openSetter(open: boolean) {\n this.toggle(open);\n }\n\n protected toggle(open = !this.open()): void {\n this.open.set(open && this.aside.expanded());\n this.chevron?.chevron.set(this.open());\n }\n}\n","<div\n #host\n (click)=\"toggle()\"\n>\n <ng-content />\n</div>\n<tui-expand [expanded]=\"expanded()\">\n <ng-container *polymorpheusOutlet=\"template\" />\n</tui-expand>\n<ng-template #datalist>\n <tui-data-list>\n <tui-opt-group [label]=\"host.textContent\">\n <ng-container *polymorpheusOutlet=\"template\" />\n </tui-opt-group>\n </tui-data-list>\n</ng-template>\n","import {computed, Directive, inject, Input, signal} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiHintDirective, tuiHintOptionsProvider} from '@taiga-ui/core/directives/hint';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nimport {TuiAsideComponent} from './aside.component';\n\n@Directive({\n standalone: true,\n selector: '[tuiHintAside]',\n providers: [tuiHintOptionsProvider({direction: 'right'})],\n hostDirectives: [TuiHintDirective],\n})\nexport class TuiHintAsideDirective {\n private readonly el = tuiInjectElement();\n private readonly aside = inject(TuiAsideComponent);\n private readonly dropdown = inject(TuiDropdownDirective, {optional: true});\n protected readonly hint = signal<PolymorpheusContent>(null);\n\n protected readonly binding = tuiDirectiveBinding(\n TuiHintDirective,\n 'tuiHint',\n computed(() => {\n const hint = this.hint();\n const expanded = this.aside.expanded();\n\n return expanded || this.dropdown\n ? ''\n : hint || (() => this.el.textContent?.trim());\n }),\n );\n\n @Input()\n public set tuiHintAside(value: PolymorpheusContent) {\n this.hint.set(value);\n }\n}\n","import {Directive, type FactoryProvider, inject} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {RouterLink, RouterLinkActive} from '@angular/router';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {\n tuiAsDataListHost,\n TuiDataListComponent,\n type TuiDataListHost,\n} from '@taiga-ui/core/components/data-list';\nimport {\n TUI_DROPDOWN_OPTIONS,\n TuiDropdownDirective,\n TuiDropdownManual,\n type TuiDropdownOptions,\n TuiDropdownPositionSided,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiIcons} from '@taiga-ui/core/directives/icons';\nimport {TUI_COMMON_ICONS, TUI_ICON_END} from '@taiga-ui/core/tokens';\nimport {TUI_CHEVRON, TuiChevron} from '@taiga-ui/kit/directives/chevron';\n\nimport {TuiHintAsideDirective} from './hint-aside.directive';\n\n@Directive({\n standalone: true,\n selector: '[tuiAsideItem]',\n providers: [\n tuiAsDataListHost(TuiAsideItemDirective),\n provideIcon(),\n provideDropdown(),\n ],\n hostDirectives: [\n {\n directive: TuiHintAsideDirective,\n inputs: ['tuiHintAside:tuiAsideItem'],\n },\n TuiDropdownManual,\n TuiDropdownPositionSided,\n TuiButton,\n {\n directive: RouterLinkActive,\n inputs: ['routerLinkActiveOptions'],\n },\n ],\n host: {\n tuiButton: '',\n tuiOption: '',\n tuiAsideItem: '',\n '[class._link]': 'link',\n '[class._active]': 'active()',\n '[class._custom]': 'icon !== icons.iconEnd()',\n },\n})\nexport class TuiAsideItemDirective implements TuiDataListHost<unknown> {\n protected readonly icon = inject(TUI_COMMON_ICONS).check;\n protected readonly icons = inject(TuiIcons);\n protected readonly link = inject(RouterLink, {self: true, optional: true});\n protected readonly active = toSignal(inject(RouterLinkActive).isActiveChange);\n\n public readonly size = 's';\n}\n\nfunction provideIcon(): FactoryProvider {\n return {\n provide: TUI_ICON_END,\n useFactory: (): string => {\n if (inject(TuiChevron, {optional: true, self: true})) {\n return inject(TUI_CHEVRON);\n }\n\n const {check, more} = inject(TUI_COMMON_ICONS);\n const active =\n inject(TuiDataListComponent, {optional: true}) &&\n inject(RouterLink, {self: true, optional: true})\n ? check\n : '';\n\n return inject(TuiDropdownDirective, {self: true, optional: true})\n ? more\n : active;\n },\n };\n}\n\nfunction provideDropdown(): FactoryProvider {\n return {\n provide: TUI_DROPDOWN_OPTIONS,\n useFactory: (): TuiDropdownOptions => ({\n ...inject(TUI_DROPDOWN_OPTIONS, {skipSelf: true}),\n offset: inject(TuiDataListComponent, {optional: true}) ? 8 : 12,\n }),\n };\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n type DoCheck,\n inject,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {\n TUI_DROPDOWN_COMPONENT,\n tuiDropdown,\n TuiDropdownDirective,\n TuiDropdownOpen,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiIcons} from '@taiga-ui/core/directives/icons';\nimport {\n TUI_ANIMATIONS_SPEED,\n TUI_COMMON_ICONS,\n TUI_ICON_END,\n} from '@taiga-ui/core/tokens';\nimport {tuiToAnimationOptions} from '@taiga-ui/core/utils/miscellaneous';\nimport {TUI_LAYOUT_ICONS} from '@taiga-ui/layout/tokens';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\n@Component({\n standalone: true,\n imports: [PolymorpheusOutlet, TuiScrollbar],\n template: `\n <tui-scrollbar [style.height.%]=\"100\">\n <ng-container *polymorpheusOutlet=\"directive._content()\" />\n </tui-scrollbar>\n `,\n styleUrls: ['./drawer.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiActiveZone, TuiAnimated],\n host: {\n tuiTheme: 'dark',\n '[style.top.px]': 'top',\n },\n})\nclass TuiDrawerComponent {\n protected readonly directive = inject(TuiDropdownDirective);\n protected readonly animation = tuiToAnimationOptions(inject(TUI_ANIMATIONS_SPEED));\n protected readonly top =\n tuiIsHTMLElement(this.directive.el.offsetParent) &&\n tuiIsHTMLElement(this.directive.el.offsetParent.offsetParent)\n ? this.directive.el.offsetParent.getBoundingClientRect().bottom -\n Math.max(\n this.directive.el.offsetParent.offsetParent.getBoundingClientRect().top,\n 0,\n )\n : 0;\n}\n\n@Component({\n standalone: true,\n // TODO: move to host directives\n selector: '[tuiIconButton][tuiNavigationDrawer]',\n template: '<ng-template><ng-content /></ng-template>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({appearance: 'secondary-grayscale'}),\n {\n provide: TUI_ICON_END,\n useFactory: () => inject(TUI_LAYOUT_ICONS).grid,\n },\n {\n provide: TUI_DROPDOWN_COMPONENT,\n useValue: TuiDrawerComponent,\n },\n ],\n hostDirectives: [TuiDropdownDirective, TuiWithDropdownOpen],\n})\nexport class TuiDrawerDirective implements DoCheck {\n private readonly x = inject(TUI_COMMON_ICONS).close;\n private readonly icons = inject(TuiIcons);\n private readonly dropdown = tuiDropdown(null);\n private readonly open = inject(TuiDropdownOpen);\n\n public ngDoCheck(): void {\n this.icons.iconStart.set(this.open.tuiDropdownOpen ? this.x : '');\n }\n\n @ViewChild(TemplateRef)\n protected set template(template: PolymorpheusContent) {\n this.dropdown.set(template);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiTextfieldOptionsProvider} from '@taiga-ui/core/components/textfield';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/directives/dropdown';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\nimport {tuiBadgeOptionsProvider} from '@taiga-ui/kit/components/badge';\nimport {tuiBadgeNotificationOptionsProvider} from '@taiga-ui/kit/components/badge-notification';\n\n@Component({\n standalone: true,\n selector: 'header[tuiNavigationHeader]',\n template: '<ng-content />',\n styleUrls: ['./header.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAvatarOptionsProvider({size: 's', appearance: 'secondary-grayscale'}),\n tuiBadgeNotificationOptionsProvider({size: 'xs'}),\n tuiBadgeOptionsProvider({size: 'm', appearance: 'primary'}),\n tuiButtonOptionsProvider({size: 's', appearance: 'flat-grayscale'}),\n tuiDropdownOptionsProvider({appearance: 'dropdown-navigation'}),\n tuiTextfieldOptionsProvider({size: signal('s')}),\n ],\n host: {\n tuiTheme: 'dark',\n },\n})\nexport class TuiHeaderComponent {}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n standalone: true,\n selector: '[tuiNavigationLogo]',\n template: '<ng-content />',\n styleUrls: ['./logo.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLogoComponent {}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'main[tuiNavigationMain]',\n template: '<ng-content />',\n styleUrls: ['./main.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tuiNavigationMain: '',\n },\n})\nexport class TuiMainComponent {}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiBadgeOptionsProvider} from '@taiga-ui/kit/components/badge';\nimport {tuiTabsOptionsProvider} from '@taiga-ui/kit/components/tabs';\n\n@Component({\n standalone: true,\n selector: 'nav[tuiNavigationNav]',\n template: '<ng-content />',\n styleUrls: ['./nav.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiBadgeOptionsProvider({size: 'm'}),\n tuiButtonOptionsProvider({size: 's'}),\n tuiTabsOptionsProvider({size: 'm'}),\n ],\n})\nexport class TuiNavComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiLinkOptionsProvider} from '@taiga-ui/core/components/link';\nimport {tuiTextfieldOptionsProvider} from '@taiga-ui/core/components/textfield';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/directives/dropdown';\nimport {tuiBreadcrumbsOptionsProvider} from '@taiga-ui/kit/components/breadcrumbs';\nimport {tuiTabsOptionsProvider} from '@taiga-ui/kit/components/tabs';\n\nconst PROVIDERS = [\n tuiTextfieldOptionsProvider({size: signal('s')}),\n tuiBreadcrumbsOptionsProvider({icon: '/'}),\n tuiLinkOptionsProvider({appearance: 'action-grayscale'}),\n tuiTabsOptionsProvider({size: 'm'}),\n tuiDropdownOptionsProvider({align: 'right'}),\n];\n\n@Component({\n standalone: true,\n selector: '[tuiSubheader]:not([compact]),[tuiNavigationSubheader]:not([compact])',\n template: `\n <ng-content select=\"[tuiLink]\" />\n <ng-content select=\"tui-breadcrumbs\" />\n <ng-content select=\"[tuiHeader]\" />\n <ng-content />\n <ng-content select=\"tui-tabs,[tuiTabs]\" />\n `,\n styleUrls: ['./subheader.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n PROVIDERS,\n tuiButtonOptionsProvider({appearance: 'secondary', size: 'xs'}),\n ],\n})\nexport class TuiSubheaderComponent {}\n\n@Component({\n standalone: true,\n selector: '[tuiSubheader][compact],[tuiNavigationSubheader][compact]',\n template: `\n <div class=\"t-nav-subheader\">\n <ng-content />\n <ng-content\n select=\"tui-tabs,tui-tabs-with-more,[tuiTabsWithMore],[tuiTabs]\"\n />\n <ng-content select=\"[tuiButton],[tuiIconButton]\" />\n </div>\n `,\n styleUrls: ['./subheader.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [PROVIDERS, tuiButtonOptionsProvider({size: 's'})],\n})\nexport class TuiSubheaderCompactComponent {}\n","import {TuiAsideComponent} from './aside.component';\nimport {TuiAsideGroupComponent} from './aside-group.component';\nimport {TuiAsideItemDirective} from './aside-item.directive';\nimport {TuiDrawerDirective} from './drawer.component';\nimport {TuiHeaderComponent} from './header.component';\nimport {TuiHintAsideDirective} from './hint-aside.directive';\nimport {TuiLogoComponent} from './logo.component';\nimport {TuiMainComponent} from './main.component';\nimport {TuiNavComponent} from './nav.component';\nimport {TuiSubheaderCompactComponent, TuiSubheaderComponent} from './subheader.component';\n\nexport const TuiNavigation = [\n TuiHeaderComponent,\n TuiLogoComponent,\n TuiMainComponent,\n TuiAsideComponent,\n TuiAsideGroupComponent,\n TuiAsideItemDirective,\n TuiNavComponent,\n TuiHintAsideDirective,\n TuiDrawerDirective,\n TuiSubheaderComponent,\n TuiSubheaderCompactComponent,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.TuiHintAsideDirective","i2","i3"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-layout-components-navigation.mjs","sources":["../../../projects/layout/components/navigation/aside.component.ts","../../../projects/layout/components/navigation/aside-group.component.ts","../../../projects/layout/components/navigation/aside-group.template.html","../../../projects/layout/components/navigation/hint-aside.directive.ts","../../../projects/layout/components/navigation/aside-item.directive.ts","../../../projects/layout/components/navigation/drawer.component.ts","../../../projects/layout/components/navigation/header.component.ts","../../../projects/layout/components/navigation/logo.component.ts","../../../projects/layout/components/navigation/main.component.ts","../../../projects/layout/components/navigation/nav.component.ts","../../../projects/layout/components/navigation/subheader.component.ts","../../../projects/layout/components/navigation/navigation.ts","../../../projects/layout/components/navigation/taiga-ui-layout-components-navigation.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiScrollable, TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/portals/dropdown';\nimport {tuiHintOptionsProvider} from '@taiga-ui/core/portals/hint';\nimport {TuiFade} from '@taiga-ui/kit/directives/fade';\n\n@Component({\n selector: 'aside[tuiNavigationAside]',\n imports: [TuiFade, TuiScrollable, TuiScrollbar],\n template: `\n <ng-content select=\"header\" />\n <tui-scrollbar class=\"t-nav-scrollbar\">\n <div\n tuiFade=\"vertical\"\n tuiScrollable\n class=\"t-nav-content\"\n >\n <ng-content />\n </div>\n </tui-scrollbar>\n <ng-content select=\"footer\" />\n `,\n styleUrl: './aside.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiHintOptionsProvider({appearance: 'floating'}),\n tuiButtonOptionsProvider({size: 's', appearance: 'flat-grayscale'}),\n tuiDropdownOptionsProvider({\n appearance: 'dropdown-navigation',\n align: 'end',\n offset: 12,\n }),\n ],\n host: {\n tuiNavigationAside: '',\n tuiTheme: 'dark',\n '[class._expanded]': 'expanded()',\n },\n})\nexport class TuiAsideComponent {\n public readonly expanded = input(false, {alias: 'tuiNavigationAside'});\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n effect,\n inject,\n model,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/di';\nimport {tuiSetSignal} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAsDataListHost,\n TuiDataList,\n type TuiDataListHost,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiExpand} from '@taiga-ui/core/components/expand';\nimport {\n TuiDropdownDirective,\n TuiDropdownHover,\n TuiDropdownOpen,\n TuiDropdownPositionSided,\n} from '@taiga-ui/core/portals/dropdown';\nimport {TuiChevron} from '@taiga-ui/kit/directives/chevron';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TuiAsideComponent} from './aside.component';\n\n@Component({\n selector: 'tui-aside-group',\n imports: [PolymorpheusOutlet, TuiDataList, TuiExpand],\n templateUrl: './aside-group.template.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListHost(TuiAsideGroupComponent)],\n hostDirectives: [\n TuiDropdownDirective,\n TuiDropdownHover,\n TuiDropdownPositionSided,\n TuiDropdownOpen,\n ],\n})\nexport class TuiAsideGroupComponent implements TuiDataListHost<unknown> {\n private readonly datalist = viewChild<PolymorpheusContent>('datalist');\n private readonly chevron = contentChild(TuiChevron);\n private readonly aside = inject(TuiAsideComponent);\n\n protected readonly template = contentChild(TemplateRef);\n\n protected readonly expanded = computed(() => this.aside.expanded() && this.open());\n protected readonly chevronEffect = effect(() => {\n const chevron = this.chevron();\n\n if (chevron) {\n tuiSetSignal(chevron.rotated, this.expanded());\n }\n });\n\n protected readonly binding = tuiDirectiveBinding(\n TuiDropdownDirective,\n 'tuiDropdown',\n computed(() => (this.aside.expanded() ? null : this.datalist())),\n );\n\n public readonly size = 's';\n public readonly open = model(false);\n\n protected toggle(): void {\n if (this.aside.expanded()) {\n this.open.set(!this.open());\n }\n }\n}\n","<div\n #host\n (click)=\"toggle()\"\n>\n <ng-content />\n</div>\n<tui-expand [expanded]=\"expanded()\">\n <ng-container *polymorpheusOutlet=\"template()\" />\n</tui-expand>\n<ng-template #datalist>\n <tui-data-list>\n <tui-opt-group [label]=\"host.textContent\">\n <ng-container *polymorpheusOutlet=\"template()\" />\n </tui-opt-group>\n </tui-data-list>\n</ng-template>\n","import {computed, Directive, inject, input} from '@angular/core';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TuiDropdownDirective} from '@taiga-ui/core/portals/dropdown';\nimport {TuiHintDirective, tuiHintOptionsProvider} from '@taiga-ui/core/portals/hint';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nimport {TuiAsideComponent} from './aside.component';\n\n@Directive({\n selector: '[tuiHintAside]',\n providers: [tuiHintOptionsProvider({direction: 'end'})],\n hostDirectives: [TuiHintDirective],\n})\nexport class TuiHintAsideDirective {\n private readonly el = tuiInjectElement();\n private readonly aside = inject(TuiAsideComponent);\n private readonly dropdown = inject(TuiDropdownDirective, {optional: true});\n public readonly tuiHintAside = input<PolymorpheusContent>(null);\n\n protected readonly binding = tuiDirectiveBinding(\n TuiHintDirective,\n 'content',\n computed(() => {\n const hint = this.tuiHintAside();\n const expanded = this.aside.expanded();\n\n return expanded || this.dropdown\n ? ''\n : hint || (() => this.el.textContent?.trim());\n }),\n );\n}\n","import {Directive, type FactoryProvider, inject} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {RouterLink, RouterLinkActive} from '@angular/router';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {\n tuiAsDataListHost,\n TuiDataListComponent,\n type TuiDataListHost,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiIcons} from '@taiga-ui/core/directives/icons';\nimport {\n TUI_DROPDOWN_OPTIONS,\n TuiDropdownDirective,\n TuiDropdownManual,\n type TuiDropdownOptions,\n TuiDropdownPositionSided,\n} from '@taiga-ui/core/portals/dropdown';\nimport {TUI_COMMON_ICONS, TUI_ICON_END} from '@taiga-ui/core/tokens';\nimport {TUI_CHEVRON, TuiChevron} from '@taiga-ui/kit/directives/chevron';\n\nimport {TuiHintAsideDirective} from './hint-aside.directive';\n\n@Directive({\n selector: '[tuiAsideItem]',\n providers: [\n tuiAsDataListHost(TuiAsideItemDirective),\n provideIcon(),\n provideDropdown(),\n ],\n hostDirectives: [\n {\n directive: TuiHintAsideDirective,\n inputs: ['tuiHintAside:tuiAsideItem'],\n },\n TuiDropdownManual,\n TuiDropdownPositionSided,\n TuiButton,\n {\n directive: RouterLinkActive,\n inputs: ['routerLinkActiveOptions'],\n },\n ],\n host: {\n tuiButton: '',\n tuiOption: '',\n tuiAsideItem: '',\n '[class._link]': 'link',\n '[class._active]': 'active()',\n '[class._custom]': 'icon !== icons.iconEnd()',\n },\n})\nexport class TuiAsideItemDirective implements TuiDataListHost<unknown> {\n protected readonly icon = inject(TUI_COMMON_ICONS).check;\n protected readonly icons = inject(TuiIcons);\n protected readonly link = inject(RouterLink, {self: true, optional: true});\n protected readonly active = toSignal(inject(RouterLinkActive).isActiveChange);\n\n public readonly size = 's';\n}\n\nfunction provideIcon(): FactoryProvider {\n return {\n provide: TUI_ICON_END,\n useFactory: (): string => {\n if (inject(TuiChevron, {optional: true, self: true})) {\n return inject(TUI_CHEVRON);\n }\n\n const {check, more} = inject(TUI_COMMON_ICONS);\n const active =\n inject(TuiDataListComponent, {optional: true}) &&\n inject(RouterLink, {self: true, optional: true})\n ? check\n : '';\n\n return inject(TuiDropdownDirective, {self: true, optional: true})\n ? more\n : active;\n },\n };\n}\n\nfunction provideDropdown(): FactoryProvider {\n return {\n provide: TUI_DROPDOWN_OPTIONS,\n useFactory: (): TuiDropdownOptions => ({\n ...inject(TUI_DROPDOWN_OPTIONS, {skipSelf: true}),\n offset: inject(TuiDataListComponent, {optional: true}) ? 8 : 12,\n }),\n };\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n TemplateRef,\n viewChild,\n} from '@angular/core';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {tuiIconStart} from '@taiga-ui/core/directives/icons';\nimport {\n TUI_DROPDOWN_COMPONENT,\n tuiDropdown,\n TuiDropdownDirective,\n TuiDropdownOpen,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/portals/dropdown';\nimport {TUI_COMMON_ICONS, TUI_ICON_END} from '@taiga-ui/core/tokens';\nimport {TUI_LAYOUT_ICONS} from '@taiga-ui/layout/tokens';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\n@Component({\n imports: [PolymorpheusOutlet, TuiScrollbar],\n template: `\n <tui-scrollbar [style.height.%]=\"100\">\n <ng-container *polymorpheusOutlet=\"directive.content()\" />\n </tui-scrollbar>\n `,\n styleUrl: './drawer.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiActiveZone, TuiAnimated],\n host: {\n tuiTheme: 'dark',\n '[style.inset-block-start.px]': 'top',\n },\n})\nclass TuiDrawerComponent {\n protected readonly directive = inject(TuiDropdownDirective);\n protected readonly top =\n tuiIsHTMLElement(this.directive.el.offsetParent) &&\n tuiIsHTMLElement(this.directive.el.offsetParent.offsetParent)\n ? this.directive.el.offsetParent.getBoundingClientRect().bottom -\n Math.max(\n this.directive.el.offsetParent.offsetParent.getBoundingClientRect().top,\n 0,\n )\n : 0;\n}\n\n@Component({\n // TODO: move to host directives\n selector: '[tuiIconButton][tuiNavigationDrawer]',\n template: '<ng-template><ng-content /></ng-template>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({appearance: 'secondary-grayscale'}),\n {\n provide: TUI_ICON_END,\n useFactory: () => inject(TUI_LAYOUT_ICONS).grid,\n },\n {\n provide: TUI_DROPDOWN_COMPONENT,\n useValue: TuiDrawerComponent,\n },\n ],\n hostDirectives: [TuiDropdownDirective, TuiWithDropdownOpen],\n})\nexport class TuiDrawerDirective {\n private readonly x = inject(TUI_COMMON_ICONS).close;\n private readonly dropdown = tuiDropdown(null);\n private readonly open = inject(TuiDropdownOpen).open;\n\n protected readonly template = viewChild(TemplateRef);\n protected readonly ef = effect(() => this.dropdown.set(this.template()));\n protected readonly icon = tuiIconStart(computed(() => (this.open() ? this.x : '')));\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiTextfieldOptionsProvider} from '@taiga-ui/core/components/textfield';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/portals/dropdown';\nimport {tuiHintOptionsProvider} from '@taiga-ui/core/portals/hint';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\nimport {tuiBadgeOptionsProvider} from '@taiga-ui/kit/components/badge';\nimport {tuiBadgeNotificationOptionsProvider} from '@taiga-ui/kit/components/badge-notification';\n\n@Component({\n selector: 'header[tuiNavigationHeader]',\n template: '<ng-content />',\n styleUrl: './header.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAvatarOptionsProvider({size: 's', appearance: 'secondary-grayscale'}),\n tuiBadgeNotificationOptionsProvider({size: 'xs'}),\n tuiBadgeOptionsProvider({size: 'm', appearance: 'primary'}),\n tuiButtonOptionsProvider({size: 's', appearance: 'flat-grayscale'}),\n tuiDropdownOptionsProvider({appearance: 'dropdown-navigation'}),\n tuiTextfieldOptionsProvider({size: signal('s')}),\n tuiHintOptionsProvider({appearance: 'floating'}),\n ],\n host: {\n tuiTheme: 'dark',\n },\n})\nexport class TuiHeaderComponent {}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n selector: '[tuiNavigationLogo]',\n template: '<ng-content />',\n styleUrl: './logo.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLogoComponent {}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n selector: 'main[tuiNavigationMain]',\n template: '<ng-content />',\n styleUrl: './main.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tuiNavigationMain: '',\n },\n})\nexport class TuiMainComponent {}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiBadgeOptionsProvider} from '@taiga-ui/kit/components/badge';\nimport {tuiTabsOptionsProvider} from '@taiga-ui/kit/components/tabs';\n\n@Component({\n selector: 'nav[tuiNavigationNav]',\n template: '<ng-content />',\n styleUrl: './nav.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiBadgeOptionsProvider({size: 'm'}),\n tuiButtonOptionsProvider({size: 's'}),\n tuiTabsOptionsProvider({size: 'm'}),\n ],\n})\nexport class TuiNavComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiLinkOptionsProvider} from '@taiga-ui/core/components/link';\nimport {tuiTextfieldOptionsProvider} from '@taiga-ui/core/components/textfield';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/portals/dropdown';\nimport {tuiBadgeOptionsProvider} from '@taiga-ui/kit/components/badge';\nimport {tuiBreadcrumbsOptionsProvider} from '@taiga-ui/kit/components/breadcrumbs';\nimport {tuiTabsOptionsProvider} from '@taiga-ui/kit/components/tabs';\n\nconst PROVIDERS = [\n tuiTextfieldOptionsProvider({size: signal('s')}),\n tuiBreadcrumbsOptionsProvider({icon: '/'}),\n tuiLinkOptionsProvider({appearance: 'action-grayscale'}),\n tuiTabsOptionsProvider({size: 'm'}),\n tuiDropdownOptionsProvider({align: 'end'}),\n tuiBadgeOptionsProvider({size: 'm'}),\n];\n\n@Component({\n selector: '[tuiSubheader]:not([compact]),[tuiNavigationSubheader]:not([compact])',\n template: `\n <ng-content select=\"[tuiLink]\" />\n <ng-content select=\"tui-breadcrumbs\" />\n <ng-content select=\"[tuiHeader]\" />\n <ng-content />\n <ng-content select=\"tui-tabs,[tuiTabs]\" />\n `,\n styleUrl: './subheader.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n PROVIDERS,\n tuiButtonOptionsProvider({appearance: 'secondary', size: 'xs'}),\n ],\n})\nexport class TuiSubheaderComponent {}\n\n@Component({\n selector: '[tuiSubheader][compact],[tuiNavigationSubheader][compact]',\n template: `\n <div class=\"t-nav-subheader\">\n <ng-content />\n <ng-content select=\"tui-tabs,tui-tabs-with-more\" />\n <ng-content select=\"[tuiButton],[tuiIconButton]\" />\n </div>\n `,\n styleUrl: './subheader.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [PROVIDERS, tuiButtonOptionsProvider({size: 's'})],\n})\nexport class TuiSubheaderCompactComponent {}\n","import {TuiAsideComponent} from './aside.component';\nimport {TuiAsideGroupComponent} from './aside-group.component';\nimport {TuiAsideItemDirective} from './aside-item.directive';\nimport {TuiDrawerDirective} from './drawer.component';\nimport {TuiHeaderComponent} from './header.component';\nimport {TuiHintAsideDirective} from './hint-aside.directive';\nimport {TuiLogoComponent} from './logo.component';\nimport {TuiMainComponent} from './main.component';\nimport {TuiNavComponent} from './nav.component';\nimport {TuiSubheaderCompactComponent, TuiSubheaderComponent} from './subheader.component';\n\nexport const TuiNavigation = [\n TuiHeaderComponent,\n TuiLogoComponent,\n TuiMainComponent,\n TuiAsideComponent,\n TuiAsideGroupComponent,\n TuiAsideItemDirective,\n TuiNavComponent,\n TuiHintAsideDirective,\n TuiDrawerDirective,\n TuiSubheaderComponent,\n TuiSubheaderCompactComponent,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.TuiHintAsideDirective","i2"],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import * as i0 from '@angular/core';
3
+ import { inject, computed, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
4
+ import { WA_IS_MOBILE } from '@ng-web-apis/platform';
5
+ import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
6
+ import { TuiButton, tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
7
+ import { TUI_BREAKPOINT, TUI_CLOSE_WORD, TUI_COMMON_ICONS } from '@taiga-ui/core/tokens';
8
+ import * as i1 from '@taiga-ui/layout/components/app-bar';
9
+ import { TuiAppBar } from '@taiga-ui/layout/components/app-bar';
10
+ import { injectContext } from '@taiga-ui/polymorpheus';
11
+
12
+ class TuiPdfViewer {
13
+ constructor() {
14
+ this.breakpoint = inject(TUI_BREAKPOINT);
15
+ this.isMobile = computed(() => this.breakpoint() === 'mobile');
16
+ this.el = tuiInjectElement();
17
+ this.close = inject(TUI_CLOSE_WORD);
18
+ this.icons = inject(TUI_COMMON_ICONS);
19
+ this.context = injectContext();
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TuiPdfViewer, isStandalone: true, selector: "tui-pdf-viewer", host: { properties: { "attr.tuiTheme": "isMobile() ? \"\" : \"dark\"" } }, providers: [
23
+ tuiButtonOptionsProvider(() => ({
24
+ appearance: inject(WA_IS_MOBILE) ? 'action' : 'glass',
25
+ size: 's',
26
+ })),
27
+ ], ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"isMobile() ? mobile : desktop\" />\n\n<ng-template #mobile>\n <tui-app-bar>\n <button\n tuiButton\n tuiSlot=\"start\"\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container tuiSlot=\"end\">\n <ng-container [ngTemplateOutlet]=\"actions\" />\n </ng-container>\n </tui-app-bar>\n</ng-template>\n\n<ng-template #desktop>\n <header\n tuiTheme=\"dark\"\n class=\"t-header\"\n >\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"actions\" />\n @if ($any(context).closable || context.closable) {\n <button\n appearance=\"glass\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n }\n </header>\n</ng-template>\n\n<ng-template #content>\n <ng-content select=\"[tuiTitle]\" />\n</ng-template>\n\n<ng-template #actions>\n <ng-content select=\"button\" />\n</ng-template>\n\n<section class=\"t-content\">\n <ng-content />\n</section>\n", styles: ["tui-pdf-viewer{position:relative;z-index:1;display:flex;flex-direction:column;inline-size:100vw;block-size:100%;flex:1;box-sizing:border-box;color:var(--tui-text-primary);--t-header: 3.5rem}tui-root:not(._mobile) tui-pdf-viewer{background:#000}tui-root:not(._mobile) tui-dialog tui-pdf-viewer{margin:-6rem calc(-1 * calc(50vw - var(--tui-width) / 2)) -2rem}tui-root._mobile tui-dialog tui-pdf-viewer{--t-header: 2.5rem;margin:0 -1rem -1rem}tui-root._mobile tui-dialog tui-pdf-viewer tui-app-bar{margin:calc(-1*env(safe-area-inset-top)) 0 0}tui-sheet-dialog[data-appearance=fullscreen] tui-pdf-viewer{--t-header: 4.5rem;margin:0 -1rem -1.5rem}tui-sheet-dialog[data-appearance=fullscreen] tui-pdf-viewer tui-app-bar{margin:0}tui-pdf-viewer .t-header{display:flex;gap:.5rem;align-items:center;block-size:var(--t-header);padding:0 .75rem 0 1rem;justify-content:flex-end}tui-pdf-viewer [tuiTitle]{margin-inline-end:auto}tui-pdf-viewer .t-content{display:flex;flex:1;overflow:hidden;justify-content:center}tui-pdf-viewer tui-loader,tui-pdf-viewer tui-block-status{inline-size:100%;margin-block-start:calc(-1 * var(--t-header))}tui-pdf-viewer iframe{inline-size:100%;border:none}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i1.TuiAppBarComponent, selector: "tui-app-bar", inputs: ["size"] }, { kind: "directive", type: i1.TuiAppBarDirective, selector: "[tuiSlot]", inputs: ["tuiSlot"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewer, decorators: [{
30
+ type: Component,
31
+ args: [{ selector: 'tui-pdf-viewer', imports: [NgTemplateOutlet, TuiAppBar, TuiButton], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
32
+ tuiButtonOptionsProvider(() => ({
33
+ appearance: inject(WA_IS_MOBILE) ? 'action' : 'glass',
34
+ size: 's',
35
+ })),
36
+ ], host: {
37
+ '[attr.tuiTheme]': 'isMobile() ? "" : "dark"',
38
+ }, template: "<ng-container [ngTemplateOutlet]=\"isMobile() ? mobile : desktop\" />\n\n<ng-template #mobile>\n <tui-app-bar>\n <button\n tuiButton\n tuiSlot=\"start\"\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container tuiSlot=\"end\">\n <ng-container [ngTemplateOutlet]=\"actions\" />\n </ng-container>\n </tui-app-bar>\n</ng-template>\n\n<ng-template #desktop>\n <header\n tuiTheme=\"dark\"\n class=\"t-header\"\n >\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"actions\" />\n @if ($any(context).closable || context.closable) {\n <button\n appearance=\"glass\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n }\n </header>\n</ng-template>\n\n<ng-template #content>\n <ng-content select=\"[tuiTitle]\" />\n</ng-template>\n\n<ng-template #actions>\n <ng-content select=\"button\" />\n</ng-template>\n\n<section class=\"t-content\">\n <ng-content />\n</section>\n", styles: ["tui-pdf-viewer{position:relative;z-index:1;display:flex;flex-direction:column;inline-size:100vw;block-size:100%;flex:1;box-sizing:border-box;color:var(--tui-text-primary);--t-header: 3.5rem}tui-root:not(._mobile) tui-pdf-viewer{background:#000}tui-root:not(._mobile) tui-dialog tui-pdf-viewer{margin:-6rem calc(-1 * calc(50vw - var(--tui-width) / 2)) -2rem}tui-root._mobile tui-dialog tui-pdf-viewer{--t-header: 2.5rem;margin:0 -1rem -1rem}tui-root._mobile tui-dialog tui-pdf-viewer tui-app-bar{margin:calc(-1*env(safe-area-inset-top)) 0 0}tui-sheet-dialog[data-appearance=fullscreen] tui-pdf-viewer{--t-header: 4.5rem;margin:0 -1rem -1.5rem}tui-sheet-dialog[data-appearance=fullscreen] tui-pdf-viewer tui-app-bar{margin:0}tui-pdf-viewer .t-header{display:flex;gap:.5rem;align-items:center;block-size:var(--t-header);padding:0 .75rem 0 1rem;justify-content:flex-end}tui-pdf-viewer [tuiTitle]{margin-inline-end:auto}tui-pdf-viewer .t-content{display:flex;flex:1;overflow:hidden;justify-content:center}tui-pdf-viewer tui-loader,tui-pdf-viewer tui-block-status{inline-size:100%;margin-block-start:calc(-1 * var(--t-header))}tui-pdf-viewer iframe{inline-size:100%;border:none}\n"] }]
39
+ }] });
40
+
41
+ /**
42
+ * Generated bundle index. Do not edit.
43
+ */
44
+
45
+ export { TuiPdfViewer };
46
+ //# sourceMappingURL=taiga-ui-layout-components-pdf-viewer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-layout-components-pdf-viewer.mjs","sources":["../../../projects/layout/components/pdf-viewer/pdf-viewer.component.ts","../../../projects/layout/components/pdf-viewer/pdf-viewer.template.html","../../../projects/layout/components/pdf-viewer/taiga-ui-layout-components-pdf-viewer.ts"],"sourcesContent":["import {NgTemplateOutlet} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n ViewEncapsulation,\n} from '@angular/core';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\nimport {type TuiPortalContext} from '@taiga-ui/cdk/portals';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {type TuiDialogOptions} from '@taiga-ui/core/portals/dialog';\nimport {TUI_BREAKPOINT, TUI_CLOSE_WORD, TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {TuiAppBar} from '@taiga-ui/layout/components/app-bar';\nimport {injectContext} from '@taiga-ui/polymorpheus';\n\n@Component({\n selector: 'tui-pdf-viewer',\n imports: [NgTemplateOutlet, TuiAppBar, TuiButton],\n templateUrl: './pdf-viewer.template.html',\n styleUrl: './pdf-viewer.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider(() => ({\n appearance: inject(WA_IS_MOBILE) ? 'action' : 'glass',\n size: 's',\n })),\n ],\n host: {\n '[attr.tuiTheme]': 'isMobile() ? \"\" : \"dark\"',\n },\n})\nexport class TuiPdfViewer<O, I> {\n private readonly breakpoint = inject(TUI_BREAKPOINT);\n protected readonly isMobile = computed(() => this.breakpoint() === 'mobile');\n protected readonly el = tuiInjectElement();\n protected readonly close = inject(TUI_CLOSE_WORD);\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly context =\n injectContext<TuiPortalContext<TuiDialogOptions<I>, O>>();\n}\n","<ng-container [ngTemplateOutlet]=\"isMobile() ? mobile : desktop\" />\n\n<ng-template #mobile>\n <tui-app-bar>\n <button\n tuiButton\n tuiSlot=\"start\"\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container tuiSlot=\"end\">\n <ng-container [ngTemplateOutlet]=\"actions\" />\n </ng-container>\n </tui-app-bar>\n</ng-template>\n\n<ng-template #desktop>\n <header\n tuiTheme=\"dark\"\n class=\"t-header\"\n >\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"actions\" />\n @if ($any(context).closable || context.closable) {\n <button\n appearance=\"glass\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n }\n </header>\n</ng-template>\n\n<ng-template #content>\n <ng-content select=\"[tuiTitle]\" />\n</ng-template>\n\n<ng-template #actions>\n <ng-content select=\"button\" />\n</ng-template>\n\n<section class=\"t-content\">\n <ng-content />\n</section>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;MAkCa,YAAY,CAAA;AAjBzB,IAAA,WAAA,GAAA;AAkBqB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC;AACjC,QAAA,IAAA,CAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,KAAK,QAAQ,CAAC;QACzD,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AACvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAC9B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChC,IAAO,CAAA,OAAA,GACtB,aAAa,EAA4C;AAChE;+GARY,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,YAAY,EAVV,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA,wBAAwB,CAAC,OAAO;AAC5B,gBAAA,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,GAAG,OAAO;AACrD,gBAAA,IAAI,EAAE,GAAG;AACZ,aAAA,CAAC,CAAC;AACN,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7BL,y7CAqDA,EAAA,MAAA,EAAA,CAAA,wpCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDlCc,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAa,SAAS,EAAA,QAAA,EAAA,uEAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAevC,YAAY,EAAA,UAAA,EAAA,CAAA;kBAjBxB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,WACjB,CAAC,gBAAgB,EAAE,SAAS,EAAE,SAAS,CAAC,EAGlC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACP,wBAAA,wBAAwB,CAAC,OAAO;AAC5B,4BAAA,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,GAAG,OAAO;AACrD,4BAAA,IAAI,EAAE,GAAG;AACZ,yBAAA,CAAC,CAAC;qBACN,EACK,IAAA,EAAA;AACF,wBAAA,iBAAiB,EAAE,0BAA0B;AAChD,qBAAA,EAAA,QAAA,EAAA,y7CAAA,EAAA,MAAA,EAAA,CAAA,wpCAAA,CAAA,EAAA;;;AEhCL;;AAEG;;;;"}
@@ -1,36 +1,35 @@
1
1
  import { TuiItem } from '@taiga-ui/cdk/directives/item';
2
2
  import * as i0 from '@angular/core';
3
- import { signal, Component, ViewEncapsulation, ChangeDetectionStrategy, inject, TemplateRef, ViewChild, computed, ElementRef, ContentChildren, Input } from '@angular/core';
3
+ import { signal, ChangeDetectionStrategy, ViewEncapsulation, Component, viewChild, TemplateRef, effect, inject, ElementRef, contentChildren, computed, input } from '@angular/core';
4
4
  import { tuiButtonOptionsProvider, TuiButton } from '@taiga-ui/core/components/button';
5
5
  import * as i1$1 from '@taiga-ui/core/components/textfield';
6
6
  import { tuiTextfieldOptionsProvider, TuiTextfieldOptionsDirective } from '@taiga-ui/core/components/textfield';
7
7
  import { tuiBlockOptionsProvider } from '@taiga-ui/kit/components/block';
8
8
  import { tuiSwitchOptionsProvider } from '@taiga-ui/kit/components/switch';
9
- import { NgForOf, NgIf, NgTemplateOutlet } from '@angular/common';
9
+ import { NgTemplateOutlet } from '@angular/common';
10
10
  import { toSignal } from '@angular/core/rxjs-interop';
11
11
  import { NgControl } from '@angular/forms';
12
12
  import { WaResizeObserverService } from '@ng-web-apis/resize-observer';
13
- import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
14
- import { tuiZonefull, tuiQueryListChanges, tuiControlValue } from '@taiga-ui/cdk/observables';
13
+ import { tuiZonefull } from '@taiga-ui/cdk/observables';
15
14
  import { tuiIsControlEmpty } from '@taiga-ui/cdk/utils/miscellaneous';
16
- import { map, distinctUntilChanged, switchMap, merge } from 'rxjs';
17
- import * as i1 from '@taiga-ui/core/directives/dropdown';
18
- import { tuiDropdown, tuiDropdownOptionsProvider, TuiDropdownDirective, TuiWithDropdownOpen } from '@taiga-ui/core/directives/dropdown';
15
+ import { map, distinctUntilChanged } from 'rxjs';
16
+ import * as i1 from '@taiga-ui/core/portals/dropdown';
17
+ import { tuiDropdown, tuiDropdownOptionsProvider, TuiDropdownDirective, TuiWithDropdownOpen } from '@taiga-ui/core/portals/dropdown';
19
18
  import { TUI_ICON_START } from '@taiga-ui/core/tokens';
20
19
  import { TUI_COMMON_ICONS } from '@taiga-ui/layout/tokens';
21
20
 
22
21
  class TuiSearchComponent {
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiSearchComponent, isStandalone: true, selector: "search[tuiSearch]", providers: [
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: TuiSearchComponent, isStandalone: true, selector: "search[tuiSearch]", providers: [
25
24
  tuiButtonOptionsProvider({ size: 'm' }),
26
25
  tuiBlockOptionsProvider({ size: 's' }),
27
26
  tuiSwitchOptionsProvider({ size: 's' }),
28
27
  tuiTextfieldOptionsProvider({ size: signal('m') }),
29
28
  ], ngImport: i0, template: '<ng-content/>', isInline: true, styles: ["search[tuiSearch] form{display:flex;flex-direction:column;gap:.75rem}search[tuiSearch] form fieldset{display:flex;align-items:center;flex-wrap:wrap;gap:inherit;min-inline-size:0;padding:0;margin:0;border:0;color:var(--tui-text-secondary)}search[tuiSearch] form tui-items-with-more{min-inline-size:0;flex:1}search[tuiSearch] form tui-textfield,search[tuiSearch] form [tuiSearchField]{flex:1;min-inline-size:11.25rem;max-inline-size:22.5rem}search[tuiSearch] form tui-textfield:first-child,search[tuiSearch] form [tuiSearchField]:first-child{max-inline-size:unset}search[tuiSearch] form hr{inline-size:1px;block-size:1rem;background:var(--tui-border-normal)}search[tuiSearch] form tui-filter{white-space:nowrap}search[tuiSearch] form [tuiLabel]{font:inherit}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
30
29
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSearchComponent, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSearchComponent, decorators: [{
32
31
  type: Component,
33
- args: [{ standalone: true, selector: 'search[tuiSearch]', template: '<ng-content/>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
32
+ args: [{ selector: 'search[tuiSearch]', template: '<ng-content/>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
34
33
  tuiButtonOptionsProvider({ size: 'm' }),
35
34
  tuiBlockOptionsProvider({ size: 's' }),
36
35
  tuiSwitchOptionsProvider({ size: 's' }),
@@ -41,28 +40,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
41
40
  class TuiSearchFilterComponent {
42
41
  constructor() {
43
42
  this.dropdown = tuiDropdown(null);
43
+ this.template = viewChild(TemplateRef);
44
+ this.ef = effect(() => this.dropdown.set(this.template()));
44
45
  }
45
- set template(template) {
46
- this.dropdown.set(template);
47
- }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSearchFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiSearchFilterComponent, isStandalone: true, selector: "button[tuiSearchFilter]", providers: [
50
- tuiDropdownOptionsProvider({ align: 'right' }),
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSearchFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
47
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.17", type: TuiSearchFilterComponent, isStandalone: true, selector: "button[tuiSearchFilter]", providers: [
48
+ tuiDropdownOptionsProvider({ align: 'end' }),
51
49
  {
52
50
  provide: TUI_ICON_START,
53
51
  useFactory: () => inject(TUI_COMMON_ICONS).filter,
54
52
  },
55
- ], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], hostDirectives: [{ directive: i1.TuiDropdownDirective }, { directive: i1.TuiWithDropdownOpen }], ngImport: i0, template: '<ng-template><ng-content /></ng-template>filters', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
+ ], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.TuiDropdownDirective }, { directive: i1.TuiWithDropdownOpen }], ngImport: i0, template: '<ng-template><ng-content /></ng-template>filters', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
56
54
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSearchFilterComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSearchFilterComponent, decorators: [{
58
56
  type: Component,
59
57
  args: [{
60
- standalone: true,
61
58
  selector: 'button[tuiSearchFilter]',
62
59
  template: '<ng-template><ng-content /></ng-template>filters',
63
60
  changeDetection: ChangeDetectionStrategy.OnPush,
64
61
  providers: [
65
- tuiDropdownOptionsProvider({ align: 'right' }),
62
+ tuiDropdownOptionsProvider({ align: 'end' }),
66
63
  {
67
64
  provide: TUI_ICON_START,
68
65
  useFactory: () => inject(TUI_COMMON_ICONS).filter,
@@ -70,52 +67,47 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
70
67
  ],
71
68
  hostDirectives: [TuiDropdownDirective, TuiWithDropdownOpen],
72
69
  }]
73
- }], propDecorators: { template: [{
74
- type: ViewChild,
75
- args: [TemplateRef]
76
- }] } });
70
+ }] });
77
71
 
78
72
  const WIDTH = 12;
79
73
  class TuiSearchFiltersComponent {
80
74
  constructor() {
81
- this.children = EMPTY_QUERY;
82
- this.controls = signal([]);
83
- this.templates = EMPTY_QUERY;
75
+ this.rem = viewChild('rem');
76
+ this.button = viewChild(TuiButton, { read: ElementRef });
77
+ this.controls = contentChildren(NgControl, { descendants: true });
78
+ this.templates = contentChildren(TuiItem, {
79
+ descendants: true,
80
+ read: TemplateRef,
81
+ });
84
82
  this.overflown = toSignal(inject(WaResizeObserverService, { self: true }).pipe(map((entry) => {
85
83
  const width = entry[0]?.contentRect.width ?? 0;
86
84
  return Math.floor((width - this.more) / WIDTH / this.unit);
87
85
  }), distinctUntilChanged(), tuiZonefull()), { initialValue: 0 });
88
86
  this.enabled = computed(() => this.controls().some(({ control }, index) => control && index >= this.overflown() && !tuiIsControlEmpty(control)));
89
- this.size = 'm';
90
- }
91
- // TODO: Refactor to signal queries when Angular is updated
92
- ngAfterContentInit() {
93
- tuiQueryListChanges(this.children)
94
- .pipe(switchMap((all) => merge(...all.map((c) => tuiControlValue(c)))), map(() => this.children.toArray()))
95
- .subscribe((controls) => this.controls.set(controls));
87
+ this.size = input('m');
96
88
  }
97
89
  onReset() {
98
- this.children.forEach(({ control }, index) => {
90
+ this.controls().forEach(({ control }, index) => {
99
91
  if (control && index >= this.overflown()) {
100
92
  control.setValue(null);
101
93
  }
102
94
  });
103
95
  }
104
96
  get unit() {
105
- return this.rem?.nativeElement.offsetWidth || 16;
97
+ return this.rem()?.nativeElement.offsetWidth || 16;
106
98
  }
107
99
  get more() {
108
- return this.button?.nativeElement.clientWidth || 0;
100
+ return this.button()?.nativeElement.clientWidth || 0;
109
101
  }
110
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSearchFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
111
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiSearchFiltersComponent, isStandalone: true, selector: "tui-search-filters", inputs: { size: "size" }, providers: [
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSearchFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
103
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TuiSearchFiltersComponent, isStandalone: true, selector: "tui-search-filters", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
112
104
  WaResizeObserverService,
113
105
  tuiButtonOptionsProvider({ size: 'xs', appearance: 'flat' }),
114
- ], queries: [{ propertyName: "children", predicate: NgControl, descendants: true }, { propertyName: "templates", predicate: TuiItem, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "rem", first: true, predicate: ["rem"], descendants: true }, { propertyName: "button", first: true, predicate: TuiButton, descendants: true, read: ElementRef }], hostDirectives: [{ directive: i1$1.TuiTextfieldOptionsDirective, inputs: ["tuiTextfieldSize", "size"] }], ngImport: i0, template: "<ng-container *ngFor=\"let template of templates; let i = index\">\n <ng-container\n *ngIf=\"i < overflown()\"\n [ngTemplateOutlet]=\"template\"\n />\n</ng-container>\n<div\n #rem\n class=\"t-rem\"\n></div>\n<button\n *ngIf=\"overflown() < templates.length\"\n appearance=\"secondary\"\n tuiIconButton\n tuiSearchFilter\n type=\"button\"\n class=\"t-button\"\n [class._active]=\"enabled()\"\n [size]=\"size\"\n>\n <form\n class=\"t-form\"\n (reset)=\"onReset()\"\n >\n <fieldset\n class=\"t-header\"\n [disabled]=\"!enabled()\"\n >\n <ng-content />\n </fieldset>\n <ng-container *ngFor=\"let template of templates; let i = index\">\n <ng-container\n *ngIf=\"i >= overflown()\"\n [ngTemplateOutlet]=\"template\"\n />\n </ng-container>\n </form>\n</button>\n", styles: [":host{display:flex;flex:1;gap:inherit;justify-content:flex-end;min-inline-size:0}.t-rem{position:absolute;inline-size:1rem}.t-button{overflow:visible}.t-button._active:after{content:\"\";position:absolute;top:.25rem;right:.25rem;display:block;inline-size:.625rem;block-size:.625rem;background:var(--tui-status-warning);transform:translate(50%,-50%);border-radius:100%;margin:0}.t-form{display:flex;min-inline-size:25.5rem;max-inline-size:33rem;flex-direction:column;gap:.75rem;padding:0 1.5rem 1.5rem;box-sizing:border-box}.t-header{display:flex;justify-content:space-between;padding:1.25rem 0;margin:0 0 .5rem;border:none;box-shadow:inset 0 -1px var(--tui-border-normal);font:var(--tui-font-text-ui-l);font-weight:700}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "component", type: TuiSearchFilterComponent, selector: "button[tuiSearchFilter]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
106
+ ], queries: [{ propertyName: "controls", predicate: NgControl, descendants: true, isSignal: true }, { propertyName: "templates", predicate: TuiItem, descendants: true, read: TemplateRef, isSignal: true }], viewQueries: [{ propertyName: "rem", first: true, predicate: ["rem"], descendants: true, isSignal: true }, { propertyName: "button", first: true, predicate: TuiButton, descendants: true, read: ElementRef, isSignal: true }], hostDirectives: [{ directive: i1$1.TuiTextfieldOptionsDirective, inputs: ["tuiTextfieldSize", "size"] }], ngImport: i0, template: "@for (template of templates(); track template) {\n @if ($index < overflown()) {\n <ng-container [ngTemplateOutlet]=\"template\" />\n }\n}\n<div\n #rem\n class=\"t-rem\"\n></div>\n@if (overflown() < templates().length) {\n <button\n appearance=\"secondary\"\n tuiIconButton\n tuiSearchFilter\n type=\"button\"\n class=\"t-button\"\n [class._active]=\"enabled()\"\n [size]=\"size()\"\n >\n <form\n class=\"t-form\"\n (reset)=\"onReset()\"\n >\n <fieldset\n class=\"t-header\"\n [disabled]=\"!enabled()\"\n >\n <ng-content />\n </fieldset>\n @for (template of templates(); track template) {\n @if ($index >= overflown()) {\n <ng-container [ngTemplateOutlet]=\"template\" />\n }\n }\n </form>\n </button>\n}\n", styles: [":host{display:flex;flex:1;gap:inherit;justify-content:flex-end;min-inline-size:0}.t-rem{position:absolute;inline-size:1rem}.t-button{overflow:visible}.t-button._active:after{content:\"\";position:absolute;top:.25rem;right:.25rem;display:block;inline-size:.625rem;block-size:.625rem;background:var(--tui-status-warning);transform:translate(50%,-50%);border-radius:100%;margin:0}.t-form{display:flex;min-inline-size:25.5rem;max-inline-size:33rem;flex-direction:column;gap:.75rem;padding:0 1.5rem 1.5rem;box-sizing:border-box}.t-header{display:flex;justify-content:space-between;padding:1.25rem 0;margin:0 0 .5rem;border:none;box-shadow:inset 0 -1px var(--tui-border-normal);font:var(--tui-font-ui-l);font-weight:700}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "component", type: TuiSearchFilterComponent, selector: "button[tuiSearchFilter]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
115
107
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiSearchFiltersComponent, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSearchFiltersComponent, decorators: [{
117
109
  type: Component,
118
- args: [{ standalone: true, selector: 'tui-search-filters', imports: [NgForOf, NgIf, NgTemplateOutlet, TuiButton, TuiSearchFilterComponent], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
110
+ args: [{ selector: 'tui-search-filters', imports: [NgTemplateOutlet, TuiButton, TuiSearchFilterComponent], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
119
111
  WaResizeObserverService,
120
112
  tuiButtonOptionsProvider({ size: 'xs', appearance: 'flat' }),
121
113
  ], hostDirectives: [
@@ -123,22 +115,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
123
115
  directive: TuiTextfieldOptionsDirective,
124
116
  inputs: ['tuiTextfieldSize: size'],
125
117
  },
126
- ], template: "<ng-container *ngFor=\"let template of templates; let i = index\">\n <ng-container\n *ngIf=\"i < overflown()\"\n [ngTemplateOutlet]=\"template\"\n />\n</ng-container>\n<div\n #rem\n class=\"t-rem\"\n></div>\n<button\n *ngIf=\"overflown() < templates.length\"\n appearance=\"secondary\"\n tuiIconButton\n tuiSearchFilter\n type=\"button\"\n class=\"t-button\"\n [class._active]=\"enabled()\"\n [size]=\"size\"\n>\n <form\n class=\"t-form\"\n (reset)=\"onReset()\"\n >\n <fieldset\n class=\"t-header\"\n [disabled]=\"!enabled()\"\n >\n <ng-content />\n </fieldset>\n <ng-container *ngFor=\"let template of templates; let i = index\">\n <ng-container\n *ngIf=\"i >= overflown()\"\n [ngTemplateOutlet]=\"template\"\n />\n </ng-container>\n </form>\n</button>\n", styles: [":host{display:flex;flex:1;gap:inherit;justify-content:flex-end;min-inline-size:0}.t-rem{position:absolute;inline-size:1rem}.t-button{overflow:visible}.t-button._active:after{content:\"\";position:absolute;top:.25rem;right:.25rem;display:block;inline-size:.625rem;block-size:.625rem;background:var(--tui-status-warning);transform:translate(50%,-50%);border-radius:100%;margin:0}.t-form{display:flex;min-inline-size:25.5rem;max-inline-size:33rem;flex-direction:column;gap:.75rem;padding:0 1.5rem 1.5rem;box-sizing:border-box}.t-header{display:flex;justify-content:space-between;padding:1.25rem 0;margin:0 0 .5rem;border:none;box-shadow:inset 0 -1px var(--tui-border-normal);font:var(--tui-font-text-ui-l);font-weight:700}\n"] }]
127
- }], propDecorators: { rem: [{
128
- type: ViewChild,
129
- args: ['rem']
130
- }], button: [{
131
- type: ViewChild,
132
- args: [TuiButton, { read: ElementRef }]
133
- }], children: [{
134
- type: ContentChildren,
135
- args: [NgControl, { descendants: true }]
136
- }], templates: [{
137
- type: ContentChildren,
138
- args: [TuiItem, { descendants: true, read: TemplateRef }]
139
- }], size: [{
140
- type: Input
141
- }] } });
118
+ ], template: "@for (template of templates(); track template) {\n @if ($index < overflown()) {\n <ng-container [ngTemplateOutlet]=\"template\" />\n }\n}\n<div\n #rem\n class=\"t-rem\"\n></div>\n@if (overflown() < templates().length) {\n <button\n appearance=\"secondary\"\n tuiIconButton\n tuiSearchFilter\n type=\"button\"\n class=\"t-button\"\n [class._active]=\"enabled()\"\n [size]=\"size()\"\n >\n <form\n class=\"t-form\"\n (reset)=\"onReset()\"\n >\n <fieldset\n class=\"t-header\"\n [disabled]=\"!enabled()\"\n >\n <ng-content />\n </fieldset>\n @for (template of templates(); track template) {\n @if ($index >= overflown()) {\n <ng-container [ngTemplateOutlet]=\"template\" />\n }\n }\n </form>\n </button>\n}\n", styles: [":host{display:flex;flex:1;gap:inherit;justify-content:flex-end;min-inline-size:0}.t-rem{position:absolute;inline-size:1rem}.t-button{overflow:visible}.t-button._active:after{content:\"\";position:absolute;top:.25rem;right:.25rem;display:block;inline-size:.625rem;block-size:.625rem;background:var(--tui-status-warning);transform:translate(50%,-50%);border-radius:100%;margin:0}.t-form{display:flex;min-inline-size:25.5rem;max-inline-size:33rem;flex-direction:column;gap:.75rem;padding:0 1.5rem 1.5rem;box-sizing:border-box}.t-header{display:flex;justify-content:space-between;padding:1.25rem 0;margin:0 0 .5rem;border:none;box-shadow:inset 0 -1px var(--tui-border-normal);font:var(--tui-font-ui-l);font-weight:700}\n"] }]
119
+ }] });
142
120
 
143
121
  const TuiSearch = [
144
122
  TuiSearchComponent,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-layout-components-search.mjs","sources":["../../../projects/layout/components/search/search.component.ts","../../../projects/layout/components/search/search-filter.component.ts","../../../projects/layout/components/search/search-filters.component.ts","../../../projects/layout/components/search/search-filters.template.html","../../../projects/layout/components/search/search.ts","../../../projects/layout/components/search/taiga-ui-layout-components-search.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiTextfieldOptionsProvider} from '@taiga-ui/core/components/textfield';\nimport {tuiBlockOptionsProvider} from '@taiga-ui/kit/components/block';\nimport {tuiSwitchOptionsProvider} from '@taiga-ui/kit/components/switch';\n\n@Component({\n standalone: true,\n selector: 'search[tuiSearch]',\n template: '<ng-content/>',\n styleUrls: ['./search.styles.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 'm'}),\n tuiBlockOptionsProvider({size: 's'}),\n tuiSwitchOptionsProvider({size: 's'}),\n tuiTextfieldOptionsProvider({size: signal('m')}),\n ],\n})\nexport class TuiSearchComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n inject,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n tuiDropdown,\n TuiDropdownDirective,\n tuiDropdownOptionsProvider,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TUI_ICON_START} from '@taiga-ui/core/tokens';\nimport {TUI_COMMON_ICONS} from '@taiga-ui/layout/tokens';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n@Component({\n standalone: true,\n selector: 'button[tuiSearchFilter]',\n template: '<ng-template><ng-content /></ng-template>filters',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiDropdownOptionsProvider({align: 'right'}),\n {\n provide: TUI_ICON_START,\n useFactory: () => inject(TUI_COMMON_ICONS).filter,\n },\n ],\n hostDirectives: [TuiDropdownDirective, TuiWithDropdownOpen],\n})\nexport class TuiSearchFilterComponent {\n private readonly dropdown = tuiDropdown(null);\n\n @ViewChild(TemplateRef)\n protected set template(template: PolymorpheusContent) {\n this.dropdown.set(template);\n }\n}\n","import {NgForOf, NgIf, NgTemplateOutlet} from '@angular/common';\nimport {\n type AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n computed,\n ContentChildren,\n ElementRef,\n inject,\n Input,\n type QueryList,\n signal,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NgControl} from '@angular/forms';\nimport {WaResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {\n tuiControlValue,\n tuiQueryListChanges,\n tuiZonefull,\n} from '@taiga-ui/cdk/observables';\nimport {tuiIsControlEmpty} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiTextfieldOptionsDirective} from '@taiga-ui/core/components/textfield';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {distinctUntilChanged, map, merge, switchMap} from 'rxjs';\n\nimport {TuiSearchFilterComponent} from './search-filter.component';\n\nconst WIDTH = 12;\n\n@Component({\n standalone: true,\n selector: 'tui-search-filters',\n imports: [NgForOf, NgIf, NgTemplateOutlet, TuiButton, TuiSearchFilterComponent],\n templateUrl: './search-filters.template.html',\n styleUrls: ['./search-filters.styles.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n WaResizeObserverService,\n tuiButtonOptionsProvider({size: 'xs', appearance: 'flat'}),\n ],\n hostDirectives: [\n {\n directive: TuiTextfieldOptionsDirective,\n inputs: ['tuiTextfieldSize: size'],\n },\n ],\n})\nexport class TuiSearchFiltersComponent implements AfterContentInit {\n @ViewChild('rem')\n private readonly rem?: ElementRef<HTMLDivElement>;\n\n @ViewChild(TuiButton, {read: ElementRef})\n private readonly button?: ElementRef<HTMLDivElement>;\n\n @ContentChildren(NgControl, {descendants: true})\n private readonly children: QueryList<NgControl> = EMPTY_QUERY;\n\n private readonly controls = signal<readonly NgControl[]>([]);\n\n @ContentChildren(TuiItem, {descendants: true, read: TemplateRef})\n protected readonly templates: QueryList<TemplateRef<any>> = EMPTY_QUERY;\n\n protected readonly overflown = toSignal(\n inject(WaResizeObserverService, {self: true}).pipe(\n map((entry) => {\n const width = entry[0]?.contentRect.width ?? 0;\n\n return Math.floor((width - this.more) / WIDTH / this.unit);\n }),\n distinctUntilChanged(),\n tuiZonefull(),\n ),\n {initialValue: 0},\n );\n\n protected readonly enabled = computed(() =>\n this.controls().some(\n ({control}, index) =>\n control && index >= this.overflown() && !tuiIsControlEmpty(control),\n ),\n );\n\n @Input()\n public size: TuiSizeS = 'm';\n\n // TODO: Refactor to signal queries when Angular is updated\n public ngAfterContentInit(): void {\n tuiQueryListChanges(this.children)\n .pipe(\n switchMap((all) => merge(...all.map((c) => tuiControlValue(c)))),\n map(() => this.children.toArray()),\n )\n .subscribe((controls) => this.controls.set(controls));\n }\n\n protected onReset(): void {\n this.children.forEach(({control}, index) => {\n if (control && index >= this.overflown()) {\n control.setValue(null);\n }\n });\n }\n\n private get unit(): number {\n return this.rem?.nativeElement.offsetWidth || 16;\n }\n\n private get more(): number {\n return this.button?.nativeElement.clientWidth || 0;\n }\n}\n","<ng-container *ngFor=\"let template of templates; let i = index\">\n <ng-container\n *ngIf=\"i < overflown()\"\n [ngTemplateOutlet]=\"template\"\n />\n</ng-container>\n<div\n #rem\n class=\"t-rem\"\n></div>\n<button\n *ngIf=\"overflown() < templates.length\"\n appearance=\"secondary\"\n tuiIconButton\n tuiSearchFilter\n type=\"button\"\n class=\"t-button\"\n [class._active]=\"enabled()\"\n [size]=\"size\"\n>\n <form\n class=\"t-form\"\n (reset)=\"onReset()\"\n >\n <fieldset\n class=\"t-header\"\n [disabled]=\"!enabled()\"\n >\n <ng-content />\n </fieldset>\n <ng-container *ngFor=\"let template of templates; let i = index\">\n <ng-container\n *ngIf=\"i >= overflown()\"\n [ngTemplateOutlet]=\"template\"\n />\n </ng-container>\n </form>\n</button>\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\n\nimport {TuiSearchComponent} from './search.component';\nimport {TuiSearchFiltersComponent} from './search-filters.component';\n\nexport const TuiSearch = [\n TuiSearchComponent,\n TuiSearchFiltersComponent,\n TuiItem,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-layout-components-search.mjs","sources":["../../../projects/layout/components/search/search.component.ts","../../../projects/layout/components/search/search-filter.component.ts","../../../projects/layout/components/search/search-filters.component.ts","../../../projects/layout/components/search/search-filters.template.html","../../../projects/layout/components/search/search.ts","../../../projects/layout/components/search/taiga-ui-layout-components-search.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiTextfieldOptionsProvider} from '@taiga-ui/core/components/textfield';\nimport {tuiBlockOptionsProvider} from '@taiga-ui/kit/components/block';\nimport {tuiSwitchOptionsProvider} from '@taiga-ui/kit/components/switch';\n\n@Component({\n selector: 'search[tuiSearch]',\n template: '<ng-content/>',\n styleUrl: './search.styles.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 'm'}),\n tuiBlockOptionsProvider({size: 's'}),\n tuiSwitchOptionsProvider({size: 's'}),\n tuiTextfieldOptionsProvider({size: signal('m')}),\n ],\n})\nexport class TuiSearchComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n effect,\n inject,\n TemplateRef,\n viewChild,\n} from '@angular/core';\nimport {\n tuiDropdown,\n TuiDropdownDirective,\n tuiDropdownOptionsProvider,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/portals/dropdown';\nimport {TUI_ICON_START} from '@taiga-ui/core/tokens';\nimport {TUI_COMMON_ICONS} from '@taiga-ui/layout/tokens';\n\n@Component({\n selector: 'button[tuiSearchFilter]',\n template: '<ng-template><ng-content /></ng-template>filters',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiDropdownOptionsProvider({align: 'end'}),\n {\n provide: TUI_ICON_START,\n useFactory: () => inject(TUI_COMMON_ICONS).filter,\n },\n ],\n hostDirectives: [TuiDropdownDirective, TuiWithDropdownOpen],\n})\nexport class TuiSearchFilterComponent {\n private readonly dropdown = tuiDropdown(null);\n protected readonly template = viewChild(TemplateRef);\n protected readonly ef = effect(() => this.dropdown.set(this.template()));\n}\n","import {NgTemplateOutlet} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChildren,\n ElementRef,\n inject,\n input,\n TemplateRef,\n viewChild,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NgControl} from '@angular/forms';\nimport {WaResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {tuiZonefull} from '@taiga-ui/cdk/observables';\nimport {tuiIsControlEmpty} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {TuiTextfieldOptionsDirective} from '@taiga-ui/core/components/textfield';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {distinctUntilChanged, map} from 'rxjs';\n\nimport {TuiSearchFilterComponent} from './search-filter.component';\n\nconst WIDTH = 12;\n\n@Component({\n selector: 'tui-search-filters',\n imports: [NgTemplateOutlet, TuiButton, TuiSearchFilterComponent],\n templateUrl: './search-filters.template.html',\n styleUrl: './search-filters.styles.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n WaResizeObserverService,\n tuiButtonOptionsProvider({size: 'xs', appearance: 'flat'}),\n ],\n hostDirectives: [\n {\n directive: TuiTextfieldOptionsDirective,\n inputs: ['tuiTextfieldSize: size'],\n },\n ],\n})\nexport class TuiSearchFiltersComponent {\n private readonly rem = viewChild<ElementRef<HTMLDivElement>>('rem');\n\n private readonly button = viewChild(TuiButton, {read: ElementRef});\n\n private readonly controls = contentChildren(NgControl, {descendants: true});\n\n protected readonly templates = contentChildren(TuiItem, {\n descendants: true,\n read: TemplateRef,\n });\n\n protected readonly overflown = toSignal(\n inject(WaResizeObserverService, {self: true}).pipe(\n map((entry) => {\n const width = entry[0]?.contentRect.width ?? 0;\n\n return Math.floor((width - this.more) / WIDTH / this.unit);\n }),\n distinctUntilChanged(),\n tuiZonefull(),\n ),\n {initialValue: 0},\n );\n\n protected readonly enabled = computed(() =>\n this.controls().some(\n ({control}, index) =>\n control && index >= this.overflown() && !tuiIsControlEmpty(control),\n ),\n );\n\n public readonly size = input<TuiSizeS>('m');\n\n protected onReset(): void {\n this.controls().forEach(({control}, index) => {\n if (control && index >= this.overflown()) {\n control.setValue(null);\n }\n });\n }\n\n private get unit(): number {\n return this.rem()?.nativeElement.offsetWidth || 16;\n }\n\n private get more(): number {\n return this.button()?.nativeElement.clientWidth || 0;\n }\n}\n","@for (template of templates(); track template) {\n @if ($index < overflown()) {\n <ng-container [ngTemplateOutlet]=\"template\" />\n }\n}\n<div\n #rem\n class=\"t-rem\"\n></div>\n@if (overflown() < templates().length) {\n <button\n appearance=\"secondary\"\n tuiIconButton\n tuiSearchFilter\n type=\"button\"\n class=\"t-button\"\n [class._active]=\"enabled()\"\n [size]=\"size()\"\n >\n <form\n class=\"t-form\"\n (reset)=\"onReset()\"\n >\n <fieldset\n class=\"t-header\"\n [disabled]=\"!enabled()\"\n >\n <ng-content />\n </fieldset>\n @for (template of templates(); track template) {\n @if ($index >= overflown()) {\n <ng-container [ngTemplateOutlet]=\"template\" />\n }\n }\n </form>\n </button>\n}\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\n\nimport {TuiSearchComponent} from './search.component';\nimport {TuiSearchFiltersComponent} from './search-filters.component';\n\nexport const TuiSearch = [\n TuiSearchComponent,\n TuiSearchFiltersComponent,\n TuiItem,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}