@taiga-ui/core 3.60.0 → 3.61.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 (218) hide show
  1. package/bundles/taiga-ui-core-abstract.umd.js +525 -671
  2. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-animations.umd.js +146 -146
  4. package/bundles/taiga-ui-core-animations.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-alert.umd.js +9 -155
  6. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-button.umd.js +522 -668
  8. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-data-list.umd.js +673 -819
  10. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-dialog.umd.js +15 -161
  12. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +787 -933
  14. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-loader.umd.js +1 -1
  16. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +3 -3
  18. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +459 -605
  20. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +1029 -1175
  22. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-root.umd.js +459 -605
  24. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +6 -152
  26. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-svg.umd.js +65 -211
  28. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-theme-night.umd.js +374 -520
  30. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-tooltip.umd.js +449 -595
  32. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  33. package/bundles/taiga-ui-core-constants.umd.js +31 -31
  34. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  35. package/bundles/taiga-ui-core-directives-dropdown.umd.js +1360 -1506
  36. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-directives-hint.umd.js +1141 -1287
  38. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-directives-mode.umd.js +375 -521
  40. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  41. package/bundles/taiga-ui-core-directives-number-format.umd.js +397 -543
  42. package/bundles/taiga-ui-core-directives-number-format.umd.js.map +1 -1
  43. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +9 -155
  44. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  45. package/bundles/taiga-ui-core-enums.umd.js.map +1 -1
  46. package/bundles/taiga-ui-core-observables.umd.js +2 -2
  47. package/bundles/taiga-ui-core-observables.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +1 -1
  49. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  50. package/bundles/taiga-ui-core-pipes-flag.umd.js +4 -4
  51. package/bundles/taiga-ui-core-pipes-flag.umd.js.map +1 -1
  52. package/bundles/taiga-ui-core-pipes-format-date.umd.js +1 -1
  53. package/bundles/taiga-ui-core-pipes-format-date.umd.js.map +1 -1
  54. package/bundles/taiga-ui-core-pipes-format-number.umd.js +1 -1
  55. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +3 -3
  57. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  58. package/bundles/taiga-ui-core-pipes-month.umd.js +1 -1
  59. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  60. package/bundles/taiga-ui-core-pipes-order-week-days.umd.js +384 -530
  61. package/bundles/taiga-ui-core-pipes-order-week-days.umd.js.map +1 -1
  62. package/bundles/taiga-ui-core-providers.umd.js +2 -2
  63. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  64. package/bundles/taiga-ui-core-services.umd.js +634 -780
  65. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  66. package/bundles/taiga-ui-core-tokens.umd.js +44 -190
  67. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  68. package/bundles/taiga-ui-core-utils-dom.umd.js +19 -19
  69. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  70. package/bundles/taiga-ui-core-utils-format.umd.js +21 -167
  71. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  72. package/bundles/taiga-ui-core-utils-mask.umd.js +34 -180
  73. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  74. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +7 -7
  75. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  76. package/constants/cache-basting-payload.d.ts +1 -1
  77. package/esm2015/abstract/abstract-textfield-host.js +3 -3
  78. package/esm2015/animations/animations.js +148 -148
  79. package/esm2015/components/alert/alert.providers.js +2 -2
  80. package/esm2015/components/alert/alert.service.js +3 -3
  81. package/esm2015/components/button/button.options.js +2 -2
  82. package/esm2015/components/dialog/dialog-close.service.js +5 -5
  83. package/esm2015/components/dialog/dialog.service.js +3 -3
  84. package/esm2015/components/dialog/dialog.tokens.js +4 -4
  85. package/esm2015/components/hosted-dropdown/hosted-dropdown.token.js +2 -2
  86. package/esm2015/components/loader/loader.options.js +2 -2
  87. package/esm2015/components/primitive-checkbox/checkbox.options.js +4 -4
  88. package/esm2015/components/root/root.component.js +1 -1
  89. package/esm2015/components/svg/deprecated-icons.js +57 -57
  90. package/esm2015/components/svg/svg-options.js +4 -4
  91. package/esm2015/constants/decimal-symbols.js +2 -2
  92. package/esm2015/constants/default-icons-path.js +2 -2
  93. package/esm2015/constants/default-number-format.js +4 -4
  94. package/esm2015/constants/editing-keys.js +10 -10
  95. package/esm2015/constants/events.js +5 -5
  96. package/esm2015/constants/hint-directions.js +13 -13
  97. package/esm2015/constants/mask-caret-trap.js +2 -2
  98. package/esm2015/directives/textfield-controller/textfield-controller.provider.js +2 -2
  99. package/esm2015/directives/textfield-controller/textfield.controller.js +2 -2
  100. package/esm2015/directives/textfield-controller/textfield.options.js +2 -2
  101. package/esm2015/enums/appearance.js +1 -1
  102. package/esm2015/enums/dropdown-animation.js +1 -1
  103. package/esm2015/enums/interactive-state.js +1 -1
  104. package/esm2015/enums/notification.js +1 -1
  105. package/esm2015/enums/range-state.js +1 -1
  106. package/esm2015/observables/smart-search.js +3 -3
  107. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  108. package/esm2015/pipes/flag/flag.pipe.js +5 -5
  109. package/esm2015/pipes/format-date/format-date.pipe.js +2 -2
  110. package/esm2015/pipes/format-number/format-number.pipe.js +2 -2
  111. package/esm2015/pipes/format-phone/format-phone.pipe.js +4 -4
  112. package/esm2015/pipes/month/month.pipe.js +2 -2
  113. package/esm2015/pipes/order-week-days/order-week-days.pipe.js +2 -2
  114. package/esm2015/providers/is-mobile-resolution.provider.js +2 -2
  115. package/esm2015/providers/mode.provider.js +2 -2
  116. package/esm2015/services/breakpoint.service.js +3 -3
  117. package/esm2015/services/format-date.service.js +5 -5
  118. package/esm2015/services/hint.service.js +3 -3
  119. package/esm2015/services/night-theme.service.js +5 -5
  120. package/esm2015/services/svg.service.js +5 -5
  121. package/esm2015/services/visual-viewport.service.js +3 -3
  122. package/esm2015/tokens/animation-options.js +2 -2
  123. package/esm2015/tokens/common-icon.js +5 -5
  124. package/esm2015/tokens/data-list-accessor.js +2 -2
  125. package/esm2015/tokens/data-list-host.js +2 -2
  126. package/esm2015/tokens/day-type-handler.js +2 -2
  127. package/esm2015/tokens/document-or-shadow-root.js +2 -2
  128. package/esm2015/tokens/element-ref.js +2 -2
  129. package/esm2015/tokens/i18n.js +7 -7
  130. package/esm2015/tokens/icon-place.js +2 -2
  131. package/esm2015/tokens/is-mobile-resolution.js +2 -2
  132. package/esm2015/tokens/legacy-mask.js +2 -2
  133. package/esm2015/tokens/mode.js +2 -2
  134. package/esm2015/tokens/notification-options.js +9 -9
  135. package/esm2015/tokens/option-content.js +2 -2
  136. package/esm2015/tokens/reduced-motion.js +2 -2
  137. package/esm2015/tokens/sanitizer.js +2 -2
  138. package/esm2015/tokens/selection-stream.js +2 -2
  139. package/esm2015/tokens/spin-icons.js +3 -3
  140. package/esm2015/tokens/textfield-host.js +2 -2
  141. package/esm2015/tokens/theme.js +2 -2
  142. package/esm2015/tokens/value-accessor.js +2 -2
  143. package/esm2015/tokens/viewport.js +2 -2
  144. package/esm2015/utils/dom/check-fixed-position.js +3 -3
  145. package/esm2015/utils/dom/get-safe-area-size.js +4 -4
  146. package/esm2015/utils/dom/get-word-range.js +5 -5
  147. package/esm2015/utils/dom/process-icon.js +11 -11
  148. package/esm2015/utils/format/format-number.js +4 -4
  149. package/esm2015/utils/format/format-phone.js +9 -9
  150. package/esm2015/utils/format/get-fractional-part-padded.js +2 -2
  151. package/esm2015/utils/format/number-to-string-without-exp.js +3 -3
  152. package/esm2015/utils/format/other-decimal-symbol.js +2 -2
  153. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +11 -11
  154. package/esm2015/utils/mask/create-correction-mask.js +3 -3
  155. package/esm2015/utils/mask/create-number-mask.js +13 -13
  156. package/esm2015/utils/mask/masked-money-value-is-empty.js +3 -3
  157. package/esm2015/utils/mask/masked-number-string-to-number.js +2 -2
  158. package/esm2015/utils/miscellaneous/get-border.js +3 -3
  159. package/esm2015/utils/miscellaneous/icons-path-factory.js +3 -3
  160. package/esm2015/utils/miscellaneous/is-obscured.js +2 -2
  161. package/esm2015/utils/miscellaneous/is-presumed-html-string.js +2 -2
  162. package/esm2015/utils/miscellaneous/size-bigger.js +2 -2
  163. package/fesm2015/taiga-ui-core-abstract.js +2 -2
  164. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  165. package/fesm2015/taiga-ui-core-animations.js +146 -146
  166. package/fesm2015/taiga-ui-core-animations.js.map +1 -1
  167. package/fesm2015/taiga-ui-core-components-alert.js +3 -3
  168. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  169. package/fesm2015/taiga-ui-core-components-button.js +1 -1
  170. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  171. package/fesm2015/taiga-ui-core-components-dialog.js +9 -9
  172. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  173. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +1 -1
  174. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  175. package/fesm2015/taiga-ui-core-components-loader.js +1 -1
  176. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  177. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +3 -3
  178. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  179. package/fesm2015/taiga-ui-core-components-root.js +1 -1
  180. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  181. package/fesm2015/taiga-ui-core-components-svg.js +59 -59
  182. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  183. package/fesm2015/taiga-ui-core-constants.js +31 -31
  184. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  185. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +3 -3
  186. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  187. package/fesm2015/taiga-ui-core-enums.js.map +1 -1
  188. package/fesm2015/taiga-ui-core-observables.js +2 -2
  189. package/fesm2015/taiga-ui-core-observables.js.map +1 -1
  190. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  191. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  192. package/fesm2015/taiga-ui-core-pipes-flag.js +4 -4
  193. package/fesm2015/taiga-ui-core-pipes-flag.js.map +1 -1
  194. package/fesm2015/taiga-ui-core-pipes-format-date.js +1 -1
  195. package/fesm2015/taiga-ui-core-pipes-format-date.js.map +1 -1
  196. package/fesm2015/taiga-ui-core-pipes-format-number.js +1 -1
  197. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  198. package/fesm2015/taiga-ui-core-pipes-format-phone.js +3 -3
  199. package/fesm2015/taiga-ui-core-pipes-format-phone.js.map +1 -1
  200. package/fesm2015/taiga-ui-core-pipes-month.js +1 -1
  201. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  202. package/fesm2015/taiga-ui-core-pipes-order-week-days.js +1 -1
  203. package/fesm2015/taiga-ui-core-pipes-order-week-days.js.map +1 -1
  204. package/fesm2015/taiga-ui-core-providers.js +2 -2
  205. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  206. package/fesm2015/taiga-ui-core-services.js +18 -18
  207. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  208. package/fesm2015/taiga-ui-core-tokens.js +38 -38
  209. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  210. package/fesm2015/taiga-ui-core-utils-dom.js +19 -19
  211. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  212. package/fesm2015/taiga-ui-core-utils-format.js +15 -15
  213. package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
  214. package/fesm2015/taiga-ui-core-utils-mask.js +27 -27
  215. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  216. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +7 -7
  217. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  218. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-hosted-dropdown.js","sources":["../../../projects/core/components/hosted-dropdown/accessor-proxy.directive.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown.token.ts","../../../projects/core/components/hosted-dropdown/dropdown-open-monitor.directive.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown-connector.directive.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown.component.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown.template.html","../../../projects/core/components/hosted-dropdown/hosted-dropdown.module.ts","../../../projects/core/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.ts"],"sourcesContent":["import {Directive, Optional, SkipSelf} from '@angular/core';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {TuiPoint} from '@taiga-ui/core/types';\n\n@Directive({\n selector: '[tuiAccessorProxy]',\n providers: [\n {\n provide: TuiPositionAccessor,\n multi: true,\n deps: [\n [new Optional(), new SkipSelf(), TuiAccessorProxyDirective],\n TuiAccessorProxyDirective,\n ],\n useFactory: (\n accessor: TuiPositionAccessor | null,\n fallback: TuiPositionAccessor,\n ) => accessor || fallback,\n },\n ],\n})\nexport class TuiAccessorProxyDirective extends TuiPositionAccessor {\n readonly type = 'dummy';\n\n getPosition(): TuiPoint {\n return [0, 0];\n }\n}\n","import {InjectionToken} from '@angular/core';\n\nimport type {TuiHostedDropdownComponent} from './hosted-dropdown.component';\n\nexport const TUI_HOSTED_DROPDOWN_COMPONENT =\n new InjectionToken<TuiHostedDropdownComponent>(`[TUI_HOSTED_DROPDOWN_COMPONENT]`);\n","import {Directive, Inject, Optional, Self} from '@angular/core';\nimport {TuiDestroyService, TuiInjectionTokenType} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective, TuiDropdownOpenDirective} from '@taiga-ui/core/directives';\nimport {Observable} from 'rxjs';\nimport {filter, takeUntil} from 'rxjs/operators';\n\nimport {TUI_HOSTED_DROPDOWN_COMPONENT} from './hosted-dropdown.token';\n\n@Directive({\n selector: '[tuiDropdownOpenMonitor]',\n providers: [TuiDestroyService],\n})\nexport class TuiDropdownOpenMonitorDirective {\n constructor(\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(TUI_HOSTED_DROPDOWN_COMPONENT)\n hosted: TuiInjectionTokenType<typeof TUI_HOSTED_DROPDOWN_COMPONENT>,\n @Self() @Inject(TuiDropdownDirective) dropdown: TuiDropdownDirective,\n @Optional()\n @Inject(TuiDropdownOpenDirective)\n open: TuiDropdownOpenDirective | null,\n ) {\n open?.tuiDropdownOpenChange\n .pipe(\n filter(value => value && open.dropdown === dropdown && !hosted.focused),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n hosted.nativeFocusableElement?.focus();\n hosted.updateOpen(true);\n });\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: '[tuiHostedDropdownHost]',\n})\nexport class TuiHostedDropdownConnectorDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {\n TuiActiveZoneDirective,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n TuiFocusableElementAccessor,\n tuiGetActualTarget,\n tuiGetClosestFocusable,\n tuiIsElement,\n tuiIsElementEditable,\n tuiIsHTMLElement,\n tuiIsNativeFocusedIn,\n tuiIsNativeKeyboardFocusable,\n TuiNativeFocusableElement,\n tuiTypedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {\n TuiDropdownDirective,\n TuiDropdownHoverDirective,\n} from '@taiga-ui/core/directives/dropdown';\nimport {tuiIsEditingKey} from '@taiga-ui/core/utils/miscellaneous';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, combineLatest, EMPTY, merge, of} from 'rxjs';\nimport {delay, distinctUntilChanged, map, share, skip, switchMap} from 'rxjs/operators';\n\nimport {TuiAccessorProxyDirective} from './accessor-proxy.directive';\nimport {TUI_HOSTED_DROPDOWN_COMPONENT} from './hosted-dropdown.token';\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\nfunction shouldClose(\n this: TuiHostedDropdownComponent,\n event: Event | KeyboardEvent,\n): boolean {\n return (\n 'key' in event &&\n event.key.toLowerCase() === 'escape' &&\n this.canOpen &&\n this.open &&\n !this.dropdown?.nextElementSibling\n );\n}\n\nexport interface TuiHostedDropdownContext\n extends TuiContextWithImplicit<TuiActiveZoneDirective> {\n close(): void;\n}\n\n@Component({\n selector: 'tui-hosted-dropdown',\n templateUrl: './hosted-dropdown.template.html',\n styleUrls: ['./hosted-dropdown.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiHostedDropdownComponent),\n {\n provide: TuiAccessorProxyDirective,\n deps: [[new Optional(), new Self(), TuiPositionAccessor]],\n useFactory: (position: TuiPositionAccessor[] | null) => position?.[0],\n },\n {\n provide: TUI_HOSTED_DROPDOWN_COMPONENT,\n useExisting: TuiHostedDropdownComponent,\n },\n ],\n host: {\n '[$.class._hosted_dropdown_focused]': 'focus$',\n '($.class._hosted_dropdown_focused)': 'focus$',\n },\n})\nexport class TuiHostedDropdownComponent implements TuiFocusableElementAccessor {\n @ContentChild(TuiHostedDropdownConnectorDirective, {read: ElementRef})\n private readonly dropdownHost?: ElementRef<HTMLElement>;\n\n @ViewChild('wrapper', {read: ElementRef})\n private readonly wrapper?: ElementRef<HTMLDivElement>;\n\n @ViewChild(TuiDropdownDirective)\n private readonly dropdownDirective?: TuiDropdownDirective;\n\n private readonly openChange$ = new BehaviorSubject(false);\n\n private readonly hostHover$ = combineLatest([\n tuiTypedFromEvent(this.el.nativeElement, 'mouseover').pipe(\n map(e => this.computedHost.contains(tuiGetActualTarget(e))),\n switchMap(visible =>\n of(visible).pipe(\n delay(\n (visible ? this.hover$?.showDelay : this.hover$?.hideDelay) || 0,\n ),\n ),\n ),\n ),\n this.hover$ || EMPTY,\n ]).pipe(map(([visible, hovered]) => visible && hovered));\n\n @ViewChild(TuiActiveZoneDirective)\n readonly activeZone!: TuiActiveZoneDirective;\n\n @Input()\n content: PolymorpheusContent<TuiHostedDropdownContext>;\n\n @Input()\n sided = false;\n\n @Input()\n canOpen = true;\n\n @Output('openChange')\n readonly open$ = merge(this.openChange$, this.hostHover$).pipe(\n skip(1),\n distinctUntilChanged(),\n share(),\n );\n\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n readonly focus$ = new BehaviorSubject(false);\n\n /** TODO: rename in 4.0 */\n readonly openChange = this.openChange$;\n\n readonly context!: TuiContextWithImplicit<TuiActiveZoneDirective>;\n\n constructor(\n @Self()\n @Optional()\n @Inject(TuiDropdownHoverDirective)\n private readonly hover$: TuiDropdownHoverDirective | null,\n @Inject(ElementRef) private readonly el: ElementRef,\n ) {}\n\n @Input()\n set open(open: boolean) {\n this.openChange.next(open);\n }\n\n get open(): boolean {\n return this.openChange.value;\n }\n\n get host(): HTMLElement {\n return this.dropdownHost?.nativeElement || this.el.nativeElement;\n }\n\n get computedHost(): HTMLElement {\n return (\n this.dropdownHost?.nativeElement ||\n this.nativeFocusableElement ||\n this.el.nativeElement\n );\n }\n\n get dropdown(): HTMLElement | undefined {\n return this.dropdownDirective?.dropdownBoxRef?.location.nativeElement;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return tuiIsNativeKeyboardFocusable(this.host)\n ? this.host\n : tuiGetClosestFocusable({\n initial: this.host,\n root: this.el.nativeElement,\n });\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocusedIn(this.host) ||\n (this.open &&\n !!this.wrapper &&\n tuiIsNativeFocusedIn(this.wrapper.nativeElement))\n );\n }\n\n @HostListener('focusin.capture.silent')\n @HostListener('focusout.capture.silent')\n onFocusInOut(): void {\n this.focus$.next(this.focused);\n }\n\n @HostListener('focusin', ['$event.target'])\n onFocusIn(target: HTMLElement): void {\n if (!this.computedHost.contains(target)) {\n this.updateOpen(false);\n }\n }\n\n @HostListener('click', ['$event.target'])\n onClick(target: HTMLElement): void {\n if (\n !this.hostEditable &&\n this.computedHost.contains(target) &&\n !this.hover$?.hovered\n ) {\n this.updateOpen(!this.open);\n }\n }\n\n @shouldCall(shouldClose)\n @HostListener('document:keydown.silent.capture', ['$event'])\n onKeyDownEsc(event: Event): void {\n event.preventDefault();\n this.closeDropdown();\n }\n\n @HostListener('keydown.arrowDown', ['$event', 'true'])\n @HostListener('keydown.arrowUp', ['$event', 'false'])\n onArrow(event: KeyboardEvent, down: boolean): void {\n this.focusDropdown(event, down);\n }\n\n onKeydown({key, target, defaultPrevented}: KeyboardEvent): void {\n if (\n !defaultPrevented &&\n tuiIsEditingKey(key) &&\n this.hostEditable &&\n tuiIsHTMLElement(target) &&\n !tuiIsElementEditable(target)\n ) {\n this.focusHost();\n }\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n\n if (!active) {\n this.updateOpen(false);\n }\n }\n\n onHostObscured(obscured: boolean): void {\n if (obscured) {\n this.closeDropdown();\n }\n }\n\n updateOpen(open: boolean): void {\n if (!open || this.canOpen) {\n this.open = open;\n }\n }\n\n readonly close = (): void => this.updateOpen(false);\n\n private get hostEditable(): boolean {\n return tuiIsElementEditable(this.computedHost);\n }\n\n private focusDropdown(event: KeyboardEvent, first: boolean): void {\n const host = this.nativeFocusableElement;\n\n if (\n !host ||\n !tuiIsHTMLElement(host) ||\n !tuiIsElement(event.target) ||\n !host.contains(event.target)\n ) {\n return;\n }\n\n if (\n !this.wrapper ||\n !this.open ||\n !this.dropdown ||\n !tuiIsHTMLElement(this.wrapper.nativeElement.nextElementSibling)\n ) {\n this.updateOpen(true);\n\n if (!tuiIsElementEditable(host)) {\n event.preventDefault();\n }\n\n return;\n }\n\n const initial = first\n ? this.wrapper.nativeElement\n : this.wrapper.nativeElement.nextElementSibling;\n const focusable = tuiGetClosestFocusable({\n initial,\n root: this.wrapper.nativeElement,\n previous: !first,\n });\n\n if (!focusable) {\n return;\n }\n\n focusable.focus();\n event.preventDefault();\n }\n\n private closeDropdown(): void {\n if (this.focused) {\n this.focusHost();\n }\n\n this.updateOpen(false);\n }\n\n private focusHost(): void {\n const host = this.nativeFocusableElement;\n\n if (host) {\n host.focus({preventScroll: true});\n }\n }\n\n private updateFocused(focused: boolean): void {\n this.focusedChange.emit(focused);\n }\n}\n","<div\n *tuiLet=\"(open$ | async) ?? openChange.value as isOpen\"\n #activeZone=\"tuiActiveZone\"\n tuiAccessorProxy\n tuiDropdownOpenMonitor\n class=\"t-wrapper\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownManual]=\"isOpen && canOpen\"\n [tuiDropdownSided]=\"sided\"\n [tuiObscuredEnabled]=\"isOpen\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (tuiObscured)=\"onHostObscured($event)\"\n>\n <ng-content></ng-content>\n <ng-template\n #dropdown=\"polymorpheus\"\n [polymorpheus]=\"context\"\n >\n <div\n #wrapper\n class=\"t-dropdown\"\n (keydown)=\"onKeydown($event)\"\n >\n <div\n *polymorpheusOutlet=\"\n content as text;\n context: {\n $implicit: activeZone,\n close: close\n }\n \"\n class=\"t-primitive\"\n >\n {{ text }}\n </div>\n </div>\n <!--This DIV is here to start backwards TreeWalker for focusing last focusable item on ArrowUp-->\n <div></div>\n </ng-template>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiLetModule, TuiObscuredModule} from '@taiga-ui/cdk';\nimport {\n TuiDropdownModule,\n TuiDropdownOptionsDirective,\n} from '@taiga-ui/core/directives/dropdown';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiAccessorProxyDirective} from './accessor-proxy.directive';\nimport {TuiDropdownOpenMonitorDirective} from './dropdown-open-monitor.directive';\nimport {TuiHostedDropdownComponent} from './hosted-dropdown.component';\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiObscuredModule,\n TuiActiveZoneModule,\n TuiDropdownModule,\n ],\n declarations: [\n TuiAccessorProxyDirective,\n TuiDropdownOpenMonitorDirective,\n TuiHostedDropdownComponent,\n TuiHostedDropdownConnectorDirective,\n ],\n exports: [\n TuiHostedDropdownComponent,\n TuiHostedDropdownConnectorDirective,\n TuiDropdownOptionsDirective,\n ],\n})\nexport class TuiHostedDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TuiDropdownDirective","i1","i2.TuiAccessorProxyDirective","i3.TuiDropdownOpenMonitorDirective"],"mappings":";;;;;;;;;;;;;;;;;;;;AAqBM,MAAO,yBAA0B,SAAQ,mBAAmB,CAAA;AAjBlE,IAAA,WAAA,GAAA;;QAkBa,IAAI,CAAA,IAAA,GAAG,OAAO,CAAC;AAK3B,KAAA;IAHG,WAAW,GAAA;AACP,QAAA,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KACjB;;uHALQ,yBAAyB,EAAA,IAAA,EAAA,IAAA,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,EAfvB,QAAA,EAAA,oBAAA,EAAA,SAAA,EAAA;AACP,QAAA;AACI,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,IAAI,EAAE;gBACF,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,EAAE,EAAE,yBAAyB,CAAC;gBAC3D,yBAAyB;AAC5B,aAAA;YACD,UAAU,EAAE,CACR,QAAoC,EACpC,QAA6B,KAC5B,QAAQ,IAAI,QAAQ;AAC5B,SAAA;AACJ,KAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEQ,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAjBrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,KAAK,EAAE,IAAI;AACX,4BAAA,IAAI,EAAE;AACF,gCAAA,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,EAAE,EAA4B,yBAAA,CAAA;;AAE9D,6BAAA;4BACD,UAAU,EAAE,CACR,QAAoC,EACpC,QAA6B,KAC5B,QAAQ,IAAI,QAAQ;AAC5B,yBAAA;AACJ,qBAAA;AACJ,iBAAA,CAAA;;;AChBM,MAAM,6BAA6B,GACtC,IAAI,cAAc,CAA6B,CAAiC,+BAAA,CAAA,CAAC;;MCOxE,+BAA+B,CAAA;AACxC,IAAA,WAAA,CACuC,QAA6B,EAEhE,MAAmE,EAC7B,QAA8B,EAGpE,IAAqC,EAAA;AAErC,QAAA,IAAI,aAAJ,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJ,IAAI,CAAE,qBAAqB,CACtB,IAAI,CACD,MAAM,CAAC,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EACvE,SAAS,CAAC,QAAQ,CAAC,EAEtB,SAAS,CAAC,MAAK;;AACZ,YAAA,CAAA,EAAA,GAAA,MAAM,CAAC,sBAAsB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,EAAE,CAAC;AACvC,YAAA,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAC5B,SAAC,CAAC,CAAC;KACV;;AAnBQ,+BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,kBAEpB,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACzB,6BAA6B,EAErB,EAAA,EAAA,KAAA,EAAA,oBAAoB,yBAE5B,wBAAwB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iHAP3B,+BAA+B,EAAA,QAAA,EAAA,0BAAA,EAAA,SAAA,EAF7B,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAErB,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAJ3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,0BAA0B;oBACpC,SAAS,EAAE,CAAC,iBAAiB,CAAC;AACjC,iBAAA,CAAA;;0BAGQ,IAAI;;0BAAI,MAAM;2BAAC,iBAAiB,CAAA;;0BAChC,MAAM;2BAAC,6BAA6B,CAAA;;0BAEpC,IAAI;;0BAAI,MAAM;2BAAC,oBAAoB,CAAA;;0BACnC,QAAQ;;0BACR,MAAM;2BAAC,wBAAwB,CAAA;;;MCd3B,mCAAmC,CAAA;;iIAAnC,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAnC,mCAAmC,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAnC,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAH/C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,yBAAyB;AACtC,iBAAA,CAAA;;;ACwCD,SAAS,WAAW,CAEhB,KAA4B,EAAA;;IAE5B,QACI,KAAK,IAAI,KAAK;AACd,QAAA,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,QAAQ;AACpC,QAAA,IAAI,CAAC,OAAO;AACZ,QAAA,IAAI,CAAC,IAAI;QACT,EAAC,MAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,kBAAkB,CAAA,EACpC;AACN,CAAC;MA6BY,0BAA0B,CAAA;IAuDnC,WAIqB,CAAA,MAAwC,EACpB,EAAc,EAAA;QADlC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkC;QACpB,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;AAlDtC,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;QAEzC,IAAU,CAAA,UAAA,GAAG,aAAa,CAAC;AACxC,YAAA,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,IAAI,CACtD,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3D,SAAS,CAAC,OAAO,IAAG;;AAChB,gBAAA,OAAA,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CACZ,KAAK,CACD,CAAC,OAAO,GAAG,MAAA,IAAI,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,GAAG,MAAA,IAAI,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,KAAK,CAAC,CACnE,CACJ,CAAA;AAAA,aAAA,CACJ,CACJ;YACD,IAAI,CAAC,MAAM,IAAI,KAAK;AACvB,SAAA,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC;QASzD,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;QAGd,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;QAGN,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAC1D,IAAI,CAAC,CAAC,CAAC,EACP,oBAAoB,EAAE,EACtB,KAAK,EAAE,CACV,CAAC;AAGO,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;AAE5C,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;;AAGpC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QA4H9B,IAAK,CAAA,KAAA,GAAG,MAAY,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KAlHhD;IAEJ,IACI,IAAI,CAAC,IAAa,EAAA;AAClB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;AAED,IAAA,IAAI,IAAI,GAAA;AACJ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;KAChC;AAED,IAAA,IAAI,IAAI,GAAA;;AACJ,QAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,YAAY,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,aAAa,KAAI,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;KACpE;AAED,IAAA,IAAI,YAAY,GAAA;;AACZ,QAAA,QACI,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,YAAY,0CAAE,aAAa;AAChC,YAAA,IAAI,CAAC,sBAAsB;AAC3B,YAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EACvB;KACL;AAED,IAAA,IAAI,QAAQ,GAAA;;QACR,OAAO,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAQ,CAAC,aAAa,CAAC;KACzE;AAED,IAAA,IAAI,sBAAsB,GAAA;AACtB,QAAA,OAAO,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC;cACxC,IAAI,CAAC,IAAI;cACT,sBAAsB,CAAC;gBACnB,OAAO,EAAE,IAAI,CAAC,IAAI;AAClB,gBAAA,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa;AAC9B,aAAA,CAAC,CAAC;KACZ;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,QACI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9B,IAAI,CAAC,IAAI;gBACN,CAAC,CAAC,IAAI,CAAC,OAAO;gBACd,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EACvD;KACL;IAID,YAAY,GAAA;QACR,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAClC;AAGD,IAAA,SAAS,CAAC,MAAmB,EAAA;QACzB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AAC1B,SAAA;KACJ;AAGD,IAAA,OAAO,CAAC,MAAmB,EAAA;;QACvB,IACI,CAAC,IAAI,CAAC,YAAY;AAClB,YAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;YAClC,EAAC,MAAA,IAAI,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAA,EACvB;YACE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,SAAA;KACJ;AAID,IAAA,YAAY,CAAC,KAAY,EAAA;QACrB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;KACxB;IAID,OAAO,CAAC,KAAoB,EAAE,IAAa,EAAA;AACvC,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KACnC;AAED,IAAA,SAAS,CAAC,EAAC,GAAG,EAAE,MAAM,EAAE,gBAAgB,EAAgB,EAAA;AACpD,QAAA,IACI,CAAC,gBAAgB;YACjB,eAAe,CAAC,GAAG,CAAC;AACpB,YAAA,IAAI,CAAC,YAAY;YACjB,gBAAgB,CAAC,MAAM,CAAC;AACxB,YAAA,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAC/B;YACE,IAAI,CAAC,SAAS,EAAE,CAAC;AACpB,SAAA;KACJ;AAED,IAAA,YAAY,CAAC,MAAe,EAAA;AACxB,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,CAAC,MAAM,EAAE;AACT,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AAC1B,SAAA;KACJ;AAED,IAAA,cAAc,CAAC,QAAiB,EAAA;AAC5B,QAAA,IAAI,QAAQ,EAAE;YACV,IAAI,CAAC,aAAa,EAAE,CAAC;AACxB,SAAA;KACJ;AAED,IAAA,UAAU,CAAC,IAAa,EAAA;AACpB,QAAA,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;AACvB,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACpB,SAAA;KACJ;AAID,IAAA,IAAY,YAAY,GAAA;AACpB,QAAA,OAAO,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAClD;IAEO,aAAa,CAAC,KAAoB,EAAE,KAAc,EAAA;AACtD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC;AAEzC,QAAA,IACI,CAAC,IAAI;YACL,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACvB,YAAA,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAC9B;YACE,OAAO;AACV,SAAA;QAED,IACI,CAAC,IAAI,CAAC,OAAO;YACb,CAAC,IAAI,CAAC,IAAI;YACV,CAAC,IAAI,CAAC,QAAQ;YACd,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAClE;AACE,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAEtB,YAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;gBAC7B,KAAK,CAAC,cAAc,EAAE,CAAC;AAC1B,aAAA;YAED,OAAO;AACV,SAAA;QAED,MAAM,OAAO,GAAG,KAAK;AACjB,cAAE,IAAI,CAAC,OAAO,CAAC,aAAa;cAC1B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC;QACpD,MAAM,SAAS,GAAG,sBAAsB,CAAC;YACrC,OAAO;AACP,YAAA,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;YAChC,QAAQ,EAAE,CAAC,KAAK;AACnB,SAAA,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO;AACV,SAAA;QAED,SAAS,CAAC,KAAK,EAAE,CAAC;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;KAC1B;IAEO,aAAa,GAAA;QACjB,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,SAAS,EAAE,CAAC;AACpB,SAAA;AAED,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KAC1B;IAEO,SAAS,GAAA;AACb,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC;AAEzC,QAAA,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,KAAK,CAAC,EAAC,aAAa,EAAE,IAAI,EAAC,CAAC,CAAC;AACrC,SAAA;KACJ;AAEO,IAAA,aAAa,CAAC,OAAgB,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpC;;wHAnPQ,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EA0DvB,yBAAyB,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAEzB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA5Db,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,EAjBxB,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,YAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kCAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,0BAAA,EAAA,OAAA,EAAA,wBAAA,EAAA,iCAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,SAAA,EAAA;QACP,0BAA0B,CAAC,0BAA0B,CAAC;AACtD,QAAA;AACI,YAAA,OAAO,EAAE,yBAAyB;AAClC,YAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,mBAAmB,CAAC,CAAC;AACzD,YAAA,UAAU,EAAE,CAAC,QAAsC,KAAK,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC;AACxE,SAAA;AACD,QAAA;AACI,YAAA,OAAO,EAAE,6BAA6B;AACtC,YAAA,WAAW,EAAE,0BAA0B;AAC1C,SAAA;KACJ,EAOa,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,mCAAmC,EAAS,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,UAAU,EAGvC,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,UAAU,iEAG5BA,sBAAoB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAmBpB,sBAAsB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9GrC,isCAwCA,EAAA,MAAA,EAAA,CAAA,yJAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,+BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,eAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iCAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,qHAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADgLI,UAAA,CAAA;IAFC,UAAU,CAAC,WAAW,CAAC;AAKvB,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,cAAA,EAAA,IAAA,CAAA,CAAA;4FAvIQ,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAtBtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,WAAW,EAAE,iCAAiC;oBAC9C,SAAS,EAAE,CAAC,8BAA8B,CAAC;oBAC3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACP,wBAAA,0BAA0B,CAA4B,0BAAA,CAAA;AACtD,wBAAA;AACI,4BAAA,OAAO,EAAE,yBAAyB;AAClC,4BAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,mBAAmB,CAAC,CAAC;AACzD,4BAAA,UAAU,EAAE,CAAC,QAAsC,KAAK,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC;AACxE,yBAAA;AACD,wBAAA;AACI,4BAAA,OAAO,EAAE,6BAA6B;AACtC,4BAAA,WAAW,EAA4B,0BAAA;AAC1C,yBAAA;AACJ,qBAAA;AACD,oBAAA,IAAI,EAAE;AACF,wBAAA,oCAAoC,EAAE,QAAQ;AAC9C,wBAAA,oCAAoC,EAAE,QAAQ;AACjD,qBAAA;AACJ,iBAAA,CAAA;;0BAyDQ,IAAI;;0BACJ,QAAQ;;0BACR,MAAM;2BAAC,yBAAyB,CAAA;;0BAEhC,MAAM;2BAAC,UAAU,CAAA;4CA1DL,YAAY,EAAA,CAAA;sBAD5B,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,mCAAmC,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAA;gBAIpD,OAAO,EAAA,CAAA;sBADvB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,SAAS,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAA;gBAIvB,iBAAiB,EAAA,CAAA;sBADjC,SAAS;uBAACD,sBAAoB,CAAA;gBAoBtB,UAAU,EAAA,CAAA;sBADlB,SAAS;uBAAC,sBAAsB,CAAA;gBAIjC,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,KAAK,EAAA,CAAA;sBADJ,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIG,KAAK,EAAA,CAAA;sBADb,MAAM;uBAAC,YAAY,CAAA;gBAQX,aAAa,EAAA,CAAA;sBADrB,MAAM;gBAmBH,IAAI,EAAA,CAAA;sBADP,KAAK;gBA6CN,YAAY,EAAA,CAAA;sBAFX,YAAY;uBAAC,wBAAwB,CAAA;;sBACrC,YAAY;uBAAC,yBAAyB,CAAA;gBAMvC,SAAS,EAAA,CAAA;sBADR,YAAY;uBAAC,SAAS,EAAE,CAAC,eAAe,CAAC,CAAA;gBAQ1C,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,eAAe,CAAC,CAAA;gBAaxC,YAAY,EAAA,CAAA;sBADX,YAAY;uBAAC,iCAAiC,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAQ3D,OAAO,EAAA,CAAA;sBAFN,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;;sBACpD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;;;ME3L3C,uBAAuB,CAAA;;qHAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,iBAX5B,yBAAyB;QACzB,+BAA+B;QAC/B,0BAA0B;AAC1B,QAAA,mCAAmC,aAXnC,YAAY;QACZ,kBAAkB;QAClB,YAAY;QACZ,iBAAiB;QACjB,mBAAmB;AACnB,QAAA,iBAAiB,aASjB,0BAA0B;QAC1B,mCAAmC;QACnC,2BAA2B,CAAA,EAAA,CAAA,CAAA;AAGtB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,EApBvB,OAAA,EAAA,CAAA;YACL,YAAY;YACZ,kBAAkB;YAClB,YAAY;YACZ,iBAAiB;YACjB,mBAAmB;YACnB,iBAAiB;AACpB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAaQ,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBArBnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,kBAAkB;wBAClB,YAAY;wBACZ,iBAAiB;wBACjB,mBAAmB;wBACnB,iBAAiB;AACpB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACV,yBAAyB;wBACzB,+BAA+B;wBAC/B,0BAA0B;wBAC1B,mCAAmC;AACtC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,0BAA0B;wBAC1B,mCAAmC;wBACnC,2BAA2B;AAC9B,qBAAA;AACJ,iBAAA,CAAA;;;AClCD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-hosted-dropdown.js","sources":["../../../projects/core/components/hosted-dropdown/accessor-proxy.directive.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown.token.ts","../../../projects/core/components/hosted-dropdown/dropdown-open-monitor.directive.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown-connector.directive.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown.component.ts","../../../projects/core/components/hosted-dropdown/hosted-dropdown.template.html","../../../projects/core/components/hosted-dropdown/hosted-dropdown.module.ts","../../../projects/core/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.ts"],"sourcesContent":["import {Directive, Optional, SkipSelf} from '@angular/core';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {TuiPoint} from '@taiga-ui/core/types';\n\n@Directive({\n selector: '[tuiAccessorProxy]',\n providers: [\n {\n provide: TuiPositionAccessor,\n multi: true,\n deps: [\n [new Optional(), new SkipSelf(), TuiAccessorProxyDirective],\n TuiAccessorProxyDirective,\n ],\n useFactory: (\n accessor: TuiPositionAccessor | null,\n fallback: TuiPositionAccessor,\n ) => accessor || fallback,\n },\n ],\n})\nexport class TuiAccessorProxyDirective extends TuiPositionAccessor {\n readonly type = 'dummy';\n\n getPosition(): TuiPoint {\n return [0, 0];\n }\n}\n","import {InjectionToken} from '@angular/core';\n\nimport type {TuiHostedDropdownComponent} from './hosted-dropdown.component';\n\nexport const TUI_HOSTED_DROPDOWN_COMPONENT =\n new InjectionToken<TuiHostedDropdownComponent>('[TUI_HOSTED_DROPDOWN_COMPONENT]');\n","import {Directive, Inject, Optional, Self} from '@angular/core';\nimport {TuiDestroyService, TuiInjectionTokenType} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective, TuiDropdownOpenDirective} from '@taiga-ui/core/directives';\nimport {Observable} from 'rxjs';\nimport {filter, takeUntil} from 'rxjs/operators';\n\nimport {TUI_HOSTED_DROPDOWN_COMPONENT} from './hosted-dropdown.token';\n\n@Directive({\n selector: '[tuiDropdownOpenMonitor]',\n providers: [TuiDestroyService],\n})\nexport class TuiDropdownOpenMonitorDirective {\n constructor(\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(TUI_HOSTED_DROPDOWN_COMPONENT)\n hosted: TuiInjectionTokenType<typeof TUI_HOSTED_DROPDOWN_COMPONENT>,\n @Self() @Inject(TuiDropdownDirective) dropdown: TuiDropdownDirective,\n @Optional()\n @Inject(TuiDropdownOpenDirective)\n open: TuiDropdownOpenDirective | null,\n ) {\n open?.tuiDropdownOpenChange\n .pipe(\n filter(value => value && open.dropdown === dropdown && !hosted.focused),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n hosted.nativeFocusableElement?.focus();\n hosted.updateOpen(true);\n });\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: '[tuiHostedDropdownHost]',\n})\nexport class TuiHostedDropdownConnectorDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {\n TuiActiveZoneDirective,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n TuiFocusableElementAccessor,\n tuiGetActualTarget,\n tuiGetClosestFocusable,\n tuiIsElement,\n tuiIsElementEditable,\n tuiIsHTMLElement,\n tuiIsNativeFocusedIn,\n tuiIsNativeKeyboardFocusable,\n TuiNativeFocusableElement,\n tuiTypedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {\n TuiDropdownDirective,\n TuiDropdownHoverDirective,\n} from '@taiga-ui/core/directives/dropdown';\nimport {tuiIsEditingKey} from '@taiga-ui/core/utils/miscellaneous';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, combineLatest, EMPTY, merge, of} from 'rxjs';\nimport {delay, distinctUntilChanged, map, share, skip, switchMap} from 'rxjs/operators';\n\nimport {TuiAccessorProxyDirective} from './accessor-proxy.directive';\nimport {TUI_HOSTED_DROPDOWN_COMPONENT} from './hosted-dropdown.token';\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\nfunction shouldClose(\n this: TuiHostedDropdownComponent,\n event: Event | KeyboardEvent,\n): boolean {\n return (\n 'key' in event &&\n event.key.toLowerCase() === 'escape' &&\n this.canOpen &&\n this.open &&\n !this.dropdown?.nextElementSibling\n );\n}\n\nexport interface TuiHostedDropdownContext\n extends TuiContextWithImplicit<TuiActiveZoneDirective> {\n close(): void;\n}\n\n@Component({\n selector: 'tui-hosted-dropdown',\n templateUrl: './hosted-dropdown.template.html',\n styleUrls: ['./hosted-dropdown.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiHostedDropdownComponent),\n {\n provide: TuiAccessorProxyDirective,\n deps: [[new Optional(), new Self(), TuiPositionAccessor]],\n useFactory: (position: TuiPositionAccessor[] | null) => position?.[0],\n },\n {\n provide: TUI_HOSTED_DROPDOWN_COMPONENT,\n useExisting: TuiHostedDropdownComponent,\n },\n ],\n host: {\n '[$.class._hosted_dropdown_focused]': 'focus$',\n '($.class._hosted_dropdown_focused)': 'focus$',\n },\n})\nexport class TuiHostedDropdownComponent implements TuiFocusableElementAccessor {\n @ContentChild(TuiHostedDropdownConnectorDirective, {read: ElementRef})\n private readonly dropdownHost?: ElementRef<HTMLElement>;\n\n @ViewChild('wrapper', {read: ElementRef})\n private readonly wrapper?: ElementRef<HTMLDivElement>;\n\n @ViewChild(TuiDropdownDirective)\n private readonly dropdownDirective?: TuiDropdownDirective;\n\n private readonly openChange$ = new BehaviorSubject(false);\n\n private readonly hostHover$ = combineLatest([\n tuiTypedFromEvent(this.el.nativeElement, 'mouseover').pipe(\n map(e => this.computedHost.contains(tuiGetActualTarget(e))),\n switchMap(visible =>\n of(visible).pipe(\n delay(\n (visible ? this.hover$?.showDelay : this.hover$?.hideDelay) || 0,\n ),\n ),\n ),\n ),\n this.hover$ || EMPTY,\n ]).pipe(map(([visible, hovered]) => visible && hovered));\n\n @ViewChild(TuiActiveZoneDirective)\n readonly activeZone!: TuiActiveZoneDirective;\n\n @Input()\n content: PolymorpheusContent<TuiHostedDropdownContext>;\n\n @Input()\n sided = false;\n\n @Input()\n canOpen = true;\n\n @Output('openChange')\n readonly open$ = merge(this.openChange$, this.hostHover$).pipe(\n skip(1),\n distinctUntilChanged(),\n share(),\n );\n\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n readonly focus$ = new BehaviorSubject(false);\n\n /** TODO: rename in 4.0 */\n readonly openChange = this.openChange$;\n\n readonly context!: TuiContextWithImplicit<TuiActiveZoneDirective>;\n\n constructor(\n @Self()\n @Optional()\n @Inject(TuiDropdownHoverDirective)\n private readonly hover$: TuiDropdownHoverDirective | null,\n @Inject(ElementRef) private readonly el: ElementRef,\n ) {}\n\n @Input()\n set open(open: boolean) {\n this.openChange.next(open);\n }\n\n get open(): boolean {\n return this.openChange.value;\n }\n\n get host(): HTMLElement {\n return this.dropdownHost?.nativeElement || this.el.nativeElement;\n }\n\n get computedHost(): HTMLElement {\n return (\n this.dropdownHost?.nativeElement ||\n this.nativeFocusableElement ||\n this.el.nativeElement\n );\n }\n\n get dropdown(): HTMLElement | undefined {\n return this.dropdownDirective?.dropdownBoxRef?.location.nativeElement;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return tuiIsNativeKeyboardFocusable(this.host)\n ? this.host\n : tuiGetClosestFocusable({\n initial: this.host,\n root: this.el.nativeElement,\n });\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocusedIn(this.host) ||\n (this.open &&\n !!this.wrapper &&\n tuiIsNativeFocusedIn(this.wrapper.nativeElement))\n );\n }\n\n @HostListener('focusin.capture.silent')\n @HostListener('focusout.capture.silent')\n onFocusInOut(): void {\n this.focus$.next(this.focused);\n }\n\n @HostListener('focusin', ['$event.target'])\n onFocusIn(target: HTMLElement): void {\n if (!this.computedHost.contains(target)) {\n this.updateOpen(false);\n }\n }\n\n @HostListener('click', ['$event.target'])\n onClick(target: HTMLElement): void {\n if (\n !this.hostEditable &&\n this.computedHost.contains(target) &&\n !this.hover$?.hovered\n ) {\n this.updateOpen(!this.open);\n }\n }\n\n @shouldCall(shouldClose)\n @HostListener('document:keydown.silent.capture', ['$event'])\n onKeyDownEsc(event: Event): void {\n event.preventDefault();\n this.closeDropdown();\n }\n\n @HostListener('keydown.arrowDown', ['$event', 'true'])\n @HostListener('keydown.arrowUp', ['$event', 'false'])\n onArrow(event: KeyboardEvent, down: boolean): void {\n this.focusDropdown(event, down);\n }\n\n onKeydown({key, target, defaultPrevented}: KeyboardEvent): void {\n if (\n !defaultPrevented &&\n tuiIsEditingKey(key) &&\n this.hostEditable &&\n tuiIsHTMLElement(target) &&\n !tuiIsElementEditable(target)\n ) {\n this.focusHost();\n }\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n\n if (!active) {\n this.updateOpen(false);\n }\n }\n\n onHostObscured(obscured: boolean): void {\n if (obscured) {\n this.closeDropdown();\n }\n }\n\n updateOpen(open: boolean): void {\n if (!open || this.canOpen) {\n this.open = open;\n }\n }\n\n readonly close = (): void => this.updateOpen(false);\n\n private get hostEditable(): boolean {\n return tuiIsElementEditable(this.computedHost);\n }\n\n private focusDropdown(event: KeyboardEvent, first: boolean): void {\n const host = this.nativeFocusableElement;\n\n if (\n !host ||\n !tuiIsHTMLElement(host) ||\n !tuiIsElement(event.target) ||\n !host.contains(event.target)\n ) {\n return;\n }\n\n if (\n !this.wrapper ||\n !this.open ||\n !this.dropdown ||\n !tuiIsHTMLElement(this.wrapper.nativeElement.nextElementSibling)\n ) {\n this.updateOpen(true);\n\n if (!tuiIsElementEditable(host)) {\n event.preventDefault();\n }\n\n return;\n }\n\n const initial = first\n ? this.wrapper.nativeElement\n : this.wrapper.nativeElement.nextElementSibling;\n const focusable = tuiGetClosestFocusable({\n initial,\n root: this.wrapper.nativeElement,\n previous: !first,\n });\n\n if (!focusable) {\n return;\n }\n\n focusable.focus();\n event.preventDefault();\n }\n\n private closeDropdown(): void {\n if (this.focused) {\n this.focusHost();\n }\n\n this.updateOpen(false);\n }\n\n private focusHost(): void {\n const host = this.nativeFocusableElement;\n\n if (host) {\n host.focus({preventScroll: true});\n }\n }\n\n private updateFocused(focused: boolean): void {\n this.focusedChange.emit(focused);\n }\n}\n","<div\n *tuiLet=\"(open$ | async) ?? openChange.value as isOpen\"\n #activeZone=\"tuiActiveZone\"\n tuiAccessorProxy\n tuiDropdownOpenMonitor\n class=\"t-wrapper\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownManual]=\"isOpen && canOpen\"\n [tuiDropdownSided]=\"sided\"\n [tuiObscuredEnabled]=\"isOpen\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (tuiObscured)=\"onHostObscured($event)\"\n>\n <ng-content></ng-content>\n <ng-template\n #dropdown=\"polymorpheus\"\n [polymorpheus]=\"context\"\n >\n <div\n #wrapper\n class=\"t-dropdown\"\n (keydown)=\"onKeydown($event)\"\n >\n <div\n *polymorpheusOutlet=\"\n content as text;\n context: {\n $implicit: activeZone,\n close: close\n }\n \"\n class=\"t-primitive\"\n >\n {{ text }}\n </div>\n </div>\n <!--This DIV is here to start backwards TreeWalker for focusing last focusable item on ArrowUp-->\n <div></div>\n </ng-template>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiLetModule, TuiObscuredModule} from '@taiga-ui/cdk';\nimport {\n TuiDropdownModule,\n TuiDropdownOptionsDirective,\n} from '@taiga-ui/core/directives/dropdown';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiAccessorProxyDirective} from './accessor-proxy.directive';\nimport {TuiDropdownOpenMonitorDirective} from './dropdown-open-monitor.directive';\nimport {TuiHostedDropdownComponent} from './hosted-dropdown.component';\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiObscuredModule,\n TuiActiveZoneModule,\n TuiDropdownModule,\n ],\n declarations: [\n TuiAccessorProxyDirective,\n TuiDropdownOpenMonitorDirective,\n TuiHostedDropdownComponent,\n TuiHostedDropdownConnectorDirective,\n ],\n exports: [\n TuiHostedDropdownComponent,\n TuiHostedDropdownConnectorDirective,\n TuiDropdownOptionsDirective,\n ],\n})\nexport class TuiHostedDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TuiDropdownDirective","i1","i2.TuiAccessorProxyDirective","i3.TuiDropdownOpenMonitorDirective"],"mappings":"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"}
