@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,125 +1,110 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, Directive, Input, inject } from '@angular/core';
2
+ import { ChangeDetectionStrategy, ViewEncapsulation, Component, input, Directive } from '@angular/core';
3
3
  import { tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
4
- import { tuiCreateOptions } from '@taiga-ui/cdk/utils/di';
4
+ import * as i1 from '@taiga-ui/core/directives/appearance';
5
+ import { TuiWithAppearance } from '@taiga-ui/core/directives/appearance';
6
+ import { tuiAvatarOptionsProvider } from '@taiga-ui/kit/components/avatar';
5
7
 
6
- class TuiCardCollapsedStyles {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardCollapsedStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardCollapsedStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-collapsed" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardCollapsed]{transition-property:clip-path,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;border-image:radial-gradient(at center,var(--tui-background-neutral-2) 26.5%,transparent 27%) 50% 49% / 0 2rem 2rem / 0 0 2rem}[tuiCardCollapsed]>tui-expand{transition-property:grid-template-rows,padding,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-background-neutral-1);border-radius:var(--tui-radius-s);padding:0 1rem;margin:-.25rem 0 calc(-1 * var(--t-space))!important}[tuiCardCollapsed]>tui-expand._expanded{padding:.5rem 1rem;margin:0!important}[tuiCardCollapsed]>tui-expand [tuiTable]{inline-size:100%}[tuiCardCollapsed]>tui-expand [tuiTable] th,[tuiCardCollapsed]>tui-expand [tuiTable] td{background:none;padding-inline-start:0;padding-inline-end:0;border-inline-start:0;border-inline-end:0}[tuiCardCollapsed]>tui-expand [tuiTable] thead th{border:none;block-size:1.75rem}[tuiCardCollapsed]>tui-expand [tuiTable] tr:last-child td{border-block-end:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardCollapsedStyles, decorators: [{
8
+ let Styles$3 = class Styles {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-collapsed" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardCollapsed]{transition-property:clip-path,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;border-image:radial-gradient(at center,var(--tui-background-neutral-2) 26.5%,transparent 27%) 50% 49% / 0 2rem 2rem / 0 0 2rem}[tuiCardCollapsed]>tui-expand{transition-property:grid-template-rows,padding,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-background-neutral-1);border-radius:var(--tui-radius-s);padding:0 1rem;margin:-.25rem 0 calc(-1 * var(--t-space))!important}[tuiCardCollapsed]>tui-expand._expanded{padding:.5rem 1rem;margin:0!important}[tuiCardCollapsed]>tui-expand [tuiTable]{inline-size:100%}[tuiCardCollapsed]>tui-expand [tuiTable] th,[tuiCardCollapsed]>tui-expand [tuiTable] td{background:none;padding-inline-start:0;padding-inline-end:0;border-inline-start:0;border-inline-end:0}[tuiCardCollapsed]>tui-expand [tuiTable] thead th{border:none;block-size:1.75rem}[tuiCardCollapsed]>tui-expand [tuiTable] tr:last-child td{border-block-end:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
11
+ };
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles$3, decorators: [{
11
13
  type: Component,
12
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
13
- class: 'tui-card-collapsed',
14
- }, styles: ["[tuiCardCollapsed]{transition-property:clip-path,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;border-image:radial-gradient(at center,var(--tui-background-neutral-2) 26.5%,transparent 27%) 50% 49% / 0 2rem 2rem / 0 0 2rem}[tuiCardCollapsed]>tui-expand{transition-property:grid-template-rows,padding,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-background-neutral-1);border-radius:var(--tui-radius-s);padding:0 1rem;margin:-.25rem 0 calc(-1 * var(--t-space))!important}[tuiCardCollapsed]>tui-expand._expanded{padding:.5rem 1rem;margin:0!important}[tuiCardCollapsed]>tui-expand [tuiTable]{inline-size:100%}[tuiCardCollapsed]>tui-expand [tuiTable] th,[tuiCardCollapsed]>tui-expand [tuiTable] td{background:none;padding-inline-start:0;padding-inline-end:0;border-inline-start:0;border-inline-end:0}[tuiCardCollapsed]>tui-expand [tuiTable] thead th{border:none;block-size:1.75rem}[tuiCardCollapsed]>tui-expand [tuiTable] tr:last-child td{border-block-end:0}\n"] }]
14
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-card-collapsed' }, styles: ["[tuiCardCollapsed]{transition-property:clip-path,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;border-image:radial-gradient(at center,var(--tui-background-neutral-2) 26.5%,transparent 27%) 50% 49% / 0 2rem 2rem / 0 0 2rem}[tuiCardCollapsed]>tui-expand{transition-property:grid-template-rows,padding,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-background-neutral-1);border-radius:var(--tui-radius-s);padding:0 1rem;margin:-.25rem 0 calc(-1 * var(--t-space))!important}[tuiCardCollapsed]>tui-expand._expanded{padding:.5rem 1rem;margin:0!important}[tuiCardCollapsed]>tui-expand [tuiTable]{inline-size:100%}[tuiCardCollapsed]>tui-expand [tuiTable] th,[tuiCardCollapsed]>tui-expand [tuiTable] td{background:none;padding-inline-start:0;padding-inline-end:0;border-inline-start:0;border-inline-end:0}[tuiCardCollapsed]>tui-expand [tuiTable] thead th{border:none;block-size:1.75rem}[tuiCardCollapsed]>tui-expand [tuiTable] tr:last-child td{border-block-end:0}\n"] }]
15
15
  }] });
16
16
  class TuiCardCollapsed {
17
17
  constructor() {
18
- this.nothing = tuiWithStyles(TuiCardCollapsedStyles);
19
- this.collapsed = false;
18
+ this.nothing = tuiWithStyles(Styles$3);
19
+ this.collapsed = input(false, { alias: 'tuiCardCollapsed' });
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardCollapsed, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
22
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardCollapsed, isStandalone: true, selector: "[tuiCardCollapsed]", inputs: { collapsed: ["tuiCardCollapsed", "collapsed"] }, host: { attributes: { "tuiCardCollapsed": "" }, properties: { "style.margin-block-end.rem": "collapsed ? 0.75 : 0", "style.clip-path": "collapsed ? \"inset(-0.75rem)\" : \"inset(0)\"" } }, ngImport: i0 }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardCollapsed, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
22
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiCardCollapsed, isStandalone: true, selector: "[tuiCardCollapsed]", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "tuiCardCollapsed", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tuiCardCollapsed": "" }, properties: { "style.margin-block-end.rem": "collapsed() ? 0.75 : 0", "style.clip-path": "collapsed() ? \"inset(-0.75rem)\" : \"inset(0)\"" } }, ngImport: i0 }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardCollapsed, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardCollapsed, decorators: [{
25
25
  type: Directive,
26
26
  args: [{
27
- standalone: true,
28
27
  selector: '[tuiCardCollapsed]',
29
28
  host: {
30
29
  tuiCardCollapsed: '',
31
- '[style.margin-block-end.rem]': 'collapsed ? 0.75 : 0',
32
- '[style.clip-path]': 'collapsed ? "inset(-0.75rem)" : "inset(0)"',
30
+ '[style.margin-block-end.rem]': 'collapsed() ? 0.75 : 0',
31
+ '[style.clip-path]': 'collapsed() ? "inset(-0.75rem)" : "inset(0)"',
33
32
  },
34
33
  }]
35
- }], propDecorators: { collapsed: [{
36
- type: Input,
37
- args: ['tuiCardCollapsed']
38
- }] } });
34
+ }] });
39
35
 
