@taiga-ui/core 2.28.0 → 2.32.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 (265) hide show
  1. package/README.md +4 -5
  2. package/abstract/abstract-hint-options.d.ts +7 -0
  3. package/abstract/abstract-hint.d.ts +5 -4
  4. package/abstract/index.d.ts +1 -0
  5. package/abstract/taiga-ui-core-abstract.metadata.json +1 -1
  6. package/bundles/taiga-ui-core-abstract.umd.js +13 -4
  7. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  8. package/bundles/taiga-ui-core-abstract.umd.min.js +1 -1
  9. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  10. package/bundles/taiga-ui-core-components-dialog.umd.js +1 -1
  11. package/bundles/taiga-ui-core-components-dialog.umd.min.js +1 -1
  12. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-hints-host.umd.js +1 -0
  16. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-core-components-link.umd.js +2 -2
  21. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  22. package/bundles/taiga-ui-core-components-link.umd.min.js +2 -2
  23. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +30 -7
  27. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js +1 -1
  29. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +1 -1
  33. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +2 -2
  34. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-svg.umd.js +0 -1
  36. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-core-components-tooltip.umd.js +23 -13
  39. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-tooltip.umd.min.js +2 -2
  41. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  42. package/bundles/taiga-ui-core-constants.umd.js +2 -2
  43. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  44. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  45. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-core-directives-hint-controller.umd.js +17 -12
  47. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js +2 -2
  49. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-core-directives-hint.umd.js +20 -6
  51. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  52. package/bundles/taiga-ui-core-directives-hint.umd.min.js +1 -1
  53. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +15 -4
  55. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js +1 -1
  57. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +17 -6
  59. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  60. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js +1 -1
  61. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  62. package/bundles/taiga-ui-core-providers.umd.js +2 -1
  63. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  64. package/bundles/taiga-ui-core-providers.umd.min.js +1 -1
  65. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  66. package/bundles/taiga-ui-core-utils-dom.umd.js +1 -1
  67. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  68. package/bundles/taiga-ui-core-utils-dom.umd.min.js +1 -1
  69. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  70. package/bundles/taiga-ui-core-utils-format.umd.js +37 -5
  71. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  72. package/bundles/taiga-ui-core-utils-format.umd.min.js +1 -1
  73. package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
  74. package/bundles/taiga-ui-core-utils-mask.umd.js +6 -2
  75. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  76. package/bundles/taiga-ui-core-utils-mask.umd.min.js +1 -1
  77. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  78. package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
  79. package/components/expand/expand.component.d.ts +1 -1
  80. package/components/hosted-dropdown/hosted-dropdown.component.d.ts +3 -3
  81. package/components/link/taiga-ui-core-components-link.metadata.json +1 -1
  82. package/components/primitive-calendar/primitive-calendar.component.d.ts +1 -1
  83. package/components/primitive-textfield/index.d.ts +1 -0
  84. package/components/primitive-textfield/primitive-textfield-options.d.ts +11 -0
  85. package/components/primitive-textfield/primitive-textfield.component.d.ts +7 -4
  86. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
  87. package/components/primitive-year-picker/primitive-year-picker.component.d.ts +1 -1
  88. package/components/scroll-controls/taiga-ui-core-components-scroll-controls.metadata.json +1 -1
  89. package/components/tooltip/taiga-ui-core-components-tooltip.metadata.json +1 -1
  90. package/components/tooltip/tooltip.component.d.ts +9 -6
  91. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  92. package/constants/version.d.ts +1 -1
  93. package/directives/hint/hint-options.d.ts +12 -0
  94. package/directives/hint/hint.directive.d.ts +5 -3
  95. package/directives/hint/index.d.ts +1 -0
  96. package/directives/hint/taiga-ui-core-directives-hint.metadata.json +1 -1
  97. package/directives/hint-controller/hint-controller.directive.d.ts +7 -5
  98. package/directives/hint-controller/taiga-ui-core-directives-hint-controller.metadata.json +1 -1
  99. package/directives/manual-hint/index.d.ts +1 -0
  100. package/directives/manual-hint/manual-hint-options.d.ts +6 -0
  101. package/directives/manual-hint/manual-hint.directive.d.ts +3 -1
  102. package/directives/manual-hint/taiga-ui-core-directives-manual-hint.metadata.json +1 -1
  103. package/directives/pointer-hint/index.d.ts +1 -0
  104. package/directives/pointer-hint/pointer-hint-options.d.ts +9 -0
  105. package/directives/pointer-hint/pointer-hint.directive.d.ts +5 -3
  106. package/directives/pointer-hint/taiga-ui-core-directives-pointer-hint.metadata.json +1 -1
  107. package/esm2015/abstract/abstract-hint-options.js +6 -0
  108. package/esm2015/abstract/abstract-hint.js +7 -5
  109. package/esm2015/abstract/index.js +2 -1
  110. package/esm2015/components/dialog/dialog.component.js +1 -1
  111. package/esm2015/components/expand/expand.component.js +1 -1
  112. package/esm2015/components/hints-host/hint-box/hint-box.component.js +2 -1
  113. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +1 -1
  114. package/esm2015/components/link/link.component.js +3 -3
  115. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +1 -1
  116. package/esm2015/components/primitive-textfield/index.js +2 -1
  117. package/esm2015/components/primitive-textfield/primitive-textfield-options.js +12 -0
  118. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +18 -8
  119. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +1 -1
  120. package/esm2015/components/scroll-controls/scroll-controls.component.js +1 -1
  121. package/esm2015/components/svg/svg.component.js +1 -2
  122. package/esm2015/components/tooltip/tooltip.component.js +16 -9
  123. package/esm2015/components/tooltip/tooltip.module.js +3 -2
  124. package/esm2015/constants/regexp.js +2 -2
  125. package/esm2015/constants/version.js +2 -2
  126. package/esm2015/directives/hint/hint-options.js +10 -0
  127. package/esm2015/directives/hint/hint.directive.js +11 -7
  128. package/esm2015/directives/hint/index.js +2 -1
  129. package/esm2015/directives/hint-controller/hint-controller.directive.js +16 -10
  130. package/esm2015/directives/hint-controller/hint-controller.token.js +4 -3
  131. package/esm2015/directives/manual-hint/index.js +2 -1
  132. package/esm2015/directives/manual-hint/manual-hint-options.js +8 -0
  133. package/esm2015/directives/manual-hint/manual-hint.directive.js +9 -5
  134. package/esm2015/directives/pointer-hint/index.js +2 -1
  135. package/esm2015/directives/pointer-hint/pointer-hint-options.js +8 -0
  136. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +11 -7
  137. package/esm2015/providers/mode.provider.js +3 -2
  138. package/esm2015/utils/dom/process-icon.js +2 -2
  139. package/esm2015/utils/format/format-number.js +5 -6
  140. package/esm2015/utils/format/get-fractional-part-padded.js +15 -0
  141. package/esm2015/utils/format/index.js +3 -1
  142. package/esm2015/utils/format/number-to-string-without-exp.js +18 -0
  143. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +6 -2
  144. package/esm2015/utils/mask/create-number-mask.js +2 -2
  145. package/esm5/abstract/abstract-hint-options.js +6 -0
  146. package/esm5/abstract/abstract-hint.js +7 -5
  147. package/esm5/abstract/index.js +2 -1
  148. package/esm5/components/dialog/dialog.component.js +1 -1
  149. package/esm5/components/expand/expand.component.js +1 -1
  150. package/esm5/components/hints-host/hint-box/hint-box.component.js +2 -1
  151. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +1 -1
  152. package/esm5/components/link/link.component.js +3 -3
  153. package/esm5/components/primitive-calendar/primitive-calendar.component.js +1 -1
  154. package/esm5/components/primitive-textfield/index.js +2 -1
  155. package/esm5/components/primitive-textfield/primitive-textfield-options.js +12 -0
  156. package/esm5/components/primitive-textfield/primitive-textfield.component.js +18 -8
  157. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +1 -1
  158. package/esm5/components/scroll-controls/scroll-controls.component.js +1 -1
  159. package/esm5/components/svg/svg.component.js +1 -2
  160. package/esm5/components/tooltip/tooltip.component.js +20 -9
  161. package/esm5/components/tooltip/tooltip.module.js +3 -2
  162. package/esm5/constants/regexp.js +2 -2
  163. package/esm5/constants/version.js +2 -2
  164. package/esm5/directives/hint/hint-options.js +11 -0
  165. package/esm5/directives/hint/hint.directive.js +11 -7
  166. package/esm5/directives/hint/index.js +2 -1
  167. package/esm5/directives/hint-controller/hint-controller.directive.js +16 -10
  168. package/esm5/directives/hint-controller/hint-controller.token.js +4 -3
  169. package/esm5/directives/manual-hint/index.js +2 -1
  170. package/esm5/directives/manual-hint/manual-hint-options.js +9 -0
  171. package/esm5/directives/manual-hint/manual-hint.directive.js +9 -5
  172. package/esm5/directives/pointer-hint/index.js +2 -1
  173. package/esm5/directives/pointer-hint/pointer-hint-options.js +9 -0
  174. package/esm5/directives/pointer-hint/pointer-hint.directive.js +11 -7
  175. package/esm5/providers/mode.provider.js +3 -2
  176. package/esm5/utils/dom/process-icon.js +2 -2
  177. package/esm5/utils/format/format-number.js +5 -6
  178. package/esm5/utils/format/get-fractional-part-padded.js +16 -0
  179. package/esm5/utils/format/index.js +3 -1
  180. package/esm5/utils/format/number-to-string-without-exp.js +19 -0
  181. package/esm5/utils/mask/create-auto-corrected-money-pipe.js +6 -2
  182. package/esm5/utils/mask/create-number-mask.js +2 -2
  183. package/fesm2015/taiga-ui-core-abstract.js +13 -5
  184. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  185. package/fesm2015/taiga-ui-core-components-dialog.js +1 -1
  186. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  187. package/fesm2015/taiga-ui-core-components-hints-host.js +1 -0
  188. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  189. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  190. package/fesm2015/taiga-ui-core-components-link.js +2 -2
  191. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  192. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  193. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +29 -9
  194. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  195. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  196. package/fesm2015/taiga-ui-core-components-scroll-controls.js +1 -1
  197. package/fesm2015/taiga-ui-core-components-svg.js +0 -1
  198. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  199. package/fesm2015/taiga-ui-core-components-tooltip.js +17 -9
  200. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  201. package/fesm2015/taiga-ui-core-constants.js +2 -2
  202. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  203. package/fesm2015/taiga-ui-core-directives-hint-controller.js +16 -10
  204. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  205. package/fesm2015/taiga-ui-core-directives-hint.js +20 -9
  206. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  207. package/fesm2015/taiga-ui-core-directives-manual-hint.js +16 -7
  208. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  209. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +18 -9
  210. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  211. package/fesm2015/taiga-ui-core-providers.js +2 -1
  212. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  213. package/fesm2015/taiga-ui-core-utils-dom.js +1 -1
  214. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  215. package/fesm2015/taiga-ui-core-utils-format.js +36 -6
  216. package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
  217. package/fesm2015/taiga-ui-core-utils-mask.js +6 -2
  218. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  219. package/fesm5/taiga-ui-core-abstract.js +13 -5
  220. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  221. package/fesm5/taiga-ui-core-components-dialog.js +1 -1
  222. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  223. package/fesm5/taiga-ui-core-components-hints-host.js +1 -0
  224. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  225. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  226. package/fesm5/taiga-ui-core-components-link.js +2 -2
  227. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  228. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  229. package/fesm5/taiga-ui-core-components-primitive-textfield.js +29 -9
  230. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  231. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  232. package/fesm5/taiga-ui-core-components-scroll-controls.js +1 -1
  233. package/fesm5/taiga-ui-core-components-svg.js +0 -1
  234. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  235. package/fesm5/taiga-ui-core-components-tooltip.js +21 -9
  236. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  237. package/fesm5/taiga-ui-core-constants.js +2 -2
  238. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  239. package/fesm5/taiga-ui-core-directives-hint-controller.js +16 -10
  240. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  241. package/fesm5/taiga-ui-core-directives-hint.js +21 -10
  242. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  243. package/fesm5/taiga-ui-core-directives-manual-hint.js +17 -8
  244. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  245. package/fesm5/taiga-ui-core-directives-pointer-hint.js +19 -10
  246. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  247. package/fesm5/taiga-ui-core-providers.js +2 -1
  248. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  249. package/fesm5/taiga-ui-core-utils-dom.js +1 -1
  250. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  251. package/fesm5/taiga-ui-core-utils-format.js +36 -6
  252. package/fesm5/taiga-ui-core-utils-format.js.map +1 -1
  253. package/fesm5/taiga-ui-core-utils-mask.js +6 -2
  254. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  255. package/package.json +12 -12
  256. package/providers/taiga-ui-core-providers.metadata.json +1 -1
  257. package/styles/mixins/textfield.less +7 -0
  258. package/styles/taiga-ui-theme.less +1 -0
  259. package/styles/theme/dialog.less +13 -0
  260. package/styles/variables/media.less +2 -2
  261. package/utils/format/get-fractional-part-padded.d.ts +8 -0
  262. package/utils/format/index.d.ts +2 -0
  263. package/utils/format/number-to-string-without-exp.d.ts +7 -0
  264. package/utils/format/taiga-ui-core-utils-format.metadata.json +1 -1
  265. package/utils/mask/create-auto-corrected-money-pipe.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-primitive-year-picker.js","sources":["ng://@taiga-ui/core/components/primitive-year-picker/primitive-year-picker.component.ts","ng://@taiga-ui/core/components/primitive-year-picker/primitive-year-picker.module.ts","ng://@taiga-ui/core/components/primitive-year-picker/taiga-ui-core-components-primitive-year-picker.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n inRange,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDayRange,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthRange,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiInteractiveState, TuiRangeState} from '@taiga-ui/core/enums';\n\nconst LIMIT = 100;\nconst ITEMS_IN_ROW = 4;\n\n@Component({\n selector: 'tui-primitive-year-picker',\n templateUrl: './primitive-year-picker.template.html',\n styleUrls: ['./primitive-year-picker.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveYearPickerComponent {\n private hoveredItem: number | null = null;\n private pressedItem: number | null = null;\n private currentYear = TuiMonth.currentLocal().year;\n\n @Input()\n @tuiDefaultProp()\n value: TuiYear | TuiDayRange | null = null;\n\n @Input()\n @tuiDefaultProp()\n initialItem = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n min: TuiYear = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiYear = TUI_LAST_DAY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<number> = ALWAYS_FALSE_HANDLER;\n\n @Output()\n readonly yearClick = new EventEmitter<TuiYear | TuiDayRange>();\n\n @HostBinding('class._single')\n get isSingle(): boolean {\n const {value} = this;\n\n return !!value && this.isRange(value) && value.from.yearSame(value.to);\n }\n\n get rows(): number {\n return Math.ceil((this.calculatedMax - this.calculatedMin) / ITEMS_IN_ROW);\n }\n\n get calculatedMin(): number {\n const initial = this.initialItem.year - LIMIT;\n\n return this.min.year > initial ? this.min.year : initial;\n }\n\n get calculatedMax(): number {\n const initial = this.initialItem.year + LIMIT;\n\n return this.max.year < initial ? this.max.year + 1 : initial;\n }\n\n isRange(item: TuiMonthRange | TuiYear): item is TuiMonthRange {\n return item instanceof TuiMonthRange;\n }\n\n scrollItemIntoView(item: number): boolean {\n return this.initialItem.year === item;\n }\n\n getItem(rowIndex: number, colIndex: number): number {\n return rowIndex * ITEMS_IN_ROW + colIndex + this.calculatedMin;\n }\n\n getItemState(item: number): TuiInteractiveState | null {\n const {disabledItemHandler, max, pressedItem, hoveredItem} = this;\n\n if (\n max.year < item ||\n (disabledItemHandler !== ALWAYS_FALSE_HANDLER && disabledItemHandler(item))\n ) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem === item) {\n return TuiInteractiveState.Pressed;\n }\n\n if (hoveredItem === item) {\n return TuiInteractiveState.Hovered;\n }\n\n return null;\n }\n\n getItemRange(item: number): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (value === null) {\n return null;\n }\n\n if (value instanceof TuiYear) {\n return value.year === item ? TuiRangeState.Single : null;\n }\n\n if (\n (value.from.year === item && !value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem > value.from.year &&\n value.from.year === item &&\n value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem === item &&\n hoveredItem < value.from.year &&\n value.from.yearSame(value.to))\n ) {\n return TuiRangeState.Start;\n }\n\n if (\n (value.to.year === item && !value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem < value.from.year &&\n value.from.year === item &&\n value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem === item &&\n hoveredItem > value.from.year &&\n value.from.yearSame(value.to))\n ) {\n return TuiRangeState.End;\n }\n\n return value.from.yearSame(value.to) && value.from.year === item\n ? TuiRangeState.Single\n : null;\n }\n\n itemIsToday(item: number): boolean {\n return this.currentYear === item;\n }\n\n itemIsInterval(item: number): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || !this.isRange(value)) {\n return false;\n }\n\n if (!value.from.yearSame(value.to)) {\n return value.from.year <= item && value.to.year > item;\n }\n\n if (hoveredItem === null || value.from.year === hoveredItem) {\n return false;\n }\n\n return inRange(\n item,\n Math.min(value.from.year, hoveredItem),\n Math.max(value.from.year, hoveredItem),\n );\n }\n\n onItemHovered(hovered: boolean, item: number) {\n this.updateHoveredItem(hovered, item);\n }\n\n onItemPressed(pressed: boolean, item: number) {\n this.updatePressedItem(pressed, item);\n }\n\n onItemClick(item: number) {\n this.yearClick.emit(new TuiYear(item));\n }\n\n private updateHoveredItem(hovered: boolean, item: number) {\n this.hoveredItem = hovered ? item : null;\n }\n\n private updatePressedItem(pressed: boolean, item: number) {\n this.pressedItem = pressed ? item : null;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiScrollIntoViewModule} from '@taiga-ui/core/directives/scroll-into-view';\n\nimport {TuiPrimitiveYearPickerComponent} from './primitive-year-picker.component';\n\n@NgModule({\n imports: [\n TuiHoveredModule,\n TuiPressedModule,\n TuiRepeatTimesModule,\n TuiLetModule,\n TuiScrollIntoViewModule,\n ],\n declarations: [TuiPrimitiveYearPickerComponent],\n exports: [TuiPrimitiveYearPickerComponent],\n})\nexport class TuiPrimitiveYearPickerModule {}\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-year-picker.js","sources":["ng://@taiga-ui/core/components/primitive-year-picker/primitive-year-picker.component.ts","ng://@taiga-ui/core/components/primitive-year-picker/primitive-year-picker.module.ts","ng://@taiga-ui/core/components/primitive-year-picker/taiga-ui-core-components-primitive-year-picker.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n inRange,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDayRange,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthRange,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiInteractiveState, TuiRangeState} from '@taiga-ui/core/enums';\n\nconst LIMIT = 100;\nconst ITEMS_IN_ROW = 4;\n\n@Component({\n selector: 'tui-primitive-year-picker',\n templateUrl: './primitive-year-picker.template.html',\n styleUrls: ['./primitive-year-picker.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveYearPickerComponent {\n private hoveredItem: number | null = null;\n private pressedItem: number | null = null;\n private readonly currentYear = TuiMonth.currentLocal().year;\n\n @Input()\n @tuiDefaultProp()\n value: TuiYear | TuiDayRange | null = null;\n\n @Input()\n @tuiDefaultProp()\n initialItem = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n min: TuiYear = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiYear = TUI_LAST_DAY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<number> = ALWAYS_FALSE_HANDLER;\n\n @Output()\n readonly yearClick = new EventEmitter<TuiYear | TuiDayRange>();\n\n @HostBinding('class._single')\n get isSingle(): boolean {\n const {value} = this;\n\n return !!value && this.isRange(value) && value.from.yearSame(value.to);\n }\n\n get rows(): number {\n return Math.ceil((this.calculatedMax - this.calculatedMin) / ITEMS_IN_ROW);\n }\n\n get calculatedMin(): number {\n const initial = this.initialItem.year - LIMIT;\n\n return this.min.year > initial ? this.min.year : initial;\n }\n\n get calculatedMax(): number {\n const initial = this.initialItem.year + LIMIT;\n\n return this.max.year < initial ? this.max.year + 1 : initial;\n }\n\n isRange(item: TuiMonthRange | TuiYear): item is TuiMonthRange {\n return item instanceof TuiMonthRange;\n }\n\n scrollItemIntoView(item: number): boolean {\n return this.initialItem.year === item;\n }\n\n getItem(rowIndex: number, colIndex: number): number {\n return rowIndex * ITEMS_IN_ROW + colIndex + this.calculatedMin;\n }\n\n getItemState(item: number): TuiInteractiveState | null {\n const {disabledItemHandler, max, pressedItem, hoveredItem} = this;\n\n if (\n max.year < item ||\n (disabledItemHandler !== ALWAYS_FALSE_HANDLER && disabledItemHandler(item))\n ) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem === item) {\n return TuiInteractiveState.Pressed;\n }\n\n if (hoveredItem === item) {\n return TuiInteractiveState.Hovered;\n }\n\n return null;\n }\n\n getItemRange(item: number): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (value === null) {\n return null;\n }\n\n if (value instanceof TuiYear) {\n return value.year === item ? TuiRangeState.Single : null;\n }\n\n if (\n (value.from.year === item && !value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem > value.from.year &&\n value.from.year === item &&\n value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem === item &&\n hoveredItem < value.from.year &&\n value.from.yearSame(value.to))\n ) {\n return TuiRangeState.Start;\n }\n\n if (\n (value.to.year === item && !value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem < value.from.year &&\n value.from.year === item &&\n value.from.yearSame(value.to)) ||\n (hoveredItem !== null &&\n hoveredItem === item &&\n hoveredItem > value.from.year &&\n value.from.yearSame(value.to))\n ) {\n return TuiRangeState.End;\n }\n\n return value.from.yearSame(value.to) && value.from.year === item\n ? TuiRangeState.Single\n : null;\n }\n\n itemIsToday(item: number): boolean {\n return this.currentYear === item;\n }\n\n itemIsInterval(item: number): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || !this.isRange(value)) {\n return false;\n }\n\n if (!value.from.yearSame(value.to)) {\n return value.from.year <= item && value.to.year > item;\n }\n\n if (hoveredItem === null || value.from.year === hoveredItem) {\n return false;\n }\n\n return inRange(\n item,\n Math.min(value.from.year, hoveredItem),\n Math.max(value.from.year, hoveredItem),\n );\n }\n\n onItemHovered(hovered: boolean, item: number) {\n this.updateHoveredItem(hovered, item);\n }\n\n onItemPressed(pressed: boolean, item: number) {\n this.updatePressedItem(pressed, item);\n }\n\n onItemClick(item: number) {\n this.yearClick.emit(new TuiYear(item));\n }\n\n private updateHoveredItem(hovered: boolean, item: number) {\n this.hoveredItem = hovered ? item : null;\n }\n\n private updatePressedItem(pressed: boolean, item: number) {\n this.pressedItem = pressed ? item : null;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiScrollIntoViewModule} from '@taiga-ui/core/directives/scroll-into-view';\n\nimport {TuiPrimitiveYearPickerComponent} from './primitive-year-picker.component';\n\n@NgModule({\n imports: [\n TuiHoveredModule,\n TuiPressedModule,\n TuiRepeatTimesModule,\n TuiLetModule,\n TuiScrollIntoViewModule,\n ],\n declarations: [TuiPrimitiveYearPickerComponent],\n exports: [TuiPrimitiveYearPickerComponent],\n})\nexport class TuiPrimitiveYearPickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAsBA,MAAM,KAAK,GAAG,GAAG,CAAC;AAClB,MAAM,YAAY,GAAG,CAAC,CAAC;IAQV,+BAA+B,GAA5C,MAAa,+BAA+B;IAA5C;QACY,gBAAW,GAAkB,IAAI,CAAC;QAClC,gBAAW,GAAkB,IAAI,CAAC;QACzB,gBAAW,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC;QAI5D,UAAK,GAAiC,IAAI,CAAC;QAI3C,gBAAW,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAItC,QAAG,GAAY,aAAa,CAAC;QAI7B,QAAG,GAAY,YAAY,CAAC;QAI5B,wBAAmB,GAA8B,oBAAoB,CAAC;QAG7D,cAAS,GAAG,IAAI,YAAY,EAAyB,CAAC;KAmJlE;IAhJG,IAAI,QAAQ;QACR,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC;QAErB,OAAO,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;KAC1E;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,YAAY,CAAC,CAAC;KAC9E;IAED,IAAI,aAAa;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC;QAE9C,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;KAC5D;IAED,IAAI,aAAa;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC;QAE9C,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC;KAChE;IAED,OAAO,CAAC,IAA6B;QACjC,OAAO,IAAI,YAAY,aAAa,CAAC;KACxC;IAED,kBAAkB,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC;KACzC;IAED,OAAO,CAAC,QAAgB,EAAE,QAAgB;QACtC,OAAO,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;KAClE;IAED,YAAY,CAAC,IAAY;QACrB,MAAM,EAAC,mBAAmB,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;QAElE,IACI,GAAG,CAAC,IAAI,GAAG,IAAI;aACd,mBAAmB,KAAK,oBAAoB,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAC7E;YACE,iCAAoC;SACvC;QAED,IAAI,WAAW,KAAK,IAAI,EAAE;YACtB,+BAAmC;SACtC;QAED,IAAI,WAAW,KAAK,IAAI,EAAE;YACtB,+BAAmC;SACtC;QAED,OAAO,IAAI,CAAC;KACf;IAED,YAAY,CAAC,IAAY;QACrB,MAAM,EAAC,KAAK,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;QAElC,IAAI,KAAK,KAAK,IAAI,EAAE;YAChB,OAAO,IAAI,CAAC;SACf;QAED,IAAI,KAAK,YAAY,OAAO,EAAE;YAC1B,OAAO,KAAK,CAAC,IAAI,KAAK,IAAI,2BAA0B,IAAI,CAAC;SAC5D;QAED,IACI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;aAC1D,WAAW,KAAK,IAAI;gBACjB,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;gBAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI;gBACxB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aACjC,WAAW,KAAK,IAAI;gBACjB,WAAW,KAAK,IAAI;gBACpB,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;gBAC7B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EACpC;YACE,2BAA2B;SAC9B;QAED,IACI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;aACxD,WAAW,KAAK,IAAI;gBACjB,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;gBAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI;gBACxB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aACjC,WAAW,KAAK,IAAI;gBACjB,WAAW,KAAK,IAAI;gBACpB,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;gBAC7B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EACpC;YACE,uBAAyB;SAC5B;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI;;cAE1D,IAAI,CAAC;KACd;IAED,WAAW,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;KACpC;IAED,cAAc,CAAC,IAAY;QACvB,MAAM,EAAC,KAAK,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;QAElC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxC,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;YAChC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;SAC1D;QAED,IAAI,WAAW,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;YACzD,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,OAAO,CACV,IAAI,EACJ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EACtC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CACzC,CAAC;KACL;IAED,aAAa,CAAC,OAAgB,EAAE,IAAY;QACxC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KACzC;IAED,aAAa,CAAC,OAAgB,EAAE,IAAY;QACxC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KACzC;IAED,WAAW,CAAC,IAAY;QACpB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;KAC1C;IAEO,iBAAiB,CAAC,OAAgB,EAAE,IAAY;QACpD,IAAI,CAAC,WAAW,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;KAC5C;IAEO,iBAAiB,CAAC,OAAgB,EAAE,IAAY;QACpD,IAAI,CAAC,WAAW,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;KAC5C;EACJ;AAtKG;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;8DAC0B;AAI3C;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;oEACqB;AAItC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;4DACY;AAI7B;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;4DACW;AAI5B;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;4EACqD;AAGtE;IADC,MAAM,EAAE;kEACsD;AAG/D;IADC,WAAW,CAAC,eAAe,CAAC;+DAK5B;AAjCQ,+BAA+B;IAN3C,SAAS,CAAC;QACP,QAAQ,EAAE,2BAA2B;QACrC,+7BAAoD;QAEpD,eAAe,EAAE,uBAAuB,CAAC,MAAM;;KAClD,CAAC;GACW,+BAA+B,CA6K3C;;ICtLY,4BAA4B,GAAzC,MAAa,4BAA4B;EAAG;AAA/B,4BAA4B;IAXxC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,gBAAgB;YAChB,gBAAgB;YAChB,oBAAoB;YACpB,YAAY;YACZ,uBAAuB;SAC1B;QACD,YAAY,EAAE,CAAC,+BAA+B,CAAC;QAC/C,OAAO,EAAE,CAAC,+BAA+B,CAAC;KAC7C,CAAC;GACW,4BAA4B,CAAG;;ACtB5C;;;;;;"}
