@taiga-ui/kit 3.25.0 → 3.26.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 (153) hide show
  1. package/bundles/taiga-ui-kit-components-avatar.umd.js +27 -9
  2. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-badge.umd.js +2 -6
  4. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-badged-content.umd.js +0 -8
  6. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +3 -3
  8. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-combo-box.umd.js +3 -6
  10. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +0 -7
  12. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-files.umd.js +2 -7
  14. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-filter.umd.js +0 -3
  16. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-input-copy.umd.js +0 -4
  18. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +140 -51
  20. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-date.umd.js +62 -65
  22. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-files.umd.js +2 -10
  24. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-number.umd.js +1 -1
  26. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-range.umd.js +0 -8
  28. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-input-slider.umd.js +0 -4
  30. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
  32. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input.umd.js +0 -1
  34. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +0 -4
  36. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-multi-select.umd.js +7 -4
  38. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-pagination.umd.js +0 -7
  40. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-radio-block.umd.js +6 -5
  42. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-radio-list.umd.js +0 -3
  44. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-range.umd.js +1 -1
  46. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-select.umd.js +0 -1
  48. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-tabs.umd.js +0 -8
  50. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -6
  52. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-pipes-field-error.umd.js +20 -8
  54. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  55. package/components/avatar/avatar.component.d.ts +5 -2
  56. package/components/files/files.component.d.ts +1 -1
  57. package/components/input-date/input-date.module.d.ts +1 -1
  58. package/components/input-date/native-date/native-date.component.d.ts +3 -3
  59. package/components/input-date-time/input-date-time.component.d.ts +6 -2
  60. package/components/input-date-time/input-date-time.directive.d.ts +3 -0
  61. package/components/input-date-time/input-date-time.module.d.ts +7 -6
  62. package/components/input-date-time/native-date-time/native-date-time.directive.d.ts +10 -0
  63. package/components/pagination/pagination.component.d.ts +1 -1
  64. package/components/range/range-change.directive.d.ts +1 -1
  65. package/components/tag/tag.component.d.ts +1 -1
  66. package/esm2015/components/avatar/avatar.component.js +25 -11
  67. package/esm2015/components/badge/badge.component.js +4 -8
  68. package/esm2015/components/badged-content/badged-content.component.js +1 -9
  69. package/esm2015/components/checkbox-block/checkbox-block.component.js +4 -4
  70. package/esm2015/components/combo-box/combo-box.component.js +4 -7
  71. package/esm2015/components/data-list-wrapper/data-list-wrapper.js +1 -8
  72. package/esm2015/components/files/file/file.component.js +1 -5
  73. package/esm2015/components/files/files.component.js +4 -5
  74. package/esm2015/components/filter/filter.component.js +1 -4
  75. package/esm2015/components/input/input.component.js +1 -2
  76. package/esm2015/components/input-copy/input-copy.component.js +1 -5
  77. package/esm2015/components/input-date/input-date.component.js +8 -8
  78. package/esm2015/components/input-date/input-date.module.js +4 -4
  79. package/esm2015/components/input-date/native-date/native-date.component.js +7 -10
  80. package/esm2015/components/input-date-time/input-date-time.component.js +30 -14
  81. package/esm2015/components/input-date-time/input-date-time.directive.js +7 -1
  82. package/esm2015/components/input-date-time/input-date-time.module.js +10 -3
  83. package/esm2015/components/input-date-time/native-date-time/native-date-time.directive.js +47 -0
  84. package/esm2015/components/input-files/input-files.component.js +3 -11
  85. package/esm2015/components/input-number/input-number.component.js +2 -2
  86. package/esm2015/components/input-range/input-range.component.js +1 -9
  87. package/esm2015/components/input-slider/input-slider.component.js +1 -5
  88. package/esm2015/components/input-tag/input-tag.component.js +2 -2
  89. package/esm2015/components/line-clamp/line-clamp.component.js +1 -5
  90. package/esm2015/components/multi-select/multi-select.component.js +8 -5
  91. package/esm2015/components/pagination/pagination.component.js +1 -8
  92. package/esm2015/components/radio-block/radio-block.component.js +7 -6
  93. package/esm2015/components/radio-list/radio-list.component.js +1 -4
  94. package/esm2015/components/range/range-change.directive.js +2 -2
  95. package/esm2015/components/select/select.component.js +1 -2
  96. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +1 -9
  97. package/esm2015/components/tag/tag.component.js +3 -7
  98. package/esm2015/pipes/field-error/field-error-pipe.js +21 -9
  99. package/fesm2015/taiga-ui-kit-components-avatar.js +24 -10
  100. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  101. package/fesm2015/taiga-ui-kit-components-badge.js +3 -7
  102. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  103. package/fesm2015/taiga-ui-kit-components-badged-content.js +0 -8
  104. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  105. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +3 -3
  106. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  107. package/fesm2015/taiga-ui-kit-components-combo-box.js +3 -6
  108. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  109. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +0 -7
  110. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  111. package/fesm2015/taiga-ui-kit-components-files.js +3 -8
  112. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  113. package/fesm2015/taiga-ui-kit-components-filter.js +0 -3
  114. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  115. package/fesm2015/taiga-ui-kit-components-input-copy.js +0 -4
  116. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  117. package/fesm2015/taiga-ui-kit-components-input-date-time.js +87 -17
  118. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  119. package/fesm2015/taiga-ui-kit-components-input-date.js +14 -17
  120. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  121. package/fesm2015/taiga-ui-kit-components-input-files.js +2 -10
  122. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  123. package/fesm2015/taiga-ui-kit-components-input-number.js +1 -1
  124. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  125. package/fesm2015/taiga-ui-kit-components-input-range.js +0 -8
  126. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  127. package/fesm2015/taiga-ui-kit-components-input-slider.js +0 -4
  128. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  129. package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
  130. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  131. package/fesm2015/taiga-ui-kit-components-input.js +0 -1
  132. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  133. package/fesm2015/taiga-ui-kit-components-line-clamp.js +0 -4
  134. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  135. package/fesm2015/taiga-ui-kit-components-multi-select.js +7 -4
  136. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  137. package/fesm2015/taiga-ui-kit-components-pagination.js +0 -7
  138. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  139. package/fesm2015/taiga-ui-kit-components-radio-block.js +6 -5
  140. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  141. package/fesm2015/taiga-ui-kit-components-radio-list.js +0 -3
  142. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  143. package/fesm2015/taiga-ui-kit-components-range.js +1 -1
  144. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  145. package/fesm2015/taiga-ui-kit-components-select.js +0 -1
  146. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  147. package/fesm2015/taiga-ui-kit-components-tabs.js +0 -8
  148. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  149. package/fesm2015/taiga-ui-kit-components-tag.js +2 -6
  150. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  151. package/fesm2015/taiga-ui-kit-pipes-field-error.js +20 -8
  152. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  153. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-avatar.js","sources":["../../../projects/kit/components/avatar/avatar-options.ts","../../../projects/kit/components/avatar/avatar.component.ts","../../../projects/kit/components/avatar/avatar.template.html","../../../projects/kit/components/avatar/avatar.module.ts","../../../projects/kit/components/avatar/taiga-ui-kit-components-avatar.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiSizeXXL, TuiSizeXXS} from '@taiga-ui/core';\n\nexport interface TuiAvatarOptions {\n readonly size: TuiSizeXXL | TuiSizeXXS;\n readonly autoColor: boolean;\n readonly rounded: boolean;\n}\n\n/** Default values for the avatar options. */\nexport const TUI_AVATAR_DEFAULT_OPTIONS: TuiAvatarOptions = {\n size: `m`,\n autoColor: false,\n rounded: false,\n};\n\n/**\n * Default parameters for avatar component\n */\nexport const TUI_AVATAR_OPTIONS = new InjectionToken<TuiAvatarOptions>(\n `[TUI_AVATAR_OPTIONS]`,\n {\n factory: () => TUI_AVATAR_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiAvatarOptionsProvider: (\n options: Partial<TuiAvatarOptions>,\n) => ValueProvider = (options: Partial<TuiAvatarOptions>) => ({\n provide: TUI_AVATAR_OPTIONS,\n useValue: {...TUI_AVATAR_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {SafeResourceUrl} from '@angular/platform-browser';\nimport {tuiDefaultProp, tuiIsString, tuiRequiredSetter} from '@taiga-ui/cdk';\nimport {tuiSizeBigger} from '@taiga-ui/core';\nimport {tuiStringHashToHsl} from '@taiga-ui/kit/utils/format';\n\nimport {TUI_AVATAR_OPTIONS, TuiAvatarOptions} from './avatar-options';\n\n@Component({\n selector: 'tui-avatar',\n templateUrl: './avatar.template.html',\n styleUrls: ['./avatar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiAvatarComponent {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size = this.options.size;\n\n @Input('avatarUrl')\n @tuiRequiredSetter()\n set avatarUrlSetter(avatarUrl: SafeResourceUrl | string | null) {\n this.avatarUrl = avatarUrl;\n this.isUrlValid = !!avatarUrl && !this.iconAvatar;\n }\n\n @Input()\n @tuiDefaultProp()\n text = '';\n\n @Input()\n @tuiDefaultProp()\n autoColor: boolean = this.options.autoColor;\n\n @Input()\n @HostBinding('class._rounded')\n @tuiDefaultProp()\n rounded: boolean = this.options.rounded;\n\n avatarUrl: SafeResourceUrl | string | null = null;\n\n isUrlValid = false;\n\n constructor(@Inject(TUI_AVATAR_OPTIONS) private readonly options: TuiAvatarOptions) {}\n\n @HostBinding('style.background')\n get bgColor(): string {\n return this.autoColor ? tuiStringHashToHsl(this.text) : '';\n }\n\n @HostBinding('class._has-avatar')\n get hasAvatar(): boolean {\n return this.avatarUrl !== null && this.isUrlValid;\n }\n\n get iconAvatar(): boolean {\n return tuiIsString(this.avatarUrl) && !!this.avatarUrl?.startsWith('tuiIcon');\n }\n\n get computedText(): string {\n if (this.hasAvatar || this.iconAvatar || this.text === '') {\n return '';\n }\n\n const words = this.text.split(' ');\n\n return words.length > 1 && tuiSizeBigger(this.size)\n ? words[0].slice(0, 1) + words[1].slice(0, 1)\n : words[0].slice(0, 1);\n }\n\n get stringAvatar(): string {\n return this.iconAvatar ? String(this.avatarUrl) : '';\n }\n\n onError(): void {\n this.isUrlValid = false;\n }\n}\n","<!-- eslint-disable @html-eslint/require-img-alt -->\n<img\n *ngIf=\"isUrlValid\"\n loading=\"lazy\"\n class=\"t-image\"\n [attr.alt]=\"text\"\n [src]=\"avatarUrl || ''\"\n (error)=\"onError()\"\n/>\n<tui-svg\n *ngIf=\"stringAvatar\"\n class=\"t-icon\"\n [src]=\"stringAvatar\"\n></tui-svg>\n<span class=\"t-text\">{{ computedText }}</span>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {TuiLazyLoadingModule} from '@taiga-ui/kit/directives';\n\nimport {TuiAvatarComponent} from './avatar.component';\n\n@NgModule({\n imports: [CommonModule, TuiLazyLoadingModule, TuiSvgModule],\n declarations: [TuiAvatarComponent],\n exports: [TuiAvatarComponent],\n})\nexport class TuiAvatarModule {}\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-kit-components-avatar.js","sources":["../../../projects/kit/components/avatar/avatar-options.ts","../../../projects/kit/components/avatar/avatar.component.ts","../../../projects/kit/components/avatar/avatar.template.html","../../../projects/kit/components/avatar/avatar.module.ts","../../../projects/kit/components/avatar/taiga-ui-kit-components-avatar.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiSizeXXL, TuiSizeXXS} from '@taiga-ui/core';\n\nexport interface TuiAvatarOptions {\n readonly size: TuiSizeXXL | TuiSizeXXS;\n readonly autoColor: boolean;\n readonly rounded: boolean;\n}\n\n/** Default values for the avatar options. */\nexport const TUI_AVATAR_DEFAULT_OPTIONS: TuiAvatarOptions = {\n size: `m`,\n autoColor: false,\n rounded: false,\n};\n\n/**\n * Default parameters for avatar component\n */\nexport const TUI_AVATAR_OPTIONS = new InjectionToken<TuiAvatarOptions>(\n `[TUI_AVATAR_OPTIONS]`,\n {\n factory: () => TUI_AVATAR_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiAvatarOptionsProvider: (\n options: Partial<TuiAvatarOptions>,\n) => ValueProvider = (options: Partial<TuiAvatarOptions>) => ({\n provide: TUI_AVATAR_OPTIONS,\n useValue: {...TUI_AVATAR_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {SafeHtml, SafeResourceUrl} from '@angular/platform-browser';\nimport {tuiDefaultProp, tuiIsString, tuiPure, tuiRequiredSetter} from '@taiga-ui/cdk';\nimport {tuiSizeBigger, TuiSizeXXL, TuiSizeXXS} from '@taiga-ui/core';\nimport {tuiStringHashToHsl} from '@taiga-ui/kit/utils/format';\n\nimport {TUI_AVATAR_OPTIONS, TuiAvatarOptions} from './avatar-options';\n\n@Component({\n selector: 'tui-avatar',\n templateUrl: './avatar.template.html',\n styleUrls: ['./avatar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiAvatarComponent {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size = this.options.size;\n\n @Input('avatarUrl')\n @tuiRequiredSetter()\n set avatarUrlSetter(avatarUrl: SafeResourceUrl | string | null) {\n this.avatarUrl = avatarUrl;\n this.isUrlValid = !!avatarUrl && !this.iconAvatar;\n }\n\n @Input()\n @tuiDefaultProp()\n text = '';\n\n @Input()\n @tuiDefaultProp()\n fallback: SafeHtml | string | null = null;\n\n @Input()\n @tuiDefaultProp()\n autoColor: boolean = this.options.autoColor;\n\n @Input()\n @HostBinding('class._rounded')\n @tuiDefaultProp()\n rounded: boolean = this.options.rounded;\n\n avatarUrl: SafeResourceUrl | string | null = null;\n\n isUrlValid = false;\n\n constructor(@Inject(TUI_AVATAR_OPTIONS) private readonly options: TuiAvatarOptions) {}\n\n @HostBinding('style.background')\n get bgColor(): string {\n return this.autoColor ? tuiStringHashToHsl(this.text) : '';\n }\n\n @HostBinding('class._has-avatar')\n get hasAvatar(): boolean {\n return this.avatarUrl !== null && this.isUrlValid;\n }\n\n get iconAvatar(): boolean {\n return tuiIsString(this.avatarUrl) && !!this.avatarUrl?.startsWith('tuiIcon');\n }\n\n get useFallback(): boolean {\n return (\n !!this.fallback && !!this.avatarUrl && !this.isUrlValid && !this.text.length\n );\n }\n\n get computedText(): string {\n return this.hasAvatar || this.iconAvatar || this.text === ''\n ? ''\n : this.getSlicedText(this.text, this.size);\n }\n\n get stringAvatar(): string {\n return this.iconAvatar ? String(this.avatarUrl) : '';\n }\n\n onError(): void {\n this.isUrlValid = false;\n }\n\n @tuiPure\n private getSlicedText(text: string, size: TuiSizeXXL | TuiSizeXXS): string {\n const words = text.split(' ');\n\n return words.length > 1 && tuiSizeBigger(size)\n ? words[0].slice(0, 1) + words[1].slice(0, 1)\n : words[0].slice(0, 1);\n }\n}\n","<!-- eslint-disable @html-eslint/require-img-alt -->\n<img\n *ngIf=\"isUrlValid\"\n loading=\"lazy\"\n class=\"t-image\"\n [attr.alt]=\"text\"\n [src]=\"avatarUrl || ''\"\n (error)=\"onError()\"\n/>\n<tui-svg\n *ngIf=\"useFallback\"\n class=\"t-icon\"\n [src]=\"fallback!\"\n></tui-svg>\n<tui-svg\n *ngIf=\"stringAvatar\"\n class=\"t-icon\"\n [src]=\"stringAvatar\"\n></tui-svg>\n<span class=\"t-text\">{{ computedText }}</span>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {TuiLazyLoadingModule} from '@taiga-ui/kit/directives';\n\nimport {TuiAvatarComponent} from './avatar.component';\n\n@NgModule({\n imports: [CommonModule, TuiLazyLoadingModule, TuiSvgModule],\n declarations: [TuiAvatarComponent],\n exports: [TuiAvatarComponent],\n})\nexport class TuiAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Component, ChangeDetectionStrategy, Inject, Input, HostBinding, NgModule } from '@angular/core';
4
- import { tuiIsNumber, tuiDefaultProp } from '@taiga-ui/cdk';
4
+ import { tuiIsNumber, tuiIsPresent, tuiDefaultProp } from '@taiga-ui/cdk';
5
5
  import { TUI_MODE, MODE_PROVIDER } from '@taiga-ui/core';
6
6
  import * as i1 from 'rxjs';
7
7
  import { CommonModule } from '@angular/common';
@@ -9,7 +9,6 @@ import { CommonModule } from '@angular/common';
9
9
  class TuiBadgeComponent {
10
10
  constructor(mode$) {
11
11
  this.mode$ = mode$;
12
- this.value = '';
13
12
  this.size = 'm';
14
13
  this.status = 'default';
15
14
  this.hoverable = false;
@@ -27,10 +26,10 @@ class TuiBadgeComponent {
27
26
  if (tuiIsNumber(value) && value > 99) {
28
27
  return '99+';
29
28
  }
30
- return String(this.value);
29
+ return tuiIsPresent(this.value) ? String(this.value) : '';
31
30
  }
32
31
  get isEmpty() {
33
- return this.value === '';
32
+ return !this.value && this.value !== 0;
34
33
  }
35
34
  titleText({ offsetWidth, scrollWidth }) {
36
35
  return offsetWidth < scrollWidth ? this.outputValue : '';
@@ -38,9 +37,6 @@ class TuiBadgeComponent {
38
37
  }
39
38
  TuiBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBadgeComponent, deps: [{ token: TUI_MODE }], target: i0.ɵɵFactoryTarget.Component });
40
39
  TuiBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiBadgeComponent, selector: "tui-badge", inputs: { value: "value", size: "size", status: "status", hoverable: "hoverable" }, host: { listeners: { "$.data-mode.attr": "mode$" }, properties: { "attr.data-size": "this.size", "attr.data-status": "this.status", "class._hoverable": "this.hoverable", "attr.data-padding": "this.padding", "class._empty-value": "this.isEmpty" } }, providers: [MODE_PROVIDER], ngImport: i0, template: "<span class=\"t-left-content\">\n <ng-content></ng-content>\n</span>\n<span\n #text\n class=\"t-text\"\n [title]=\"titleText(text)\"\n (mouseenter)=\"(0)\"\n>\n {{ outputValue }}\n</span>\n", styles: [":host{transition-property:background-color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--left-content-color: currentColor;position:relative;display:inline-flex;font:var(--tui-font-text-s);align-items:center;justify-content:center;box-sizing:border-box;color:var(--tui-base-01);border-radius:6.25rem;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%}:host:after{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:\"\";box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:hover[data-status=custom]:after,:host._hoverable:active[data-status=custom]:after{background-color:var(--tui-clear)}:host[data-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-status=error]{--left-content-color: var(--tui-error-fill);background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-status=error]._hoverable:hover,:host[data-status=error]._hoverable:active{background-color:var(--tui-error-bg-hover)}:host[data-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-status=error][data-mode=onDark]._hoverable:hover,:host[data-status=error][data-mode=onDark]._hoverable:active{background-color:var(--tui-error-bg-night-hover)}:host[data-status=success]{--left-content-color: var(--tui-success-fill);background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-status=success]._hoverable:hover,:host[data-status=success]._hoverable:active{background-color:var(--tui-success-bg-hover)}:host[data-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-status=success][data-mode=onDark]._hoverable:hover,:host[data-status=success][data-mode=onDark]._hoverable:active{background-color:var(--tui-success-bg-night-hover)}:host[data-status=warning]{--left-content-color: var(--tui-warning-fill);background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-status=warning]._hoverable:hover,:host[data-status=warning]._hoverable:active{background-color:var(--tui-warning-bg-hover)}:host[data-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-status=warning][data-mode=onDark]._hoverable:hover,:host[data-status=warning][data-mode=onDark]._hoverable:active{background-color:var(--tui-warning-bg-night-hover)}:host[data-status=info]{--left-content-color: var(--tui-info-fill);background-color:var(--tui-info-bg);color:var(--tui-text-01)}:host[data-status=info]._hoverable:hover,:host[data-status=info]._hoverable:active{background-color:var(--tui-info-bg-hover)}:host[data-status=info][data-mode=onDark]{background-color:var(--tui-info-bg-night);color:var(--tui-text-01-night)}:host[data-status=info][data-mode=onDark]._hoverable:hover,:host[data-status=info][data-mode=onDark]._hoverable:active{background-color:var(--tui-info-bg-night-hover)}:host[data-status=neutral]{--left-content-color: var(--tui-neutral-fill);background-color:var(--tui-neutral-bg);color:var(--tui-text-01)}:host[data-status=neutral]._hoverable:hover,:host[data-status=neutral]._hoverable:active{background-color:var(--tui-neutral-bg-hover)}:host[data-status=neutral][data-mode=onDark]{background-color:var(--tui-neutral-bg-night);color:var(--tui-text-01-night)}:host[data-status=neutral][data-mode=onDark]._hoverable:hover,:host[data-status=neutral][data-mode=onDark]._hoverable:active{background-color:var(--tui-neutral-bg-night-hover)}:host[data-status=default]{background-color:var(--tui-base-06)}:host[data-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-status=default][data-mode=onDark]{background-color:var(--tui-clear-inverse-hover)}:host[data-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-active)}:host[data-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._hoverable{cursor:pointer}:host[data-padding=m]{padding:0 .5rem}:host[data-padding=m][data-size=xs]{padding:0 .25rem}:host[data-padding=m][data-size=s]{padding:0 .375rem}:host[data-padding=m][data-size=l]{padding:0 .625rem}:host[data-padding=l]{padding:0 .625rem}:host[data-padding=l][data-size=xs]{padding:0 .375rem}:host[data-padding=l][data-size=s]{padding:0 .5rem}:host[data-padding=l][data-size=l]{padding:0 .75rem}:host[data-size=xs]{font:var(--tui-font-text-xs);height:1rem;min-width:1rem}:host[data-size=xs] .t-left-content:before{width:.34375rem;height:.34375rem}:host[data-size=s]{font:var(--tui-font-text-xs);height:1.25rem;min-width:1.25rem}:host[data-size=s] .t-left-content:before{width:.25rem;height:.25rem}:host[data-size=m]{height:var(--tui-height-xs);line-height:var(--tui-height-xs);min-width:var(--tui-height-xs)}:host[data-size=l]{height:var(--tui-height-s);line-height:var(--tui-height-s);min-width:var(--tui-height-s)}:host[data-size=l] .t-left-content:before{margin:0 .5rem 0 0;width:.5rem;height:.5rem}:host._empty-value .t-left-content{margin:0 -.25rem}:host._empty-value .t-left-content:before{margin:0}.t-left-content{display:none;color:var(--left-content-color);line-height:0}.t-left-content:not(:empty){display:block;margin-left:-.25rem}.t-left-content:not(:empty):before{content:none}:host[data-status=error] .t-left-content,:host[data-status=success] .t-left-content,:host[data-status=warning] .t-left-content,:host[data-status=info] .t-left-content,:host[data-status=neutral] .t-left-content{display:block}.t-left-content:before{content:\"\";display:block;background:currentColor;margin:0 .375rem 0 0;width:.375rem;height:.375rem;border-radius:100%}.t-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
- __decorate([
42
- tuiDefaultProp()
43
- ], TuiBadgeComponent.prototype, "value", void 0);
44
40
  __decorate([
45
41
  tuiDefaultProp()
46
42
  ], TuiBadgeComponent.prototype, "size", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-badge.js","sources":["../../../projects/kit/components/badge/badge.component.ts","../../../projects/kit/components/badge/badge.template.html","../../../projects/kit/components/badge/badge.module.ts","../../../projects/kit/components/badge/taiga-ui-kit-components-badge.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {tuiDefaultProp, tuiIsNumber} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n TUI_MODE,\n TuiBrightness,\n TuiSizeL,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './badge.template.html',\n styleUrls: ['./badge.style.less'],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiBadgeComponent {\n @Input()\n @tuiDefaultProp()\n value: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = 'm';\n\n @Input()\n @HostBinding('attr.data-status')\n @tuiDefaultProp()\n status: TuiStatus = 'default';\n\n @Input()\n @HostBinding('class._hoverable')\n @tuiDefaultProp()\n hoverable = false;\n\n constructor(@Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>) {}\n\n @HostBinding('attr.data-padding')\n get padding(): string {\n if (this.isEmpty) {\n return 'none';\n }\n\n return tuiIsNumber(this.value?.valueOf()) ? 'm' : 'l';\n }\n\n get outputValue(): string {\n const value = this.value?.valueOf();\n\n if (tuiIsNumber(value) && value > 99) {\n return '99+';\n }\n\n return String(this.value);\n }\n\n @HostBinding('class._empty-value')\n get isEmpty(): boolean {\n return this.value === '';\n }\n\n titleText({offsetWidth, scrollWidth}: HTMLElement): string {\n return offsetWidth < scrollWidth ? this.outputValue : '';\n }\n}\n","<span class=\"t-left-content\">\n <ng-content></ng-content>\n</span>\n<span\n #text\n class=\"t-text\"\n [title]=\"titleText(text)\"\n (mouseenter)=\"(0)\"\n>\n {{ outputValue }}\n</span>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {TuiBadgeComponent} from './badge.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiBadgeComponent],\n exports: [TuiBadgeComponent],\n})\nexport class TuiBadgeModule {}\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-kit-components-badge.js","sources":["../../../projects/kit/components/badge/badge.component.ts","../../../projects/kit/components/badge/badge.template.html","../../../projects/kit/components/badge/badge.module.ts","../../../projects/kit/components/badge/taiga-ui-kit-components-badge.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {tuiDefaultProp, tuiIsNumber, tuiIsPresent} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n TUI_MODE,\n TuiBrightness,\n TuiSizeL,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './badge.template.html',\n styleUrls: ['./badge.style.less'],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiBadgeComponent {\n @Input()\n value: PolymorpheusContent;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = 'm';\n\n @Input()\n @HostBinding('attr.data-status')\n @tuiDefaultProp()\n status: TuiStatus = 'default';\n\n @Input()\n @HostBinding('class._hoverable')\n @tuiDefaultProp()\n hoverable = false;\n\n constructor(@Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>) {}\n\n @HostBinding('attr.data-padding')\n get padding(): string {\n if (this.isEmpty) {\n return 'none';\n }\n\n return tuiIsNumber(this.value?.valueOf()) ? 'm' : 'l';\n }\n\n get outputValue(): string {\n const value = this.value?.valueOf();\n\n if (tuiIsNumber(value) && value > 99) {\n return '99+';\n }\n\n return tuiIsPresent(this.value) ? String(this.value) : '';\n }\n\n @HostBinding('class._empty-value')\n get isEmpty(): boolean {\n return !this.value && this.value !== 0;\n }\n\n titleText({offsetWidth, scrollWidth}: HTMLElement): string {\n return offsetWidth < scrollWidth ? this.outputValue : '';\n }\n}\n","<span class=\"t-left-content\">\n <ng-content></ng-content>\n</span>\n<span\n #text\n class=\"t-text\"\n [title]=\"titleText(text)\"\n (mouseenter)=\"(0)\"\n>\n {{ outputValue }}\n</span>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {TuiBadgeComponent} from './badge.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiBadgeComponent],\n exports: [TuiBadgeComponent],\n})\nexport class TuiBadgeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -21,8 +21,6 @@ const BADGE_SIZE = {
21
21
  };
22
22
  class TuiBadgedContentComponent {
23
23
  constructor() {
24
- this.contentTop = '';
25
- this.contentBottom = '';
26
24
  this.size = 'm';
27
25
  this.colorTop = '';
28
26
  this.colorBottom = '';
@@ -59,12 +57,6 @@ class TuiBadgedContentComponent {
59
57
  }
60
58
  TuiBadgedContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBadgedContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
61
59
  TuiBadgedContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiBadgedContentComponent, selector: "tui-badged-content", inputs: { contentTop: "contentTop", contentBottom: "contentBottom", size: "size", colorTop: "colorTop", colorBottom: "colorBottom", rounded: "rounded" }, host: { properties: { "class._with-top": "this.contentTop", "class._with-bottom": "this.contentBottom", "attr.data-size": "this.size", "class._rounded": "this.rounded" } }, ngImport: i0, template: "<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"contentTop\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"contentBottom\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n", styles: [":host{position:relative;display:inline-block;color:var(--tui-base-01)}.t-notification{position:absolute;border-radius:100%;box-shadow:0 0 0 2px currentColor;background-color:currentColor}:host[data-size=xs]:not(._rounded) .t-notification_top,:host[data-size=s]:not(._rounded) .t-notification_top,:host[data-size=m]:not(._rounded) .t-notification_top{top:-.125rem;right:-.125rem}:host[data-size=l]:not(._rounded) .t-notification_top,:host[data-size=xl]:not(._rounded) .t-notification_top{top:-.25rem;right:-.25rem}:host[data-size=xxl]:not(._rounded) .t-notification_top{top:-.5rem;right:-.5rem}:host[data-size=xs]._rounded .t-notification_top{top:0;right:0}:host[data-size=s]._rounded .t-notification_top{top:.0625rem;right:.0625rem}:host[data-size=m]._rounded .t-notification_top{top:.1875rem;right:.1875rem}:host[data-size=l]._rounded .t-notification_top{top:.25rem;right:.25rem}:host[data-size=xl]._rounded .t-notification_top{top:.375rem;right:.375rem}:host[data-size=xxl]._rounded .t-notification_top{top:.5rem;right:.5rem}:host[data-size=m]:not(._rounded) .t-notification_bottom{bottom:-.125rem;right:-.125rem}:host[data-size=l]:not(._rounded) .t-notification_bottom,:host[data-size=xl]:not(._rounded) .t-notification_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl]:not(._rounded) .t-notification_bottom{bottom:-.5rem;right:-.5rem}:host[data-size=m]._rounded .t-notification_bottom{bottom:.1875rem;right:.1875rem}:host[data-size=l]._rounded .t-notification_bottom{bottom:.25rem;right:.25rem}:host[data-size=xl]._rounded .t-notification_bottom{bottom:.375rem;right:.375rem}:host[data-size=xxl]._rounded .t-notification_bottom{bottom:.5rem;right:.5rem}:host[data-size=xs] .t-notification,:host[data-size=s] .t-notification,:host[data-size=m] .t-notification{width:.5rem;height:.5rem}:host[data-size=l] .t-notification{width:.75rem;height:.75rem}:host[data-size=xl] .t-notification{width:1rem;height:1rem}:host[data-size=xxl] .t-notification{width:1.5rem;height:1.5rem}.t-icon{color:var(--tui-success-fill)}:host[data-size=xs] .t-icon{transform:scale(.66666667);margin:-.25rem}:host[data-size=s] .t-icon,:host[data-size=m] .t-icon{width:1.5rem;height:1.5rem;margin:-.125rem}:host[data-size=l] .t-icon,:host[data-size=xl] .t-icon{transform:scale(1.2)}:host[data-size=xxl] .t-icon{transform:scale(1.6)}.t-content{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:6.25rem;overflow:hidden;background-color:currentColor;box-shadow:0 0 0 2px currentColor}:host[data-size=xxl]._with-top:not(._rounded) .t-content_top,:host[data-size=l]._with-top:not(._rounded) .t-content_top{right:-.5rem;top:-.5rem}:host[data-size=xl]._with-top:not(._rounded) .t-content_top{right:-.375rem;top:-.375rem}:host[data-size=m]._with-top:not(._rounded) .t-content_top,:host[data-size=s]._with-top:not(._rounded) .t-content_top,:host[data-size=xs]._with-top:not(._rounded) .t-content_top{right:-.25rem;top:-.25rem}:host[data-size=xxl]._with-top._rounded .t-content_top{right:.25rem;top:.25rem}:host[data-size=xl]._with-top._rounded .t-content_top{right:.125rem;top:.125rem}:host[data-size=l]._with-top._rounded .t-content_top,:host[data-size=m]._with-top._rounded .t-content_top,:host[data-size=s]._with-top._rounded .t-content_top,:host[data-size=xs]._with-top._rounded .t-content_top{right:-.25rem;top:-.25rem}:host[data-size=xxl]._with-bottom:not(._rounded) .t-content_bottom,:host[data-size=l]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.5rem;right:-.5rem}:host[data-size=xl]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.375rem;right:-.375rem}:host[data-size=m]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl]._with-bottom._rounded .t-content_bottom{bottom:.25rem;right:.25rem}:host[data-size=xl]._with-bottom._rounded .t-content_bottom{bottom:.125rem;right:.125rem}:host[data-size=l]._with-bottom._rounded .t-content_bottom,:host[data-size=m]._with-bottom._rounded .t-content_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl] .t-content{height:2rem;min-width:2rem}:host[data-size=xl] .t-content,:host[data-size=l] .t-content{height:1.5rem;min-width:1.5rem}:host[data-size=m] .t-content,:host[data-size=s] .t-content{height:1.25rem;min-width:1.25rem}:host[data-size=xs] .t-content{height:1rem;min-width:1rem}\n"], components: [{ type: i1.TuiBadgeComponent, selector: "tui-badge", inputs: ["value", "size", "status", "hoverable"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
62
- __decorate([
63
- tuiDefaultProp()
64
- ], TuiBadgedContentComponent.prototype, "contentTop", void 0);
65
- __decorate([
66
- tuiDefaultProp()
67
- ], TuiBadgedContentComponent.prototype, "contentBottom", void 0);
68
60
  __decorate([
69
61
  tuiDefaultProp()
70
62
  ], TuiBadgedContentComponent.prototype, "size", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-badged-content.js","sources":["../../../projects/kit/components/badged-content/badged-content.component.ts","../../../projects/kit/components/badged-content/badged-content.template.html","../../../projects/kit/components/badged-content/badged-content.module.ts","../../../projects/kit/components/badged-content/taiga-ui-kit-components-badged-content.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp, tuiIsNumber, tuiIsString, tuiPx} from '@taiga-ui/cdk';\nimport {tuiSizeBigger, TuiSizeL, TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nconst BADGE_SIZE: {[key: string]: TuiSizeL | TuiSizeXS} = {\n xs: 'xs',\n s: 's',\n m: 's',\n l: 'm',\n xl: 'm',\n xxl: 'l',\n};\n\n@Component({\n selector: 'tui-badged-content',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './badged-content.template.html',\n styleUrls: ['./badged-content.style.less'],\n})\nexport class TuiBadgedContentComponent {\n @Input()\n @HostBinding('class._with-top')\n @tuiDefaultProp()\n contentTop: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('class._with-bottom')\n @tuiDefaultProp()\n contentBottom: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorTop = '';\n\n @Input()\n @tuiDefaultProp()\n colorBottom = '';\n\n @Input()\n @HostBinding('class._rounded')\n @tuiDefaultProp()\n rounded = false;\n\n get topNotification(): string {\n return !this.contentTop && this.colorTop ? this.colorTop : '';\n }\n\n get bottomNotification(): string {\n return !this.contentBottom && this.colorBottom ? this.colorBottom : '';\n }\n\n get badgeSize(): TuiSizeL | TuiSizeXS {\n return BADGE_SIZE[this.size];\n }\n\n get badgeHidden(): boolean {\n return this.size === 'xs';\n }\n\n get sizeBig(): boolean {\n return tuiSizeBigger(this.size);\n }\n\n get boxShadow(): string {\n const borderWidth = this.sizeBig ? 3 : 2;\n\n return `0 0 0 ${tuiPx(borderWidth)}`;\n }\n\n contentIsNumber(content: PolymorpheusContent): content is number {\n return tuiIsNumber(content?.valueOf());\n }\n\n contentIsString(content: PolymorpheusContent): content is string {\n return tuiIsString(content?.valueOf());\n }\n\n getStatus(color: string): TuiStatus {\n return color ? 'custom' : 'primary';\n }\n}\n","<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"contentTop\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"contentBottom\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {TuiBadgeModule} from '@taiga-ui/kit/components/badge';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiBadgedContentComponent} from './badged-content.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiSvgModule, TuiBadgeModule],\n declarations: [TuiBadgedContentComponent],\n exports: [TuiBadgedContentComponent],\n})\nexport class TuiBadgedContentModule {}\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-kit-components-badged-content.js","sources":["../../../projects/kit/components/badged-content/badged-content.component.ts","../../../projects/kit/components/badged-content/badged-content.template.html","../../../projects/kit/components/badged-content/badged-content.module.ts","../../../projects/kit/components/badged-content/taiga-ui-kit-components-badged-content.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp, tuiIsNumber, tuiIsString, tuiPx} from '@taiga-ui/cdk';\nimport {tuiSizeBigger, TuiSizeL, TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nconst BADGE_SIZE: {[key: string]: TuiSizeL | TuiSizeXS} = {\n xs: 'xs',\n s: 's',\n m: 's',\n l: 'm',\n xl: 'm',\n xxl: 'l',\n};\n\n@Component({\n selector: 'tui-badged-content',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './badged-content.template.html',\n styleUrls: ['./badged-content.style.less'],\n})\nexport class TuiBadgedContentComponent {\n @Input()\n @HostBinding('class._with-top')\n contentTop: PolymorpheusContent;\n\n @Input()\n @HostBinding('class._with-bottom')\n contentBottom: PolymorpheusContent;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorTop = '';\n\n @Input()\n @tuiDefaultProp()\n colorBottom = '';\n\n @Input()\n @HostBinding('class._rounded')\n @tuiDefaultProp()\n rounded = false;\n\n get topNotification(): string {\n return !this.contentTop && this.colorTop ? this.colorTop : '';\n }\n\n get bottomNotification(): string {\n return !this.contentBottom && this.colorBottom ? this.colorBottom : '';\n }\n\n get badgeSize(): TuiSizeL | TuiSizeXS {\n return BADGE_SIZE[this.size];\n }\n\n get badgeHidden(): boolean {\n return this.size === 'xs';\n }\n\n get sizeBig(): boolean {\n return tuiSizeBigger(this.size);\n }\n\n get boxShadow(): string {\n const borderWidth = this.sizeBig ? 3 : 2;\n\n return `0 0 0 ${tuiPx(borderWidth)}`;\n }\n\n contentIsNumber(content: PolymorpheusContent): content is number {\n return tuiIsNumber(content?.valueOf());\n }\n\n contentIsString(content: PolymorpheusContent): content is string {\n return tuiIsString(content?.valueOf());\n }\n\n getStatus(color: string): TuiStatus {\n return color ? 'custom' : 'primary';\n }\n}\n","<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"contentTop\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"contentBottom\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {TuiBadgeModule} from '@taiga-ui/kit/components/badge';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiBadgedContentComponent} from './badged-content.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiSvgModule, TuiBadgeModule],\n declarations: [TuiBadgedContentComponent],\n exports: [TuiBadgedContentComponent],\n})\nexport class TuiBadgedContentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAMA,MAAM,UAAU,GAA0C;AACtD,IAAA,EAAE,EAAE,IAAI;AACR,IAAA,CAAC,EAAE,GAAG;AACN,IAAA,CAAC,EAAE,GAAG;AACN,IAAA,CAAC,EAAE,GAAG;AACN,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,GAAG,EAAE,GAAG;CACX,CAAC;MAQW,yBAAyB,CAAA;AANtC,IAAA,WAAA,GAAA;QAkBI,IAAI,CAAA,IAAA,GAA2B,GAAG,CAAC;QAInC,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;QAId,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAKjB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAuCnB,KAAA;AArCG,IAAA,IAAI,eAAe,GAAA;AACf,QAAA,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACjE;AAED,IAAA,IAAI,kBAAkB,GAAA;AAClB,QAAA,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;KAC1E;AAED,IAAA,IAAI,SAAS,GAAA;AACT,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChC;AAED,IAAA,IAAI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;KAC7B;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACnC;AAED,IAAA,IAAI,SAAS,GAAA;AACT,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;AAEzC,QAAA,OAAO,SAAS,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;KACxC;AAED,IAAA,eAAe,CAAC,OAA4B,EAAA;QACxC,OAAO,WAAW,CAAC,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,CAAE,OAAO,EAAE,CAAC,CAAC;KAC1C;AAED,IAAA,eAAe,CAAC,OAA4B,EAAA;QACxC,OAAO,WAAW,CAAC,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,CAAE,OAAO,EAAE,CAAC,CAAC;KAC1C;AAED,IAAA,SAAS,CAAC,KAAa,EAAA;QACnB,OAAO,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;KACvC;;uHA/DQ,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,iYCrBtC,osDA2DA,EAAA,MAAA,EAAA,CAAA,utIAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,KAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;AD1BI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACkB,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAInC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACH,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAId,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACA,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAKjB,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACD,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAzBP,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,WAAW,EAAE,gCAAgC;oBAC7C,SAAS,EAAE,CAAC,6BAA6B,CAAC;AAC7C,iBAAA,CAAA;8BAIG,UAAU,EAAA,CAAA;sBAFT,KAAK;;sBACL,WAAW;uBAAC,iBAAiB,CAAA;gBAK9B,aAAa,EAAA,CAAA;sBAFZ,KAAK;;sBACL,WAAW;uBAAC,oBAAoB,CAAA;gBAMjC,IAAI,EAAA,CAAA;sBAHH,KAAK;;sBACL,WAAW;uBAAC,gBAAgB,CAAA;gBAM7B,QAAQ,EAAA,CAAA;sBAFP,KAAK;gBAMN,WAAW,EAAA,CAAA;sBAFV,KAAK;gBAON,OAAO,EAAA,CAAA;sBAHN,KAAK;;sBACL,WAAW;uBAAC,gBAAgB,CAAA;;;ME/BpB,sBAAsB,CAAA;;oHAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;qHAAtB,sBAAsB,EAAA,YAAA,EAAA,CAHhB,yBAAyB,CAAA,EAAA,OAAA,EAAA,CAD9B,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,CAAA,EAAA,OAAA,EAAA,CAE9D,yBAAyB,CAAA,EAAA,CAAA,CAAA;qHAE1B,sBAAsB,EAAA,OAAA,EAAA,CAJtB,CAAC,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,CAAC,CAAA,EAAA,CAAA,CAAA;4FAIhE,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,CAAC;oBACzE,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACvC,iBAAA,CAAA;;;ACZD;;AAEG;;;;"}
@@ -50,10 +50,10 @@ class TuiCheckboxBlockComponent extends AbstractTuiNullableControl {
50
50
  }
51
51
  }
52
52
  TuiCheckboxBlockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiCheckboxBlockComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TuiModeDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
53
- TuiCheckboxBlockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCheckboxBlockComponent, selector: "tui-checkbox-block", inputs: { contentAlign: "contentAlign", hideCheckbox: "hideCheckbox", size: "size" }, host: { properties: { "attr.data-align": "this.contentAlign", "class._hidden_checkbox": "this.hideCheckbox", "attr.data-size": "this.size", "class._active": "this.checked" } }, providers: [
53
+ TuiCheckboxBlockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCheckboxBlockComponent, selector: "tui-checkbox-block", inputs: { contentAlign: "contentAlign", hideCheckbox: "hideCheckbox", size: "size" }, host: { properties: { "attr.data-align": "this.contentAlign", "class._hidden_input": "this.hideCheckbox", "attr.data-size": "this.size", "class._active": "this.checked" } }, providers: [
54
54
  tuiAsFocusableItemAccessor(TuiCheckboxBlockComponent),
55
55
  tuiAsControl(TuiCheckboxBlockComponent),
56
- ], viewQueries: [{ propertyName: "checkbox", first: true, predicate: TuiCheckboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<label class=\"t-wrapper\">\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n >\n <div class=\"t-content-wrapper\">\n <div class=\"t-content\">\n <tui-checkbox\n class=\"t-view\"\n [disabled]=\"computedDisabled || readOnly\"\n [nativeId]=\"nativeId\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"false\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [size]=\"checkboxSize\"\n [focusable]=\"focusable\"\n [(ngModel)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n (focusVisibleChange)=\"onFocusVisible($event)\"\n ></tui-checkbox>\n <div class=\"t-label\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</label>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);display:inline-block;vertical-align:top;border-radius:var(--tui-radius-m)}:host[data-size=m],:host[data-size=l]{font:var(--tui-font-text-m)}:host._disabled,:host._readonly{pointer-events:none}.t-wrapper{position:relative;border-radius:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.t-content-wrapper{display:flex;flex-direction:column}:host[data-size=s] .t-content-wrapper{min-height:var(--tui-height-s)}:host[data-size=m] .t-content-wrapper{min-height:var(--tui-height-m)}:host[data-size=l] .t-content-wrapper{min-height:var(--tui-height-l)}.t-content{display:flex;align-items:center;min-height:inherit}:host[data-align=right] .t-content{flex-direction:row-reverse}:host[data-size=s] .t-content{padding:0 1rem 0 .5rem}:host[data-size=s][data-align=right] .t-content{padding:0 .5rem 0 1rem}:host[data-size=s]._hidden_checkbox .t-content{padding:0 1rem}:host[data-size=m] .t-content{padding:0 1rem 0 .75rem}:host[data-size=m][data-align=right] .t-content{padding:0 .75rem 0 1rem}:host[data-size=m]._hidden_checkbox .t-content{padding:0 1.5rem}:host[data-size=l] .t-content{padding:0 1rem}:host[data-size=l]._hidden_checkbox .t-content{padding:0 2.25rem}.t-view{margin-top:.75rem;margin-right:.75rem;align-self:flex-start}:host[data-align=right] .t-view{margin-left:.75rem;margin-right:0}:host[data-size=s] .t-view{margin-top:.5rem;margin-right:.5rem}:host[data-size=s][data-align=right] .t-view{margin-left:.5rem}:host[data-size=m] .t-view{margin-top:.875rem}:host[data-size=l] .t-view{margin-top:1rem}:host._hidden_checkbox .t-view{position:absolute;height:1px;width:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);-webkit-clip-path:inset(0);clip-path:inset(0)}.t-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1}:host._hidden_checkbox .t-label{text-align:center}\n"], components: [{ type: i1.TuiCheckboxComponent, selector: "tui-checkbox", inputs: ["size"] }], directives: [{ type: i2.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
+ ], viewQueries: [{ propertyName: "checkbox", first: true, predicate: TuiCheckboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<label\n tuiWrapper\n class=\"t-wrapper\"\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n>\n <tui-checkbox\n class=\"t-view\"\n [disabled]=\"computedDisabled || readOnly\"\n [nativeId]=\"nativeId\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"false\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [size]=\"checkboxSize\"\n [focusable]=\"focusable\"\n [(ngModel)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n (focusVisibleChange)=\"onFocusVisible($event)\"\n ></tui-checkbox>\n <div class=\"t-label\">\n <ng-content></ng-content>\n </div>\n</label>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);display:inline-block;vertical-align:top;align-items:flex-start;border-radius:var(--tui-radius-m)}:host[data-size=m],:host[data-size=l]{font:var(--tui-font-text-m)}:host._disabled,:host._readonly{pointer-events:none}.t-wrapper{position:relative;display:flex;align-items:inherit;box-sizing:border-box;border-radius:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:0 1rem 0 0}:host[data-align=right] .t-wrapper{flex-direction:row-reverse;padding:0 0 0 1rem}:host[data-size=s] .t-wrapper{min-height:var(--tui-height-s)}:host[data-size=m] .t-wrapper{min-height:var(--tui-height-m)}:host[data-size=l] .t-wrapper{min-height:var(--tui-height-l)}:host[data-size=s]._hidden_input .t-wrapper{padding:0 1rem}:host[data-size=m]._hidden_input .t-wrapper{padding:0 1.5rem}:host[data-size=l]._hidden_input .t-wrapper{padding:0 2.25rem}:host[data-size=s] .t-view{margin:calc(var(--tui-height-s) / 2 - .5rem) .5rem}:host[data-size=m] .t-view{margin:calc(var(--tui-height-m) / 2 - .5rem) .75rem}:host[data-size=l] .t-view{margin:calc(var(--tui-height-l) / 2 - .75rem) 1rem}:host._hidden_input .t-view{position:absolute;height:1px;width:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);-webkit-clip-path:inset(0);clip-path:inset(0)}.t-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1;align-self:center}:host._hidden_input .t-label{text-align:center}\n"], components: [{ type: i1.TuiCheckboxComponent, selector: "tui-checkbox", inputs: ["size"] }], directives: [{ type: i2.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
57
57
  __decorate([
58
58
  tuiDefaultProp()
59
59
  ], TuiCheckboxBlockComponent.prototype, "contentAlign", void 0);
@@ -102,7 +102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
102
102
  type: Input
103
103
  }, {
104
104
  type: HostBinding,
105
- args: ['class._hidden_checkbox']
105
+ args: ['class._hidden_input']
106
106
  }], size: [{
107
107
  type: Input
108
108
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-checkbox-block.js","sources":["../../../projects/kit/components/checkbox-block/checkbox-block.component.ts","../../../projects/kit/components/checkbox-block/checkbox-block.template.html","../../../projects/kit/components/checkbox-block/checkbox-block.module.ts","../../../projects/kit/components/checkbox-block/taiga-ui-kit-components-checkbox-block.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TuiAppearance,\n TuiHorizontalDirection,\n TuiModeDirective,\n TuiSizeL,\n TuiSizeS,\n} from '@taiga-ui/core';\nimport {TuiCheckboxComponent} from '@taiga-ui/kit/components/checkbox';\n\n@Component({\n selector: 'tui-checkbox-block',\n templateUrl: './checkbox-block.template.html',\n styleUrls: ['./checkbox-block.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiCheckboxBlockComponent),\n tuiAsControl(TuiCheckboxBlockComponent),\n ],\n})\nexport class TuiCheckboxBlockComponent\n extends AbstractTuiNullableControl<boolean>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiCheckboxComponent)\n private readonly checkbox?: TuiCheckboxComponent;\n\n @Input()\n @HostBinding('attr.data-align')\n @tuiDefaultProp()\n contentAlign: TuiHorizontalDirection = 'right';\n\n @Input()\n @HostBinding('class._hidden_checkbox')\n @tuiDefaultProp()\n hideCheckbox = false;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeS = 'l';\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Optional()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.checkbox ? this.checkbox.nativeFocusableElement : null;\n }\n\n @HostBinding('class._active')\n get checked(): boolean {\n return this.value !== false && this.hideCheckbox;\n }\n\n get checkboxSize(): TuiSizeL {\n return this.size === 'l' ? 'l' : 'm';\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get appearance(): TuiAppearance {\n if (!this.modeDirective?.mode) {\n return this.checked\n ? TuiAppearance.WhiteblockActive\n : TuiAppearance.Whiteblock;\n }\n\n return this.checked ? TuiAppearance.Primary : TuiAppearance.Secondary;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onFocusVisible(focusVisible: boolean): void {\n this.updateFocusVisible(focusVisible);\n }\n\n /** @deprecated use 'value' setter */\n onModelChange(value: boolean): void {\n this.value = value;\n }\n}\n","<label class=\"t-wrapper\">\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n >\n <div class=\"t-content-wrapper\">\n <div class=\"t-content\">\n <tui-checkbox\n class=\"t-view\"\n [disabled]=\"computedDisabled || readOnly\"\n [nativeId]=\"nativeId\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"false\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [size]=\"checkboxSize\"\n [focusable]=\"focusable\"\n [(ngModel)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n (focusVisibleChange)=\"onFocusVisible($event)\"\n ></tui-checkbox>\n <div class=\"t-label\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</label>\n","import {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiHoveredModule, TuiPressedModule} from '@taiga-ui/cdk';\nimport {TuiWrapperModule} from '@taiga-ui/core';\nimport {TuiCheckboxModule} from '@taiga-ui/kit/components/checkbox';\n\nimport {TuiCheckboxBlockComponent} from './checkbox-block.component';\n\n@NgModule({\n imports: [\n FormsModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiCheckboxModule,\n TuiWrapperModule,\n ],\n declarations: [TuiCheckboxBlockComponent],\n exports: [TuiCheckboxBlockComponent],\n})\nexport class TuiCheckboxBlockModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAwCM,MAAO,yBACT,SAAQ,0BAAmC,CAAA;AAqB3C,IAAA,WAAA,CAII,OAAyB,EACE,GAAsB,EAGhC,aAAsC,EAAA;AAEvD,QAAA,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAFH,IAAa,CAAA,aAAA,GAAb,aAAa,CAAyB;QApB3D,IAAY,CAAA,YAAA,GAA2B,OAAO,CAAC;QAK/C,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QAKrB,IAAI,CAAA,IAAA,GAAwB,GAAG,CAAC;KAa/B;AAED,IAAA,IAAI,sBAAsB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,sBAAsB,GAAG,IAAI,CAAC;KACtE;AAED,IAAA,IACI,OAAO,GAAA;QACP,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;KACpD;AAED,IAAA,IAAI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,IAAI,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACxC;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,OAAO,kBAAkB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;KAC1D;AAED,IAAA,IAAI,UAAU,GAAA;;QACV,IAAI,EAAC,CAAA,EAAA,GAAA,IAAI,CAAC,aAAa,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAA,EAAE;YAC3B,OAAO,IAAI,CAAC,OAAO;kBACd,mBAAA;AACD,gDAA2B;AAClC,SAAA;QAED,OAAO,IAAI,CAAC,OAAO,GAAyB,SAAA,6CAA0B;KACzE;AAED,IAAA,SAAS,CAAC,OAAgB,EAAA;AACtB,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;KAC/B;AAED,IAAA,cAAc,CAAC,YAAqB,EAAA;AAChC,QAAA,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;KACzC;;AAGD,IAAA,aAAa,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACtB;;AAzEQ,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,EAyBtB,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,SAAS,EAET,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,iBAAiB,aAEjB,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA7BnB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,EALvB,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,wBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,eAAA,EAAA,cAAA,EAAA,EAAA,EAAA,SAAA,EAAA;QACP,0BAA0B,CAAC,yBAAyB,CAAC;QACrD,YAAY,CAAC,yBAAyB,CAAC;KAC1C,EAMU,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,oBAAoB,uEC5CnC,6sCAiCA,EAAA,MAAA,EAAA,CAAA,43DAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADiBI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAC8B,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAK/C,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACI,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAKrB,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACe,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FApBvB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAVrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,WAAW,EAAE,gCAAgC;oBAC7C,SAAS,EAAE,CAAC,6BAA6B,CAAC;oBAC1C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACP,wBAAA,0BAA0B,CAA2B,yBAAA,CAAA;AACrD,wBAAA,YAAY,CAA2B,yBAAA,CAAA;AAC1C,qBAAA;AACJ,iBAAA,CAAA;;0BAwBQ,QAAQ;;0BACR,IAAI;;0BACJ,MAAM;2BAAC,SAAS,CAAA;;0BAEhB,MAAM;2BAAC,iBAAiB,CAAA;;0BACxB,QAAQ;;0BACR,MAAM;2BAAC,gBAAgB,CAAA;4CAxBX,QAAQ,EAAA,CAAA;sBADxB,SAAS;uBAAC,oBAAoB,CAAA;gBAM/B,YAAY,EAAA,CAAA;sBAHX,KAAK;;sBACL,WAAW;uBAAC,iBAAiB,CAAA;gBAO9B,YAAY,EAAA,CAAA;sBAHX,KAAK;;sBACL,WAAW;uBAAC,wBAAwB,CAAA;gBAOrC,IAAI,EAAA,CAAA;sBAHH,KAAK;;sBACL,WAAW;uBAAC,gBAAgB,CAAA;gBAsBzB,OAAO,EAAA,CAAA;sBADV,WAAW;uBAAC,eAAe,CAAA;;;ME5DnB,sBAAsB,CAAA;;oHAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;qHAAtB,sBAAsB,EAAA,YAAA,EAAA,CAHhB,yBAAyB,CAAA,EAAA,OAAA,EAAA,CANpC,WAAW;QACX,gBAAgB;QAChB,gBAAgB;QAChB,iBAAiB;AACjB,QAAA,gBAAgB,aAGV,yBAAyB,CAAA,EAAA,CAAA,CAAA;AAE1B,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EAVtB,OAAA,EAAA,CAAA;YACL,WAAW;YACX,gBAAgB;YAChB,gBAAgB;YAChB,iBAAiB;YACjB,gBAAgB;AACnB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAIQ,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAXlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,WAAW;wBACX,gBAAgB;wBAChB,gBAAgB;wBAChB,iBAAiB;wBACjB,gBAAgB;AACnB,qBAAA;oBACD,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACvC,iBAAA,CAAA;;;AClBD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-checkbox-block.js","sources":["../../../projects/kit/components/checkbox-block/checkbox-block.component.ts","../../../projects/kit/components/checkbox-block/checkbox-block.template.html","../../../projects/kit/components/checkbox-block/checkbox-block.module.ts","../../../projects/kit/components/checkbox-block/taiga-ui-kit-components-checkbox-block.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TuiAppearance,\n TuiHorizontalDirection,\n TuiModeDirective,\n TuiSizeL,\n TuiSizeS,\n} from '@taiga-ui/core';\nimport {TuiCheckboxComponent} from '@taiga-ui/kit/components/checkbox';\n\n@Component({\n selector: 'tui-checkbox-block',\n templateUrl: './checkbox-block.template.html',\n styleUrls: ['./checkbox-block.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiCheckboxBlockComponent),\n tuiAsControl(TuiCheckboxBlockComponent),\n ],\n})\nexport class TuiCheckboxBlockComponent\n extends AbstractTuiNullableControl<boolean>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiCheckboxComponent)\n private readonly checkbox?: TuiCheckboxComponent;\n\n @Input()\n @HostBinding('attr.data-align')\n @tuiDefaultProp()\n contentAlign: TuiHorizontalDirection = 'right';\n\n @Input()\n @HostBinding('class._hidden_input')\n @tuiDefaultProp()\n hideCheckbox = false;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeS = 'l';\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Optional()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.checkbox ? this.checkbox.nativeFocusableElement : null;\n }\n\n @HostBinding('class._active')\n get checked(): boolean {\n return this.value !== false && this.hideCheckbox;\n }\n\n get checkboxSize(): TuiSizeL {\n return this.size === 'l' ? 'l' : 'm';\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get appearance(): TuiAppearance {\n if (!this.modeDirective?.mode) {\n return this.checked\n ? TuiAppearance.WhiteblockActive\n : TuiAppearance.Whiteblock;\n }\n\n return this.checked ? TuiAppearance.Primary : TuiAppearance.Secondary;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onFocusVisible(focusVisible: boolean): void {\n this.updateFocusVisible(focusVisible);\n }\n\n /** @deprecated use 'value' setter */\n onModelChange(value: boolean): void {\n this.value = value;\n }\n}\n","<label\n tuiWrapper\n class=\"t-wrapper\"\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n>\n <tui-checkbox\n class=\"t-view\"\n [disabled]=\"computedDisabled || readOnly\"\n [nativeId]=\"nativeId\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"false\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [size]=\"checkboxSize\"\n [focusable]=\"focusable\"\n [(ngModel)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n (focusVisibleChange)=\"onFocusVisible($event)\"\n ></tui-checkbox>\n <div class=\"t-label\">\n <ng-content></ng-content>\n </div>\n</label>\n","import {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiHoveredModule, TuiPressedModule} from '@taiga-ui/cdk';\nimport {TuiWrapperModule} from '@taiga-ui/core';\nimport {TuiCheckboxModule} from '@taiga-ui/kit/components/checkbox';\n\nimport {TuiCheckboxBlockComponent} from './checkbox-block.component';\n\n@NgModule({\n imports: [\n FormsModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiCheckboxModule,\n TuiWrapperModule,\n ],\n declarations: [TuiCheckboxBlockComponent],\n exports: [TuiCheckboxBlockComponent],\n})\nexport class TuiCheckboxBlockModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -24,11 +24,9 @@ class TuiComboBoxComponent extends AbstractTuiNullableControl {
24
24
  this.stringify = this.itemsHandlers.stringify;
25
25
  this.strictMatcher = TUI_STRICT_MATCHER;
26
26
  this.identityMatcher = this.itemsHandlers.identityMatcher;
27
- this.valueContent = '';
28
27
  this.strict = true;
29
28
  this.search = null;
30
29
  this.searchChange = new EventEmitter();
31
- this.datalist = '';
32
30
  this.open = false;
33
31
  }
34
32
  get arrow() {
@@ -62,11 +60,13 @@ class TuiComboBoxComponent extends AbstractTuiNullableControl {
62
60
  this.updateSearch(null);
63
61
  }
64
62
  handleOption(item) {
65
- this.setNativeValue(this.stringify(item));
66
63
  this.focusInput();
67
64
  this.close();
68
65
  this.updateSearch(null);
69
66
  this.value = item;
67
+ if (this.value) {
68
+ this.setNativeValue(this.stringify(item));
69
+ }
70
70
  }
71
71
  onFieldKeyDownEnter(event) {
72
72
  var _a;
@@ -144,9 +144,6 @@ __decorate([
144
144
  __decorate([
145
145
  tuiDefaultProp()
146
146
  ], TuiComboBoxComponent.prototype, "identityMatcher", void 0);
147
- __decorate([
148
- tuiDefaultProp()
149
- ], TuiComboBoxComponent.prototype, "valueContent", void 0);
150
147
  __decorate([
151
148
  tuiDefaultProp()
152
149
  ], TuiComboBoxComponent.prototype, "strict", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-combo-box.js","sources":["../../../projects/kit/components/combo-box/combo-box.component.ts","../../../projects/kit/components/combo-box/combo-box.template.html","../../../projects/kit/components/combo-box/combo-box.directive.ts","../../../projects/kit/components/combo-box/combo-box-strict.directive.ts","../../../projects/kit/components/combo-box/combo-box.module.ts","../../../projects/kit/components/combo-box/taiga-ui-kit-components-combo-box.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n TUI_STRICT_MATCHER,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n tuiIsPresent,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListAccessor,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeM,\n TuiSizeS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TUI_ARROW_MODE, TuiArrowMode} from '@taiga-ui/kit/components/arrow';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-combo-box',\n templateUrl: './combo-box.template.html',\n styleUrls: ['./combo-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiComboBoxComponent),\n tuiAsDataListHost(TuiComboBoxComponent),\n tuiAsControl(TuiComboBoxComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiComboBoxComponent<T>\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor, TuiDataListHost<T>\n{\n @ContentChild(TUI_DATA_LIST_ACCESSOR as any)\n private readonly accessor?: TuiDataListAccessor<T>;\n\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n stringify: TuiItemsHandlers<T>['stringify'] = this.itemsHandlers.stringify;\n\n @Input()\n @tuiDefaultProp()\n strictMatcher: TuiStringMatcher<T> = TUI_STRICT_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiItemsHandlers<T>['identityMatcher'] =\n this.itemsHandlers.identityMatcher;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiValueContentContext<T>> = '';\n\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n @Input()\n @tuiDefaultProp()\n search: string | null = null;\n\n @Output()\n readonly searchChange = new EventEmitter<string | null>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent<\n TuiContextWithImplicit<TuiActiveZoneDirective>\n > = '';\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_ARROW_MODE)\n private readonly arrowMode: TuiArrowMode,\n @Inject(TUI_ITEMS_HANDLERS)\n private readonly itemsHandlers: TuiItemsHandlers<T>,\n ) {\n super(control, cdr);\n }\n\n get arrow(): PolymorpheusContent<\n TuiContextWithImplicit<TuiSizeL | TuiSizeM | TuiSizeS>\n > {\n return !this.interactive ? this.arrowMode.disabled : this.arrowMode.interactive;\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield?.nativeFocusableElement ?? null;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get nativeValue(): string {\n return this.value === null ? this.search || '' : this.stringify(this.value);\n }\n\n get showValueTemplate(): boolean {\n return tuiIsPresent(this.value) && !this.focused;\n }\n\n get computedContent(): PolymorpheusContent<TuiValueContentContext<T>> {\n return this.valueContent || this.nativeValue;\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n checkOption(option: T): void {\n if (!this.isStrictMatch(option)) {\n return;\n }\n\n this.value = option;\n this.updateSearch(null);\n }\n\n handleOption(item: T): void {\n this.setNativeValue(this.stringify(item));\n this.focusInput();\n this.close();\n this.updateSearch(null);\n this.value = item;\n }\n\n onFieldKeyDownEnter(event: Event): void {\n if (this.open) {\n event.preventDefault();\n }\n\n const options = this.accessor?.getOptions() || [];\n\n if (options.length !== 1) {\n return;\n }\n\n this.value = options[0];\n this.updateSearch(null);\n this.close();\n }\n\n onValueChange(value: string): void {\n this.updateSearch(value);\n\n const match = this.accessor?.getOptions().find(item => this.isStrictMatch(item));\n\n if (match !== undefined) {\n this.value = match;\n this.updateSearch(null);\n\n return;\n }\n\n if (this.strict || this.search === '') {\n this.value = null;\n }\n\n this.hostedDropdown?.updateOpen(true);\n }\n\n /** @deprecated use 'value' setter */\n override updateValue(value: T | null): void {\n super.updateValue(value);\n }\n\n toggle(): void {\n this.hostedDropdown?.updateOpen(!this.open);\n }\n\n private isStrictMatch(item: T): boolean {\n return this.strictMatcher(item, this.search || '', this.stringify);\n }\n\n private close(): void {\n this.hostedDropdown?.updateOpen(false);\n }\n\n private updateSearch(search: string | null): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private setNativeValue(value: string): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-combo-box__textfield\"\n class=\"t-textfield\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"arrow ? icon : ''\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"computedFocusable\"\n [value]=\"nativeValue\"\n (valueChange)=\"onValueChange($event)\"\n (click)=\"toggle()\"\n (keydown.enter)=\"onFieldKeyDownEnter($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n <div\n *ngIf=\"showValueTemplate\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-combo-box__template\"\n class=\"t-value\"\n >\n <ng-container\n *polymorpheusOutlet=\"computedContent as text; context: {$implicit: value!, active: computedFocused}\"\n >\n {{ text }}\n </ng-container>\n </div>\n </tui-primitive-textfield>\n\n <ng-template #icon>\n <div\n tuiWrapper\n appearance=\"icon\"\n class=\"t-icon\"\n >\n <ng-container *polymorpheusOutlet=\"arrow\"></ng-container>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: 'tui-combo-box',\n providers: [tuiAsTextfieldHost(TuiComboBoxDirective)],\n})\nexport class TuiComboBoxDirective extends AbstractTuiTextfieldHost<\n TuiComboBoxComponent<unknown>\n> {\n override get value(): string {\n return this.host.nativeValue;\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {Directive, HostListener, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: 'tui-combo-box[strict]',\n})\nexport class TuiComboBoxStrictDirective<T> {\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n constructor(\n @Inject(TuiComboBoxComponent)\n private readonly comboBox: TuiComboBoxComponent<T | string>,\n ) {}\n\n @HostListener('input')\n onInput(): void {\n if (!this.strict && this.comboBox.search) {\n this.comboBox.value = this.comboBox.search;\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {TuiArrowModule} from '@taiga-ui/kit/components/arrow';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\nimport {TuiComboBoxDirective} from './combo-box.directive';\nimport {TuiComboBoxStrictDirective} from './combo-box-strict.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiActiveZoneModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n TuiSelectOptionModule,\n TuiArrowModule,\n TuiWrapperModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n ],\n exports: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n TuiTextfieldComponent,\n ],\n})\nexport class TuiComboBoxModule {}\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-kit-components-combo-box.js","sources":["../../../projects/kit/components/combo-box/combo-box.component.ts","../../../projects/kit/components/combo-box/combo-box.template.html","../../../projects/kit/components/combo-box/combo-box.directive.ts","../../../projects/kit/components/combo-box/combo-box-strict.directive.ts","../../../projects/kit/components/combo-box/combo-box.module.ts","../../../projects/kit/components/combo-box/taiga-ui-kit-components-combo-box.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n TUI_STRICT_MATCHER,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n tuiIsPresent,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListAccessor,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeM,\n TuiSizeS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TUI_ARROW_MODE, TuiArrowMode} from '@taiga-ui/kit/components/arrow';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-combo-box',\n templateUrl: './combo-box.template.html',\n styleUrls: ['./combo-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiComboBoxComponent),\n tuiAsDataListHost(TuiComboBoxComponent),\n tuiAsControl(TuiComboBoxComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiComboBoxComponent<T>\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor, TuiDataListHost<T>\n{\n @ContentChild(TUI_DATA_LIST_ACCESSOR as any)\n private readonly accessor?: TuiDataListAccessor<T>;\n\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n stringify: TuiItemsHandlers<T>['stringify'] = this.itemsHandlers.stringify;\n\n @Input()\n @tuiDefaultProp()\n strictMatcher: TuiStringMatcher<T> = TUI_STRICT_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiItemsHandlers<T>['identityMatcher'] =\n this.itemsHandlers.identityMatcher;\n\n @Input()\n valueContent: PolymorpheusContent<TuiValueContentContext<T>>;\n\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n @Input()\n @tuiDefaultProp()\n search: string | null = null;\n\n @Output()\n readonly searchChange = new EventEmitter<string | null>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent<\n TuiContextWithImplicit<TuiActiveZoneDirective>\n >;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_ARROW_MODE)\n private readonly arrowMode: TuiArrowMode,\n @Inject(TUI_ITEMS_HANDLERS)\n private readonly itemsHandlers: TuiItemsHandlers<T>,\n ) {\n super(control, cdr);\n }\n\n get arrow(): PolymorpheusContent<\n TuiContextWithImplicit<TuiSizeL | TuiSizeM | TuiSizeS>\n > {\n return !this.interactive ? this.arrowMode.disabled : this.arrowMode.interactive;\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield?.nativeFocusableElement ?? null;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get nativeValue(): string {\n return this.value === null ? this.search || '' : this.stringify(this.value);\n }\n\n get showValueTemplate(): boolean {\n return tuiIsPresent(this.value) && !this.focused;\n }\n\n get computedContent(): PolymorpheusContent<TuiValueContentContext<T>> {\n return this.valueContent || this.nativeValue;\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n checkOption(option: T): void {\n if (!this.isStrictMatch(option)) {\n return;\n }\n\n this.value = option;\n this.updateSearch(null);\n }\n\n handleOption(item: T): void {\n this.focusInput();\n this.close();\n this.updateSearch(null);\n this.value = item;\n\n if (this.value) {\n this.setNativeValue(this.stringify(item));\n }\n }\n\n onFieldKeyDownEnter(event: Event): void {\n if (this.open) {\n event.preventDefault();\n }\n\n const options = this.accessor?.getOptions() || [];\n\n if (options.length !== 1) {\n return;\n }\n\n this.value = options[0];\n this.updateSearch(null);\n this.close();\n }\n\n onValueChange(value: string): void {\n this.updateSearch(value);\n\n const match = this.accessor?.getOptions().find(item => this.isStrictMatch(item));\n\n if (match !== undefined) {\n this.value = match;\n this.updateSearch(null);\n\n return;\n }\n\n if (this.strict || this.search === '') {\n this.value = null;\n }\n\n this.hostedDropdown?.updateOpen(true);\n }\n\n /** @deprecated use 'value' setter */\n override updateValue(value: T | null): void {\n super.updateValue(value);\n }\n\n toggle(): void {\n this.hostedDropdown?.updateOpen(!this.open);\n }\n\n private isStrictMatch(item: T): boolean {\n return this.strictMatcher(item, this.search || '', this.stringify);\n }\n\n private close(): void {\n this.hostedDropdown?.updateOpen(false);\n }\n\n private updateSearch(search: string | null): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private setNativeValue(value: string): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-combo-box__textfield\"\n class=\"t-textfield\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"arrow ? icon : ''\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"computedFocusable\"\n [value]=\"nativeValue\"\n (valueChange)=\"onValueChange($event)\"\n (click)=\"toggle()\"\n (keydown.enter)=\"onFieldKeyDownEnter($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n <div\n *ngIf=\"showValueTemplate\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-combo-box__template\"\n class=\"t-value\"\n >\n <ng-container\n *polymorpheusOutlet=\"computedContent as text; context: {$implicit: value!, active: computedFocused}\"\n >\n {{ text }}\n </ng-container>\n </div>\n </tui-primitive-textfield>\n\n <ng-template #icon>\n <div\n tuiWrapper\n appearance=\"icon\"\n class=\"t-icon\"\n >\n <ng-container *polymorpheusOutlet=\"arrow\"></ng-container>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: 'tui-combo-box',\n providers: [tuiAsTextfieldHost(TuiComboBoxDirective)],\n})\nexport class TuiComboBoxDirective extends AbstractTuiTextfieldHost<\n TuiComboBoxComponent<unknown>\n> {\n override get value(): string {\n return this.host.nativeValue;\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {Directive, HostListener, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\n\n@Directive({\n selector: 'tui-combo-box[strict]',\n})\nexport class TuiComboBoxStrictDirective<T> {\n @Input()\n @tuiDefaultProp()\n strict = true;\n\n constructor(\n @Inject(TuiComboBoxComponent)\n private readonly comboBox: TuiComboBoxComponent<T | string>,\n ) {}\n\n @HostListener('input')\n onInput(): void {\n if (!this.strict && this.comboBox.search) {\n this.comboBox.value = this.comboBox.search;\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {TuiArrowModule} from '@taiga-ui/kit/components/arrow';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiComboBoxComponent} from './combo-box.component';\nimport {TuiComboBoxDirective} from './combo-box.directive';\nimport {TuiComboBoxStrictDirective} from './combo-box-strict.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiActiveZoneModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n TuiSelectOptionModule,\n TuiArrowModule,\n TuiWrapperModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n ],\n exports: [\n TuiComboBoxComponent,\n TuiComboBoxStrictDirective,\n TuiComboBoxDirective,\n TuiTextfieldComponent,\n ],\n})\nexport class TuiComboBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -17,7 +17,6 @@ class AbstractTuiDataListWrapper {
17
17
  this.defaultSize = defaultSize;
18
18
  this.optionsQuery = EMPTY_QUERY;
19
19
  this.disabledItemHandler = this.itemsHandlers.disabledItemHandler;
20
- this.emptyContent = ``;
21
20
  this.size = this.defaultSize;
22
21
  this.itemContent = ({ $implicit }) => this.itemsHandlers.stringify($implicit);
23
22
  }
@@ -36,15 +35,9 @@ AbstractTuiDataListWrapper.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0
36
35
  __decorate([
37
36
  tuiDefaultProp()
38
37
  ], AbstractTuiDataListWrapper.prototype, "disabledItemHandler", void 0);
39
- __decorate([
40
- tuiDefaultProp()
41
- ], AbstractTuiDataListWrapper.prototype, "emptyContent", void 0);
42
38
  __decorate([
43
39
  tuiDefaultProp()
44
40
  ], AbstractTuiDataListWrapper.prototype, "size", void 0);
45
- __decorate([
46
- tuiDefaultProp()
47
- ], AbstractTuiDataListWrapper.prototype, "itemContent", void 0);
48
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AbstractTuiDataListWrapper, decorators: [{
49
42
  type: Directive
50
43
  }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }]; }, propDecorators: { optionsQuery: [{
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["../../../projects/kit/components/data-list-wrapper/data-list-wrapper.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.module.ts","../../../projects/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsNativeFocused,\n tuiIsPresent,\n} from '@taiga-ui/cdk';\nimport {\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive()\nexport abstract class AbstractTuiDataListWrapper<T> {\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n protected readonly optionsQuery: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'] =\n this.itemsHandlers.disabledItemHandler;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = this.defaultSize;\n\n constructor(\n protected readonly itemsHandlers: TuiItemsHandlers<T>,\n protected readonly defaultSize: TuiSizeL | TuiSizeXS,\n ) {}\n\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n this.itemsHandlers.stringify($implicit);\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: tuiIsNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.optionsQuery\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper[labels]',\n templateUrl: './data-list-group-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)],\n})\nexport class TuiDataListGroupWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[][] | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\"></tui-loader>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n tuiAsDataListAccessor,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper:not([labels])',\n templateUrl: './data-list-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsDataListAccessor(TuiDataListWrapperComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiDataListWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[] | null = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n controller: TuiTextfieldController | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n ></tui-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\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-kit-components-data-list-wrapper.js","sources":["../../../projects/kit/components/data-list-wrapper/data-list-wrapper.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.module.ts","../../../projects/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsNativeFocused,\n tuiIsPresent,\n} from '@taiga-ui/cdk';\nimport {\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive()\nexport abstract class AbstractTuiDataListWrapper<T> {\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n protected readonly optionsQuery: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'] =\n this.itemsHandlers.disabledItemHandler;\n\n @Input()\n emptyContent: PolymorpheusContent;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = this.defaultSize;\n\n constructor(\n protected readonly itemsHandlers: TuiItemsHandlers<T>,\n protected readonly defaultSize: TuiSizeL | TuiSizeXS,\n ) {}\n\n @Input()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n this.itemsHandlers.stringify($implicit);\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: tuiIsNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.optionsQuery\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper[labels]',\n templateUrl: './data-list-group-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)],\n})\nexport class TuiDataListGroupWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[][] | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\"></tui-loader>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n tuiAsDataListAccessor,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper:not([labels])',\n templateUrl: './data-list-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsDataListAccessor(TuiDataListWrapperComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiDataListWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[] | null = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n controller: TuiTextfieldController | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n ></tui-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}