40
- const [TUI_CARD_OPTIONS, tuiCardOptionsProvider] = tuiCreateOptions({
41
- space: 'normal',
42
- });
43
- class TuiCardLargeStyles {
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardLargeStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardLargeStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-large" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardLarge]{font:var(--tui-font-text-m)}[tuiCardLarge][data-space]{--t-space: .75rem;--t-radius: var(--tui-radius-l);--t-comp: -.25rem;--t-padding: .75rem;--t-dim: calc(var(--t-padding) + var(--t-comp));padding:var(--t-padding);border-radius:var(--t-radius);box-sizing:border-box}[tuiCardLarge][data-space][data-space=normal]{--t-radius: 1.5rem;--t-padding: 1.5rem;--t-space: 1.5rem}[tuiCardLarge][data-space][data-space=compact]{--t-radius: 1rem;--t-padding: 1.25rem;--t-space: 1.25rem}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm]){flex-direction:column;gap:var(--t-space);align-items:stretch}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm])>:last-child:not([tuiCell]){margin-block-start:auto}[tuiCardLarge][data-space][tuiHeader]{padding:var(--t-dim) var(--t-dim) var(--t-dim) var(--t-padding)}[tuiCardLarge][data-space][tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space]>[tuiHeader]{margin:var(--t-comp) var(--t-comp) calc(1.5 * var(--t-comp)) 0}[tuiCardLarge][data-space]>[tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space] [tuiCell]{inline-size:100%;padding:.5rem;margin:-.5rem -.5rem -.75rem;border-radius:var(--tui-radius-l)}[tuiCardLarge][data-space] [tuiCell]:last-of-type{margin-block-end:-.5rem}[tuiCardLarge][data-space]>[tuiLink]:last-child{display:block;inline-size:-webkit-fit-content;inline-size:-moz-fit-content;inline-size:fit-content;margin-block-end:var(--t-comp)}[tuiCardLarge][data-space] [tuiAccessories]>[tuiButtonClose]{align-self:flex-start}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
46
- }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardLargeStyles, decorators: [{
36
+ let Styles$2 = class Styles {
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-large" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardLarge]{font:var(--tui-font-body-m)}[tuiCardLarge][data-space]{--t-space: .75rem;--t-radius: var(--tui-radius-l);--t-comp: -.25rem;--t-padding: .75rem;--t-dim: calc(var(--t-padding) + var(--t-comp));padding:var(--t-padding);border-radius:var(--t-radius);box-sizing:border-box}[tuiCardLarge][data-space][data-space=normal]{--t-radius: 1.5rem;--t-padding: 1.5rem;--t-space: 1.5rem}[tuiCardLarge][data-space][data-space=compact]{--t-radius: 1rem;--t-padding: 1.25rem;--t-space: 1.25rem}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm]){flex-direction:column;gap:var(--t-space);align-items:stretch}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm])>:last-child:not([tuiCell]){margin-block-start:auto}[tuiCardLarge][data-space][tuiHeader]{padding:var(--t-dim) var(--t-dim) var(--t-dim) var(--t-padding)}[tuiCardLarge][data-space][tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space]>[tuiHeader]{margin:var(--t-comp) var(--t-comp) calc(1.5 * var(--t-comp)) 0}[tuiCardLarge][data-space]>[tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space] [tuiCell]{inline-size:100%;padding:.5rem;margin:-.5rem -.5rem -.75rem;border-radius:var(--tui-radius-l)}[tuiCardLarge][data-space] [tuiCell]:last-of-type{margin-block-end:-.5rem}[tuiCardLarge][data-space]>[tuiLink]:last-child{display:block;inline-size:fit-content;margin-block-end:var(--t-comp)}[tuiCardLarge][data-space] [tuiAccessories]>[tuiButtonX]{align-self:flex-start}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
39
+ };
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles$2, decorators: [{
48
41
  type: Component,
49
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
50
- class: 'tui-card-large',
51
- }, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardLarge]{font:var(--tui-font-text-m)}[tuiCardLarge][data-space]{--t-space: .75rem;--t-radius: var(--tui-radius-l);--t-comp: -.25rem;--t-padding: .75rem;--t-dim: calc(var(--t-padding) + var(--t-comp));padding:var(--t-padding);border-radius:var(--t-radius);box-sizing:border-box}[tuiCardLarge][data-space][data-space=normal]{--t-radius: 1.5rem;--t-padding: 1.5rem;--t-space: 1.5rem}[tuiCardLarge][data-space][data-space=compact]{--t-radius: 1rem;--t-padding: 1.25rem;--t-space: 1.25rem}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm]){flex-direction:column;gap:var(--t-space);align-items:stretch}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm])>:last-child:not([tuiCell]){margin-block-start:auto}[tuiCardLarge][data-space][tuiHeader]{padding:var(--t-dim) var(--t-dim) var(--t-dim) var(--t-padding)}[tuiCardLarge][data-space][tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space]>[tuiHeader]{margin:var(--t-comp) var(--t-comp) calc(1.5 * var(--t-comp)) 0}[tuiCardLarge][data-space]>[tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space] [tuiCell]{inline-size:100%;padding:.5rem;margin:-.5rem -.5rem -.75rem;border-radius:var(--tui-radius-l)}[tuiCardLarge][data-space] [tuiCell]:last-of-type{margin-block-end:-.5rem}[tuiCardLarge][data-space]>[tuiLink]:last-child{display:block;inline-size:-webkit-fit-content;inline-size:-moz-fit-content;inline-size:fit-content;margin-block-end:var(--t-comp)}[tuiCardLarge][data-space] [tuiAccessories]>[tuiButtonClose]{align-self:flex-start}\n"] }]
42
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-card-large' }, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardLarge]{font:var(--tui-font-body-m)}[tuiCardLarge][data-space]{--t-space: .75rem;--t-radius: var(--tui-radius-l);--t-comp: -.25rem;--t-padding: .75rem;--t-dim: calc(var(--t-padding) + var(--t-comp));padding:var(--t-padding);border-radius:var(--t-radius);box-sizing:border-box}[tuiCardLarge][data-space][data-space=normal]{--t-radius: 1.5rem;--t-padding: 1.5rem;--t-space: 1.5rem}[tuiCardLarge][data-space][data-space=compact]{--t-radius: 1rem;--t-padding: 1.25rem;--t-space: 1.25rem}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm]){flex-direction:column;gap:var(--t-space);align-items:stretch}[tuiCardLarge][data-space]:not([tuiCell],[tuiHeader],[tuiForm])>:last-child:not([tuiCell]){margin-block-start:auto}[tuiCardLarge][data-space][tuiHeader]{padding:var(--t-dim) var(--t-dim) var(--t-dim) var(--t-padding)}[tuiCardLarge][data-space][tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space]>[tuiHeader]{margin:var(--t-comp) var(--t-comp) calc(1.5 * var(--t-comp)) 0}[tuiCardLarge][data-space]>[tuiHeader] [tuiLink]:last-child{margin-inline-end:calc(-1 * var(--t-comp))}[tuiCardLarge][data-space] [tuiCell]{inline-size:100%;padding:.5rem;margin:-.5rem -.5rem -.75rem;border-radius:var(--tui-radius-l)}[tuiCardLarge][data-space] [tuiCell]:last-of-type{margin-block-end:-.5rem}[tuiCardLarge][data-space]>[tuiLink]:last-child{display:block;inline-size:fit-content;margin-block-end:var(--t-comp)}[tuiCardLarge][data-space] [tuiAccessories]>[tuiButtonX]{align-self:flex-start}\n"] }]
52
43
  }] });