@@ -49,7 +49,7 @@ TuiScrollControlsComponent = __decorate([
49
49
  host: {
50
50
  '($.data-mode.attr)': 'mode$',
51
51
  },
52
- styles: [":host{position:sticky;top:0;left:0;z-index:1;min-width:calc(100% - 1px);min-height:calc(100% - 1px);float:left;margin-right:calc(-100% + 1px);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(-100% + 1px);margin-inline-end:calc(-100% + 1px);pointer-events:none}.bar{position:absolute;right:0;bottom:0;pointer-events:auto}.bar_vertical{top:0;width:.875rem}.bar_horizontal{left:0;height:.875rem}.bar_has-horizontal{bottom:.5rem}.bar_has-vertical{right:.5rem}.thumb{transition-duration:.15s;transition-timing-function:ease-in-out;position:absolute;border-radius:6.25rem;border:.25rem solid transparent;cursor:pointer;pointer-events:auto;background:var(--tui-text-01);background-clip:content-box;box-sizing:border-box;transition-property:width,height;opacity:.2}.thumb:hover{opacity:.24}.thumb:active{opacity:.48}:host[data-mode=onDark] .thumb{background-color:var(--tui-text-01-night)}.bar_vertical .thumb{right:0;width:.75rem;min-height:1.25rem}.bar_vertical .thumb:active,.bar_vertical:hover .thumb{width:.875rem}.bar_horizontal .thumb{bottom:0;height:.75rem;min-width:1.25rem}.bar_horizontal .thumb:active,.bar_horizontal:hover .thumb{height:.875rem}"]
52
+ styles: [":host{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;min-width:calc(100% - 1px);min-height:calc(100% - 1px);float:left;margin-right:calc(-100% + 1px);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(-100% + 1px);margin-inline-end:calc(-100% + 1px);pointer-events:none}.bar{position:absolute;right:0;bottom:0;pointer-events:auto}.bar_vertical{top:0;width:.875rem}.bar_horizontal{left:0;height:.875rem}.bar_has-horizontal{bottom:.5rem}.bar_has-vertical{right:.5rem}.thumb{transition-duration:.15s;transition-timing-function:ease-in-out;position:absolute;border-radius:6.25rem;border:.25rem solid transparent;cursor:pointer;pointer-events:auto;background:var(--tui-text-01);background-clip:content-box;box-sizing:border-box;transition-property:width,height;opacity:.2}.thumb:hover{opacity:.24}.thumb:active{opacity:.48}:host[data-mode=onDark] .thumb{background-color:var(--tui-text-01-night)}.bar_vertical .thumb{right:0;width:.75rem;min-height:1.25rem}.bar_vertical .thumb:active,.bar_vertical:hover .thumb{width:.875rem}.bar_horizontal .thumb{bottom:0;height:.75rem;min-width:1.25rem}.bar_horizontal .thumb:active,.bar_horizontal:hover .thumb{height:.875rem}"]
53
53
  }),