@@ -9,7 +9,7 @@ import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
9
9
 
10
10
  /** Default values for the loader options. */
11
11
  const TUI_LOADER_DEFAULT_OPTIONS = {
12
- size: `m`,
12
+ size: 'm',
13
13
  inheritColor: false,
14
14
  overlay: false,
15
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-loader.js","sources":["../../../projects/core/components/loader/loader.options.ts","../../../projects/core/components/loader/loader.component.ts","../../../projects/core/components/loader/loader.template.html","../../../projects/core/components/loader/loader.module.ts","../../../projects/core/components/loader/taiga-ui-core-components-loader.ts"],"sourcesContent":["import {Provider} from '@angular/core';\nimport {tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core/types';\n\nexport interface TuiLoaderOptions {\n readonly inheritColor: boolean;\n readonly overlay: boolean;\n readonly size: TuiSizeXS | TuiSizeXXL;\n}\n\n/** Default values for the loader options. */\nexport const TUI_LOADER_DEFAULT_OPTIONS: TuiLoaderOptions = {\n size: `m`,\n inheritColor: false,\n overlay: false,\n};\n\n/**\n * Default parameters for loader component\n */\nexport const TUI_LOADER_OPTIONS = tuiCreateToken(TUI_LOADER_DEFAULT_OPTIONS);\n\nexport function tuiLoaderOptionsProvider(options: Partial<TuiLoaderOptions>): Provider {\n return tuiProvideOptions(TUI_LOADER_OPTIONS, options, TUI_LOADER_DEFAULT_OPTIONS);\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {\n TUI_IS_IOS,\n tuiBlurNativeFocused,\n tuiIsNativeFocusedIn,\n tuiIsSafari,\n} from '@taiga-ui/cdk';\nimport {tuiSizeBigger} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_LOADER_OPTIONS, TuiLoaderOptions} from './loader.options';\n\n@Component({\n selector: 'tui-loader',\n templateUrl: './loader.template.html',\n styleUrls: ['./loader.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLoaderComponent {\n @Input()\n size = this.options.size;\n\n @Input()\n inheritColor = this.options.inheritColor;\n\n @Input()\n overlay = this.options.overlay;\n\n @Input()\n textContent: PolymorpheusContent;\n\n @Input()\n set showLoader(value: boolean) {\n // @bad TODO: https://github.com/angular/angular/issues/32083 think of a better way\n if (value && this.focused) {\n tuiBlurNativeFocused(this.doc);\n }\n\n this.loading = value;\n }\n\n @HostBinding('class._loading')\n loading = true;\n\n readonly isApple = tuiIsSafari(this.el.nativeElement) || this.isIos;\n\n constructor(\n @Inject(DOCUMENT) private readonly doc: Document,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n @Inject(TUI_LOADER_OPTIONS) private readonly options: TuiLoaderOptions,\n ) {}\n\n get hasOverlay(): boolean {\n return this.overlay && this.loading;\n }\n\n get hasText(): boolean {\n return !!this.textContent;\n }\n\n get isHorizontal(): boolean {\n return !tuiSizeBigger(this.size);\n }\n\n get focused(): boolean {\n return tuiIsNativeFocusedIn(this.el.nativeElement);\n }\n}\n","<fieldset\n class=\"t-content\"\n [attr.inert]=\"loading || null\"\n [class.t-content_has-overlay]=\"hasOverlay\"\n [class.t-content_loading]=\"loading\"\n [disabled]=\"loading && !isApple\"\n>\n <ng-content></ng-content>\n</fieldset>\n\n<div\n *ngIf=\"loading\"\n class=\"t-loader\"\n [attr.data-size]=\"size\"\n [class.t-loader_horizontal]=\"isHorizontal\"\n [class.t-loader_inherit-color]=\"inheritColor\"\n>\n <svg\n automation-id=\"tui-loader__loader\"\n focusable=\"false\"\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-icon\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n\n <div\n *ngIf=\"hasText\"\n automation-id=\"tui-loader__text\"\n class=\"t-text\"\n [class.t-text_horizontal]=\"isHorizontal\"\n >\n <ng-container *polymorpheusOutlet=\"textContent as text\">\n {{ text }}\n </ng-container>\n </div>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLoaderComponent} from './loader.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule],\n declarations: [TuiLoaderComponent],\n exports: [TuiLoaderComponent],\n})\nexport class TuiLoaderModule {}\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-core-components-loader.js","sources":["../../../projects/core/components/loader/loader.options.ts","../../../projects/core/components/loader/loader.component.ts","../../../projects/core/components/loader/loader.template.html","../../../projects/core/components/loader/loader.module.ts","../../../projects/core/components/loader/taiga-ui-core-components-loader.ts"],"sourcesContent":["import {Provider} from '@angular/core';\nimport {tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core/types';\n\nexport interface TuiLoaderOptions {\n readonly inheritColor: boolean;\n readonly overlay: boolean;\n readonly size: TuiSizeXS | TuiSizeXXL;\n}\n\n/** Default values for the loader options. */\nexport const TUI_LOADER_DEFAULT_OPTIONS: TuiLoaderOptions = {\n size: 'm',\n inheritColor: false,\n overlay: false,\n};\n\n/**\n * Default parameters for loader component\n */\nexport const TUI_LOADER_OPTIONS = tuiCreateToken(TUI_LOADER_DEFAULT_OPTIONS);\n\nexport function tuiLoaderOptionsProvider(options: Partial<TuiLoaderOptions>): Provider {\n return tuiProvideOptions(TUI_LOADER_OPTIONS, options, TUI_LOADER_DEFAULT_OPTIONS);\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {\n TUI_IS_IOS,\n tuiBlurNativeFocused,\n tuiIsNativeFocusedIn,\n tuiIsSafari,\n} from '@taiga-ui/cdk';\nimport {tuiSizeBigger} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_LOADER_OPTIONS, TuiLoaderOptions} from './loader.options';\n\n@Component({\n selector: 'tui-loader',\n templateUrl: './loader.template.html',\n styleUrls: ['./loader.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLoaderComponent {\n @Input()\n size = this.options.size;\n\n @Input()\n inheritColor = this.options.inheritColor;\n\n @Input()\n overlay = this.options.overlay;\n\n @Input()\n textContent: PolymorpheusContent;\n\n @Input()\n set showLoader(value: boolean) {\n // @bad TODO: https://github.com/angular/angular/issues/32083 think of a better way\n if (value && this.focused) {\n tuiBlurNativeFocused(this.doc);\n }\n\n this.loading = value;\n }\n\n @HostBinding('class._loading')\n loading = true;\n\n readonly isApple = tuiIsSafari(this.el.nativeElement) || this.isIos;\n\n constructor(\n @Inject(DOCUMENT) private readonly doc: Document,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n @Inject(TUI_LOADER_OPTIONS) private readonly options: TuiLoaderOptions,\n ) {}\n\n get hasOverlay(): boolean {\n return this.overlay && this.loading;\n }\n\n get hasText(): boolean {\n return !!this.textContent;\n }\n\n get isHorizontal(): boolean {\n return !tuiSizeBigger(this.size);\n }\n\n get focused(): boolean {\n return tuiIsNativeFocusedIn(this.el.nativeElement);\n }\n}\n","<fieldset\n class=\"t-content\"\n [attr.inert]=\"loading || null\"\n [class.t-content_has-overlay]=\"hasOverlay\"\n [class.t-content_loading]=\"loading\"\n [disabled]=\"loading && !isApple\"\n>\n <ng-content></ng-content>\n</fieldset>\n\n<div\n *ngIf=\"loading\"\n class=\"t-loader\"\n [attr.data-size]=\"size\"\n [class.t-loader_horizontal]=\"isHorizontal\"\n [class.t-loader_inherit-color]=\"inheritColor\"\n>\n <svg\n automation-id=\"tui-loader__loader\"\n focusable=\"false\"\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-icon\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n\n <div\n *ngIf=\"hasText\"\n automation-id=\"tui-loader__text\"\n class=\"t-text\"\n [class.t-text_horizontal]=\"isHorizontal\"\n >\n <ng-container *polymorpheusOutlet=\"textContent as text\">\n {{ text }}\n </ng-container>\n </div>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLoaderComponent} from './loader.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule],\n declarations: [TuiLoaderComponent],\n exports: [TuiLoaderComponent],\n})\nexport class TuiLoaderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAUA;AACa,MAAA,0BAA0B,GAAqB;AACxD,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,OAAO,EAAE,KAAK;EAChB;AAEF;;AAEG;MACU,kBAAkB,GAAG,cAAc,CAAC,0BAA0B,EAAE;AAEvE,SAAU,wBAAwB,CAAC,OAAkC,EAAA;IACvE,OAAO,iBAAiB,CAAC,kBAAkB,EAAE,OAAO,EAAE,0BAA0B,CAAC,CAAC;AACtF;;MCEa,kBAAkB,CAAA;AA4B3B,IAAA,WAAA,CACuC,GAAa,EACX,EAA2B,EAC3B,KAAc,EACN,OAAyB,EAAA;QAHnC,IAAG,CAAA,GAAA,GAAH,GAAG,CAAU;QACX,IAAE,CAAA,EAAA,GAAF,EAAE,CAAyB;QAC3B,IAAK,CAAA,KAAA,GAAL,KAAK,CAAS;QACN,IAAO,CAAA,OAAA,GAAP,OAAO,CAAkB;AA9B1E,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AAGzB,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;AAGzC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAgB/B,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;AAEN,QAAA,IAAA,CAAA,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;KAOhE;IApBJ,IACI,UAAU,CAAC,KAAc,EAAA;;AAEzB,QAAA,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE;AACvB,YAAA,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClC,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACxB;AAcD,IAAA,IAAI,UAAU,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;KACvC;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;KAC7B;AAED,IAAA,IAAI,YAAY,GAAA;AACZ,QAAA,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACpC;AAED,IAAA,IAAI,OAAO,GAAA;QACP,OAAO,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;KACtD;;AAjDQ,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,kBA6Bf,QAAQ,EAAA,EAAA,EAAA,KAAA,EACR,UAAU,EACV,EAAA,EAAA,KAAA,EAAA,UAAU,aACV,kBAAkB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAhCrB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,gPC1B/B,inCA4CA,EAAA,MAAA,EAAA,CAAA,kuDAAA,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;4FDlBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,WAAW,EAAE,wBAAwB;oBACrC,SAAS,EAAE,CAAC,qBAAqB,CAAC;oBAClC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAClD,iBAAA,CAAA;0DA8B+C,QAAQ,EAAA,UAAA,EAAA,CAAA;0BAA/C,MAAM;2BAAC,QAAQ,CAAA;;0BACf,MAAM;2BAAC,UAAU,CAAA;;0BACjB,MAAM;2BAAC,UAAU,CAAA;;0BACjB,MAAM;2BAAC,kBAAkB,CAAA;4CA9B9B,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,YAAY,EAAA,CAAA;sBADX,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,WAAW,EAAA,CAAA;sBADV,KAAK;gBAIF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAWN,OAAO,EAAA,CAAA;sBADN,WAAW;uBAAC,gBAAgB,CAAA;;;MEtCpB,eAAe,CAAA;;6GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAHT,kBAAkB,CAAA,EAAA,OAAA,EAAA,CADvB,YAAY,EAAE,kBAAkB,aAEhC,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAEnB,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAJf,OAAA,EAAA,CAAA,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAA,EAAA,CAAA,CAAA;4FAIlC,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,CAAC;oBAC3C,YAAY,EAAE,CAAC,kBAAkB,CAAC;oBAClC,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAChC,iBAAA,CAAA;;;ACVD;;AAEG;;;;"}
@@ -11,15 +11,15 @@ import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
11
11
 
12
12
  /** Default values for the checkbox options. */
13
13
  const TUI_CHECKBOX_DEFAULT_OPTIONS = {
14
- size: `m`,
14
+ size: 'm',
15
15
  appearances: {
16
16
  unchecked: TuiAppearance.Outline,
17
17
  checked: TuiAppearance.Primary,
18
18
  indeterminate: TuiAppearance.Primary,
19
19
  },
20
20
  icons: {
21
- checked: ({ $implicit }) => $implicit === `m` ? `tuiIconCheck` : `tuiIconCheckLarge`,
22
- indeterminate: ({ $implicit }) => $implicit === `m` ? `tuiIconMinus` : `tuiIconMinusLarge`,
21
+ checked: ({ $implicit }) => $implicit === 'm' ? 'tuiIconCheck' : 'tuiIconCheckLarge',
22
+ indeterminate: ({ $implicit }) => $implicit === 'm' ? 'tuiIconMinus' : 'tuiIconMinusLarge',
23
23
  },
24
24
  };
25
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-primitive-checkbox.js","sources":["../../../projects/core/components/primitive-checkbox/checkbox.options.ts","../../../projects/core/components/primitive-checkbox/primitive-checkbox.component.ts","../../../projects/core/components/primitive-checkbox/primitive-checkbox.template.html","../../../projects/core/components/primitive-checkbox/primitive-checkbox.module.ts","../../../projects/core/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.ts"],"sourcesContent":["import {Provider} from '@angular/core';\nimport {TuiContextWithImplicit, tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiCheckboxOptions {\n readonly appearances: Readonly<{\n checked: string;\n indeterminate: string;\n unchecked: string;\n }>;\n readonly icons: Readonly<{\n checked: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n indeterminate: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n }>;\n readonly size: TuiSizeL;\n}\n\n/** Default values for the checkbox options. */\nexport const TUI_CHECKBOX_DEFAULT_OPTIONS: TuiCheckboxOptions = {\n size: `m`,\n appearances: {\n unchecked: TuiAppearance.Outline,\n checked: TuiAppearance.Primary,\n indeterminate: TuiAppearance.Primary,\n },\n icons: {\n checked: ({$implicit}) =>\n $implicit === `m` ? `tuiIconCheck` : `tuiIconCheckLarge`,\n indeterminate: ({$implicit}) =>\n $implicit === `m` ? `tuiIconMinus` : `tuiIconMinusLarge`,\n },\n};\n\n/**\n * Default parameters for checkbox component\n */\nexport const TUI_CHECKBOX_OPTIONS = tuiCreateToken(TUI_CHECKBOX_DEFAULT_OPTIONS);\n\nexport function tuiCheckboxOptionsProvider(\n options: Partial<TuiCheckboxOptions>,\n): Provider {\n return tuiProvideOptions(TUI_CHECKBOX_OPTIONS, options, TUI_CHECKBOX_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_CHECKBOX_OPTIONS, TuiCheckboxOptions} from './checkbox.options';\n\n@Component({\n selector: 'tui-primitive-checkbox',\n templateUrl: './primitive-checkbox.template.html',\n styleUrls: ['./primitive-checkbox.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveCheckboxComponent {\n @Input()\n @HostBinding('attr.data-size')\n size: TuiSizeL = this.options.size;\n\n @Input()\n disabled = false;\n\n @Input()\n focused = false;\n\n @Input()\n hovered: boolean | null = false;\n\n @Input()\n pressed: boolean | null = false;\n\n @Input()\n invalid = false;\n\n @Input('value')\n set valueSetter(value: boolean | null) {\n if (value !== false) {\n this.setCurrentIcon(value);\n }\n\n this.value = value;\n }\n\n icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> =\n this.options.icons.checked;\n\n value: boolean | null = false;\n\n constructor(\n @Inject(TUI_CHECKBOX_OPTIONS) private readonly options: TuiCheckboxOptions,\n ) {}\n\n get appearance(): string {\n switch (this.value) {\n case false:\n return this.options.appearances.unchecked;\n case true:\n return this.options.appearances.checked;\n default:\n return this.options.appearances.indeterminate;\n }\n }\n\n get empty(): boolean {\n return this.value === false;\n }\n\n private setCurrentIcon(value: boolean | null): void {\n this.icon =\n value === null\n ? this.options.icons.indeterminate\n : this.options.icons.checked;\n }\n}\n","<div\n tuiWrapper\n [active]=\"pressed\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"focused\"\n [hover]=\"hovered\"\n [invalid]=\"invalid\"\n>\n <tui-svg\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n class=\"t-mark\"\n [class.t-mark_on]=\"!empty\"\n [src]=\"src\"\n ></tui-svg>\n <ng-content></ng-content>\n</div>\n","import {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiWrapperModule} from '@taiga-ui/core/directives/wrapper';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPrimitiveCheckboxComponent} from './primitive-checkbox.component';\n\n@NgModule({\n imports: [TuiSvgModule, TuiWrapperModule, PolymorpheusModule],\n declarations: [TuiPrimitiveCheckboxComponent],\n exports: [TuiPrimitiveCheckboxComponent],\n})\nexport class TuiPrimitiveCheckboxModule {}\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-core-components-primitive-checkbox.js","sources":["../../../projects/core/components/primitive-checkbox/checkbox.options.ts","../../../projects/core/components/primitive-checkbox/primitive-checkbox.component.ts","../../../projects/core/components/primitive-checkbox/primitive-checkbox.template.html","../../../projects/core/components/primitive-checkbox/primitive-checkbox.module.ts","../../../projects/core/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.ts"],"sourcesContent":["import {Provider} from '@angular/core';\nimport {TuiContextWithImplicit, tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiCheckboxOptions {\n readonly appearances: Readonly<{\n checked: string;\n indeterminate: string;\n unchecked: string;\n }>;\n readonly icons: Readonly<{\n checked: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n indeterminate: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n }>;\n readonly size: TuiSizeL;\n}\n\n/** Default values for the checkbox options. */\nexport const TUI_CHECKBOX_DEFAULT_OPTIONS: TuiCheckboxOptions = {\n size: 'm',\n appearances: {\n unchecked: TuiAppearance.Outline,\n checked: TuiAppearance.Primary,\n indeterminate: TuiAppearance.Primary,\n },\n icons: {\n checked: ({$implicit}) =>\n $implicit === 'm' ? 'tuiIconCheck' : 'tuiIconCheckLarge',\n indeterminate: ({$implicit}) =>\n $implicit === 'm' ? 'tuiIconMinus' : 'tuiIconMinusLarge',\n },\n};\n\n/**\n * Default parameters for checkbox component\n */\nexport const TUI_CHECKBOX_OPTIONS = tuiCreateToken(TUI_CHECKBOX_DEFAULT_OPTIONS);\n\nexport function tuiCheckboxOptionsProvider(\n options: Partial<TuiCheckboxOptions>,\n): Provider {\n return tuiProvideOptions(TUI_CHECKBOX_OPTIONS, options, TUI_CHECKBOX_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_CHECKBOX_OPTIONS, TuiCheckboxOptions} from './checkbox.options';\n\n@Component({\n selector: 'tui-primitive-checkbox',\n templateUrl: './primitive-checkbox.template.html',\n styleUrls: ['./primitive-checkbox.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveCheckboxComponent {\n @Input()\n @HostBinding('attr.data-size')\n size: TuiSizeL = this.options.size;\n\n @Input()\n disabled = false;\n\n @Input()\n focused = false;\n\n @Input()\n hovered: boolean | null = false;\n\n @Input()\n pressed: boolean | null = false;\n\n @Input()\n invalid = false;\n\n @Input('value')\n set valueSetter(value: boolean | null) {\n if (value !== false) {\n this.setCurrentIcon(value);\n }\n\n this.value = value;\n }\n\n icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> =\n this.options.icons.checked;\n\n value: boolean | null = false;\n\n constructor(\n @Inject(TUI_CHECKBOX_OPTIONS) private readonly options: TuiCheckboxOptions,\n ) {}\n\n get appearance(): string {\n switch (this.value) {\n case false:\n return this.options.appearances.unchecked;\n case true:\n return this.options.appearances.checked;\n default:\n return this.options.appearances.indeterminate;\n }\n }\n\n get empty(): boolean {\n return this.value === false;\n }\n\n private setCurrentIcon(value: boolean | null): void {\n this.icon =\n value === null\n ? this.options.icons.indeterminate\n : this.options.icons.checked;\n }\n}\n","<div\n tuiWrapper\n [active]=\"pressed\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"focused\"\n [hover]=\"hovered\"\n [invalid]=\"invalid\"\n>\n <tui-svg\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n class=\"t-mark\"\n [class.t-mark_on]=\"!empty\"\n [src]=\"src\"\n ></tui-svg>\n <ng-content></ng-content>\n</div>\n","import {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiWrapperModule} from '@taiga-ui/core/directives/wrapper';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPrimitiveCheckboxComponent} from './primitive-checkbox.component';\n\n@NgModule({\n imports: [TuiSvgModule, TuiWrapperModule, PolymorpheusModule],\n declarations: [TuiPrimitiveCheckboxComponent],\n exports: [TuiPrimitiveCheckboxComponent],\n})\nexport class TuiPrimitiveCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAmBA;AACa,MAAA,4BAA4B,GAAuB;AAC5D,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,WAAW,EAAE;QACT,SAAS,EAAE,aAAa,CAAC,OAAO;QAChC,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,aAAa,EAAE,aAAa,CAAC,OAAO;AACvC,KAAA;AACD,IAAA,KAAK,EAAE;AACH,QAAA,OAAO,EAAE,CAAC,EAAC,SAAS,EAAC,KACjB,SAAS,KAAK,GAAG,GAAG,cAAc,GAAG,mBAAmB;AAC5D,QAAA,aAAa,EAAE,CAAC,EAAC,SAAS,EAAC,KACvB,SAAS,KAAK,GAAG,GAAG,cAAc,GAAG,mBAAmB;AAC/D,KAAA;EACH;AAEF;;AAEG;MACU,oBAAoB,GAAG,cAAc,CAAC,4BAA4B,EAAE;AAE3E,SAAU,0BAA0B,CACtC,OAAoC,EAAA;IAEpC,OAAO,iBAAiB,CAAC,oBAAoB,EAAE,OAAO,EAAE,4BAA4B,CAAC,CAAC;AAC1F;;MCzBa,6BAA6B,CAAA;AAkCtC,IAAA,WAAA,CACmD,OAA2B,EAAA;QAA3B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAoB;AAhC9E,QAAA,IAAA,CAAA,IAAI,GAAa,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAGnC,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAGjB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAGhB,IAAO,CAAA,OAAA,GAAmB,KAAK,CAAC;QAGhC,IAAO,CAAA,OAAA,GAAmB,KAAK,CAAC;QAGhC,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAWhB,IAAI,CAAA,IAAA,GACA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;QAE/B,IAAK,CAAA,KAAA,GAAmB,KAAK,CAAC;KAI1B;IAhBJ,IACI,WAAW,CAAC,KAAqB,EAAA;QACjC,IAAI,KAAK,KAAK,KAAK,EAAE;AACjB,YAAA,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAC9B,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACtB;AAWD,IAAA,IAAI,UAAU,GAAA;QACV,QAAQ,IAAI,CAAC,KAAK;AACd,YAAA,KAAK,KAAK;AACN,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC;AAC9C,YAAA,KAAK,IAAI;AACL,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;AAC5C,YAAA;AACI,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC;AACrD,SAAA;KACJ;AAED,IAAA,IAAI,KAAK,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC;KAC/B;AAEO,IAAA,cAAc,CAAC,KAAqB,EAAA;AACxC,QAAA,IAAI,CAAC,IAAI;AACL,YAAA,KAAK,KAAK,IAAI;AACV,kBAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa;kBAChC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;KACxC;;AA1DQ,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,kBAmC1B,oBAAoB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAnCvB,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,6BAA6B,8RCnB1C,saAiBA,EAAA,MAAA,EAAA,CAAA,+ZAAA,CAAA,EAAA,UAAA,EAAA,CAAA,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,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,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;4FDEa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBANzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,WAAW,EAAE,oCAAoC;oBACjD,SAAS,EAAE,CAAC,iCAAiC,CAAC;oBAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAClD,iBAAA,CAAA;;0BAoCQ,MAAM;2BAAC,oBAAoB,CAAA;4CAhChC,IAAI,EAAA,CAAA;sBAFH,KAAK;;sBACL,WAAW;uBAAC,gBAAgB,CAAA;gBAI7B,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIF,WAAW,EAAA,CAAA;sBADd,KAAK;uBAAC,OAAO,CAAA;;;ME3BL,0BAA0B,CAAA;;wHAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;yHAA1B,0BAA0B,EAAA,YAAA,EAAA,CAHpB,6BAA6B,CADlC,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAElD,6BAA6B,CAAA,EAAA,CAAA,CAAA;AAE9B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YAJ1B,CAAC,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAA,EAAA,CAAA,CAAA;4FAIpD,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBALtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;oBAC7D,YAAY,EAAE,CAAC,6BAA6B,CAAC;oBAC7C,OAAO,EAAE,CAAC,6BAA6B,CAAC;AAC3C,iBAAA,CAAA;;;ACXD;;AAEG;;;;"}
@@ -32,7 +32,7 @@ class TuiRootComponent {
32
32
  }
33
33
  }
34
34
  TuiRootComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiRootComponent, deps: [{ token: TUI_REDUCED_MOTION }, { token: TUI_ANIMATIONS_DURATION }, { token: TUI_DIALOGS }, { token: TUI_IS_MOBILE }, { token: TuiBreakpointService }, { token: TUI_IS_IOS }, { token: TUI_IS_ANDROID }, { token: DOCUMENT }, { token: TUI_THEME }], target: i0.ɵɵFactoryTarget.Component });
35
- TuiRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiRootComponent, selector: "tui-root", host: { attributes: { "data-tui-version": "3.60.0" }, listeners: { "$.class._mobile": "isMobileRes$" }, properties: { "style.--tui-duration.ms": "duration", "class._ios": "isIOS", "class._android": "isAndroid", "class._reduced-motion": "reducedMotion", "$.class._mobile": "isMobileRes$" } }, ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<!--TODO: 4.0 rename to tuiOverDropdowns-->\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n", styles: ["@keyframes tuiPresent{to{content:\"1\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}html,.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html::-webkit-scrollbar-thumb,.tui-zero-scrollbar::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}body{font:var(--tui-font-text-s);color:var(--tui-text-01);background:var(--tui-base-01);margin:0}tui-root{position:relative;display:block;flex:1;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.t-root-content{height:100%;isolation:isolate}.t-overscroll-none{overscroll-behavior:none;overflow:hidden}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }, { type: i2.TuiSvgDefsHostComponent, selector: "tui-svg-defs-host" }, { type: i1.TuiDropdownHostComponent, selector: "tui-dropdown-host" }, { type: i1.TuiDialogHostComponent, selector: "tui-dialog-host" }, { type: i1.TuiAlertHostComponent, selector: "tui-alert-host" }, { type: i3.TuiHintsHostComponent, selector: "tui-hints-host" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
35
+ TuiRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiRootComponent, selector: "tui-root", host: { attributes: { "data-tui-version": "3.61.0" }, listeners: { "$.class._mobile": "isMobileRes$" }, properties: { "style.--tui-duration.ms": "duration", "class._ios": "isIOS", "class._android": "isAndroid", "class._reduced-motion": "reducedMotion", "$.class._mobile": "isMobileRes$" } }, ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<!--TODO: 4.0 rename to tuiOverDropdowns-->\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n", styles: ["@keyframes tuiPresent{to{content:\"1\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}html,.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html::-webkit-scrollbar-thumb,.tui-zero-scrollbar::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}body{font:var(--tui-font-text-s);color:var(--tui-text-01);background:var(--tui-base-01);margin:0}tui-root{position:relative;display:block;flex:1;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.t-root-content{height:100%;isolation:isolate}.t-overscroll-none{overscroll-behavior:none}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }, { type: i2.TuiSvgDefsHostComponent, selector: "tui-svg-defs-host" }, { type: i1.TuiDropdownHostComponent, selector: "tui-dropdown-host" }, { type: i1.TuiDialogHostComponent, selector: "tui-dialog-host" }, { type: i1.TuiAlertHostComponent, selector: "tui-alert-host" }, { type: i3.TuiHintsHostComponent, selector: "tui-hints-host" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
36
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiRootComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-root.js","sources":["../../../projects/core/components/root/root.component.ts","../../../projects/core/components/root/root.template.html","../../../projects/core/components/root/root.module.ts","../../../projects/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Inject,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n TUI_DIALOGS,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n TUI_IS_MOBILE,\n TUI_VERSION,\n} from '@taiga-ui/cdk';\nimport {TuiBreakpointService} from '@taiga-ui/core/services';\nimport {\n TUI_ANIMATIONS_DURATION,\n TUI_REDUCED_MOTION,\n TUI_THEME,\n} from '@taiga-ui/core/tokens';\nimport {combineLatest, Observable, of} from 'rxjs';\nimport {debounceTime, map} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-root',\n templateUrl: './root.template.html',\n styleUrls: ['./root.style.less'],\n encapsulation: ViewEncapsulation.None,\n // So that we do not force OnPush on custom dialogs\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n 'data-tui-version': TUI_VERSION,\n '[style.--tui-duration.ms]': 'duration',\n '[class._ios]': 'isIOS',\n '[class._android]': 'isAndroid',\n '[class._reduced-motion]': 'reducedMotion',\n '[$.class._mobile]': 'isMobileRes$',\n '($.class._mobile)': 'isMobileRes$',\n },\n})\nexport class TuiRootComponent {\n readonly isMobileRes$ = this.breakpoint.pipe(\n map(breakpoint => breakpoint === 'mobile'),\n );\n\n readonly scrollbars$: Observable<boolean> =\n this.dialogs.length && !this.isMobile\n ? combineLatest([...this.dialogs]).pipe(\n map(dialogs => !dialogs.some(({length}) => length)),\n debounceTime(0),\n )\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_REDUCED_MOTION) readonly reducedMotion: boolean,\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(TUI_DIALOGS)\n readonly dialogs: ReadonlyArray<Observable<readonly unknown[]>>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TuiBreakpointService) private readonly breakpoint: TuiBreakpointService,\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(TUI_IS_ANDROID) readonly isAndroid: boolean,\n @Inject(DOCUMENT) {body}: Document,\n @Inject(TUI_THEME) theme: string,\n ) {\n body.setAttribute('data-tui-theme', theme.toLowerCase());\n }\n}\n","<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<!--TODO: 4.0 rename to tuiOverDropdowns-->\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiAlertHostModule,\n TuiDialogHostModule,\n TuiDropdownHostModule,\n TuiScrollControlsModule,\n} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDropdownHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiAlertHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\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-core-components-root.js","sources":["../../../projects/core/components/root/root.component.ts","../../../projects/core/components/root/root.template.html","../../../projects/core/components/root/root.module.ts","../../../projects/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Inject,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n TUI_DIALOGS,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n TUI_IS_MOBILE,\n TUI_VERSION,\n} from '@taiga-ui/cdk';\nimport {TuiBreakpointService} from '@taiga-ui/core/services';\nimport {\n TUI_ANIMATIONS_DURATION,\n TUI_REDUCED_MOTION,\n TUI_THEME,\n} from '@taiga-ui/core/tokens';\nimport {combineLatest, Observable, of} from 'rxjs';\nimport {debounceTime, map} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-root',\n templateUrl: './root.template.html',\n styleUrls: ['./root.style.less'],\n encapsulation: ViewEncapsulation.None,\n // So that we do not force OnPush on custom dialogs\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n 'data-tui-version': TUI_VERSION,\n '[style.--tui-duration.ms]': 'duration',\n '[class._ios]': 'isIOS',\n '[class._android]': 'isAndroid',\n '[class._reduced-motion]': 'reducedMotion',\n '[$.class._mobile]': 'isMobileRes$',\n '($.class._mobile)': 'isMobileRes$',\n },\n})\nexport class TuiRootComponent {\n readonly isMobileRes$ = this.breakpoint.pipe(\n map(breakpoint => breakpoint === 'mobile'),\n );\n\n readonly scrollbars$: Observable<boolean> =\n this.dialogs.length && !this.isMobile\n ? combineLatest([...this.dialogs]).pipe(\n map(dialogs => !dialogs.some(({length}) => length)),\n debounceTime(0),\n )\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_REDUCED_MOTION) readonly reducedMotion: boolean,\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(TUI_DIALOGS)\n readonly dialogs: ReadonlyArray<Observable<readonly unknown[]>>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TuiBreakpointService) private readonly breakpoint: TuiBreakpointService,\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(TUI_IS_ANDROID) readonly isAndroid: boolean,\n @Inject(DOCUMENT) {body}: Document,\n @Inject(TUI_THEME) theme: string,\n ) {\n body.setAttribute('data-tui-theme', theme.toLowerCase());\n }\n}\n","<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<!--TODO: 4.0 rename to tuiOverDropdowns-->\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiAlertHostModule,\n TuiDialogHostModule,\n TuiDropdownHostModule,\n TuiScrollControlsModule,\n} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDropdownHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiAlertHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -18,62 +18,62 @@ import { switchMap, startWith, catchError, map } from 'rxjs/operators';
18
18
  import { tuiIconsPathFactory } from '@taiga-ui/core/utils';
19
19
 
20
20
  const TUI_DEPRECATED_ICONS = {
21
- tuiIconAttach: `tuiIconPaperclip`,
22
- tuiIconAttention: `tuiIconAlertCircle`,
23
- tuiIconBackCircle: `tuiIconArrowLeftCircle`,
24
- tuiIconCall: `tuiIconPhone`,
25
- tuiIconCallIn: `tuiIconPhoneIncoming`,
26
- tuiIconCallOut: `tuiIconPhoneOutgoing`,
27
- tuiIconCallTransfer: `tuiIconPhoneForwarded`,
28
- tuiIconCancel: `tuiIconXCircle`,
29
- tuiIconCancelCircle: `tuiIconSlash`,
30
- tuiIconCard: `tuiIconCreditCard`,
31
- tuiIconCards: `tuiIconCreditCard`,
32
- tuiIconChartBar: `tuiIconBarChart`,
33
- tuiIconChart: `tuiIconBarChart`,
34
- tuiIconCheckList: `tuiIconClipboard`,
35
- tuiIconCloseCircle: `tuiIconXCircle`,
36
- tuiIconCollapse: `tuiIconMinimize`,
37
- tuiIconComment: `tuiIconMessageSquare`,
38
- tuiIconCommentFw: `tuiIconMessageForward`,
39
- tuiIconCompany: `tuiIconBriefcase`,
40
- tuiIconDefaultDoc: `tuiIconFile`,
41
- tuiIconDesktop: `tuiIconMonitor`,
42
- tuiIconDesktopOff: `tuiIconMonitorOff`,
43
- tuiIconDislike: `tuiIconThumbsDown`,
44
- tuiIconDone: `tuiIconCheckCircle`,
45
- tuiIconDraft: `tuiIconEdit2`,
46
- tuiIconEyeOpen: `tuiIconEye`,
47
- tuiIconEyeClosed: `tuiIconEyeOff`,
48
- tuiIconExpand: `tuiIconMaximize`,
49
- tuiIconExternal: `tuiIconExternalLink`,
50
- tuiIconFrame: `tuiIconLayout`,
51
- tuiIconGeo: `tuiIconMapPin`,
52
- tuiIconHeartFilled: `tuiIconHeart`,
53
- tuiIconHide: `tuiIconEyeOff`,
54
- tuiIconImg: `tuiIconImage`,
55
- tuiIconInfoCircle: `tuiIconInfo`,
56
- tuiIconLike: `tuiIconThumbsUp`,
57
- tuiIconLockOpen: `tuiIconUnlock`,
58
- tuiIconMobile: `tuiIconSmartphone`,
59
- tuiIconMoreHor: `tuiIconMoreHorizontal`,
60
- tuiIconMoreVer: `tuiIconMoreVertical`,
61
- tuiIconMoreVert: `tuiIconMoreVertical`,
62
- tuiIconPicture: `tuiIconImage`,
63
- tuiIconPin: `tuiIconMapPin`,
64
- tuiIconPrint: `tuiIconPrinter`,
65
- tuiIconRefresh: `tuiIconRefreshCw`,
66
- tuiIconRemove: `tuiIconX`,
67
- tuiIconShow: `tuiIconEye`,
68
- tuiIconSound: `tuiIconVolume`,
69
- tuiIconSoundOff: `tuiIconVolumeX`,
70
- tuiIconStarFilled: `tuiIconStar`,
71
- tuiIconStop: `tuiIconSquare`,
72
- tuiIconStructure: `tuiIconGrid`,
73
- tuiIconTime: `tuiIconClock`,
74
- tuiIconTooltip: `tuiIconHelpCircle`,
75
- tuiIconViewList: `tuiIconList`,
76
- tuiIconWifiOn: `tuiIconWifi`,
21
+ tuiIconAttach: 'tuiIconPaperclip',
22
+ tuiIconAttention: 'tuiIconAlertCircle',
23
+ tuiIconBackCircle: 'tuiIconArrowLeftCircle',
24
+ tuiIconCall: 'tuiIconPhone',
25
+ tuiIconCallIn: 'tuiIconPhoneIncoming',
26
+ tuiIconCallOut: 'tuiIconPhoneOutgoing',
27
+ tuiIconCallTransfer: 'tuiIconPhoneForwarded',
28
+ tuiIconCancel: 'tuiIconXCircle',
29
+ tuiIconCancelCircle: 'tuiIconSlash',
30
+ tuiIconCard: 'tuiIconCreditCard',
31
+ tuiIconCards: 'tuiIconCreditCard',
32
+ tuiIconChartBar: 'tuiIconBarChart',
33
+ tuiIconChart: 'tuiIconBarChart',
34
+ tuiIconCheckList: 'tuiIconClipboard',
35
+ tuiIconCloseCircle: 'tuiIconXCircle',
36
+ tuiIconCollapse: 'tuiIconMinimize',
37
+ tuiIconComment: 'tuiIconMessageSquare',
38
+ tuiIconCommentFw: 'tuiIconMessageForward',
39
+ tuiIconCompany: 'tuiIconBriefcase',
40
+ tuiIconDefaultDoc: 'tuiIconFile',
41
+ tuiIconDesktop: 'tuiIconMonitor',
42
+ tuiIconDesktopOff: 'tuiIconMonitorOff',
43
+ tuiIconDislike: 'tuiIconThumbsDown',
44
+ tuiIconDone: 'tuiIconCheckCircle',
45
+ tuiIconDraft: 'tuiIconEdit2',
46
+ tuiIconEyeOpen: 'tuiIconEye',
47
+ tuiIconEyeClosed: 'tuiIconEyeOff',
48
+ tuiIconExpand: 'tuiIconMaximize',
49
+ tuiIconExternal: 'tuiIconExternalLink',
50
+ tuiIconFrame: 'tuiIconLayout',
51
+ tuiIconGeo: 'tuiIconMapPin',
52
+ tuiIconHeartFilled: 'tuiIconHeart',
53
+ tuiIconHide: 'tuiIconEyeOff',
54
+ tuiIconImg: 'tuiIconImage',
55
+ tuiIconInfoCircle: 'tuiIconInfo',
56
+ tuiIconLike: 'tuiIconThumbsUp',
57
+ tuiIconLockOpen: 'tuiIconUnlock',
58
+ tuiIconMobile: 'tuiIconSmartphone',
59
+ tuiIconMoreHor: 'tuiIconMoreHorizontal',
60
+ tuiIconMoreVer: 'tuiIconMoreVertical',
61
+ tuiIconMoreVert: 'tuiIconMoreVertical',
62
+ tuiIconPicture: 'tuiIconImage',
63
+ tuiIconPin: 'tuiIconMapPin',
64
+ tuiIconPrint: 'tuiIconPrinter',
65
+ tuiIconRefresh: 'tuiIconRefreshCw',
66
+ tuiIconRemove: 'tuiIconX',
67
+ tuiIconShow: 'tuiIconEye',
68
+ tuiIconSound: 'tuiIconVolume',
69
+ tuiIconSoundOff: 'tuiIconVolumeX',
70
+ tuiIconStarFilled: 'tuiIconStar',
71
+ tuiIconStop: 'tuiIconSquare',
72
+ tuiIconStructure: 'tuiIconGrid',
73
+ tuiIconTime: 'tuiIconClock',
74
+ tuiIconTooltip: 'tuiIconHelpCircle',
75
+ tuiIconViewList: 'tuiIconList',
76
+ tuiIconWifiOn: 'tuiIconWifi',
77
77
  };
78
78
 
79
79
  const TUI_SVG_DEFAULT_OPTIONS = {
@@ -82,11 +82,11 @@ const TUI_SVG_DEFAULT_OPTIONS = {
82
82
  srcProcessor: identity,
83
83
  contentProcessor: tuiSvgLinearGradientProcessor,
84
84
  deprecated: src => {
85
- const oldIcon = src.replace(`Large`, ``).replace(`Outline`, ``);
85
+ const oldIcon = src.replace('Large', '').replace('Outline', '');
86
86
  const newIcon = TUI_DEPRECATED_ICONS[oldIcon];
87
87
  return newIcon
88
88
  ? `${oldIcon}/(Large|Outline) is deprecated, use ${newIcon}/(Large|Outline) instead`
89
- : ``;
89
+ : '';
90
90
  },
91
91
  };
92
92
  /**
@@ -99,7 +99,7 @@ const TUI_SVG_OPTIONS = tuiCreateTokenFromFactory(() => ({
99
99
  srcProcessor: inject(TUI_SVG_SRC_PROCESSOR),
100
100
  contentProcessor: inject(TUI_SVG_CONTENT_PROCESSOR),
101
101
  }));
102
- const TUI_SVG_SRC_INTERCEPTORS = new InjectionToken(`[TUI_SVG_SRC_INTERCEPTORS]`);
102
+ const TUI_SVG_SRC_INTERCEPTORS = new InjectionToken('[TUI_SVG_SRC_INTERCEPTORS]');
103
103
  function tuiSvgSrcInterceptors(interceptor) {
104
104
  return {
105
105
  provide: TUI_SVG_SRC_INTERCEPTORS,