53
44
  class TuiCardLarge {
54
45
  constructor() {
55
- this.options = inject(TUI_CARD_OPTIONS);
56
- this.nothing = tuiWithStyles(TuiCardLargeStyles);
57
- this.space = '';
46
+ this.nothing = tuiWithStyles(Styles$2);
47
+ this.space = input('normal', {
48
+ alias: 'tuiCardLarge',
49
+ });
58
50
  }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardLarge, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
60
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardLarge, isStandalone: true, selector: "[tuiCardLarge]", inputs: { space: ["tuiCardLarge", "space"] }, host: { attributes: { "tuiCardLarge": "" }, properties: { "attr.data-space": "space || this.options.space" } }, ngImport: i0 }); }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardLarge, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
52
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiCardLarge, isStandalone: true, selector: "[tuiCardLarge]", inputs: { space: { classPropertyName: "space", publicName: "tuiCardLarge", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tuiCardLarge": "" }, properties: { "attr.data-space": "space() || \"normal\"" } }, hostDirectives: [{ directive: i1.TuiWithAppearance }], ngImport: i0 }); }
61
53
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardLarge, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardLarge, decorators: [{
63
55
  type: Directive,
64
56
  args: [{
65
- standalone: true,
66
57
  selector: '[tuiCardLarge]',
58
+ hostDirectives: [TuiWithAppearance],
67
59
  host: {
68
60
  tuiCardLarge: '',
69
- '[attr.data-space]': 'space || this.options.space',
61
+ '[attr.data-space]': 'space() || "normal"',
70
62
  },
71
63
  }]
72
- }], propDecorators: { space: [{
73
- type: Input,
74
- args: ['tuiCardLarge']
75
- }] } });
64
+ }] });
76
65
 
77
- class TuiCardMediumStyles {
78
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardMediumStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
79
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardMediumStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-medium" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardMedium]{inline-size:8.75rem;block-size:8.75rem;flex-direction:column;justify-content:space-between;padding:.75rem;border-radius:var(--tui-radius-l);box-sizing:border-box}[tuiCardMedium][tuiTitle]{padding:.625rem .75rem}[tuiCardMedium] [tuiTitle]{margin:-.125rem 0}[tuiCardMedium] [tuiSubtitle]{color:var(--tui-text-primary)}[tuiCardMedium][tuiTitle],[tuiCardMedium] [tuiTitle]:not([tuiCell] *):not([tuiLabel] *){font-weight:700}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
80
- }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardMediumStyles, decorators: [{
66
+ let Styles$1 = class Styles {
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-medium" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardMedium]{inline-size:8.75rem;block-size:8.75rem;flex-direction:column;justify-content:space-between;padding:.75rem;border-radius:var(--tui-radius-l);box-sizing:border-box}[tuiCardMedium][tuiTitle]{padding:.625rem .75rem}[tuiCardMedium] [tuiTitle]{margin:-.125rem 0}[tuiCardMedium] [tuiSubtitle]{color:var(--tui-text-primary)}[tuiCardMedium][tuiTitle],[tuiCardMedium] [tuiTitle]:not([tuiCell] *):not([tuiLabel] *){font-weight:700}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
69
+ };
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles$1, decorators: [{
82
71
  type: Component,
83
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
84
- class: 'tui-card-medium',
85
- }, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardMedium]{inline-size:8.75rem;block-size:8.75rem;flex-direction:column;justify-content:space-between;padding:.75rem;border-radius:var(--tui-radius-l);box-sizing:border-box}[tuiCardMedium][tuiTitle]{padding:.625rem .75rem}[tuiCardMedium] [tuiTitle]{margin:-.125rem 0}[tuiCardMedium] [tuiSubtitle]{color:var(--tui-text-primary)}[tuiCardMedium][tuiTitle],[tuiCardMedium] [tuiTitle]:not([tuiCell] *):not([tuiLabel] *){font-weight:700}\n"] }]
72
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-card-medium' }, styles: ["[tuiCardMedium],[tuiCardLarge]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;position:relative;display:flex;align-items:flex-start;flex-shrink:0;text-decoration:none;overscroll-behavior:contain;overflow:hidden;background:var(--tui-background-elevation-2)}[tuiCardMedium] [tuiTitle],[tuiCardLarge] [tuiTitle],[tuiCardMedium] [tuiSubtitle],[tuiCardLarge] [tuiSubtitle]{max-inline-size:100%}[tuiCardMedium]>*,[tuiCardLarge]>*{scrollbar-width:none;-ms-overflow-style:none}[tuiCardMedium]>*::-webkit-scrollbar,[tuiCardLarge]>*::-webkit-scrollbar,[tuiCardMedium]>*::-webkit-scrollbar-thumb,[tuiCardLarge]>*::-webkit-scrollbar-thumb{display:none}\n", "[tuiCardMedium]{inline-size:8.75rem;block-size:8.75rem;flex-direction:column;justify-content:space-between;padding:.75rem;border-radius:var(--tui-radius-l);box-sizing:border-box}[tuiCardMedium][tuiTitle]{padding:.625rem .75rem}[tuiCardMedium] [tuiTitle]{margin:-.125rem 0}[tuiCardMedium] [tuiSubtitle]{color:var(--tui-text-primary)}[tuiCardMedium][tuiTitle],[tuiCardMedium] [tuiTitle]:not([tuiCell] *):not([tuiLabel] *){font-weight:700}\n"] }]
86
73
  }] });
87
74
  class TuiCardMedium {
88
75
  constructor() {
89
- this.nothing = tuiWithStyles(TuiCardMediumStyles);
76
+ this.nothing = tuiWithStyles(Styles$1);
90
77
  }
91
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardMedium, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
92
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardMedium, isStandalone: true, selector: "[tuiCardMedium]", ngImport: i0 }); }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardMedium, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
79
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiCardMedium, isStandalone: true, selector: "[tuiCardMedium]", providers: [tuiAvatarOptionsProvider({ size: 'l' })], hostDirectives: [{ directive: i1.TuiWithAppearance }], ngImport: i0 }); }
93
80
  }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardMedium, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardMedium, decorators: [{
95
82
  type: Directive,
96
83
  args: [{
97
- standalone: true,
98
84
  selector: '[tuiCardMedium]',
85
+ providers: [tuiAvatarOptionsProvider({ size: 'l' })],
86
+ hostDirectives: [TuiWithAppearance],
99
87
  }]
100
88
  }] });