54
54
  __param(0, Inject(TUI_ANIMATION_OPTIONS)),
55
55
  __param(1, Inject(NgZone)),
@@ -106,7 +106,6 @@ let TuiSvgComponent = class TuiSvgComponent {
106
106
  ? this.sanitizer.bypassSecurityTrustHtml(this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '')
107
107
  : src;
108
108
  }
109
- // @bad TODO: Create a simple XMLHttpRequest to Observable service
110
109
  getExternalIcon(src) {
111
110
  const url = src.includes('.svg') ? src : this.use;
112
111
  return this.staticRequestService.request(url).pipe(catchError(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-svg.js","sources":["ng://@taiga-ui/core/components/svg/svg.component.ts","ng://@taiga-ui/core/components/svg/svg.module.ts","ng://@taiga-ui/core/components/svg/taiga-ui-core-components-svg.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Sanitizer,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {USER_AGENT, WINDOW} from '@ng-web-apis/common';\nimport {\n getDocumentOrShadowRoot,\n isIE,\n tuiAssert,\n tuiCustomEvent,\n tuiPure,\n tuiRequiredSetter,\n TuiStaticRequestService,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TUI_ICON_ERROR} from '@taiga-ui/core/constants';\nimport {TuiIconError} from '@taiga-ui/core/interfaces';\nimport {TuiSvgService} from '@taiga-ui/core/services';\nimport {\n TUI_ICONS_PATH,\n TUI_SANITIZER,\n TUI_SVG_SRC_PROCESSOR,\n} from '@taiga-ui/core/tokens';\nimport {isPresumedHTMLString} from '@taiga-ui/core/utils/miscellaneous';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {catchError, map, startWith, switchMap} from 'rxjs/operators';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent\n// @dynamic\n@Component({\n selector: 'tui-svg',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private readonly src$ = new ReplaySubject<void>(1);\n private readonly isIE = isIE(this.userAgent);\n private icon = '';\n\n @Input()\n @tuiRequiredSetter()\n set src(src: string) {\n this.icon = this.processor(src);\n this.src$.next();\n }\n\n readonly innerHTML$: Observable<SafeHtml>;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_ICONS_PATH) private readonly iconsPath: TuiStringHandler<string>,\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(TuiSvgService) private readonly svgService: TuiSvgService,\n @Inject(TuiStaticRequestService)\n private readonly staticRequestService: TuiStaticRequestService,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(ElementRef) private readonly elementRef: ElementRef<Element>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_SVG_SRC_PROCESSOR)\n private readonly processor: TuiStringHandler<string>,\n ) {\n this.innerHTML$ = this.src$.pipe(\n switchMap(() =>\n this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon)),\n ),\n startWith(''),\n );\n }\n\n get src(): string {\n return this.icon;\n }\n\n get use(): string {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.iconsPath);\n }\n\n get isInnerHTML(): boolean {\n return this.isSrc || this.isExternal || (this.isName && this.isShadowDOM);\n }\n\n private get isShadowDOM(): boolean {\n return (\n getDocumentOrShadowRoot(this.elementRef.nativeElement) !== this.documentRef\n );\n }\n\n private get isUse(): boolean {\n return this.use.includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return this.isUrl || (this.isIE && this.isUse) || this.isCrossDomain;\n }\n\n private get isUrl(): boolean {\n return this.icon.endsWith('.svg');\n }\n\n private get isSrc(): boolean {\n return isPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, windowRef} = this;\n\n return (\n isUse &&\n use.startsWith('http') &&\n !!windowRef.origin &&\n !use.startsWith(windowRef.origin)\n );\n }\n\n onError(message: string = MISSING_EXTERNAL_ICON) {\n const {icon} = this;\n const event = tuiCustomEvent<TuiIconError>(\n TUI_ICON_ERROR,\n {\n bubbles: true,\n detail: {\n message,\n icon,\n },\n },\n this.documentRef,\n );\n\n tuiAssert.assert(false, message, icon);\n this.elementRef.nativeElement.dispatchEvent(event);\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiStringHandler<string>): string {\n return iconsPath(name);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n // Empty line for innerHTML when icon is shown through USE tag\n return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');\n }\n\n private sanitize(src: string): SafeHtml | string {\n return this.tuiSanitizer\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n // @bad TODO: Create a simple XMLHttpRequest to Observable service\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map(response =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiSvgComponent} from './svg.component';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [TuiSvgComponent],\n exports: [TuiSvgComponent],\n})\nexport class TuiSvgModule {}\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-svg.js","sources":["ng://@taiga-ui/core/components/svg/svg.component.ts","ng://@taiga-ui/core/components/svg/svg.module.ts","ng://@taiga-ui/core/components/svg/taiga-ui-core-components-svg.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Sanitizer,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {USER_AGENT, WINDOW} from '@ng-web-apis/common';\nimport {\n getDocumentOrShadowRoot,\n isIE,\n tuiAssert,\n tuiCustomEvent,\n tuiPure,\n tuiRequiredSetter,\n TuiStaticRequestService,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TUI_ICON_ERROR} from '@taiga-ui/core/constants';\nimport {TuiIconError} from '@taiga-ui/core/interfaces';\nimport {TuiSvgService} from '@taiga-ui/core/services';\nimport {\n TUI_ICONS_PATH,\n TUI_SANITIZER,\n TUI_SVG_SRC_PROCESSOR,\n} from '@taiga-ui/core/tokens';\nimport {isPresumedHTMLString} from '@taiga-ui/core/utils/miscellaneous';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {catchError, map, startWith, switchMap} from 'rxjs/operators';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent\n// @dynamic\n@Component({\n selector: 'tui-svg',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private readonly src$ = new ReplaySubject<void>(1);\n private readonly isIE = isIE(this.userAgent);\n private icon = '';\n\n @Input()\n @tuiRequiredSetter()\n set src(src: string) {\n this.icon = this.processor(src);\n this.src$.next();\n }\n\n readonly innerHTML$: Observable<SafeHtml>;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_ICONS_PATH) private readonly iconsPath: TuiStringHandler<string>,\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(TuiSvgService) private readonly svgService: TuiSvgService,\n @Inject(TuiStaticRequestService)\n private readonly staticRequestService: TuiStaticRequestService,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(ElementRef) private readonly elementRef: ElementRef<Element>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_SVG_SRC_PROCESSOR)\n private readonly processor: TuiStringHandler<string>,\n ) {\n this.innerHTML$ = this.src$.pipe(\n switchMap(() =>\n this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon)),\n ),\n startWith(''),\n );\n }\n\n get src(): string {\n return this.icon;\n }\n\n get use(): string {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.iconsPath);\n }\n\n get isInnerHTML(): boolean {\n return this.isSrc || this.isExternal || (this.isName && this.isShadowDOM);\n }\n\n private get isShadowDOM(): boolean {\n return (\n getDocumentOrShadowRoot(this.elementRef.nativeElement) !== this.documentRef\n );\n }\n\n private get isUse(): boolean {\n return this.use.includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return this.isUrl || (this.isIE && this.isUse) || this.isCrossDomain;\n }\n\n private get isUrl(): boolean {\n return this.icon.endsWith('.svg');\n }\n\n private get isSrc(): boolean {\n return isPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, windowRef} = this;\n\n return (\n isUse &&\n use.startsWith('http') &&\n !!windowRef.origin &&\n !use.startsWith(windowRef.origin)\n );\n }\n\n onError(message: string = MISSING_EXTERNAL_ICON) {\n const {icon} = this;\n const event = tuiCustomEvent<TuiIconError>(\n TUI_ICON_ERROR,\n {\n bubbles: true,\n detail: {\n message,\n icon,\n },\n },\n this.documentRef,\n );\n\n tuiAssert.assert(false, message, icon);\n this.elementRef.nativeElement.dispatchEvent(event);\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiStringHandler<string>): string {\n return iconsPath(name);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n // Empty line for innerHTML when icon is shown through USE tag\n return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');\n }\n\n private sanitize(src: string): SafeHtml | string {\n return this.tuiSanitizer\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map(response =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiSvgComponent} from './svg.component';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [TuiSvgComponent],\n exports: [TuiSvgComponent],\n})\nexport class TuiSvgModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { __decorate, __param } from 'tslib';
2
2
  import { Inject, Input, HostBinding, HostListener, Component, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
3
  import { TuiDestroyService, TUI_IS_MOBILE, tuiDefaultProp } from '@taiga-ui/cdk';
4
+ import { TUI_HINT_OPTIONS } from '@taiga-ui/core/directives';
4
5
  import { MODE_PROVIDER } from '@taiga-ui/core/providers';
5
6
  import { TUI_MODE } from '@taiga-ui/core/tokens';
6
7
  import { Observable } from 'rxjs';
@@ -8,16 +9,18 @@ import { takeUntil } from 'rxjs/operators';
8
9
  import { CommonModule } from '@angular/common';
9
10
  import { TuiSvgModule } from '@taiga-ui/core/components/svg';
10
11
  import { TuiHintModule } from '@taiga-ui/core/directives/hint';
12
+ import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
11
13
 
12
14
  let TuiTooltipComponent = class TuiTooltipComponent {
13
- constructor(destroy$, mode$, isMobile) {
15
+ constructor(destroy$, mode$, isMobile, options) {
14
16
  this.isMobile = isMobile;
17
+ this.options = options;
15
18
  this.globalMode = null;
16
19
  this.content = '';
17
- this.mode = null;
18
- this.direction = 'bottom-left';
19
- this.showDelay = 500;
20
- this.hideDelay = 200;
20
+ this.mode = this.options.mode;
21
+ this.direction = this.options.direction;
22
+ this.showDelay = this.options.tuiHintShowDelay;
23
+ this.hideDelay = this.options.tuiHintHideDelay;
21
24
  this.describeId = '';
22
25
  mode$.pipe(takeUntil(destroy$)).subscribe(mode => {
23
26
  this.globalMode = mode;
@@ -33,11 +36,15 @@ let TuiTooltipComponent = class TuiTooltipComponent {
33
36
  event.stopPropagation();
34
37
  }
35
38
  }
39
+ get icon() {
40
+ return this.options.tooltipIcon;
41
+ }
36
42
  };
37
43
  TuiTooltipComponent.ctorParameters = () => [
38
44
  { type: Observable, decorators: [{ type: Inject, args: [TuiDestroyService,] }] },
39
45
  { type: Observable, decorators: [{ type: Inject, args: [TUI_MODE,] }] },
40
- { type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_MOBILE,] }] }
46
+ { type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_MOBILE,] }] },
47
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_HINT_OPTIONS,] }] }
41
48
  ];