101
89
 
102
- class TuiCardRowStyles {
103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardRowStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardRowStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-row" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardRow]{display:flex;align-items:center;gap:3rem}[tuiCardRow] tui-icon{font-size:1rem}[tuiCardRow] [tuiTitle]{font:var(--tui-font-text-s)}[tuiCardRow] [tuiTitle]>:not([tuiSubtitle]){display:flex;align-items:center;gap:.25rem}[tuiCardRow] [tuiSubtitle]{color:var(--tui-text-secondary);font:var(--tui-font-text-xs)}[tuiCardRow]>[tuiButton],[tuiCardRow]>[tuiIconButton]{margin-inline-start:auto}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
90
+ class Styles {
91
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
92
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-card-row" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiCardRow]{display:flex;align-items:center;gap:3rem}[tuiCardRow] tui-icon{font-size:1rem}[tuiCardRow] [tuiTitle]{font:var(--tui-font-body-s)}[tuiCardRow] [tuiTitle]>:not([tuiSubtitle]){display:flex;align-items:center;gap:.25rem}[tuiCardRow] [tuiSubtitle]{color:var(--tui-text-secondary);font:var(--tui-font-body-xs)}[tuiCardRow]>[tuiButton],[tuiCardRow]>[tuiIconButton]{margin-inline-start:auto}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
105
93
  }
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardRowStyles, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: Styles, decorators: [{
107
95
  type: Component,
108
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
109
- class: 'tui-card-row',
110
- }, styles: ["[tuiCardRow]{display:flex;align-items:center;gap:3rem}[tuiCardRow] tui-icon{font-size:1rem}[tuiCardRow] [tuiTitle]{font:var(--tui-font-text-s)}[tuiCardRow] [tuiTitle]>:not([tuiSubtitle]){display:flex;align-items:center;gap:.25rem}[tuiCardRow] [tuiSubtitle]{color:var(--tui-text-secondary);font:var(--tui-font-text-xs)}[tuiCardRow]>[tuiButton],[tuiCardRow]>[tuiIconButton]{margin-inline-start:auto}\n"] }]
96
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-card-row' }, styles: ["[tuiCardRow]{display:flex;align-items:center;gap:3rem}[tuiCardRow] tui-icon{font-size:1rem}[tuiCardRow] [tuiTitle]{font:var(--tui-font-body-s)}[tuiCardRow] [tuiTitle]>:not([tuiSubtitle]){display:flex;align-items:center;gap:.25rem}[tuiCardRow] [tuiSubtitle]{color:var(--tui-text-secondary);font:var(--tui-font-body-xs)}[tuiCardRow]>[tuiButton],[tuiCardRow]>[tuiIconButton]{margin-inline-start:auto}\n"] }]
111
97
  }] });
112
98
  class TuiCardRow {
113
99
  constructor() {
114
- this.nothing = tuiWithStyles(TuiCardRowStyles);
100
+ this.nothing = tuiWithStyles(Styles);
115
101
  }
116
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardRow, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
117
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiCardRow, isStandalone: true, selector: "[tuiCardRow]", ngImport: i0 }); }
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardRow, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
103
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiCardRow, isStandalone: true, selector: "[tuiCardRow]", ngImport: i0 }); }
118
104
  }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCardRow, decorators: [{
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiCardRow, decorators: [{
120
106
  type: Directive,
121
107
  args: [{
122
- standalone: true,
123
108
  selector: '[tuiCardRow]',
124
109
  }]
125
110
  }] });
@@ -135,5 +120,5 @@ const TuiCard = [
135
120
  * Generated bundle index. Do not edit.
136
121
  */
137
122
 
138
- export { TUI_CARD_OPTIONS, TuiCard, TuiCardCollapsed, TuiCardLarge, TuiCardMedium, TuiCardRow, tuiCardOptionsProvider };
123
+ export { TuiCard, TuiCardCollapsed, TuiCardLarge, TuiCardMedium, TuiCardRow };
139
124
  //# sourceMappingURL=taiga-ui-layout-components-card.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-layout-components-card.mjs","sources":["../../../projects/layout/components/card/collapsed.directive.ts","../../../projects/layout/components/card/large.directive.ts","../../../projects/layout/components/card/medium.directive.ts","../../../projects/layout/components/card/row.directive.ts","../../../projects/layout/components/card/card.ts","../../../projects/layout/components/card/taiga-ui-layout-components-card.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./collapsed.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-card-collapsed',\n },\n})\nclass TuiCardCollapsedStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiCardCollapsed]',\n host: {\n tuiCardCollapsed: '',\n '[style.margin-block-end.rem]': 'collapsed ? 0.75 : 0',\n '[style.clip-path]': 'collapsed ? \"inset(-0.75rem)\" : \"inset(0)\"',\n },\n})\nexport class TuiCardCollapsed {\n protected readonly nothing = tuiWithStyles(TuiCardCollapsedStyles);\n\n @Input('tuiCardCollapsed')\n public collapsed = false;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport const [TUI_CARD_OPTIONS, tuiCardOptionsProvider] = tuiCreateOptions({\n space: 'normal' as 'compact' | 'normal',\n});\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./card.style.less', './large.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-card-large',\n },\n})\nclass TuiCardLargeStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiCardLarge]',\n host: {\n tuiCardLarge: '',\n '[attr.data-space]': 'space || this.options.space',\n },\n})\nexport class TuiCardLarge {\n protected readonly options = inject(TUI_CARD_OPTIONS);\n protected readonly nothing = tuiWithStyles(TuiCardLargeStyles);\n\n @Input('tuiCardLarge')\n public space: '' | 'compact' | 'normal' = '';\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./card.style.less', './medium.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-card-medium',\n },\n})\nclass TuiCardMediumStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiCardMedium]',\n})\nexport class TuiCardMedium {\n protected readonly nothing = tuiWithStyles(TuiCardMediumStyles);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./row.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-card-row',\n },\n})\nclass TuiCardRowStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiCardRow]',\n})\nexport class TuiCardRow {\n protected readonly nothing = tuiWithStyles(TuiCardRowStyles);\n}\n","import {TuiCardCollapsed} from './collapsed.directive';\nimport {TuiCardLarge} from './large.directive';\nimport {TuiCardMedium} from './medium.directive';\nimport {TuiCardRow} from './row.directive';\n\nexport const TuiCard = [\n TuiCardLarge,\n TuiCardMedium,\n TuiCardCollapsed,\n TuiCardRow,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-layout-components-card.mjs","sources":["../../../projects/layout/components/card/collapsed.directive.ts","../../../projects/layout/components/card/large.directive.ts","../../../projects/layout/components/card/medium.directive.ts","../../../projects/layout/components/card/row.directive.ts","../../../projects/layout/components/card/card.ts","../../../projects/layout/components/card/taiga-ui-layout-components-card.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n template: '',\n styleUrl: './collapsed.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-card-collapsed'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiCardCollapsed]',\n host: {\n tuiCardCollapsed: '',\n '[style.margin-block-end.rem]': 'collapsed() ? 0.75 : 0',\n '[style.clip-path]': 'collapsed() ? \"inset(-0.75rem)\" : \"inset(0)\"',\n },\n})\nexport class TuiCardCollapsed {\n protected readonly nothing = tuiWithStyles(Styles);\n\n public readonly collapsed = input(false, {alias: 'tuiCardCollapsed'});\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiWithAppearance} from '@taiga-ui/core/directives/appearance';\n\n@Component({\n template: '',\n styleUrls: ['./card.style.less', './large.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-card-large'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiCardLarge]',\n hostDirectives: [TuiWithAppearance],\n host: {\n tuiCardLarge: '',\n '[attr.data-space]': 'space() || \"normal\"',\n },\n})\nexport class TuiCardLarge {\n protected readonly nothing = tuiWithStyles(Styles);\n\n public readonly space = input<'' | 'compact' | 'normal'>('normal', {\n alias: 'tuiCardLarge',\n });\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiWithAppearance} from '@taiga-ui/core/directives/appearance';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\n\n@Component({\n template: '',\n styleUrls: ['./card.style.less', './medium.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-card-medium'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiCardMedium]',\n providers: [tuiAvatarOptionsProvider({size: 'l'})],\n hostDirectives: [TuiWithAppearance],\n})\nexport class TuiCardMedium {\n protected readonly nothing = tuiWithStyles(Styles);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n template: '',\n styleUrl: './row.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-card-row'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiCardRow]',\n})\nexport class TuiCardRow {\n protected readonly nothing = tuiWithStyles(Styles);\n}\n","import {TuiCardCollapsed} from './collapsed.directive';\nimport {TuiCardLarge} from './large.directive';\nimport {TuiCardMedium} from './medium.directive';\nimport {TuiCardRow} from './row.directive';\n\nexport const TuiCard = [\n TuiCardLarge,\n TuiCardMedium,\n TuiCardCollapsed,\n TuiCardRow,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Styles"],"mappings":"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"}
@@ -1,23 +1,21 @@
1
- import { NgForOf, NgIf } from '@angular/common';
2
1
  import * as i0 from '@angular/core';
3
- import { inject, ViewContainerRef, TemplateRef, signal, Directive, ContentChildren, Component, ChangeDetectionStrategy } from '@angular/core';
2
+ import { inject, ViewContainerRef, TemplateRef, signal, Directive, contentChildren, ChangeDetectionStrategy, Component } from '@angular/core';
4
3
  import { TuiAnimated } from '@taiga-ui/cdk/directives/animated';
5
4
  import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
6
5
  import { toSignal } from '@angular/core/rxjs-interop';
7
6
  import * as i1 from '@ng-web-apis/intersection-observer';
8
7
  import { WaIntersectionObserverDirective, WaIntersectionRoot } from '@ng-web-apis/intersection-observer';
9
- import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
10
8
  import { tuiZoneOptimized } from '@taiga-ui/cdk/observables';
11
9
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
12
10
  import { fromEvent, map, pairwise, distinctUntilChanged } from 'rxjs';
13
11
 
14
12
  class TuiDynamicHeaderAnchorDirective {
15
13
  constructor() {
16
- this.viewContainer = inject(ViewContainerRef);
14
+ this.vcr = inject(ViewContainerRef);
17
15
  this.observer = inject(WaIntersectionObserverDirective);
18
16
  this.container = inject(TuiDynamicHeaderContainerDirective);
19
17
  this.templateRef = inject((TemplateRef));
20
- this.view = this.viewContainer.createEmbeddedView(this.templateRef);
18
+ this.view = this.vcr.createEmbeddedView(this.templateRef);
21
19
  this.visible = signal(false);
22
20
  }
23
21
  ngAfterViewInit() {
@@ -29,13 +27,12 @@ class TuiDynamicHeaderAnchorDirective {
29
27
  ngOnDestroy() {
30
28
  this.observer.unobserve(this.view.rootNodes[0]);
31
29
  }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDynamicHeaderAnchorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
33
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDynamicHeaderAnchorDirective, isStandalone: true, selector: "[tuiDynamicHeaderAnchor]", ngImport: i0 }); }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDynamicHeaderAnchorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiDynamicHeaderAnchorDirective, isStandalone: true, selector: "[tuiDynamicHeaderAnchor]", ngImport: i0 }); }
34
32
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDynamicHeaderAnchorDirective, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDynamicHeaderAnchorDirective, decorators: [{
36
34
  type: Directive,
37
35
  args: [{
38
- standalone: true,
39
36
  selector: '[tuiDynamicHeaderAnchor]',
40
37
  }]
41
38
  }] });
@@ -43,80 +40,64 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
43
40
  class TuiDynamicHeaderContainerDirective {
44
41
  constructor() {
45
42
  this.el = tuiInjectElement();
46
- this.headers = EMPTY_QUERY;
43
+ this.headers = contentChildren(TuiDynamicHeaderAnchorDirective, {
44
+ descendants: true,
45
+ });
47
46
  this.hiddenHeaders = signal([]);
48
47
  this.scrollDir = toSignal(fromEvent(this.el, 'scroll').pipe(map(({ target }) => target.scrollTop), pairwise(), map(([prev, next]) => (next > prev ? -1 : 1)), distinctUntilChanged(), tuiZoneOptimized()));
49
48
  }
50
49
  update() {
51
- this.hiddenHeaders.set(this.headers.filter((h) => h.visible()).map((h) => h.templateRef));
50
+ this.hiddenHeaders.set(this.headers()
51
+ .filter((h) => h.visible())
52
+ .map((h) => h.templateRef));
52
53
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDynamicHeaderContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
54
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDynamicHeaderContainerDirective, isStandalone: true, selector: "[tuiDynamicHeaderContainer]", host: { attributes: { "waIntersectionRootMargin": "-44px 0px 1000000% 0px" } }, queries: [{ propertyName: "headers", predicate: TuiDynamicHeaderAnchorDirective, descendants: true }], hostDirectives: [{ directive: i1.WaIntersectionRoot }, { directive: i1.WaIntersectionObserverDirective }], ngImport: i0 }); }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDynamicHeaderContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
55
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "19.2.17", type: TuiDynamicHeaderContainerDirective, isStandalone: true, selector: "[tuiDynamicHeaderContainer]", host: { attributes: { "waIntersectionRootMargin": "-44px 0px 1000000% 0px" } }, queries: [{ propertyName: "headers", predicate: TuiDynamicHeaderAnchorDirective, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.WaIntersectionRoot }, { directive: i1.WaIntersectionObserverDirective }], ngImport: i0 }); }
55
56
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDynamicHeaderContainerDirective, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDynamicHeaderContainerDirective, decorators: [{
57
58
  type: Directive,
58
59
  args: [{
59
- standalone: true,
60
60
  selector: '[tuiDynamicHeaderContainer]',
61
61
  hostDirectives: [WaIntersectionRoot, WaIntersectionObserverDirective],
62
62
  host: {
63
63
  waIntersectionRootMargin: '-44px 0px 1000000% 0px',
64
64
  },
65
65
  }]
66
- }], propDecorators: { headers: [{
67
- type: ContentChildren,
68
- args: [TuiDynamicHeaderAnchorDirective, {
69
- descendants: true,
70
- }]
71
- }] } });
66
+ }] });
72
67
 