42
49
  __decorate([
43
50
  Input(),
@@ -73,21 +80,22 @@ __decorate([
73
80
  TuiTooltipComponent = __decorate([
74
81
  Component({
75
82
  selector: 'tui-tooltip',
76
- template: "<tui-svg\n src=\"tuiIconTooltipLarge\"\n automation-id=\"tui-tooltip__icon\"\n class=\"icon\"\n [tuiHintId]=\"describeId\"\n [tuiHint]=\"content\"\n [tuiHintDirection]=\"direction\"\n [tuiHintShowDelay]=\"showDelay\"\n [tuiHintHideDelay]=\"hideDelay\"\n [tuiHintMode]=\"computedMode\"\n></tui-svg>\n",
83
+ template: "<span\n polymorpheus-outlet\n automation-id=\"tui-tooltip__icon\"\n class=\"icon\"\n [content]=\"icon\"\n [tuiHintId]=\"describeId\"\n [tuiHint]=\"content\"\n [tuiHintDirection]=\"direction\"\n [tuiHintShowDelay]=\"showDelay\"\n [tuiHintHideDelay]=\"hideDelay\"\n [tuiHintMode]=\"computedMode\"\n>\n <ng-template let-icon>\n <tui-svg [src]=\"icon\"></tui-svg>\n </ng-template>\n</span>\n",
77
84
  changeDetection: ChangeDetectionStrategy.OnPush,
78
85
  providers: [TuiDestroyService, MODE_PROVIDER],
79
86
  styles: [":host{transition-property:color;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:relative;display:inline-block;width:1.5rem;height:1.5rem;vertical-align:middle;font-size:0;line-height:0;cursor:pointer;color:var(--tui-text-03)}:host:hover{color:var(--tui-text-02)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-mode=onLight]{color:var(--tui-text-01)}:host[data-mode=error]{color:var(--tui-error-fill)}.icon{transition-property:opacity,color;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;width:100%;height:100%}:host:not([data-mode]) .icon._hint_hovered{color:var(--tui-text-02)}:host[data-mode=onDark] .icon,:host[data-mode=onLight] .icon{opacity:var(--tui-disabled-opacity)}:host[data-mode=onDark] .icon._hint_hovered,:host[data-mode=onDark] .icon:hover,:host[data-mode=onLight] .icon._hint_hovered,:host[data-mode=onLight] .icon:hover{opacity:1}"]
80
87
  }),
81
88
  __param(0, Inject(TuiDestroyService)),
82
89
  __param(1, Inject(TUI_MODE)),
83
- __param(2, Inject(TUI_IS_MOBILE))
90
+ __param(2, Inject(TUI_IS_MOBILE)),
91
+ __param(3, Inject(TUI_HINT_OPTIONS))
84
92
  ], TuiTooltipComponent);
85
93
 
86
94
  let TuiTooltipModule = class TuiTooltipModule {
87
95
  };
88
96
  TuiTooltipModule = __decorate([
89
97
  NgModule({
90
- imports: [CommonModule, TuiSvgModule, TuiHintModule],
98
+ imports: [CommonModule, TuiSvgModule, TuiHintModule, PolymorpheusModule],
91
99
  declarations: [TuiTooltipComponent],
92
100
  exports: [TuiTooltipComponent],
93
101
  })
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-tooltip.js","sources":["ng://@taiga-ui/core/components/tooltip/tooltip.component.ts","ng://@taiga-ui/core/components/tooltip/tooltip.module.ts","ng://@taiga-ui/core/components/tooltip/taiga-ui-core-components-tooltip.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {TUI_IS_MOBILE, tuiDefaultProp, TuiDestroyService} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness, TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-tooltip',\n templateUrl: './tooltip.template.html',\n styleUrls: ['./tooltip.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService, MODE_PROVIDER],\n})\nexport class TuiTooltipComponent {\n private globalMode: TuiBrightness | null = null;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n mode: TuiHintModeT | null = null;\n\n @Input()\n @tuiDefaultProp()\n direction: TuiDirection = 'bottom-left';\n\n @Input()\n @tuiDefaultProp()\n showDelay = 500;\n\n @Input()\n @tuiDefaultProp()\n hideDelay = 200;\n\n @Input()\n @tuiDefaultProp()\n describeId = '';\n\n constructor(\n @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(TUI_MODE) mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n ) {\n mode$.pipe(takeUntil(destroy$)).subscribe(mode => {\n this.globalMode = mode;\n });\n }\n\n // TODO: Simplify\n @HostBinding('attr.data-mode')\n get computedMode(): TuiHintModeT | TuiBrightness | null {\n return this.mode || this.globalMode;\n }\n\n @HostListener('mousedown', ['$event'])\n @HostListener('click', ['$event'])\n stopOnMobile(event: MouseEvent) {\n if (this.isMobile) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiHintModule} from '@taiga-ui/core/directives/hint';\n\nimport {TuiTooltipComponent} from './tooltip.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiHintModule],\n declarations: [TuiTooltipComponent],\n exports: [TuiTooltipComponent],\n})\nexport class TuiTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;IAuBa,mBAAmB,GAAhC,MAAa,mBAAmB;IA2B5B,YAC+B,QAA6B,EACtC,KAAuC,EACjB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QA7BrD,eAAU,GAAyB,IAAI,CAAC;QAIhD,YAAO,GAAwB,EAAE,CAAC;QAIlC,SAAI,GAAwB,IAAI,CAAC;QAIjC,cAAS,GAAiB,aAAa,CAAC;QAIxC,cAAS,GAAG,GAAG,CAAC;QAIhB,cAAS,GAAG,GAAG,CAAC;QAIhB,eAAU,GAAG,EAAE,CAAC;QAOZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI;YAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SAC1B,CAAC,CAAC;KACN;;IAID,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC;KACvC;IAID,YAAY,CAAC,KAAiB;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;SAC3B;KACJ;EACJ;;YAvB4C,UAAU,uBAA9C,MAAM,SAAC,iBAAiB;YACA,UAAU,uBAAlC,MAAM,SAAC,QAAQ;0CACf,MAAM,SAAC,aAAa;;AAzBzB;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;oDACiB;AAIlC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;iDACgB;AAIjC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDACuB;AAIxC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDACD;AAIhB;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDACD;AAIhB;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;uDACD;AAchB;IADC,WAAW,CAAC,gBAAgB,CAAC;uDAG7B;AAID;IAFC,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;IACrC,YAAY,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC;uDAMjC;AAlDQ,mBAAmB;IAP/B,SAAS,CAAC;QACP,QAAQ,EAAE,aAAa;QACvB,kVAAsC;QAEtC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,CAAC,iBAAiB,EAAE,aAAa,CAAC;;KAChD,CAAC;IA6BO,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACzB,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;IAChB,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;GA9BjB,mBAAmB,CAmD/B;;IC9DY,gBAAgB,GAA7B,MAAa,gBAAgB;EAAG;AAAnB,gBAAgB;IAL5B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,CAAC;QACpD,YAAY,EAAE,CAAC,mBAAmB,CAAC;QACnC,OAAO,EAAE,CAAC,mBAAmB,CAAC;KACjC,CAAC;GACW,gBAAgB,CAAG;;ACZhC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-tooltip.js","sources":["ng://@taiga-ui/core/components/tooltip/tooltip.component.ts","ng://@taiga-ui/core/components/tooltip/tooltip.module.ts","ng://@taiga-ui/core/components/tooltip/taiga-ui-core-components-tooltip.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {TUI_IS_MOBILE, tuiDefaultProp, TuiDestroyService} from '@taiga-ui/cdk';\nimport {TUI_HINT_OPTIONS, TuiHintOptions} from '@taiga-ui/core/directives';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness, TuiHintModeT} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-tooltip',\n templateUrl: './tooltip.template.html',\n styleUrls: ['./tooltip.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService, MODE_PROVIDER],\n})\nexport class TuiTooltipComponent {\n private globalMode: TuiBrightness | null = null;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n mode: TuiHintOptions['mode'] = this.options.mode;\n\n @Input()\n @tuiDefaultProp()\n direction: TuiHintOptions['direction'] = this.options.direction;\n\n @Input()\n @tuiDefaultProp()\n showDelay: TuiHintOptions['tuiHintShowDelay'] = this.options.tuiHintShowDelay;\n\n @Input()\n @tuiDefaultProp()\n hideDelay: TuiHintOptions['tuiHintHideDelay'] = this.options.tuiHintHideDelay;\n\n @Input()\n @tuiDefaultProp()\n describeId = '';\n\n constructor(\n @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(TUI_MODE) mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_HINT_OPTIONS) private readonly options: TuiHintOptions,\n ) {\n mode$.pipe(takeUntil(destroy$)).subscribe(mode => {\n this.globalMode = mode;\n });\n }\n\n // TODO: Simplify\n @HostBinding('attr.data-mode')\n get computedMode(): TuiHintModeT | TuiBrightness | null {\n return this.mode || this.globalMode;\n }\n\n @HostListener('mousedown', ['$event'])\n @HostListener('click', ['$event'])\n stopOnMobile(event: MouseEvent) {\n if (this.isMobile) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n\n get icon(): PolymorpheusContent {\n return this.options.tooltipIcon;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiHintModule} from '@taiga-ui/core/directives/hint';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTooltipComponent} from './tooltip.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiHintModule, PolymorpheusModule],\n declarations: [TuiTooltipComponent],\n exports: [TuiTooltipComponent],\n})\nexport class TuiTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;IAwBa,mBAAmB,GAAhC,MAAa,mBAAmB;IA2B5B,YAC+B,QAA6B,EACtC,KAAuC,EACjB,QAAiB,EACd,OAAuB;QAD1B,aAAQ,GAAR,QAAQ,CAAS;QACd,YAAO,GAAP,OAAO,CAAgB;QA9B9D,eAAU,GAAyB,IAAI,CAAC;QAIhD,YAAO,GAAwB,EAAE,CAAC;QAIlC,SAAI,GAA2B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAIjD,cAAS,GAAgC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAIhE,cAAS,GAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAI9E,cAAS,GAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAI9E,eAAU,GAAG,EAAE,CAAC;QAQZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI;YAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SAC1B,CAAC,CAAC;KACN;;IAID,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC;KACvC;IAID,YAAY,CAAC,KAAiB;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;SAC3B;KACJ;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;KACnC;EACJ;;YA5B4C,UAAU,uBAA9C,MAAM,SAAC,iBAAiB;YACA,UAAU,uBAAlC,MAAM,SAAC,QAAQ;0CACf,MAAM,SAAC,aAAa;4CACpB,MAAM,SAAC,gBAAgB;;AA1B5B;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;oDACiB;AAIlC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;iDACgC;AAIjD;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDAC+C;AAIhE;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDAC6D;AAI9E;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDAC6D;AAI9E;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;uDACD;AAehB;IADC,WAAW,CAAC,gBAAgB,CAAC;uDAG7B;AAID;IAFC,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;IACrC,YAAY,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC;uDAMjC;AAnDQ,mBAAmB;IAP/B,SAAS,CAAC;QACP,QAAQ,EAAE,aAAa;QACvB,0bAAsC;QAEtC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,CAAC,iBAAiB,EAAE,aAAa,CAAC;;KAChD,CAAC;IA6BO,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACzB,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;IAChB,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,gBAAgB,CAAC,CAAA;GA/BpB,mBAAmB,CAwD/B;;ICnEY,gBAAgB,GAA7B,MAAa,gBAAgB;EAAG;AAAnB,gBAAgB;IAL5B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,CAAC;QACxE,YAAY,EAAE,CAAC,mBAAmB,CAAC;QACnC,OAAO,EAAE,CAAC,mBAAmB,CAAC;KACjC,CAAC;GACW,gBAAgB,CAAG;;ACbhC;;;;;;"}
@@ -59,11 +59,11 @@ const TUI_DIGIT_REGEXP = /\d/;
59
59
  const TUI_NON_DIGIT_REGEXP = /\D/;
60
60
  const TUI_NON_DIGITS_REGEXP = /\D+/g;
61
61
  const TUI_LEADING_ZEROES_REGEXP = /^0+/;
62
- const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\/#!$%\\^&\\*;:{}=\\-_\`~()]$/;
62
+ const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\/#!$%\\^&\\*;:{}=\\-_`~()]$/;
63
63
  const TUI_LATIN_REGEXP = /[A-z]/;
64
64
  const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;
65
65
 
66
- const VERSION = '2.28.0';
66
+ const VERSION = '2.32.0';
67
67
 
68
68
  /**
69
69
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-constants.js","sources":["ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/editing-keys.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/version.ts","ng://@taiga-ui/core/constants/taiga-ui-core-constants.ts"],"sourcesContent":["export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const TUI_DECIMAL_SYMBOLS: ReadonlyArray<string> = [',', '.'];\n","import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_\\`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","export const VERSION = '2.28.0';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;MAAa,cAAc,GAAG,EAAE;MACnB,kBAAkB,GAAG,GAAG;MACxB,kBAAkB,GAAG,IAAI;MACzB,iBAAiB,GAAG;;MCHpB,mBAAmB,GAA0B,CAAC,GAAG,EAAE,GAAG;;MCEtD,kBAAkB,GAA6B,IAAI,IAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI;;MCA/B,0BAA0B,GAAqB,MAAM;;MCHrD,cAAc,GAAsB;IAC7C,UAAU;IACV,WAAW;IACX,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;;;ACTV;;;;MAIa,iBAAiB,GAAG,oBAAoB;AAErD;;;MAGa,oBAAoB,GAAG,uBAAuB;AAE3D;;;;MAIa,cAAc,GAAG,iBAAiB;AAE/C;;;MAGa,cAAc,GAAG;;MCpBjB,eAAe,GAAG;;ACA/B;;;;MAIa,KAAK,GAAG;IACjB,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;;;MCRT,gBAAgB,GAAG,KAAK;MACxB,oBAAoB,GAAG,KAAK;MAC5B,qBAAqB,GAAG,OAAO;MAC/B,yBAAyB,GAAG,MAAM;MAClC,gCAAgC,GAAG,oCAAoC;MACvE,gBAAgB,GAAG,QAAQ;MAC3B,4BAA4B,GAAG;;MCN/B,OAAO,GAAG;;ACAvB;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-constants.js","sources":["ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/editing-keys.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/version.ts","ng://@taiga-ui/core/constants/taiga-ui-core-constants.ts"],"sourcesContent":["export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const TUI_DECIMAL_SYMBOLS: ReadonlyArray<string> = [',', '.'];\n","import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","export const VERSION = '2.32.0';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;MAAa,cAAc,GAAG,EAAE;MACnB,kBAAkB,GAAG,GAAG;MACxB,kBAAkB,GAAG,IAAI;MACzB,iBAAiB,GAAG;;MCHpB,mBAAmB,GAA0B,CAAC,GAAG,EAAE,GAAG;;MCEtD,kBAAkB,GAA6B,IAAI,IAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI;;MCA/B,0BAA0B,GAAqB,MAAM;;MCHrD,cAAc,GAAsB;IAC7C,UAAU;IACV,WAAW;IACX,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;;;ACTV;;;;MAIa,iBAAiB,GAAG,oBAAoB;AAErD;;;MAGa,oBAAoB,GAAG,uBAAuB;AAE3D;;;;MAIa,cAAc,GAAG,iBAAiB;AAE/C;;;MAGa,cAAc,GAAG;;MCpBjB,eAAe,GAAG;;ACA/B;;;;MAIa,KAAK,GAAG;IACjB,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;;;MCRT,gBAAgB,GAAG,KAAK;MACxB,oBAAoB,GAAG,KAAK;MAC5B,qBAAqB,GAAG,OAAO;MAC/B,yBAAyB,GAAG,MAAM;MAClC,gCAAgC,GAAG,mCAAmC;MACtE,gBAAgB,GAAG,QAAQ;MAC3B,4BAA4B,GAAG;;MCN/B,OAAO,GAAG;;ACAvB;;;;;;"}
@@ -1,25 +1,30 @@
1
- import { __decorate } from 'tslib';
2
- import { InjectionToken, Input, Directive, forwardRef, NgModule, ChangeDetectorRef } from '@angular/core';
1
+ import { __decorate, __param } from 'tslib';
2
+ import { InjectionToken, inject, Inject, Input, Directive, forwardRef, NgModule, ChangeDetectorRef } from '@angular/core';
3
3
  import { TuiController, tuiDefaultProp, TuiDestroyService } from '@taiga-ui/cdk';
4
+ import { TUI_HINT_OPTIONS } from '@taiga-ui/core/directives/hint';
4
5
  import { watchedControllerFactory } from '@taiga-ui/core/providers';
5
6
 
6
7
  const TUI_HINT_CONTROLLER = new InjectionToken('Controls configuration of hints', {
7
- factory: () => new TuiHintControllerDirective(),
8
+ factory: () => new TuiHintControllerDirective(inject(TUI_HINT_OPTIONS)),
8
9
  });
9
10
 
10
11
  var TuiHintControllerDirective_1;
11
12
  // TODO: v2.0 use in Charts
12
13
  let TuiHintControllerDirective = TuiHintControllerDirective_1 = class TuiHintControllerDirective extends TuiController {
13
- constructor() {
14
- super(...arguments);
14
+ constructor(options) {
15
+ super();
16
+ this.options = options;
15
17
  // TODO: Remove null in 3.0
16
18
  this.content = null;
17
- this.direction = 'bottom-left';
18
- this.mode = null;
19
- this.showDelay = 500;
20
- this.hideDelay = 200;
19
+ this.direction = this.options.direction;
20
+ this.mode = this.options.mode;
21
+ this.showDelay = this.options.tuiHintShowDelay;
22
+ this.hideDelay = this.options.tuiHintHideDelay;
21
23
  }
22
24
  };
25
+ TuiHintControllerDirective.ctorParameters = () => [
26
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_HINT_OPTIONS,] }] }
27
+ ];
23
28
  __decorate([
24
29
  Input('tuiHintContent'),
25
30
  tuiDefaultProp()
@@ -49,7 +54,8 @@ TuiHintControllerDirective = TuiHintControllerDirective_1 = __decorate([
49
54
  useExisting: forwardRef(() => TuiHintControllerDirective_1),
50
55
  },
51
56
  ],
52
- })
57
+ }),
58
+ __param(0, Inject(TUI_HINT_OPTIONS))
53
59
  ], TuiHintControllerDirective);
54
60
 
55
61
  let TuiHintControllerModule = class TuiHintControllerModule {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-directives-hint-controller.js","sources":["ng://@taiga-ui/core/directives/hint-controller/hint-controller.token.ts","ng://@taiga-ui/core/directives/hint-controller/hint-controller.directive.ts","ng://@taiga-ui/core/directives/hint-controller/hint-controller.module.ts","ng://@taiga-ui/core/directives/hint-controller/hint-controller.provider.ts","ng://@taiga-ui/core/directives/hint-controller/taiga-ui-core-directives-hint-controller.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {TuiHintControllerDirective} from './hint-controller.directive';\n\nexport const TUI_HINT_CONTROLLER = new InjectionToken<TuiHintControllerDirective>(\n 'Controls configuration of hints',\n {\n factory: () => new TuiHintControllerDirective(),\n },\n);\n","import {Directive, forwardRef, Input} from '@angular/core';\nimport {TuiController, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_HINT_CONTROLLER} from './hint-controller.token';\n\n// TODO: v2.0 use in Charts\n@Directive({\n selector: '[tuiHintContent]',\n providers: [\n {\n provide: TUI_HINT_CONTROLLER,\n useExisting: forwardRef(() => TuiHintControllerDirective),\n },\n ],\n})\nexport class TuiHintControllerDirective extends TuiController {\n // TODO: Remove null in 3.0\n @Input('tuiHintContent')\n @tuiDefaultProp()\n content: PolymorpheusContent | null = null;\n\n @Input('tuiHintDirection')\n @tuiDefaultProp()\n direction: TuiDirection = 'bottom-left';\n\n @Input('tuiHintMode')\n @tuiDefaultProp()\n mode: TuiHintModeT | null = null;\n\n @Input('tuiHintShowDelay')\n @tuiDefaultProp()\n showDelay = 500;\n\n @Input('tuiHintHideDelay')\n @tuiDefaultProp()\n hideDelay = 200;\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiHintControllerDirective} from './hint-controller.directive';\n\n@NgModule({\n declarations: [TuiHintControllerDirective],\n exports: [TuiHintControllerDirective],\n})\nexport class TuiHintControllerModule {}\n","import {ChangeDetectorRef, InjectionToken, Provider} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {watchedControllerFactory} from '@taiga-ui/core/providers';\n\nimport {TUI_HINT_CONTROLLER} from './hint-controller.token';\n\nexport const TUI_HINT_WATCHED_CONTROLLER = new InjectionToken('watched hint controller');\n// TODO: remove in ivy compilation\nexport const HINT_CONTROLLER_FACTORY = watchedControllerFactory;\nexport const HINT_CONTROLLER_PROVIDER: Provider = [\n TuiDestroyService,\n {\n provide: TUI_HINT_WATCHED_CONTROLLER,\n deps: [TUI_HINT_CONTROLLER, ChangeDetectorRef, TuiDestroyService],\n useFactory: HINT_CONTROLLER_FACTORY,\n },\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAIa,mBAAmB,GAAG,IAAI,cAAc,CACjD,iCAAiC,EACjC;IACI,OAAO,EAAE,MAAM,IAAI,0BAA0B,EAAE;CAClD;;;ACDL;IAUa,0BAA0B,kCAAvC,MAAa,0BAA2B,SAAQ,aAAa;IAA7D;;;QAII,YAAO,GAA+B,IAAI,CAAC;QAI3C,cAAS,GAAiB,aAAa,CAAC;QAIxC,SAAI,GAAwB,IAAI,CAAC;QAIjC,cAAS,GAAG,GAAG,CAAC;QAIhB,cAAS,GAAG,GAAG,CAAC;KACnB;EAAA;AAjBG;IAFC,KAAK,CAAC,gBAAgB,CAAC;IACvB,cAAc,EAAE;2DAC0B;AAI3C;IAFC,KAAK,CAAC,kBAAkB,CAAC;IACzB,cAAc,EAAE;6DACuB;AAIxC;IAFC,KAAK,CAAC,aAAa,CAAC;IACpB,cAAc,EAAE;wDACgB;AAIjC;IAFC,KAAK,CAAC,kBAAkB,CAAC;IACzB,cAAc,EAAE;6DACD;AAIhB;IAFC,KAAK,CAAC,kBAAkB,CAAC;IACzB,cAAc,EAAE;6DACD;AApBP,0BAA0B;IATtC,SAAS,CAAC;QACP,QAAQ,EAAE,kBAAkB;QAC5B,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,mBAAmB;gBAC5B,WAAW,EAAE,UAAU,CAAC,MAAM,4BAA0B,CAAC;aAC5D;SACJ;KACJ,CAAC;GACW,0BAA0B,CAqBtC;;IC9BY,uBAAuB,GAApC,MAAa,uBAAuB;EAAG;AAA1B,uBAAuB;IAJnC,QAAQ,CAAC;QACN,YAAY,EAAE,CAAC,0BAA0B,CAAC;QAC1C,OAAO,EAAE,CAAC,0BAA0B,CAAC;KACxC,CAAC;GACW,uBAAuB,CAAG;;MCF1B,2BAA2B,GAAG,IAAI,cAAc,CAAC,yBAAyB,EAAE;AACzF;MACa,uBAAuB,GAAG,yBAAyB;MACnD,wBAAwB,GAAa;IAC9C,iBAAiB;IACjB;QACI,OAAO,EAAE,2BAA2B;QACpC,IAAI,EAAE,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC;QACjE,UAAU,EAAE,uBAAuB;KACtC;;;ACfL;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-directives-hint-controller.js","sources":["ng://@taiga-ui/core/directives/hint-controller/hint-controller.token.ts","ng://@taiga-ui/core/directives/hint-controller/hint-controller.directive.ts","ng://@taiga-ui/core/directives/hint-controller/hint-controller.module.ts","ng://@taiga-ui/core/directives/hint-controller/hint-controller.provider.ts","ng://@taiga-ui/core/directives/hint-controller/taiga-ui-core-directives-hint-controller.ts"],"sourcesContent":["import {inject, InjectionToken} from '@angular/core';\nimport {TUI_HINT_OPTIONS} from '@taiga-ui/core/directives/hint';\n\nimport {TuiHintControllerDirective} from './hint-controller.directive';\n\nexport const TUI_HINT_CONTROLLER = new InjectionToken<TuiHintControllerDirective>(\n 'Controls configuration of hints',\n {\n factory: () => new TuiHintControllerDirective(inject(TUI_HINT_OPTIONS)),\n },\n);\n","import {Directive, forwardRef, Inject, Input} from '@angular/core';\nimport {TuiController, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TUI_HINT_OPTIONS, TuiHintOptions} from '@taiga-ui/core/directives/hint';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_HINT_CONTROLLER} from './hint-controller.token';\n\n// TODO: v2.0 use in Charts\n@Directive({\n selector: '[tuiHintContent]',\n providers: [\n {\n provide: TUI_HINT_CONTROLLER,\n useExisting: forwardRef(() => TuiHintControllerDirective),\n },\n ],\n})\nexport class TuiHintControllerDirective extends TuiController {\n // TODO: Remove null in 3.0\n @Input('tuiHintContent')\n @tuiDefaultProp()\n content: PolymorpheusContent | null = null;\n\n @Input('tuiHintDirection')\n @tuiDefaultProp()\n direction: TuiHintOptions['direction'] = this.options.direction;\n\n @Input('tuiHintMode')\n @tuiDefaultProp()\n mode: TuiHintOptions['mode'] = this.options.mode;\n\n @Input('tuiHintShowDelay')\n @tuiDefaultProp()\n showDelay: TuiHintOptions['tuiHintShowDelay'] = this.options.tuiHintShowDelay;\n\n @Input('tuiHintHideDelay')\n @tuiDefaultProp()\n hideDelay: TuiHintOptions['tuiHintHideDelay'] = this.options.tuiHintHideDelay;\n\n constructor(@Inject(TUI_HINT_OPTIONS) private readonly options: TuiHintOptions) {\n super();\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiHintControllerDirective} from './hint-controller.directive';\n\n@NgModule({\n declarations: [TuiHintControllerDirective],\n exports: [TuiHintControllerDirective],\n})\nexport class TuiHintControllerModule {}\n","import {ChangeDetectorRef, InjectionToken, Provider} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {watchedControllerFactory} from '@taiga-ui/core/providers';\n\nimport {TUI_HINT_CONTROLLER} from './hint-controller.token';\n\nexport const TUI_HINT_WATCHED_CONTROLLER = new InjectionToken('watched hint controller');\n// TODO: remove in ivy compilation\nexport const HINT_CONTROLLER_FACTORY = watchedControllerFactory;\nexport const HINT_CONTROLLER_PROVIDER: Provider = [\n TuiDestroyService,\n {\n provide: TUI_HINT_WATCHED_CONTROLLER,\n deps: [TUI_HINT_CONTROLLER, ChangeDetectorRef, TuiDestroyService],\n useFactory: HINT_CONTROLLER_FACTORY,\n },\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAKa,mBAAmB,GAAG,IAAI,cAAc,CACjD,iCAAiC,EACjC;IACI,OAAO,EAAE,MAAM,IAAI,0BAA0B,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;CAC1E;;;ACFL;IAUa,0BAA0B,kCAAvC,MAAa,0BAA2B,SAAQ,aAAa;IAsBzD,YAAuD,OAAuB;QAC1E,KAAK,EAAE,CAAC;QAD2C,YAAO,GAAP,OAAO,CAAgB;;QAlB9E,YAAO,GAA+B,IAAI,CAAC;QAI3C,cAAS,GAAgC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAIhE,SAAI,GAA2B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAIjD,cAAS,GAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAI9E,cAAS,GAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;KAI7E;EACJ;;4CAHgB,MAAM,SAAC,gBAAgB;;AAlBpC;IAFC,KAAK,CAAC,gBAAgB,CAAC;IACvB,cAAc,EAAE;2DAC0B;AAI3C;IAFC,KAAK,CAAC,kBAAkB,CAAC;IACzB,cAAc,EAAE;6DAC+C;AAIhE;IAFC,KAAK,CAAC,aAAa,CAAC;IACpB,cAAc,EAAE;wDACgC;AAIjD;IAFC,KAAK,CAAC,kBAAkB,CAAC;IACzB,cAAc,EAAE;6DAC6D;AAI9E;IAFC,KAAK,CAAC,kBAAkB,CAAC;IACzB,cAAc,EAAE;6DAC6D;AApBrE,0BAA0B;IATtC,SAAS,CAAC;QACP,QAAQ,EAAE,kBAAkB;QAC5B,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,mBAAmB;gBAC5B,WAAW,EAAE,UAAU,CAAC,MAAM,4BAA0B,CAAC;aAC5D;SACJ;KACJ,CAAC;IAuBe,WAAA,MAAM,CAAC,gBAAgB,CAAC,CAAA;GAtB5B,0BAA0B,CAyBtC;;IClCY,uBAAuB,GAApC,MAAa,uBAAuB;EAAG;AAA1B,uBAAuB;IAJnC,QAAQ,CAAC;QACN,YAAY,EAAE,CAAC,0BAA0B,CAAC;QAC1C,OAAO,EAAE,CAAC,0BAA0B,CAAC;KACxC,CAAC;GACW,uBAAuB,CAAG;;MCF1B,2BAA2B,GAAG,IAAI,cAAc,CAAC,yBAAyB,EAAE;AACzF;MACa,uBAAuB,GAAG,yBAAyB;MACnD,wBAAwB,GAAa;IAC9C,iBAAiB;IACjB;QACI,OAAO,EAAE,2BAA2B;QACpC,IAAI,EAAE,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC;QACjE,UAAU,EAAE,uBAAuB;KACtC;;;ACfL;;;;;;"}
@@ -1,19 +1,28 @@
1
1
  import { __decorate, __param } from 'tslib';
2
- import { Renderer2, Inject, ElementRef, Self, Optional, Input, Directive, NgModule } from '@angular/core';
2
+ import { InjectionToken, Renderer2, Inject, ElementRef, Self, Optional, Input, Directive, NgModule } from '@angular/core';
3
3
  import { TuiDestroyService, TuiObscuredService, TuiHoveredService, TuiActiveZoneDirective, tuiDefaultProp, tuiRequiredSetter, TuiParentsScrollService } from '@taiga-ui/cdk';
4
- import { AbstractTuiHint } from '@taiga-ui/core/abstract';
4
+ import { TUI_ABSTRACT_HINT_DEFAULT_OPTIONS, AbstractTuiHint } from '@taiga-ui/core/abstract';
5
5
  import { DESCRIBED_BY } from '@taiga-ui/core/directives/described-by';
6
6
  import { TuiHintService } from '@taiga-ui/core/services';
7
7
  import { Subject, combineLatest, of } from 'rxjs';
8
8
  import { startWith, map, switchMap, delay, take, distinctUntilChanged, takeUntil } from 'rxjs/operators';
9
9
 
10
+ // TODO: remove in ivy compilation
11
+ const TUI_TOOLTIP_ICON = 'tuiIconTooltipLarge';
12
+ /** Default values for hint options */
13
+ const TUI_HINT_DEFAULT_OPTIONS = Object.assign(Object.assign({}, TUI_ABSTRACT_HINT_DEFAULT_OPTIONS), { tuiHintShowDelay: 500, tuiHintHideDelay: 200, tooltipIcon: TUI_TOOLTIP_ICON });
14
+ const TUI_HINT_OPTIONS = new InjectionToken('Default parameters for hint directive', {
15
+ factory: () => TUI_HINT_DEFAULT_OPTIONS,
16
+ });
17
+
10
18
  const HINT_HOVERED_CLASS = '_hint_hovered';
11
19
  let TuiHintDirective = class TuiHintDirective extends AbstractTuiHint {
12
- constructor(renderer, elementRef, hintService, destroy$, obscured$, hoveredService, activeZone) {
13
- super(elementRef, hintService, activeZone);
20
+ constructor(renderer, elementRef, hintService, destroy$, obscured$, hoveredService, activeZone, options) {
21
+ super(elementRef, hintService, activeZone, options);
14
22
  this.renderer = renderer;
15
- this.tuiHintShowDelay = 500;
16
- this.tuiHintHideDelay = 200;
23
+ this.options = options;
24
+ this.tuiHintShowDelay = this.options.tuiHintShowDelay;
25
+ this.tuiHintHideDelay = this.options.tuiHintHideDelay;
17
26
  this.tuiHintHost = null;
18
27
  this.componentHovered$ = new Subject();
19
28
  // @bad TODO: Use private provider
@@ -82,7 +91,8 @@ TuiHintDirective.ctorParameters = () => [
82
91
  { type: TuiDestroyService, decorators: [{ type: Inject, args: [TuiDestroyService,] }] },
83
92
  { type: TuiObscuredService, decorators: [{ type: Inject, args: [TuiObscuredService,] }, { type: Self }] },
84
93
  { type: TuiHoveredService, decorators: [{ type: Inject, args: [TuiHoveredService,] }] },
85
- { type: TuiActiveZoneDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiActiveZoneDirective,] }] }
94
+ { type: TuiActiveZoneDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiActiveZoneDirective,] }] },
95
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_HINT_OPTIONS,] }] }
86
96
  ];
87
97
  __decorate([
88
98
  Input()
@@ -116,7 +126,8 @@ TuiHintDirective = __decorate([
116
126
  __param(4, Self()),
117
127
  __param(5, Inject(TuiHoveredService)),
118
128
  __param(6, Optional()),
119
- __param(6, Inject(TuiActiveZoneDirective))
129
+ __param(6, Inject(TuiActiveZoneDirective)),
130
+ __param(7, Inject(TUI_HINT_OPTIONS))
120
131
  ], TuiHintDirective);
121
132
 
122
133
  let TuiHintModule = class TuiHintModule {
@@ -132,5 +143,5 @@ TuiHintModule = __decorate([
132
143
  * Generated bundle index. Do not edit.
133
144
  */
134
145
 
135
- export { HINT_HOVERED_CLASS, TuiHintDirective, TuiHintModule };
146
+ export { HINT_HOVERED_CLASS, TUI_HINT_DEFAULT_OPTIONS, TUI_HINT_OPTIONS, TUI_TOOLTIP_ICON, TuiHintDirective, TuiHintModule };
136
147
  //# sourceMappingURL=taiga-ui-core-directives-hint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-directives-hint.js","sources":["ng://@taiga-ui/core/directives/hint/hint.directive.ts","ng://@taiga-ui/core/directives/hint/hint.module.ts","ng://@taiga-ui/core/directives/hint/taiga-ui-core-directives-hint.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Renderer2,\n Self,\n} from '@angular/core';\nimport {\n TuiActiveZoneDirective,\n tuiDefaultProp,\n TuiDestroyService,\n TuiHoveredService,\n TuiObscuredService,\n TuiParentsScrollService,\n tuiRequiredSetter,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {DESCRIBED_BY} from '@taiga-ui/core/directives/described-by';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {combineLatest, of, Subject} from 'rxjs';\nimport {\n delay,\n distinctUntilChanged,\n map,\n startWith,\n switchMap,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nexport const HINT_HOVERED_CLASS = '_hint_hovered';\n\n@Directive({\n selector: '[tuiHint]:not(ng-container)',\n providers: [TuiObscuredService, TuiParentsScrollService, TuiDestroyService],\n})\nexport class TuiHintDirective extends AbstractTuiHint implements OnDestroy {\n @Input()\n tuiHintId?: string;\n\n @Input()\n @tuiDefaultProp()\n tuiHintShowDelay = 500;\n\n @Input()\n @tuiDefaultProp()\n tuiHintHideDelay = 200;\n\n @Input()\n @tuiDefaultProp()\n tuiHintHost: HTMLElement | null = null;\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiRequiredSetter()\n set tuiHint(value: PolymorpheusContent | null) {\n if (!value) {\n this.hideTooltip();\n this.content = '';\n\n return;\n }\n\n this.content = value;\n }\n\n readonly componentHovered$ = new Subject<boolean>();\n\n constructor(\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) hintService: TuiHintService,\n @Inject(TuiDestroyService)\n destroy$: TuiDestroyService,\n @Inject(TuiObscuredService)\n @Self()\n obscured$: TuiObscuredService,\n @Inject(TuiHoveredService) hoveredService: TuiHoveredService,\n @Optional()\n @Inject(TuiActiveZoneDirective)\n activeZone: TuiActiveZoneDirective | null,\n ) {\n super(elementRef, hintService, activeZone);\n\n // @bad TODO: Use private provider\n combineLatest(\n hoveredService.createHovered$(elementRef.nativeElement),\n this.componentHovered$.pipe(startWith(false)),\n )\n .pipe(\n map(\n ([directiveHovered, componentHovered]) =>\n directiveHovered || componentHovered,\n ),\n switchMap(visible => {\n this.toggleClass(visible);\n\n return of(visible).pipe(\n delay(visible ? this.tuiHintShowDelay : this.tuiHintHideDelay),\n );\n }),\n switchMap(visible =>\n visible && this.mode !== 'overflow'\n ? obscured$.pipe(\n map(obscured => !obscured),\n take(2),\n )\n : of(visible),\n ),\n distinctUntilChanged(),\n takeUntil(destroy$),\n )\n .subscribe(visible => {\n if (visible) {\n this.showTooltip();\n } else {\n this.hideTooltip();\n }\n });\n\n this.hintService.register(this);\n }\n\n get id(): string | null {\n return this.tuiHintId ? this.tuiHintId + DESCRIBED_BY : null;\n }\n\n get host(): HTMLElement {\n return this.tuiHintHost ? this.tuiHintHost : this.elementRef.nativeElement;\n }\n\n getElementClientRect(): ClientRect {\n return this.host.getBoundingClientRect();\n }\n\n ngOnDestroy() {\n this.hintService.unregister(this);\n }\n\n protected showTooltip() {\n if (this.content === '') {\n return;\n }\n\n this.toggleClass(true);\n this.hintService.add(this);\n }\n\n protected hideTooltip() {\n this.toggleClass(false);\n this.hintService.remove(this);\n }\n\n private toggleClass(add: boolean) {\n if (add) {\n this.renderer.addClass(this.elementRef.nativeElement, HINT_HOVERED_CLASS);\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, HINT_HOVERED_CLASS);\n }\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiHintDirective} from './hint.directive';\n\n@NgModule({\n declarations: [TuiHintDirective],\n exports: [TuiHintDirective],\n})\nexport class TuiHintModule {}\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-directives-hint.js","sources":["ng://@taiga-ui/core/directives/hint/hint-options.ts","ng://@taiga-ui/core/directives/hint/hint.directive.ts","ng://@taiga-ui/core/directives/hint/hint.module.ts","ng://@taiga-ui/core/directives/hint/taiga-ui-core-directives-hint.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {\n TUI_ABSTRACT_HINT_DEFAULT_OPTIONS,\n TuiAbstractHintOptions,\n} from '@taiga-ui/core/abstract';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiHintOptions extends TuiAbstractHintOptions {\n readonly tuiHintShowDelay: number;\n readonly tuiHintHideDelay: number;\n readonly tooltipIcon: PolymorpheusContent;\n}\n\n// TODO: remove in ivy compilation\nexport const TUI_TOOLTIP_ICON = 'tuiIconTooltipLarge';\n\n/** Default values for hint options */\nexport const TUI_HINT_DEFAULT_OPTIONS: TuiHintOptions = {\n ...TUI_ABSTRACT_HINT_DEFAULT_OPTIONS,\n tuiHintShowDelay: 500,\n tuiHintHideDelay: 200,\n tooltipIcon: TUI_TOOLTIP_ICON,\n};\n\nexport const TUI_HINT_OPTIONS = new InjectionToken<TuiHintOptions>(\n 'Default parameters for hint directive',\n {\n factory: () => TUI_HINT_DEFAULT_OPTIONS,\n },\n);\n","import {\n Directive,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Renderer2,\n Self,\n} from '@angular/core';\nimport {\n TuiActiveZoneDirective,\n tuiDefaultProp,\n TuiDestroyService,\n TuiHoveredService,\n TuiObscuredService,\n TuiParentsScrollService,\n tuiRequiredSetter,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {DESCRIBED_BY} from '@taiga-ui/core/directives/described-by';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {combineLatest, of, Subject} from 'rxjs';\nimport {\n delay,\n distinctUntilChanged,\n map,\n startWith,\n switchMap,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport {TUI_HINT_OPTIONS, TuiHintOptions} from './hint-options';\n\nexport const HINT_HOVERED_CLASS = '_hint_hovered';\n\n@Directive({\n selector: '[tuiHint]:not(ng-container)',\n providers: [TuiObscuredService, TuiParentsScrollService, TuiDestroyService],\n})\nexport class TuiHintDirective extends AbstractTuiHint implements OnDestroy {\n @Input()\n tuiHintId?: string;\n\n @Input()\n @tuiDefaultProp()\n tuiHintShowDelay: TuiHintOptions['tuiHintShowDelay'] = this.options.tuiHintShowDelay;\n\n @Input()\n @tuiDefaultProp()\n tuiHintHideDelay: TuiHintOptions['tuiHintHideDelay'] = this.options.tuiHintHideDelay;\n\n @Input()\n @tuiDefaultProp()\n tuiHintHost: HTMLElement | null = null;\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiRequiredSetter()\n set tuiHint(value: PolymorpheusContent | null) {\n if (!value) {\n this.hideTooltip();\n this.content = '';\n\n return;\n }\n\n this.content = value;\n }\n\n readonly componentHovered$ = new Subject<boolean>();\n\n constructor(\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) hintService: TuiHintService,\n @Inject(TuiDestroyService)\n destroy$: TuiDestroyService,\n @Inject(TuiObscuredService)\n @Self()\n obscured$: TuiObscuredService,\n @Inject(TuiHoveredService) hoveredService: TuiHoveredService,\n @Optional()\n @Inject(TuiActiveZoneDirective)\n activeZone: TuiActiveZoneDirective | null,\n @Inject(TUI_HINT_OPTIONS) protected readonly options: TuiHintOptions,\n ) {\n super(elementRef, hintService, activeZone, options);\n\n // @bad TODO: Use private provider\n combineLatest(\n hoveredService.createHovered$(elementRef.nativeElement),\n this.componentHovered$.pipe(startWith(false)),\n )\n .pipe(\n map(\n ([directiveHovered, componentHovered]) =>\n directiveHovered || componentHovered,\n ),\n switchMap(visible => {\n this.toggleClass(visible);\n\n return of(visible).pipe(\n delay(visible ? this.tuiHintShowDelay : this.tuiHintHideDelay),\n );\n }),\n switchMap(visible =>\n visible && this.mode !== 'overflow'\n ? obscured$.pipe(\n map(obscured => !obscured),\n take(2),\n )\n : of(visible),\n ),\n distinctUntilChanged(),\n takeUntil(destroy$),\n )\n .subscribe(visible => {\n if (visible) {\n this.showTooltip();\n } else {\n this.hideTooltip();\n }\n });\n\n this.hintService.register(this);\n }\n\n get id(): string | null {\n return this.tuiHintId ? this.tuiHintId + DESCRIBED_BY : null;\n }\n\n get host(): HTMLElement {\n return this.tuiHintHost ? this.tuiHintHost : this.elementRef.nativeElement;\n }\n\n getElementClientRect(): ClientRect {\n return this.host.getBoundingClientRect();\n }\n\n ngOnDestroy() {\n this.hintService.unregister(this);\n }\n\n protected showTooltip() {\n if (this.content === '') {\n return;\n }\n\n this.toggleClass(true);\n this.hintService.add(this);\n }\n\n protected hideTooltip() {\n this.toggleClass(false);\n this.hintService.remove(this);\n }\n\n private toggleClass(add: boolean) {\n if (add) {\n this.renderer.addClass(this.elementRef.nativeElement, HINT_HOVERED_CLASS);\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, HINT_HOVERED_CLASS);\n }\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiHintDirective} from './hint.directive';\n\n@NgModule({\n declarations: [TuiHintDirective],\n exports: [TuiHintDirective],\n})\nexport class TuiHintModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAaA;MACa,gBAAgB,GAAG,sBAAsB;AAEtD;MACa,wBAAwB,mCAC9B,iCAAiC,KACpC,gBAAgB,EAAE,GAAG,EACrB,gBAAgB,EAAE,GAAG,EACrB,WAAW,EAAE,gBAAgB,IAC/B;MAEW,gBAAgB,GAAG,IAAI,cAAc,CAC9C,uCAAuC,EACvC;IACI,OAAO,EAAE,MAAM,wBAAwB;CAC1C;;MCQQ,kBAAkB,GAAG,gBAAgB;IAMrC,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,eAAe;IAgCjD,YACwC,QAAmB,EACnC,UAAmC,EAC/B,WAA2B,EAEnD,QAA2B,EAG3B,SAA6B,EACF,cAAiC,EAG5D,UAAyC,EACI,OAAuB;QAEpE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAdhB,aAAQ,GAAR,QAAQ,CAAW;QAYV,YAAO,GAAP,OAAO,CAAgB;QAvCxE,qBAAgB,GAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAIrF,qBAAgB,GAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAIrF,gBAAW,GAAuB,IAAI,CAAC;QAgB9B,sBAAiB,GAAG,IAAI,OAAO,EAAW,CAAC;;QAoBhD,aAAa,CACT,cAAc,CAAC,cAAc,CAAC,UAAU,CAAC,aAAa,CAAC,EACvD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAChD;aACI,IAAI,CACD,GAAG,CACC,CAAC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,KACjC,gBAAgB,IAAI,gBAAgB,CAC3C,EACD,SAAS,CAAC,OAAO;YACb,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAE1B,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CACnB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,CACjE,CAAC;SACL,CAAC,EACF,SAAS,CAAC,OAAO,IACb,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;cAC7B,SAAS,CAAC,IAAI,CACV,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,EAC1B,IAAI,CAAC,CAAC,CAAC,CACV;cACD,EAAE,CAAC,OAAO,CAAC,CACpB,EACD,oBAAoB,EAAE,EACtB,SAAS,CAAC,QAAQ,CAAC,CACtB;aACA,SAAS,CAAC,OAAO;YACd,IAAI,OAAO,EAAE;gBACT,IAAI,CAAC,WAAW,EAAE,CAAC;aACtB;iBAAM;gBACH,IAAI,CAAC,WAAW,EAAE,CAAC;aACtB;SACJ,CAAC,CAAC;QAEP,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KACnC;;IAnED,IAAI,OAAO,CAAC,KAAiC;QACzC,IAAI,CAAC,KAAK,EAAE;YACR,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAElB,OAAO;SACV;QAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACxB;IA4DD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,YAAY,GAAG,IAAI,CAAC;KAChE;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;KAC9E;IAED,oBAAoB;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC5C;IAED,WAAW;QACP,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACrC;IAES,WAAW;QACjB,IAAI,IAAI,CAAC,OAAO,KAAK,EAAE,EAAE;YACrB,OAAO;SACV;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KAC9B;IAES,WAAW;QACjB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KACjC;IAEO,WAAW,CAAC,GAAY;QAC5B,IAAI,GAAG,EAAE;YACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;SAC7E;aAAM;YACH,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;SAChF;KACJ;EACJ;;YA5FqD,SAAS,uBAAtD,MAAM,SAAC,SAAS;YACe,UAAU,uBAAzC,MAAM,SAAC,UAAU;YACmB,cAAc,uBAAlD,MAAM,SAAC,cAAc;YAEZ,iBAAiB,uBAD1B,MAAM,SAAC,iBAAiB;YAId,kBAAkB,uBAF5B,MAAM,SAAC,kBAAkB,cACzB,IAAI;YAEsC,iBAAiB,uBAA3D,MAAM,SAAC,iBAAiB;YAGb,sBAAsB,uBAFjC,QAAQ,YACR,MAAM,SAAC,sBAAsB;4CAE7B,MAAM,SAAC,gBAAgB;;AA3C5B;IADC,KAAK,EAAE;mDACW;AAInB;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;0DACoE;AAIrF;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;0DACoE;AAIrF;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;qDACsB;AAKvC;IAFC,KAAK,EAAE;IACP,iBAAiB,EAAE;+CAUnB;AA5BQ,gBAAgB;IAJ5B,SAAS,CAAC;QACP,QAAQ,EAAE,6BAA6B;QACvC,SAAS,EAAE,CAAC,kBAAkB,EAAE,uBAAuB,EAAE,iBAAiB,CAAC;KAC9E,CAAC;IAkCO,WAAA,MAAM,CAAC,SAAS,CAAC,CAAA;IACjB,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;IACtB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IAEzB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAC1B,WAAA,IAAI,EAAE,CAAA;IAEN,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACzB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;IAE9B,WAAA,MAAM,CAAC,gBAAgB,CAAC,CAAA;GA7CpB,gBAAgB,CA6H5B;;IC/JY,aAAa,GAA1B,MAAa,aAAa;EAAG;AAAhB,aAAa;IAJzB,QAAQ,CAAC;QACN,YAAY,EAAE,CAAC,gBAAgB,CAAC;QAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC9B,CAAC;GACW,aAAa,CAAG;;ACR7B;;;;;;"}
@@ -1,12 +1,19 @@
1
1
  import { __decorate, __param } from 'tslib';
2
- import { ElementRef, Inject, Optional, Input, Directive, NgModule } from '@angular/core';
2
+ import { InjectionToken, ElementRef, Inject, Optional, Input, Directive, NgModule } from '@angular/core';
3
3
  import { TuiActiveZoneDirective, tuiDefaultProp, tuiRequiredSetter } from '@taiga-ui/cdk';
4
- import { AbstractTuiHint } from '@taiga-ui/core/abstract';
4
+ import { TUI_ABSTRACT_HINT_DEFAULT_OPTIONS, AbstractTuiHint } from '@taiga-ui/core/abstract';
5
5
  import { TuiHintService } from '@taiga-ui/core/services';
6
6
 
7
+ /** Default values for manual hint options */
8
+ const TUI_MANUAL_HINT_DEFAULT_OPTIONS = Object.assign({}, TUI_ABSTRACT_HINT_DEFAULT_OPTIONS);
9
+ const TUI_MANUAL_HINT_OPTIONS = new InjectionToken('Default parameters for manual hint directive', {
10
+ factory: () => TUI_MANUAL_HINT_DEFAULT_OPTIONS,
11
+ });
12
+
7
13
  let TuiManualHintDirective = class TuiManualHintDirective extends AbstractTuiHint {
8
- constructor(elementRef, hintService, activeZone) {
9
- super(elementRef, hintService, activeZone);
14
+ constructor(elementRef, hintService, activeZone, options) {
15
+ super(elementRef, hintService, activeZone, options);
16
+ this.options = options;
10
17
  this.content = '';
11
18
  }
12
19
  set tuiManualHintShow(show) {
@@ -24,7 +31,8 @@ let TuiManualHintDirective = class TuiManualHintDirective extends AbstractTuiHin
24
31
  TuiManualHintDirective.ctorParameters = () => [
25
32
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
26
33
  { type: TuiHintService, decorators: [{ type: Inject, args: [TuiHintService,] }] },
27
- { type: TuiActiveZoneDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiActiveZoneDirective,] }] }
34
+ { type: TuiActiveZoneDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiActiveZoneDirective,] }] },
35
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_MANUAL_HINT_OPTIONS,] }] }
28
36
  ];