73
68
  class TuiDynamicHeaderComponent {
74
69
  constructor() {
75
70
  this.container = inject(TuiDynamicHeaderContainerDirective);
76
71
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDynamicHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDynamicHeaderComponent, isStandalone: true, selector: "[tuiDynamicHeader]", host: { properties: { "style.--t-dir": "container.scrollDir() || -1" } }, ngImport: i0, template: `
79
- <div
80
- *ngIf="!container.hiddenHeaders().length; else dynamic"
81
- tuiAnimated
82
- >
83
- <ng-content />
84
- </div>
85
- <ng-template #dynamic>
86
- <ng-container
87
- *ngFor="let header of container.hiddenHeaders(); let last = last"
88
- >
89
- <div
90
- *ngIf="last"
91
- tuiAnimated
92
- >
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDynamicHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TuiDynamicHeaderComponent, isStandalone: true, selector: "[tuiDynamicHeader]", host: { properties: { "style.--t-dir": "container.scrollDir() || -1" } }, ngImport: i0, template: `
74
+ @for (header of container.hiddenHeaders(); track header) {
75
+ @if ($last) {
76
+ <div tuiAnimated>
93
77
  <div *polymorpheusOutlet="header as text">{{ text }}</div>
94
78
  </div>
95
- </ng-container>
96
- </ng-template>
97
- `, isInline: true, styles: [":host{display:flex;block-size:100%;align-items:center;justify-content:center}:host-context([data-platform=\"android\"]) :host{justify-content:start}.tui-enter{animation-name:tuiFade,tuiSlide;--tui-from: translateY(calc(-200% * var(--t-dir)))}.tui-leave{animation-name:tuiFade,tuiSlide;--tui-from: translateY(calc(200% * var(--t-dir)))}.tui-enter:not(:first-of-type),.tui-leave:not(:first-of-type){position:absolute}\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: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiAnimated, selector: "[tuiAnimated]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
+ }
80
+ } @empty {
81
+ <div tuiAnimated>
82
+ <ng-content />
83
+ </div>
84
+ }
85
+ `, isInline: true, styles: [":host{display:flex;block-size:100%;align-items:center;justify-content:center}:host-context([data-platform=\"android\"]) :host{justify-content:start}.tui-enter{animation-name:tuiFade,tuiSlide;--tui-from: translateY(calc(-200% * var(--t-dir)))}.tui-leave{animation-name:tuiFade,tuiSlide;--tui-from: translateY(calc(200% * var(--t-dir)))}.tui-enter:not(:first-of-type),.tui-leave:not(:first-of-type){position:absolute}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiAnimated, selector: "[tuiAnimated]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
98
86
  }
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDynamicHeaderComponent, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDynamicHeaderComponent, decorators: [{
100
88
  type: Component,
101
- args: [{ standalone: true, selector: '[tuiDynamicHeader]', imports: [NgForOf, NgIf, PolymorpheusOutlet, TuiAnimated], template: `
102
- <div
103
- *ngIf="!container.hiddenHeaders().length; else dynamic"
104
- tuiAnimated
105
- >
106
- <ng-content />
107
- </div>
108
- <ng-template #dynamic>
109
- <ng-container
110
- *ngFor="let header of container.hiddenHeaders(); let last = last"
111
- >
112
- <div
113
- *ngIf="last"
114
- tuiAnimated
115
- >
89
+ args: [{ selector: '[tuiDynamicHeader]', imports: [PolymorpheusOutlet, TuiAnimated], template: `
90
+ @for (header of container.hiddenHeaders(); track header) {
91
+ @if ($last) {
92
+ <div tuiAnimated>
116
93
  <div *polymorpheusOutlet="header as text">{{ text }}</div>
117
94
  </div>
118
- </ng-container>
119
- </ng-template>
95
+ }
96
+ } @empty {
97
+ <div tuiAnimated>
98
+ <ng-content />
99
+ </div>
100
+ }
120
101
  `, changeDetection: ChangeDetectionStrategy.OnPush, host: {
121
102
  '[style.--t-dir]': 'container.scrollDir() || -1',
122
103
  }, styles: [":host{display:flex;block-size:100%;align-items:center;justify-content:center}:host-context([data-platform=\"android\"]) :host{justify-content:start}.tui-enter{animation-name:tuiFade,tuiSlide;--tui-from: translateY(calc(-200% * var(--t-dir)))}.tui-leave{animation-name:tuiFade,tuiSlide;--tui-from: translateY(calc(200% * var(--t-dir)))}.tui-enter:not(:first-of-type),.tui-leave:not(:first-of-type){position:absolute}\n"] }]
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-layout-components-dynamic-header.mjs","sources":["../../../projects/layout/components/dynamic-header/dynamic-header-anchor.directive.ts","../../../projects/layout/components/dynamic-header/dynamic-header-container.directive.ts","../../../projects/layout/components/dynamic-header/dynamic-header.component.ts","../../../projects/layout/components/dynamic-header/dynamic-header.ts","../../../projects/layout/components/dynamic-header/taiga-ui-layout-components-dynamic-header.ts"],"sourcesContent":["import {\n type AfterViewInit,\n Directive,\n inject,\n type OnDestroy,\n signal,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport {WaIntersectionObserverDirective} from '@ng-web-apis/intersection-observer';\n\nimport {TuiDynamicHeaderContainerDirective} from './dynamic-header-container.directive';\n\n@Directive({\n standalone: true,\n selector: '[tuiDynamicHeaderAnchor]',\n})\nexport class TuiDynamicHeaderAnchorDirective implements AfterViewInit, OnDestroy {\n private readonly viewContainer = inject(ViewContainerRef);\n private readonly observer = inject(WaIntersectionObserverDirective);\n private readonly container = inject(TuiDynamicHeaderContainerDirective);\n public readonly templateRef = inject(TemplateRef<unknown>);\n public readonly view = this.viewContainer.createEmbeddedView(this.templateRef);\n public readonly visible = signal(false);\n\n public ngAfterViewInit(): void {\n this.observer.observe(this.view.rootNodes[0], ([e]) => {\n this.visible.set(!e?.isIntersecting);\n this.container.update();\n });\n }\n\n public ngOnDestroy(): void {\n this.observer.unobserve(this.view.rootNodes[0]);\n }\n}\n","import {\n ContentChildren,\n Directive,\n type QueryList,\n signal,\n type TemplateRef,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {\n WaIntersectionObserverDirective,\n WaIntersectionRoot,\n} from '@ng-web-apis/intersection-observer';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {distinctUntilChanged, fromEvent, map, pairwise} from 'rxjs';\n\nimport {TuiDynamicHeaderAnchorDirective} from './dynamic-header-anchor.directive';\n\n@Directive({\n standalone: true,\n selector: '[tuiDynamicHeaderContainer]',\n hostDirectives: [WaIntersectionRoot, WaIntersectionObserverDirective],\n host: {\n waIntersectionRootMargin: '-44px 0px 1000000% 0px',\n },\n})\nexport class TuiDynamicHeaderContainerDirective {\n private readonly el = tuiInjectElement();\n\n @ContentChildren(TuiDynamicHeaderAnchorDirective, {\n descendants: true,\n })\n protected readonly headers: QueryList<TuiDynamicHeaderAnchorDirective> = EMPTY_QUERY;\n\n public hiddenHeaders = signal<Array<TemplateRef<unknown>>>([]);\n\n public scrollDir = toSignal(\n fromEvent(this.el, 'scroll').pipe(\n map(({target}) => (target as HTMLElement).scrollTop),\n pairwise(),\n map(([prev, next]) => (next > prev ? -1 : 1)),\n distinctUntilChanged(),\n tuiZoneOptimized(),\n ),\n );\n\n public update(): void {\n this.hiddenHeaders.set(\n this.headers.filter((h) => h.visible()).map((h) => h.templateRef),\n );\n }\n}\n","import {NgForOf, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TuiDynamicHeaderContainerDirective} from './dynamic-header-container.directive';\n\n@Component({\n standalone: true,\n selector: '[tuiDynamicHeader]',\n imports: [NgForOf, NgIf, PolymorpheusOutlet, TuiAnimated],\n template: `\n <div\n *ngIf=\"!container.hiddenHeaders().length; else dynamic\"\n tuiAnimated\n >\n <ng-content />\n </div>\n <ng-template #dynamic>\n <ng-container\n *ngFor=\"let header of container.hiddenHeaders(); let last = last\"\n >\n <div\n *ngIf=\"last\"\n tuiAnimated\n >\n <div *polymorpheusOutlet=\"header as text\">{{ text }}</div>\n </div>\n </ng-container>\n </ng-template>\n `,\n styleUrls: ['./dynamic-header.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[style.--t-dir]': 'container.scrollDir() || -1',\n },\n})\nexport class TuiDynamicHeaderComponent {\n protected readonly container = inject(TuiDynamicHeaderContainerDirective);\n}\n","import {TuiDynamicHeaderComponent} from './dynamic-header.component';\nimport {TuiDynamicHeaderAnchorDirective} from './dynamic-header-anchor.directive';\nimport {TuiDynamicHeaderContainerDirective} from './dynamic-header-container.directive';\n\nexport const TuiDynamicHeader = [\n TuiDynamicHeaderComponent,\n TuiDynamicHeaderAnchorDirective,\n TuiDynamicHeaderContainerDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-layout-components-dynamic-header.mjs","sources":["../../../projects/layout/components/dynamic-header/dynamic-header-anchor.directive.ts","../../../projects/layout/components/dynamic-header/dynamic-header-container.directive.ts","../../../projects/layout/components/dynamic-header/dynamic-header.component.ts","../../../projects/layout/components/dynamic-header/dynamic-header.ts","../../../projects/layout/components/dynamic-header/taiga-ui-layout-components-dynamic-header.ts"],"sourcesContent":["import {\n type AfterViewInit,\n Directive,\n inject,\n type OnDestroy,\n signal,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport {WaIntersectionObserverDirective} from '@ng-web-apis/intersection-observer';\n\nimport {TuiDynamicHeaderContainerDirective} from './dynamic-header-container.directive';\n\n@Directive({\n selector: '[tuiDynamicHeaderAnchor]',\n})\nexport class TuiDynamicHeaderAnchorDirective implements AfterViewInit, OnDestroy {\n private readonly vcr = inject(ViewContainerRef);\n private readonly observer = inject(WaIntersectionObserverDirective);\n private readonly container = inject(TuiDynamicHeaderContainerDirective);\n public readonly templateRef = inject(TemplateRef<unknown>);\n public readonly view = this.vcr.createEmbeddedView(this.templateRef);\n public readonly visible = signal(false);\n\n public ngAfterViewInit(): void {\n this.observer.observe(this.view.rootNodes[0], ([e]) => {\n this.visible.set(!e?.isIntersecting);\n this.container.update();\n });\n }\n\n public ngOnDestroy(): void {\n this.observer.unobserve(this.view.rootNodes[0]);\n }\n}\n","import {contentChildren, Directive, signal, type TemplateRef} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {\n WaIntersectionObserverDirective,\n WaIntersectionRoot,\n} from '@ng-web-apis/intersection-observer';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {distinctUntilChanged, fromEvent, map, pairwise} from 'rxjs';\n\nimport {TuiDynamicHeaderAnchorDirective} from './dynamic-header-anchor.directive';\n\n@Directive({\n selector: '[tuiDynamicHeaderContainer]',\n hostDirectives: [WaIntersectionRoot, WaIntersectionObserverDirective],\n host: {\n waIntersectionRootMargin: '-44px 0px 1000000% 0px',\n },\n})\nexport class TuiDynamicHeaderContainerDirective {\n private readonly el = tuiInjectElement();\n\n protected readonly headers = contentChildren(TuiDynamicHeaderAnchorDirective, {\n descendants: true,\n });\n\n public hiddenHeaders = signal<Array<TemplateRef<unknown>>>([]);\n\n public scrollDir = toSignal(\n fromEvent(this.el, 'scroll').pipe(\n map(({target}) => (target as HTMLElement).scrollTop),\n pairwise(),\n map(([prev, next]) => (next > prev ? -1 : 1)),\n distinctUntilChanged(),\n tuiZoneOptimized(),\n ),\n );\n\n public update(): void {\n this.hiddenHeaders.set(\n this.headers()\n .filter((h) => h.visible())\n .map((h) => h.templateRef),\n );\n }\n}\n","import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TuiDynamicHeaderContainerDirective} from './dynamic-header-container.directive';\n\n@Component({\n selector: '[tuiDynamicHeader]',\n imports: [PolymorpheusOutlet, TuiAnimated],\n template: `\n @for (header of container.hiddenHeaders(); track header) {\n @if ($last) {\n <div tuiAnimated>\n <div *polymorpheusOutlet=\"header as text\">{{ text }}</div>\n </div>\n }\n } @empty {\n <div tuiAnimated>\n <ng-content />\n </div>\n }\n `,\n styleUrl: './dynamic-header.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[style.--t-dir]': 'container.scrollDir() || -1',\n },\n})\nexport class TuiDynamicHeaderComponent {\n protected readonly container = inject(TuiDynamicHeaderContainerDirective);\n}\n","import {TuiDynamicHeaderComponent} from './dynamic-header.component';\nimport {TuiDynamicHeaderAnchorDirective} from './dynamic-header-anchor.directive';\nimport {TuiDynamicHeaderContainerDirective} from './dynamic-header-container.directive';\n\nexport const TuiDynamicHeader = [\n TuiDynamicHeaderComponent,\n TuiDynamicHeaderAnchorDirective,\n TuiDynamicHeaderContainerDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, Directive, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { outputFromObservable } from '@angular/core/rxjs-interop';
4
+ import { WaMutationObserverService, WA_MUTATION_OBSERVER_INIT } from '@ng-web-apis/mutation-observer';
5
+ import { WaResizeObserverService } from '@ng-web-apis/resize-observer';
6
+ import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
7
+ import { merge, debounceTime, map, distinctUntilChanged } from 'rxjs';
8
+
9
+ class TuiElasticContainerDirective {
10
+ constructor() {
11
+ this.el = tuiInjectElement();
12
+ this.tuiElasticContainer = outputFromObservable(merge(inject(WaResizeObserverService), inject(WaMutationObserverService)).pipe(debounceTime(0), map(() => this.el.clientHeight - 1), distinctUntilChanged()));
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiElasticContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiElasticContainerDirective, isStandalone: true, selector: "[tuiElasticContainer]", outputs: { tuiElasticContainer: "tuiElasticContainer" }, providers: [
16
+ WaResizeObserverService,
17
+ WaMutationObserverService,
18
+ {
19
+ provide: WA_MUTATION_OBSERVER_INIT,
20
+ useValue: { childList: true, characterData: true, subtree: true },
21
+ },
22
+ ], ngImport: i0 }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiElasticContainerDirective, decorators: [{
25
+ type: Directive,
26
+ args: [{
27
+ selector: '[tuiElasticContainer]',
28
+ providers: [
29
+ WaResizeObserverService,
30
+ WaMutationObserverService,
31
+ {
32
+ provide: WA_MUTATION_OBSERVER_INIT,
33
+ useValue: { childList: true, characterData: true, subtree: true },
34
+ },
35
+ ],
36
+ }]
37
+ }] });
38
+
39
+ class TuiElasticContainer {
40
+ constructor() {
41
+ this.height = '';
42
+ this.transitions = 0;
43
+ }
44
+ onAnimation(name, count) {
45
+ if (name === 'height') {
46
+ this.transitions += count;
47
+ }
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiElasticContainer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: TuiElasticContainer, isStandalone: true, selector: "tui-elastic-container", host: { properties: { "style.block-size": "transitions ? \"auto\" : height" } }, ngImport: i0, template: "<div\n class=\"t-wrapper\"\n (transitioncancel)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionend)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionstart)=\"onAnimation($any($event).propertyName, 1)\"\n (tuiElasticContainer)=\"height = `${$event}px`\"\n>\n <ng-content />\n</div>\n", styles: [":host{transition-property:height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:block;overflow:hidden}.t-wrapper{padding-block-start:1px;margin-block-start:-1px}\n"], dependencies: [{ kind: "directive", type: TuiElasticContainerDirective, selector: "[tuiElasticContainer]", outputs: ["tuiElasticContainer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiElasticContainer, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'tui-elastic-container', imports: [TuiElasticContainerDirective], changeDetection: ChangeDetectionStrategy.OnPush, host: { '[style.block-size]': 'transitions ? "auto" : height' }, template: "<div\n class=\"t-wrapper\"\n (transitioncancel)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionend)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionstart)=\"onAnimation($any($event).propertyName, 1)\"\n (tuiElasticContainer)=\"height = `${$event}px`\"\n>\n <ng-content />\n</div>\n", styles: [":host{transition-property:height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:block;overflow:hidden}.t-wrapper{padding-block-start:1px;margin-block-start:-1px}\n"] }]
55
+ }] });
56
+
57
+ /**
58
+ * Generated bundle index. Do not edit.
59
+ */
60
+
61
+ export { TuiElasticContainer, TuiElasticContainerDirective };
62
+ //# sourceMappingURL=taiga-ui-layout-components-elastic-container.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-layout-components-elastic-container.mjs","sources":["../../../projects/layout/components/elastic-container/elastic-container.directive.ts","../../../projects/layout/components/elastic-container/elastic-container.component.ts","../../../projects/layout/components/elastic-container/elastic-container.component.html","../../../projects/layout/components/elastic-container/taiga-ui-layout-components-elastic-container.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\nimport {\n WA_MUTATION_OBSERVER_INIT,\n WaMutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {WaResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {debounceTime, distinctUntilChanged, map, merge} from 'rxjs';\n\n@Directive({\n selector: '[tuiElasticContainer]',\n providers: [\n WaResizeObserverService,\n WaMutationObserverService,\n {\n provide: WA_MUTATION_OBSERVER_INIT,\n useValue: {childList: true, characterData: true, subtree: true},\n },\n ],\n})\nexport class TuiElasticContainerDirective {\n private readonly el = tuiInjectElement();\n\n public readonly tuiElasticContainer = outputFromObservable(\n merge(inject(WaResizeObserverService), inject(WaMutationObserverService)).pipe(\n debounceTime(0),\n map(() => this.el.clientHeight - 1),\n distinctUntilChanged(),\n ),\n );\n}\n","import {ChangeDetectionStrategy, Component} from '@angular/core';\n\nimport {TuiElasticContainerDirective} from './elastic-container.directive';\n\n@Component({\n selector: 'tui-elastic-container',\n imports: [TuiElasticContainerDirective],\n templateUrl: './elastic-container.component.html',\n styleUrl: './elastic-container.component.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {'[style.block-size]': 'transitions ? \"auto\" : height'},\n})\nexport class TuiElasticContainer {\n protected height = '';\n protected transitions = 0;\n\n protected onAnimation(name: string, count: number): void {\n if (name === 'height') {\n this.transitions += count;\n }\n }\n}\n","<div\n class=\"t-wrapper\"\n (transitioncancel)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionend)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionstart)=\"onAnimation($any($event).propertyName, 1)\"\n (tuiElasticContainer)=\"height = `${$event}px`\"\n>\n <ng-content />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;MAqBa,4BAA4B,CAAA;AAXzC,IAAA,WAAA,GAAA;QAYqB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AAExB,QAAA,IAAA,CAAA,mBAAmB,GAAG,oBAAoB,CACtD,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAC1E,YAAY,CAAC,CAAC,CAAC,EACf,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,GAAG,CAAC,CAAC,EACnC,oBAAoB,EAAE,CACzB,CACJ;AACJ;+GAVY,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,4BAA4B,EAT1B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,SAAA,EAAA;YACP,uBAAuB;YACvB,yBAAyB;AACzB,YAAA;AACI,gBAAA,OAAO,EAAE,yBAAyB;AAClC,gBAAA,QAAQ,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC;AAClE,aAAA;AACJ,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEQ,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAXxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,SAAS,EAAE;wBACP,uBAAuB;wBACvB,yBAAyB;AACzB,wBAAA;AACI,4BAAA,OAAO,EAAE,yBAAyB;AAClC,4BAAA,QAAQ,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC;AAClE,yBAAA;AACJ,qBAAA;AACJ,iBAAA;;;MCRY,mBAAmB,CAAA;AARhC,IAAA,WAAA,GAAA;QASc,IAAM,CAAA,MAAA,GAAG,EAAE;QACX,IAAW,CAAA,WAAA,GAAG,CAAC;AAO5B;IALa,WAAW,CAAC,IAAY,EAAE,KAAa,EAAA;AAC7C,QAAA,IAAI,IAAI,KAAK,QAAQ,EAAE;AACnB,YAAA,IAAI,CAAC,WAAW,IAAI,KAAK;;;+GANxB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,iCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZhC,sUASA,EAAA,MAAA,EAAA,CAAA,kNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDHc,4BAA4B,EAAA,QAAA,EAAA,uBAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAM7B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EACxB,OAAA,EAAA,CAAC,4BAA4B,CAAC,EAGtB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA,EAAC,oBAAoB,EAAE,+BAA+B,EAAC,EAAA,QAAA,EAAA,sUAAA,EAAA,MAAA,EAAA,CAAA,kNAAA,CAAA,EAAA;;;AEVjE;;AAEG;;;;"}