29
37
  __decorate([
30
38
  Input('tuiManualHint'),
@@ -41,7 +49,8 @@ TuiManualHintDirective = __decorate([
41
49
  __param(0, Inject(ElementRef)),
42
50
  __param(1, Inject(TuiHintService)),
43
51
  __param(2, Optional()),
44
- __param(2, Inject(TuiActiveZoneDirective))
52
+ __param(2, Inject(TuiActiveZoneDirective)),
53
+ __param(3, Inject(TUI_MANUAL_HINT_OPTIONS))
45
54
  ], TuiManualHintDirective);
46
55
 
47
56
  let TuiManualHintModule = class TuiManualHintModule {
@@ -57,5 +66,5 @@ TuiManualHintModule = __decorate([
57
66
  * Generated bundle index. Do not edit.
58
67
  */
59
68
 
60
- export { TuiManualHintDirective, TuiManualHintModule };
69
+ export { TUI_MANUAL_HINT_DEFAULT_OPTIONS, TUI_MANUAL_HINT_OPTIONS, TuiManualHintDirective, TuiManualHintModule };
61
70
  //# sourceMappingURL=taiga-ui-core-directives-manual-hint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-directives-manual-hint.js","sources":["ng://@taiga-ui/core/directives/manual-hint/manual-hint.directive.ts","ng://@taiga-ui/core/directives/manual-hint/manual-hint.module.ts","ng://@taiga-ui/core/directives/manual-hint/taiga-ui-core-directives-manual-hint.ts"],"sourcesContent":["import {Directive, ElementRef, Inject, Input, Optional} from '@angular/core';\nimport {TuiActiveZoneDirective, tuiDefaultProp, tuiRequiredSetter} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive({\n selector: '[tuiManualHint]:not(ng-container)',\n})\nexport class TuiManualHintDirective extends AbstractTuiHint {\n @Input('tuiManualHint')\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Input()\n @tuiRequiredSetter()\n set tuiManualHintShow(show: boolean) {\n if (show) {\n this.showTooltip();\n } else {\n this.hideTooltip();\n }\n }\n\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) hintService: TuiHintService,\n @Optional()\n @Inject(TuiActiveZoneDirective)\n activeZone: TuiActiveZoneDirective | null,\n ) {\n super(elementRef, hintService, activeZone);\n }\n\n getElementClientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiManualHintDirective} from './manual-hint.directive';\n\n@NgModule({\n declarations: [TuiManualHintDirective],\n exports: [TuiManualHintDirective],\n})\nexport class TuiManualHintModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;IASa,sBAAsB,GAAnC,MAAa,sBAAuB,SAAQ,eAAe;IAevD,YACwB,UAAmC,EAC/B,WAA2B,EAGnD,UAAyC;QAEzC,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAnB/C,YAAO,GAAwB,EAAE,CAAC;KAoBjC;IAhBD,IAAI,iBAAiB,CAAC,IAAa;QAC/B,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,WAAW,EAAE,CAAC;SACtB;aAAM;YACH,IAAI,CAAC,WAAW,EAAE,CAAC;SACtB;KACJ;IAYD,oBAAoB;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;KAChE;EACJ;;YAZuC,UAAU,uBAAzC,MAAM,SAAC,UAAU;YACmB,cAAc,uBAAlD,MAAM,SAAC,cAAc;YAGV,sBAAsB,uBAFjC,QAAQ,YACR,MAAM,SAAC,sBAAsB;;AAhBlC;IAFC,KAAK,CAAC,eAAe,CAAC;IACtB,cAAc,EAAE;uDACiB;AAIlC;IAFC,KAAK,EAAE;IACP,iBAAiB,EAAE;+DAOnB;AAbQ,sBAAsB;IAHlC,SAAS,CAAC;QACP,QAAQ,EAAE,mCAAmC;KAChD,CAAC;IAiBO,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;IACtB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;GAnB1B,sBAAsB,CA4BlC;;IC7BY,mBAAmB,GAAhC,MAAa,mBAAmB;EAAG;AAAtB,mBAAmB;IAJ/B,QAAQ,CAAC;QACN,YAAY,EAAE,CAAC,sBAAsB,CAAC;QACtC,OAAO,EAAE,CAAC,sBAAsB,CAAC;KACpC,CAAC;GACW,mBAAmB,CAAG;;ACRnC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-directives-manual-hint.js","sources":["ng://@taiga-ui/core/directives/manual-hint/manual-hint-options.ts","ng://@taiga-ui/core/directives/manual-hint/manual-hint.directive.ts","ng://@taiga-ui/core/directives/manual-hint/manual-hint.module.ts","ng://@taiga-ui/core/directives/manual-hint/taiga-ui-core-directives-manual-hint.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {\n TUI_ABSTRACT_HINT_DEFAULT_OPTIONS,\n TuiAbstractHintOptions,\n} from '@taiga-ui/core/abstract';\n\nexport type TuiManualHintOptions = TuiAbstractHintOptions;\n\n/** Default values for manual hint options */\nexport const TUI_MANUAL_HINT_DEFAULT_OPTIONS: TuiManualHintOptions = {\n ...TUI_ABSTRACT_HINT_DEFAULT_OPTIONS,\n};\n\nexport const TUI_MANUAL_HINT_OPTIONS = new InjectionToken<TuiManualHintOptions>(\n 'Default parameters for manual hint directive',\n {\n factory: () => TUI_MANUAL_HINT_DEFAULT_OPTIONS,\n },\n);\n","import {Directive, ElementRef, Inject, Input, Optional} from '@angular/core';\nimport {TuiActiveZoneDirective, tuiDefaultProp, tuiRequiredSetter} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_MANUAL_HINT_OPTIONS, TuiManualHintOptions} from './manual-hint-options';\n\n@Directive({\n selector: '[tuiManualHint]:not(ng-container)',\n})\nexport class TuiManualHintDirective extends AbstractTuiHint {\n @Input('tuiManualHint')\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Input()\n @tuiRequiredSetter()\n set tuiManualHintShow(show: boolean) {\n if (show) {\n this.showTooltip();\n } else {\n this.hideTooltip();\n }\n }\n\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) hintService: TuiHintService,\n @Optional()\n @Inject(TuiActiveZoneDirective)\n activeZone: TuiActiveZoneDirective | null,\n @Inject(TUI_MANUAL_HINT_OPTIONS) protected readonly options: TuiManualHintOptions,\n ) {\n super(elementRef, hintService, activeZone, options);\n }\n\n getElementClientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiManualHintDirective} from './manual-hint.directive';\n\n@NgModule({\n declarations: [TuiManualHintDirective],\n exports: [TuiManualHintDirective],\n})\nexport class TuiManualHintModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAQA;MACa,+BAA+B,qBACrC,iCAAiC,EACtC;MAEW,uBAAuB,GAAG,IAAI,cAAc,CACrD,8CAA8C,EAC9C;IACI,OAAO,EAAE,MAAM,+BAA+B;CACjD;;ICNQ,sBAAsB,GAAnC,MAAa,sBAAuB,SAAQ,eAAe;IAevD,YACwB,UAAmC,EAC/B,WAA2B,EAGnD,UAAyC,EACW,OAA6B;QAEjF,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAFA,YAAO,GAAP,OAAO,CAAsB;QAlBrF,YAAO,GAAwB,EAAE,CAAC;KAqBjC;IAjBD,IAAI,iBAAiB,CAAC,IAAa;QAC/B,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,WAAW,EAAE,CAAC;SACtB;aAAM;YACH,IAAI,CAAC,WAAW,EAAE,CAAC;SACtB;KACJ;IAaD,oBAAoB;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;KAChE;EACJ;;YAbuC,UAAU,uBAAzC,MAAM,SAAC,UAAU;YACmB,cAAc,uBAAlD,MAAM,SAAC,cAAc;YAGV,sBAAsB,uBAFjC,QAAQ,YACR,MAAM,SAAC,sBAAsB;4CAE7B,MAAM,SAAC,uBAAuB;;AAlBnC;IAFC,KAAK,CAAC,eAAe,CAAC;IACtB,cAAc,EAAE;uDACiB;AAIlC;IAFC,KAAK,EAAE;IACP,iBAAiB,EAAE;+DAOnB;AAbQ,sBAAsB;IAHlC,SAAS,CAAC;QACP,QAAQ,EAAE,mCAAmC;KAChD,CAAC;IAiBO,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;IACtB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;IAE9B,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;GArB3B,sBAAsB,CA6BlC;;IChCY,mBAAmB,GAAhC,MAAa,mBAAmB;EAAG;AAAtB,mBAAmB;IAJ/B,QAAQ,CAAC;QACN,YAAY,EAAE,CAAC,sBAAsB,CAAC;QACtC,OAAO,EAAE,CAAC,sBAAsB,CAAC;KACpC,CAAC;GACW,mBAAmB,CAAG;;ACRnC;;;;;;"}
@@ -1,18 +1,25 @@
1
1
  import { __decorate, __param } from 'tslib';
2
- import { ElementRef, Inject, Input, Directive, NgModule } from '@angular/core';
2
+ import { InjectionToken, ElementRef, Inject, Input, Directive, NgModule } from '@angular/core';
3
3
  import { typedFromEvent, TuiDestroyService, TuiHoveredService, tuiDefaultProp, tuiRequiredSetter } from '@taiga-ui/cdk';
4
- import { AbstractTuiHint } from '@taiga-ui/core/abstract';
4
+ import { TUI_ABSTRACT_HINT_DEFAULT_OPTIONS, AbstractTuiHint } from '@taiga-ui/core/abstract';
5
5
  import { TuiHintService } from '@taiga-ui/core/services';
6
6
  import { of } from 'rxjs';
7
7
  import { filter, startWith, distinctUntilChanged, switchMap, delay, takeUntil } from 'rxjs/operators';
8
8
 
9
+ /** Default values for pointer hint options */
10
+ const TUI_POINTER_HINT_DEFAULT_OPTIONS = Object.assign(Object.assign({}, TUI_ABSTRACT_HINT_DEFAULT_OPTIONS), { tuiHintShowDelay: 0, tuiHintHideDelay: 0 });
11
+ const TUI_POINTER_HINT_OPTIONS = new InjectionToken('Default parameters for pointer hint directive', {
12
+ factory: () => TUI_POINTER_HINT_DEFAULT_OPTIONS,
13
+ });
14
+
9
15
  let TuiPointerHintDirective = class TuiPointerHintDirective extends AbstractTuiHint {
10
- constructor(elementRef, hintService, destroy$, hoveredService) {
11
- super(elementRef, hintService, null);
16
+ constructor(elementRef, hintService, destroy$, hoveredService, options) {
17
+ super(elementRef, hintService, null, options);
12
18
  this.destroy$ = destroy$;
19
+ this.options = options;
13
20
  this.currentMouseRect = this.mousePositionToClientRect();
14
- this.tuiHintShowDelay = 0;
15
- this.tuiHintHideDelay = 0;
21
+ this.tuiHintShowDelay = this.options.tuiHintShowDelay;
22
+ this.tuiHintHideDelay = this.options.tuiHintHideDelay;
16
23
  this.content = '';
17
24
  const hint$ = hoveredService.createHovered$(this.elementRef.nativeElement).pipe(filter(() => !!this.content), startWith(false), distinctUntilChanged());
18
25
  hint$
@@ -65,7 +72,8 @@ TuiPointerHintDirective.ctorParameters = () => [
65
72
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
66
73
  { type: TuiHintService, decorators: [{ type: Inject, args: [TuiHintService,] }] },
67
74
  { type: TuiDestroyService, decorators: [{ type: Inject, args: [TuiDestroyService,] }] },
68
- { type: TuiHoveredService, decorators: [{ type: Inject, args: [TuiHoveredService,] }] }
75
+ { type: TuiHoveredService, decorators: [{ type: Inject, args: [TuiHoveredService,] }] },
76
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_POINTER_HINT_OPTIONS,] }] }
69
77
  ];
70
78
  __decorate([
71
79
  Input(),
@@ -87,7 +95,8 @@ TuiPointerHintDirective = __decorate([
87
95
  __param(0, Inject(ElementRef)),
88
96
  __param(1, Inject(TuiHintService)),
89
97
  __param(2, Inject(TuiDestroyService)),
90
- __param(3, Inject(TuiHoveredService))
98
+ __param(3, Inject(TuiHoveredService)),
99
+ __param(4, Inject(TUI_POINTER_HINT_OPTIONS))
91
100
  ], TuiPointerHintDirective);
92
101
 
93
102
  let TuiPointerHintModule = class TuiPointerHintModule {
@@ -103,5 +112,5 @@ TuiPointerHintModule = __decorate([
103
112
  * Generated bundle index. Do not edit.
104
113
  */
105
114
 
106
- export { TuiPointerHintDirective, TuiPointerHintModule };
115
+ export { TUI_POINTER_HINT_DEFAULT_OPTIONS, TUI_POINTER_HINT_OPTIONS, TuiPointerHintDirective, TuiPointerHintModule };
107
116
  //# sourceMappingURL=taiga-ui-core-directives-pointer-hint.js.map