@taiga-ui/core 2.75.0 → 2.77.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 (588) hide show
  1. package/abstract/abstract-dropdown.d.ts +2 -2
  2. package/abstract/taiga-ui-core-abstract.metadata.json +1 -1
  3. package/bundles/taiga-ui-core-abstract.umd.js +49 -2
  4. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  6. package/bundles/taiga-ui-core-components-alert.umd.js +55 -10
  7. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  8. package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-button.umd.js +60 -15
  10. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-core-components-calendar.umd.js +47 -2
  13. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-calendar.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-data-list.umd.js +83 -39
  16. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
  18. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-dialog.umd.js +79 -36
  20. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-dialog.umd.min.js +1 -1
  22. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-dropdown-box.umd.js +84 -39
  24. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-error.umd.js +50 -5
  27. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-expand.umd.js +58 -13
  30. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-group.umd.js +64 -19
  33. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-hints-host.umd.js +93 -48
  36. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +56 -11
  39. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  41. package/bundles/taiga-ui-core-components-label.umd.js +51 -6
  42. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-label.umd.min.js +1 -1
  44. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-link.umd.js +57 -12
  46. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  47. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-loader.umd.js +48 -3
  49. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  50. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  51. package/bundles/taiga-ui-core-components-notification.umd.js +54 -9
  52. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  53. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +48 -3
  55. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +49 -4
  58. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  59. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  60. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +48 -3
  61. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  62. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js.map +1 -1
  63. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +97 -52
  64. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  65. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  66. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +48 -3
  67. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  68. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  69. package/bundles/taiga-ui-core-components-root.umd.js +50 -5
  70. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  71. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  72. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +72 -27
  73. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  74. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  75. package/bundles/taiga-ui-core-components-scrollbar.umd.js +54 -9
  76. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  77. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  78. package/bundles/taiga-ui-core-components-svg.umd.js +61 -16
  79. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  80. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-core-components-theme-night.umd.js +48 -3
  82. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  83. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  84. package/bundles/taiga-ui-core-components-tooltip.umd.js +53 -8
  85. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  86. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  87. package/bundles/taiga-ui-core-directives-color.umd.js +52 -7
  88. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  89. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  90. package/bundles/taiga-ui-core-directives-described-by.umd.js +50 -5
  91. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  92. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  93. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js +55 -10
  94. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  95. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  96. package/bundles/taiga-ui-core-directives-dropdown.umd.js +48 -3
  97. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  98. package/bundles/taiga-ui-core-directives-dropdown.umd.min.js.map +1 -1
  99. package/bundles/taiga-ui-core-directives-hint-controller.umd.js +52 -7
  100. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  101. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  102. package/bundles/taiga-ui-core-directives-hint.umd.js +51 -6
  103. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  104. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  105. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +49 -4
  106. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  107. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  108. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +47 -2
  109. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  110. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  111. package/bundles/taiga-ui-core-directives-mode.umd.js +48 -3
  112. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  113. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  114. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +50 -5
  115. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  116. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  117. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +47 -2
  118. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  119. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  120. package/bundles/taiga-ui-core-directives-table-mode.umd.js +48 -3
  121. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  122. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  123. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +79 -34
  124. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  125. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  126. package/bundles/taiga-ui-core-directives-wrapper.umd.js +55 -10
  127. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  128. package/bundles/taiga-ui-core-directives-wrapper.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +47 -2
  130. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  131. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js.map +1 -1
  132. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +47 -2
  133. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  134. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  135. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +47 -2
  136. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  137. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  138. package/bundles/taiga-ui-core-pipes-format-date.umd.js +46 -1
  139. package/bundles/taiga-ui-core-pipes-format-date.umd.js.map +1 -1
  140. package/bundles/taiga-ui-core-pipes-format-date.umd.min.js.map +1 -1
  141. package/bundles/taiga-ui-core-pipes-format-number.umd.js +46 -1
  142. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  143. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  144. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +46 -1
  145. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  146. package/bundles/taiga-ui-core-pipes-format-phone.umd.min.js.map +1 -1
  147. package/bundles/taiga-ui-core-pipes-month.umd.js +46 -1
  148. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  149. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  150. package/bundles/taiga-ui-core-pipes-pluralize.umd.js +46 -1
  151. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  152. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  153. package/bundles/taiga-ui-core-services.umd.js +46 -1
  154. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  155. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  156. package/bundles/taiga-ui-core-tokens.umd.js +46 -1
  157. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  158. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  159. package/bundles/taiga-ui-core-utils-dom.umd.js +1 -3
  160. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  161. package/bundles/taiga-ui-core-utils-dom.umd.min.js +1 -1
  162. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  163. package/bundles/taiga-ui-core-utils-format.umd.js +46 -1
  164. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  165. package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-core-utils-mask.umd.js +47 -2
  167. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  168. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  169. package/bundles/taiga-ui-core-utils-polyfills.umd.js.map +1 -1
  170. package/bundles/taiga-ui-core-utils-polyfills.umd.min.js.map +1 -1
  171. package/components/button/button-options.d.ts +3 -3
  172. package/components/button/button.component.d.ts +2 -2
  173. package/components/calendar/calendar.component.d.ts +1 -1
  174. package/components/data-list/option/option.component.d.ts +1 -1
  175. package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
  176. package/components/dropdown-box/dropdown-box.component.d.ts +3 -3
  177. package/components/label/taiga-ui-core-components-label.metadata.json +1 -1
  178. package/components/link/link.component.d.ts +1 -1
  179. package/components/loader/loader.component.d.ts +1 -1
  180. package/components/notification/notification.component.d.ts +1 -1
  181. package/components/primitive-calendar/primitive-calendar.component.d.ts +2 -2
  182. package/components/primitive-textfield/primitive-textfield.component.d.ts +2 -2
  183. package/components/primitive-year-picker/primitive-year-picker.component.d.ts +1 -1
  184. package/components/svg/svg.component.d.ts +1 -1
  185. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  186. package/constants/version.d.ts +1 -1
  187. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  188. package/directives/textfield-controller/textfield-size.directive.d.ts +1 -1
  189. package/directives/textfield-controller/textfield.controller.d.ts +1 -1
  190. package/esm2015/abstract/abstract-dropdown.js +1 -1
  191. package/esm2015/abstract/abstract-textfield-host.js +7 -3
  192. package/esm2015/components/alert/alert.component.js +10 -10
  193. package/esm2015/components/button/button-options.js +1 -1
  194. package/esm2015/components/button/button.component.js +15 -15
  195. package/esm2015/components/calendar/calendar.component.js +2 -2
  196. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +9 -10
  197. package/esm2015/components/data-list/data-list.component.js +12 -12
  198. package/esm2015/components/data-list/data-list.directive.js +2 -2
  199. package/esm2015/components/data-list/opt-group.directive.js +5 -5
  200. package/esm2015/components/data-list/option/option.component.js +13 -13
  201. package/esm2015/components/dialog/dialog.component.js +12 -12
  202. package/esm2015/components/dialog/dialog.directive.js +4 -4
  203. package/esm2015/components/dialog/dialog.providers.js +22 -17
  204. package/esm2015/components/dropdown-box/dropdown-box.component.js +39 -39
  205. package/esm2015/components/error/error.component.js +5 -5
  206. package/esm2015/components/expand/expand-content.directive.js +2 -2
  207. package/esm2015/components/expand/expand.component.js +12 -12
  208. package/esm2015/components/group/group-styles.component.js +2 -2
  209. package/esm2015/components/group/group.component.js +4 -4
  210. package/esm2015/components/group/group.directive.js +15 -15
  211. package/esm2015/components/hints-host/hint-box/hint-box.component.js +46 -46
  212. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  213. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  214. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  215. package/esm2015/components/label/label.component.js +6 -6
  216. package/esm2015/components/link/link.component.js +12 -12
  217. package/esm2015/components/loader/loader.component.js +3 -3
  218. package/esm2015/components/notification/notification.component.js +9 -9
  219. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  220. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  221. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  222. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +28 -28
  223. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  224. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +13 -13
  225. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  226. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  227. package/esm2015/components/root/root.component.js +5 -5
  228. package/esm2015/components/scroll-controls/scroll-controls.component.js +4 -4
  229. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  230. package/esm2015/components/scroll-controls/scrollbar.directive.js +23 -23
  231. package/esm2015/components/scrollbar/scroll-ref.directive.js +2 -2
  232. package/esm2015/components/scrollbar/scrollable.directive.js +2 -2
  233. package/esm2015/components/scrollbar/scrollbar.component.js +7 -7
  234. package/esm2015/components/svg/svg.component.js +16 -16
  235. package/esm2015/components/theme-night/theme-night.component.js +3 -3
  236. package/esm2015/components/tooltip/tooltip.component.js +8 -8
  237. package/esm2015/directives/color/color.directive.js +7 -7
  238. package/esm2015/directives/described-by/described-by.directive.js +5 -5
  239. package/esm2015/directives/dropdown/dropdown.directive.js +3 -3
  240. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  241. package/esm2015/directives/hint/hint.directive.js +6 -6
  242. package/esm2015/directives/hint-controller/hint-controller.directive.js +7 -7
  243. package/esm2015/directives/manual-hint/manual-hint.directive.js +4 -4
  244. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +2 -2
  245. package/esm2015/directives/mode/mode.directive.js +3 -3
  246. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +5 -5
  247. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  248. package/esm2015/directives/table-mode/table-mode.directive.js +3 -3
  249. package/esm2015/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  250. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  251. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  252. package/esm2015/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  253. package/esm2015/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  254. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  255. package/esm2015/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  256. package/esm2015/directives/textfield-controller/textfield-size.directive.js +5 -5
  257. package/esm2015/directives/textfield-controller/textfield-type.directive.js +5 -5
  258. package/esm2015/directives/textfield-controller/textfield.controller.js +1 -1
  259. package/esm2015/directives/wrapper/wrapper.directive.js +10 -10
  260. package/esm2015/interfaces/alert-options.js +1 -1
  261. package/esm2015/interfaces/dropdown-directive.js +1 -1
  262. package/esm2015/interfaces/hint.js +1 -1
  263. package/esm2015/interfaces/notification-options.js +1 -1
  264. package/esm2015/interfaces/number-format-settings.js +1 -1
  265. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  266. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  267. package/esm2015/mask/text-mask-list.js +1 -1
  268. package/esm2015/mask/text-mask-pipe-handler.js +1 -1
  269. package/esm2015/pipes/calendar-sheet/utils.js +2 -2
  270. package/esm2015/pipes/format-date/format-date.pipe.js +1 -1
  271. package/esm2015/types/brightness.js +1 -1
  272. package/esm2015/types/decimal-symbol.js +1 -1
  273. package/esm2015/types/decimal.js +1 -1
  274. package/esm2015/types/dialog-size.js +1 -1
  275. package/esm2015/types/direction.js +1 -1
  276. package/esm2015/types/dropdown-width.js +1 -1
  277. package/esm2015/types/marker-handler.js +1 -1
  278. package/esm2015/types/option-role.js +1 -1
  279. package/esm2015/types/orientation.js +1 -1
  280. package/esm2015/types/size.js +1 -1
  281. package/esm2015/utils/dom/get-safe-area-size.js +1 -1
  282. package/esm2015/utils/dom/process-icon.js +2 -4
  283. package/esm2015/utils/mask/create-number-mask.js +2 -2
  284. package/esm2015/utils/polyfills/inner-html.js +3 -3
  285. package/esm5/abstract/abstract-dropdown.js +1 -1
  286. package/esm5/abstract/abstract-textfield-host.js +4 -2
  287. package/esm5/components/alert/alert.component.js +10 -10
  288. package/esm5/components/button/button-options.js +1 -1
  289. package/esm5/components/button/button.component.js +15 -15
  290. package/esm5/components/calendar/calendar.component.js +2 -2
  291. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +10 -11
  292. package/esm5/components/data-list/data-list.component.js +12 -12
  293. package/esm5/components/data-list/data-list.directive.js +2 -2
  294. package/esm5/components/data-list/opt-group.directive.js +5 -5
  295. package/esm5/components/data-list/option/option.component.js +13 -13
  296. package/esm5/components/dialog/dialog.component.js +12 -12
  297. package/esm5/components/dialog/dialog.directive.js +4 -4
  298. package/esm5/components/dialog/dialog.providers.js +22 -24
  299. package/esm5/components/dropdown-box/dropdown-box.component.js +39 -39
  300. package/esm5/components/error/error.component.js +5 -5
  301. package/esm5/components/expand/expand-content.directive.js +2 -2
  302. package/esm5/components/expand/expand.component.js +12 -12
  303. package/esm5/components/group/group-styles.component.js +2 -2
  304. package/esm5/components/group/group.component.js +4 -4
  305. package/esm5/components/group/group.directive.js +15 -15
  306. package/esm5/components/hints-host/hint-box/hint-box.component.js +46 -46
  307. package/esm5/components/hints-host/hints-host.component.js +3 -3
  308. package/esm5/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  309. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  310. package/esm5/components/label/label.component.js +6 -6
  311. package/esm5/components/link/link.component.js +12 -12
  312. package/esm5/components/loader/loader.component.js +3 -3
  313. package/esm5/components/notification/notification.component.js +9 -9
  314. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  315. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  316. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  317. package/esm5/components/primitive-textfield/primitive-textfield.component.js +28 -28
  318. package/esm5/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  319. package/esm5/components/primitive-textfield/textfield/textfield.component.js +13 -13
  320. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  321. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  322. package/esm5/components/root/root.component.js +5 -5
  323. package/esm5/components/scroll-controls/scroll-controls.component.js +4 -4
  324. package/esm5/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  325. package/esm5/components/scroll-controls/scrollbar.directive.js +23 -23
  326. package/esm5/components/scrollbar/scroll-ref.directive.js +2 -2
  327. package/esm5/components/scrollbar/scrollable.directive.js +2 -2
  328. package/esm5/components/scrollbar/scrollbar.component.js +7 -7
  329. package/esm5/components/svg/svg.component.js +16 -16
  330. package/esm5/components/theme-night/theme-night.component.js +3 -3
  331. package/esm5/components/tooltip/tooltip.component.js +8 -8
  332. package/esm5/directives/color/color.directive.js +7 -7
  333. package/esm5/directives/described-by/described-by.directive.js +5 -5
  334. package/esm5/directives/dropdown/dropdown.directive.js +3 -3
  335. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  336. package/esm5/directives/hint/hint.directive.js +6 -6
  337. package/esm5/directives/hint-controller/hint-controller.directive.js +7 -7
  338. package/esm5/directives/manual-hint/manual-hint.directive.js +4 -4
  339. package/esm5/directives/mask-accessor/mask-accessor.directive.js +2 -2
  340. package/esm5/directives/mode/mode.directive.js +3 -3
  341. package/esm5/directives/pointer-hint/pointer-hint.directive.js +5 -5
  342. package/esm5/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  343. package/esm5/directives/table-mode/table-mode.directive.js +3 -3
  344. package/esm5/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  345. package/esm5/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  346. package/esm5/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  347. package/esm5/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  348. package/esm5/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  349. package/esm5/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  350. package/esm5/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  351. package/esm5/directives/textfield-controller/textfield-size.directive.js +5 -5
  352. package/esm5/directives/textfield-controller/textfield-type.directive.js +5 -5
  353. package/esm5/directives/textfield-controller/textfield.controller.js +1 -1
  354. package/esm5/directives/wrapper/wrapper.directive.js +10 -10
  355. package/esm5/interfaces/alert-options.js +1 -1
  356. package/esm5/interfaces/dropdown-directive.js +1 -1
  357. package/esm5/interfaces/hint.js +1 -1
  358. package/esm5/interfaces/notification-options.js +1 -1
  359. package/esm5/interfaces/number-format-settings.js +1 -1
  360. package/esm5/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  361. package/esm5/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  362. package/esm5/mask/text-mask-list.js +1 -1
  363. package/esm5/mask/text-mask-pipe-handler.js +1 -1
  364. package/esm5/pipes/calendar-sheet/utils.js +2 -2
  365. package/esm5/pipes/format-date/format-date.pipe.js +1 -1
  366. package/esm5/types/brightness.js +1 -1
  367. package/esm5/types/decimal-symbol.js +1 -1
  368. package/esm5/types/decimal.js +1 -1
  369. package/esm5/types/dialog-size.js +1 -1
  370. package/esm5/types/direction.js +1 -1
  371. package/esm5/types/dropdown-width.js +1 -1
  372. package/esm5/types/marker-handler.js +1 -1
  373. package/esm5/types/option-role.js +1 -1
  374. package/esm5/types/orientation.js +1 -1
  375. package/esm5/types/size.js +1 -1
  376. package/esm5/utils/dom/get-safe-area-size.js +1 -1
  377. package/esm5/utils/dom/process-icon.js +2 -4
  378. package/esm5/utils/mask/create-number-mask.js +2 -2
  379. package/esm5/utils/polyfills/inner-html.js +1 -1
  380. package/fesm2015/taiga-ui-core-abstract.js +6 -2
  381. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  382. package/fesm2015/taiga-ui-core-components-alert.js +9 -9
  383. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  384. package/fesm2015/taiga-ui-core-components-button.js +14 -14
  385. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  386. package/fesm2015/taiga-ui-core-components-calendar.js +1 -1
  387. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  388. package/fesm2015/taiga-ui-core-components-data-list.js +36 -37
  389. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  390. package/fesm2015/taiga-ui-core-components-dialog.js +35 -30
  391. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  392. package/fesm2015/taiga-ui-core-components-dropdown-box.js +38 -38
  393. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  394. package/fesm2015/taiga-ui-core-components-error.js +4 -4
  395. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  396. package/fesm2015/taiga-ui-core-components-expand.js +12 -12
  397. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  398. package/fesm2015/taiga-ui-core-components-group.js +18 -18
  399. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  400. package/fesm2015/taiga-ui-core-components-hints-host.js +47 -47
  401. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  402. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +10 -10
  403. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  404. package/fesm2015/taiga-ui-core-components-label.js +5 -5
  405. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  406. package/fesm2015/taiga-ui-core-components-link.js +11 -11
  407. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  408. package/fesm2015/taiga-ui-core-components-loader.js +2 -2
  409. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  410. package/fesm2015/taiga-ui-core-components-notification.js +8 -8
  411. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  412. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +2 -2
  413. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  414. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +3 -3
  415. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  416. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +2 -2
  417. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  418. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +51 -51
  419. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  420. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +2 -2
  421. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  422. package/fesm2015/taiga-ui-core-components-root.js +4 -4
  423. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  424. package/fesm2015/taiga-ui-core-components-scroll-controls.js +26 -26
  425. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  426. package/fesm2015/taiga-ui-core-components-scrollbar.js +8 -8
  427. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  428. package/fesm2015/taiga-ui-core-components-svg.js +15 -15
  429. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  430. package/fesm2015/taiga-ui-core-components-theme-night.js +2 -2
  431. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  432. package/fesm2015/taiga-ui-core-components-tooltip.js +7 -7
  433. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  434. package/fesm2015/taiga-ui-core-directives-color.js +6 -6
  435. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  436. package/fesm2015/taiga-ui-core-directives-described-by.js +4 -4
  437. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  438. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js +9 -9
  439. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  440. package/fesm2015/taiga-ui-core-directives-dropdown.js +2 -2
  441. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  442. package/fesm2015/taiga-ui-core-directives-hint-controller.js +6 -6
  443. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  444. package/fesm2015/taiga-ui-core-directives-hint.js +5 -5
  445. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  446. package/fesm2015/taiga-ui-core-directives-manual-hint.js +3 -3
  447. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  448. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +1 -1
  449. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  450. package/fesm2015/taiga-ui-core-directives-mode.js +2 -2
  451. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  452. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +4 -4
  453. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  454. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +1 -1
  455. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  456. package/fesm2015/taiga-ui-core-directives-table-mode.js +2 -2
  457. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  458. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +33 -33
  459. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  460. package/fesm2015/taiga-ui-core-directives-wrapper.js +9 -9
  461. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  462. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  463. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  464. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +1 -1
  465. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  466. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  467. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  468. package/fesm2015/taiga-ui-core-pipes-format-date.js.map +1 -1
  469. package/fesm2015/taiga-ui-core-utils-dom.js +1 -3
  470. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  471. package/fesm2015/taiga-ui-core-utils-mask.js +1 -1
  472. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  473. package/fesm2015/taiga-ui-core-utils-polyfills.js +2 -2
  474. package/fesm2015/taiga-ui-core-utils-polyfills.js.map +1 -1
  475. package/fesm5/taiga-ui-core-abstract.js +3 -1
  476. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  477. package/fesm5/taiga-ui-core-components-alert.js +9 -9
  478. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  479. package/fesm5/taiga-ui-core-components-button.js +14 -14
  480. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  481. package/fesm5/taiga-ui-core-components-calendar.js +1 -1
  482. package/fesm5/taiga-ui-core-components-calendar.js.map +1 -1
  483. package/fesm5/taiga-ui-core-components-data-list.js +37 -38
  484. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  485. package/fesm5/taiga-ui-core-components-dialog.js +35 -37
  486. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  487. package/fesm5/taiga-ui-core-components-dropdown-box.js +38 -38
  488. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  489. package/fesm5/taiga-ui-core-components-error.js +4 -4
  490. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  491. package/fesm5/taiga-ui-core-components-expand.js +12 -12
  492. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  493. package/fesm5/taiga-ui-core-components-group.js +18 -18
  494. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  495. package/fesm5/taiga-ui-core-components-hints-host.js +47 -47
  496. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  497. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +10 -10
  498. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  499. package/fesm5/taiga-ui-core-components-label.js +5 -5
  500. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  501. package/fesm5/taiga-ui-core-components-link.js +11 -11
  502. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  503. package/fesm5/taiga-ui-core-components-loader.js +2 -2
  504. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  505. package/fesm5/taiga-ui-core-components-notification.js +8 -8
  506. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  507. package/fesm5/taiga-ui-core-components-primitive-calendar.js +2 -2
  508. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  509. package/fesm5/taiga-ui-core-components-primitive-checkbox.js +3 -3
  510. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  511. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +2 -2
  512. package/fesm5/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  513. package/fesm5/taiga-ui-core-components-primitive-textfield.js +51 -51
  514. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  515. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +2 -2
  516. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  517. package/fesm5/taiga-ui-core-components-root.js +4 -4
  518. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  519. package/fesm5/taiga-ui-core-components-scroll-controls.js +26 -26
  520. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  521. package/fesm5/taiga-ui-core-components-scrollbar.js +8 -8
  522. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  523. package/fesm5/taiga-ui-core-components-svg.js +15 -15
  524. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  525. package/fesm5/taiga-ui-core-components-theme-night.js +2 -2
  526. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  527. package/fesm5/taiga-ui-core-components-tooltip.js +7 -7
  528. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  529. package/fesm5/taiga-ui-core-directives-color.js +6 -6
  530. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  531. package/fesm5/taiga-ui-core-directives-described-by.js +4 -4
  532. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  533. package/fesm5/taiga-ui-core-directives-dropdown-controller.js +9 -9
  534. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  535. package/fesm5/taiga-ui-core-directives-dropdown.js +2 -2
  536. package/fesm5/taiga-ui-core-directives-dropdown.js.map +1 -1
  537. package/fesm5/taiga-ui-core-directives-hint-controller.js +6 -6
  538. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  539. package/fesm5/taiga-ui-core-directives-hint.js +5 -5
  540. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  541. package/fesm5/taiga-ui-core-directives-manual-hint.js +3 -3
  542. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  543. package/fesm5/taiga-ui-core-directives-mask-accessor.js +1 -1
  544. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  545. package/fesm5/taiga-ui-core-directives-mode.js +2 -2
  546. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  547. package/fesm5/taiga-ui-core-directives-pointer-hint.js +4 -4
  548. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  549. package/fesm5/taiga-ui-core-directives-scroll-into-view.js +1 -1
  550. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  551. package/fesm5/taiga-ui-core-directives-table-mode.js +2 -2
  552. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  553. package/fesm5/taiga-ui-core-directives-textfield-controller.js +33 -33
  554. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  555. package/fesm5/taiga-ui-core-directives-wrapper.js +9 -9
  556. package/fesm5/taiga-ui-core-directives-wrapper.js.map +1 -1
  557. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  558. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  559. package/fesm5/taiga-ui-core-internal-svg-defs-host.js +1 -1
  560. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  561. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  562. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  563. package/fesm5/taiga-ui-core-pipes-format-date.js.map +1 -1
  564. package/fesm5/taiga-ui-core-utils-dom.js +1 -3
  565. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  566. package/fesm5/taiga-ui-core-utils-mask.js +1 -1
  567. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  568. package/fesm5/taiga-ui-core-utils-polyfills.js.map +1 -1
  569. package/interfaces/alert-options.d.ts +1 -1
  570. package/interfaces/dropdown-directive.d.ts +2 -2
  571. package/interfaces/hint.d.ts +1 -1
  572. package/interfaces/notification-options.d.ts +1 -1
  573. package/interfaces/number-format-settings.d.ts +1 -2
  574. package/mask/text-mask-list.d.ts +1 -1
  575. package/mask/text-mask-pipe-handler.d.ts +1 -1
  576. package/package.json +4 -4
  577. package/pipes/format-date/format-date.pipe.d.ts +1 -1
  578. package/tokens/dropdown-directive.d.ts +1 -1
  579. package/types/brightness.d.ts +1 -1
  580. package/types/decimal-symbol.d.ts +1 -1
  581. package/types/decimal.d.ts +1 -1
  582. package/types/dialog-size.d.ts +1 -1
  583. package/types/direction.d.ts +2 -2
  584. package/types/dropdown-width.d.ts +1 -1
  585. package/types/marker-handler.d.ts +1 -1
  586. package/types/option-role.d.ts +1 -1
  587. package/types/orientation.d.ts +1 -1
  588. package/types/size.d.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-root.js","sources":["ng://@taiga-ui/core/components/root/root.component.ts","ng://@taiga-ui/core/components/root/root.module.ts","ng://@taiga-ui/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {TUI_DIALOGS, TUI_IS_MOBILE, TUI_VERSION, tuiAssert} from '@taiga-ui/cdk';\nimport {TUI_IS_MOBILE_RES_PROVIDER} from '@taiga-ui/core/providers';\nimport {\n TUI_ANIMATIONS_DURATION,\n TUI_ASSERT_ENABLED,\n TUI_IS_MOBILE_RES,\n TUI_THEME,\n} from '@taiga-ui/core/tokens';\nimport {merge, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: `tui-root`,\n templateUrl: `root.template.html`,\n styleUrls: [`./root.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_IS_MOBILE_RES_PROVIDER],\n host: {\n 'data-tui-version': TUI_VERSION,\n '[style.--tui-duration]': `duration + \"ms\"`,\n '($.class._mobile)': `isMobileRes$`,\n },\n})\nexport class TuiRootComponent {\n readonly scrollbars$: Observable<boolean> =\n this.dialogs.length && !this.isMobile\n ? merge(...this.dialogs).pipe(map(({length}) => !length))\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(ElementRef) readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_DIALOGS)\n readonly dialogs: ReadonlyArray<Observable<readonly unknown[]>>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_ASSERT_ENABLED) enabled: boolean,\n @Inject(TUI_IS_MOBILE_RES) readonly isMobileRes$: Observable<boolean>,\n @Inject(DOCUMENT) {body}: Document,\n @Inject(TUI_THEME) theme: string,\n ) {\n tuiAssert.enabled = enabled;\n body.setAttribute(`data-tui-theme`, theme.toLowerCase());\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiAlertHostModule,\n TuiDialogHostModule,\n TuiDragModule,\n TuiDropdownHostModule,\n} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDragModule,\n TuiDropdownHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiAlertHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAaA;;IAmBI,0BAC8C,QAAgB,EAC7B,UAAmC,EAEvD,OAAsD,EACvB,QAAiB,EAC7B,OAAgB,EACR,YAAiC,EACnD,EAAgB,EACf,KAAa;YADb,cAAI;QAPmB,aAAQ,GAAR,QAAQ,CAAQ;QAC7B,eAAU,GAAV,UAAU,CAAyB;QAEvD,YAAO,GAAP,OAAO,CAA+C;QACvB,aAAQ,GAAR,QAAQ,CAAS;QAErB,iBAAY,GAAZ,YAAY,CAAqB;QAZhE,gBAAW,GAChB,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;cAC/B,KAAK,wBAAI,IAAI,CAAC,OAAO,GAAE,IAAI,CAAC,GAAG,CAAC,UAAC,EAAQ;oBAAP,kBAAM;gBAAM,OAAA,CAAC,MAAM;aAAA,CAAC,CAAC;cACvD,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAazB,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;KAC5D;;6CAZI,MAAM,SAAC,uBAAuB;gBACU,UAAU,uBAAlD,MAAM,SAAC,UAAU;gDACjB,MAAM,SAAC,WAAW;8CAElB,MAAM,SAAC,aAAa;8CACpB,MAAM,SAAC,kBAAkB;gBACwB,UAAU,uBAA3D,MAAM,SAAC,iBAAiB;gBACC,QAAQ,uBAAjC,MAAM,SAAC,QAAQ;6CACf,MAAM,SAAC,SAAS;;IAfZ,gBAAgB;QAZ5B,SAAS,CAAC;YACP,QAAQ,EAAE,UAAU;YACpB,6vBAAiC;YAEjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,IAAI,EAAE;gBACF,kBAAkB,EAAE,WAAW;gBAC/B,wBAAwB,EAAE,mBAAiB;gBAC3C,mBAAmB,EAAE,cAAc;aACtC;;SACJ,CAAC;QAQO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;QAC/B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;QAClB,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;QAEnB,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;QACrB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;QAC1B,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;QACzB,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChB,WAAA,MAAM,CAAC,SAAS,CAAC,CAAA;OAfb,gBAAgB,CAoB5B;IAAD,uBAAC;CApBD;;;ICIA;KAA6B;IAAhB,aAAa;QAfzB,QAAQ,CAAC;YACN,OAAO,EAAE;gBACL,YAAY;gBACZ,kBAAkB;gBAClB,aAAa;gBACb,qBAAqB;gBACrB,oBAAoB;gBACpB,kBAAkB;gBAClB,mBAAmB;gBACnB,kBAAkB;gBAClB,uBAAuB;aAC1B;YACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;YAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;SAC9B,CAAC;OACW,aAAa,CAAG;IAAD,oBAAC;CAA7B;;AC9BA;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-root.js","sources":["ng://@taiga-ui/core/components/root/root.component.ts","ng://@taiga-ui/core/components/root/root.module.ts","ng://@taiga-ui/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {TUI_DIALOGS, TUI_IS_MOBILE, TUI_VERSION, tuiAssert} from '@taiga-ui/cdk';\nimport {TUI_IS_MOBILE_RES_PROVIDER} from '@taiga-ui/core/providers';\nimport {\n TUI_ANIMATIONS_DURATION,\n TUI_ASSERT_ENABLED,\n TUI_IS_MOBILE_RES,\n TUI_THEME,\n} from '@taiga-ui/core/tokens';\nimport {merge, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-root',\n templateUrl: 'root.template.html',\n styleUrls: ['./root.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_IS_MOBILE_RES_PROVIDER],\n host: {\n 'data-tui-version': TUI_VERSION,\n '[style.--tui-duration]': 'duration + \"ms\"',\n '($.class._mobile)': 'isMobileRes$',\n },\n})\nexport class TuiRootComponent {\n readonly scrollbars$: Observable<boolean> =\n this.dialogs.length && !this.isMobile\n ? merge(...this.dialogs).pipe(map(({length}) => !length))\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(ElementRef) readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_DIALOGS)\n readonly dialogs: ReadonlyArray<Observable<readonly unknown[]>>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_ASSERT_ENABLED) enabled: boolean,\n @Inject(TUI_IS_MOBILE_RES) readonly isMobileRes$: Observable<boolean>,\n @Inject(DOCUMENT) {body}: Document,\n @Inject(TUI_THEME) theme: string,\n ) {\n tuiAssert.enabled = enabled;\n body.setAttribute('data-tui-theme', theme.toLowerCase());\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiAlertHostModule,\n TuiDialogHostModule,\n TuiDragModule,\n TuiDropdownHostModule,\n} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDragModule,\n TuiDropdownHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiAlertHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAaA;;IAmBI,0BAC8C,QAAgB,EAC7B,UAAmC,EAEvD,OAAsD,EACvB,QAAiB,EAC7B,OAAgB,EACR,YAAiC,EACnD,EAAgB,EACf,KAAa;YADb,cAAI;QAPmB,aAAQ,GAAR,QAAQ,CAAQ;QAC7B,eAAU,GAAV,UAAU,CAAyB;QAEvD,YAAO,GAAP,OAAO,CAA+C;QACvB,aAAQ,GAAR,QAAQ,CAAS;QAErB,iBAAY,GAAZ,YAAY,CAAqB;QAZhE,gBAAW,GAChB,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;cAC/B,KAAK,wBAAI,IAAI,CAAC,OAAO,GAAE,IAAI,CAAC,GAAG,CAAC,UAAC,EAAQ;oBAAP,kBAAM;gBAAM,OAAA,CAAC,MAAM;aAAA,CAAC,CAAC;cACvD,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAazB,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;KAC5D;;6CAZI,MAAM,SAAC,uBAAuB;gBACU,UAAU,uBAAlD,MAAM,SAAC,UAAU;gDACjB,MAAM,SAAC,WAAW;8CAElB,MAAM,SAAC,aAAa;8CACpB,MAAM,SAAC,kBAAkB;gBACwB,UAAU,uBAA3D,MAAM,SAAC,iBAAiB;gBACC,QAAQ,uBAAjC,MAAM,SAAC,QAAQ;6CACf,MAAM,SAAC,SAAS;;IAfZ,gBAAgB;QAZ5B,SAAS,CAAC;YACP,QAAQ,EAAE,UAAU;YACpB,6vBAAiC;YAEjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,IAAI,EAAE;gBACF,kBAAkB,EAAE,WAAW;gBAC/B,wBAAwB,EAAE,iBAAiB;gBAC3C,mBAAmB,EAAE,cAAc;aACtC;;SACJ,CAAC;QAQO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;QAC/B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;QAClB,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;QAEnB,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;QACrB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;QAC1B,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;QACzB,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChB,WAAA,MAAM,CAAC,SAAS,CAAC,CAAA;OAfb,gBAAgB,CAoB5B;IAAD,uBAAC;CApBD;;;ICIA;KAA6B;IAAhB,aAAa;QAfzB,QAAQ,CAAC;YACN,OAAO,EAAE;gBACL,YAAY;gBACZ,kBAAkB;gBAClB,aAAa;gBACb,qBAAqB;gBACrB,oBAAoB;gBACpB,kBAAkB;gBAClB,mBAAmB;gBACnB,kBAAkB;gBAClB,uBAAuB;aAC1B;YACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;YAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;SAC9B,CAAC;OACW,aAAa,CAAG;IAAD,oBAAC;CAA7B;;AC9BA;;;;;;"}
@@ -20,7 +20,7 @@ var TuiScrollControlsComponent = /** @class */ (function () {
20
20
  this.animationFrame$ = animationFrame$;
21
21
  this.mode$ = mode$;
22
22
  this.refresh$ = this.animationFrame$.pipe(throttleTime(300), map(function () { return _this.scrollbars; }), startWith([false, false]), distinctUntilChanged(function (a, b) { return a[0] === b[0] && a[1] === b[1]; }), tuiZoneOptimized(this.ngZone));
23
- this.animation = __assign({ value: "" }, this.options);
23
+ this.animation = __assign({ value: '' }, this.options);
24
24
  }
25
25
  Object.defineProperty(TuiScrollControlsComponent.prototype, "scrollbars", {
26
26
  get: function () {
@@ -45,13 +45,13 @@ var TuiScrollControlsComponent = /** @class */ (function () {
45
45
  ]; };
46
46
  TuiScrollControlsComponent = __decorate([
47
47
  Component({
48
- selector: "tui-scroll-controls",
48
+ selector: 'tui-scroll-controls',
49
49
  template: "<ng-container *tuiLet=\"refresh$ | async as bars\">\n <div\n *ngIf=\"bars[0]\"\n tuiScrollbarWrapper\n class=\"t-bar t-bar_vertical\"\n [@tuiFadeIn]=\"animation\"\n [class.t-bar_has-horizontal]=\"bars[1]\"\n >\n <div\n tuiScrollbar=\"vertical\"\n class=\"t-thumb\"\n ></div>\n </div>\n <div\n *ngIf=\"bars[1]\"\n tuiScrollbarWrapper\n class=\"t-bar t-bar_horizontal\"\n [@tuiFadeIn]=\"animation\"\n [class.t-bar_has-vertical]=\"bars[0]\"\n >\n <div\n tuiScrollbar=\"horizontal\"\n class=\"t-thumb\"\n ></div>\n </div>\n</ng-container>\n",
50
50
  changeDetection: ChangeDetectionStrategy.OnPush,
51
51
  animations: [tuiFadeIn],
52
52
  providers: [MODE_PROVIDER],
53
53
  host: {
54
- '($.data-mode.attr)': "mode$",
54
+ '($.data-mode.attr)': 'mode$',
55
55
  },
56
56
  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}.t-bar{position:absolute;right:0;bottom:0;pointer-events:auto}.t-bar_vertical{top:0;width:.875rem}.t-bar_horizontal{left:0;height:.875rem}.t-bar_has-horizontal{bottom:.5rem}.t-bar_has-vertical{right:.5rem}.t-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}.t-thumb:hover{opacity:.24}.t-thumb:active{opacity:.48}:host[data-mode=onDark] .t-thumb{background-color:var(--tui-text-01-night)}.t-bar_vertical .t-thumb{right:0;width:.75rem;min-height:1.25rem}.t-bar_vertical .t-thumb:active,.t-bar_vertical:hover .t-thumb{width:.875rem}.t-bar_horizontal .t-thumb{bottom:0;height:.75rem;min-width:1.25rem}.t-bar_horizontal .t-thumb:active,.t-bar_horizontal:hover .t-thumb{height:.875rem}"]
57
57
  }),
@@ -77,12 +77,12 @@ var TuiScrollbarDirective = /** @class */ (function () {
77
77
  this.windowRef = windowRef;
78
78
  this.elementRef = elementRef;
79
79
  this.viewportScroller = viewportScroller;
80
- this.tuiScrollbar = "vertical";
80
+ this.tuiScrollbar = 'vertical';
81
81
  var nativeElement = this.elementRef.nativeElement;
82
- var mousedown$ = typedFromEvent(nativeElement, "mousedown");
83
- var mousemove$ = typedFromEvent(this.documentRef, "mousemove");
84
- var mouseup$ = typedFromEvent(this.documentRef, "mouseup");
85
- var mousedownWrapper$ = typedFromEvent(wrapper.nativeElement, "mousedown");
82
+ var mousedown$ = typedFromEvent(nativeElement, 'mousedown');
83
+ var mousemove$ = typedFromEvent(this.documentRef, 'mousemove');
84
+ var mouseup$ = typedFromEvent(this.documentRef, 'mouseup');
85
+ var mousedownWrapper$ = typedFromEvent(wrapper.nativeElement, 'mousedown');
86
86
  merge(mousedownWrapper$.pipe(preventDefault(), map(function (event) { return _this.getScrolled(event, 0.5, 0.5); })), mousedown$.pipe(preventDefault(), stopPropagation(), switchMap(function (event) {
87
87
  var rect = nativeElement.getBoundingClientRect();
88
88
  var vertical = getOffsetVertical(event, rect);
@@ -95,35 +95,35 @@ var TuiScrollbarDirective = /** @class */ (function () {
95
95
  var _c = __read(_this.viewportScroller.getScrollPosition(), 2), x = _c[0], y = _c[1];
96
96
  if (!_this.container) {
97
97
  _this.viewportScroller.scrollToPosition([
98
- _this.tuiScrollbar === "vertical" ? x : scrollLeft,
99
- _this.tuiScrollbar === "vertical" ? scrollTop : y,
98
+ _this.tuiScrollbar === 'vertical' ? x : scrollLeft,
99
+ _this.tuiScrollbar === 'vertical' ? scrollTop : y,
100
100
  ]);
101
101
  return;
102
102
  }
103
- if (_this.tuiScrollbar === "vertical") {
104
- renderer.setProperty(_this.container.nativeElement, "scrollTop", scrollTop);
103
+ if (_this.tuiScrollbar === 'vertical') {
104
+ renderer.setProperty(_this.container.nativeElement, 'scrollTop', scrollTop);
105
105
  }
106
106
  else {
107
- renderer.setProperty(_this.container.nativeElement, "scrollLeft", scrollLeft);
107
+ renderer.setProperty(_this.container.nativeElement, 'scrollLeft', scrollLeft);
108
108
  }
109
109
  });
110
- merge(fromEvent(this.container ? this.container.nativeElement : this.windowRef, "scroll"), animationFrame$.pipe(throttleTime(POLLING_TIME)))
110
+ merge(fromEvent(this.container ? this.container.nativeElement : this.windowRef, 'scroll'), animationFrame$.pipe(throttleTime(POLLING_TIME)))
111
111
  .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
112
112
  .subscribe(function () {
113
- if (_this.tuiScrollbar === "vertical") {
114
- renderer.setStyle(nativeElement, "top", _this.thumb * 100 + "%");
115
- renderer.setStyle(nativeElement, "height", _this.view * 100 + "%");
113
+ if (_this.tuiScrollbar === 'vertical') {
114
+ renderer.setStyle(nativeElement, 'top', _this.thumb * 100 + "%");
115
+ renderer.setStyle(nativeElement, 'height', _this.view * 100 + "%");
116
116
  }
117
117
  else {
118
- renderer.setStyle(nativeElement, "left", _this.thumb * 100 + "%");
119
- renderer.setStyle(nativeElement, "width", _this.view * 100 + "%");
118
+ renderer.setStyle(nativeElement, 'left', _this.thumb * 100 + "%");
119
+ renderer.setStyle(nativeElement, 'width', _this.view * 100 + "%");
120
120
  }
121
121
  });
122
122
  }
123
123
  Object.defineProperty(TuiScrollbarDirective.prototype, "scrolled", {
124
124
  get: function () {
125
125
  var _a = this.computedContainer, scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight, scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;
126
- return this.tuiScrollbar === "vertical"
126
+ return this.tuiScrollbar === 'vertical'
127
127
  ? scrollTop / (scrollHeight - clientHeight)
128
128
  : scrollLeft / (scrollWidth - clientWidth);
129
129
  },
@@ -134,12 +134,12 @@ var TuiScrollbarDirective = /** @class */ (function () {
134
134
  get: function () {
135
135
  var _a = this.computedContainer, clientHeight = _a.clientHeight, scrollHeight = _a.scrollHeight, clientWidth = _a.clientWidth, scrollWidth = _a.scrollWidth;
136
136
  if (((clientHeight * clientHeight) / scrollHeight > MIN_WIDTH &&
137
- this.tuiScrollbar === "vertical") ||
137
+ this.tuiScrollbar === 'vertical') ||
138
138
  ((clientWidth * clientWidth) / scrollWidth > MIN_WIDTH &&
139
- this.tuiScrollbar === "horizontal")) {
139
+ this.tuiScrollbar === 'horizontal')) {
140
140
  return 0;
141
141
  }
142
- return this.tuiScrollbar === "vertical"
142
+ return this.tuiScrollbar === 'vertical'
143
143
  ? MIN_WIDTH / clientHeight
144
144
  : MIN_WIDTH / clientWidth;
145
145
  },
@@ -157,7 +157,7 @@ var TuiScrollbarDirective = /** @class */ (function () {
157
157
  Object.defineProperty(TuiScrollbarDirective.prototype, "view", {
158
158
  get: function () {
159
159
  var _a = this.computedContainer, clientHeight = _a.clientHeight, scrollHeight = _a.scrollHeight, clientWidth = _a.clientWidth, scrollWidth = _a.scrollWidth;
160
- return this.tuiScrollbar === "vertical"
160
+ return this.tuiScrollbar === 'vertical'
161
161
  ? Math.ceil((clientHeight / scrollHeight) * 100) / 100
162
162
  : Math.ceil((clientWidth / scrollWidth) * 100) / 100;
163
163
  },
@@ -200,7 +200,7 @@ var TuiScrollbarDirective = /** @class */ (function () {
200
200
  ], TuiScrollbarDirective.prototype, "tuiScrollbar", void 0);
201
201
  TuiScrollbarDirective = __decorate([
202
202
  Directive({
203
- selector: "[tuiScrollbar]",
203
+ selector: '[tuiScrollbar]',
204
204
  providers: [TuiDestroyService],
205
205
  }),
206
206
  __param(0, Inject(NgZone)),
@@ -233,7 +233,7 @@ var TuiScrollbarWrapperDirective = /** @class */ (function () {
233
233
  }
234
234
  TuiScrollbarWrapperDirective = __decorate([
235
235
  Directive({
236
- selector: "[tuiScrollbarWrapper]",
236
+ selector: '[tuiScrollbarWrapper]',
237
237
  providers: [
238
238
  {
239
239
  provide: TUI_ELEMENT_REF,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-scroll-controls.js","sources":["ng://@taiga-ui/core/components/scroll-controls/scroll-controls.component.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar-wrapper.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scroll-controls.module.ts","ng://@taiga-ui/core/components/scroll-controls/taiga-ui-core-components-scroll-controls.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n NgZone,\n Optional,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_ANIMATION_OPTIONS, TUI_MODE, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, startWith, throttleTime} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: `tui-scroll-controls`,\n templateUrl: `./scroll-controls.template.html`,\n styleUrls: [`./scroll-controls.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': `mode$`,\n },\n})\nexport class TuiScrollControlsComponent {\n readonly refresh$ = this.animationFrame$.pipe(\n throttleTime(300),\n map(() => this.scrollbars),\n startWith([false, false]),\n distinctUntilChanged((a, b) => a[0] === b[0] && a[1] === b[1]),\n tuiZoneOptimized(this.ngZone),\n );\n\n readonly animation = {\n value: ``,\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly scrollRef: ElementRef<HTMLElement> | null,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {}\n\n private get scrollbars(): [boolean, boolean] {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} = this.scrollRef\n ? this.scrollRef.nativeElement\n : this.documentRef.documentElement;\n\n return [\n Math.ceil((clientHeight / scrollHeight) * 100) < 100,\n Math.ceil((clientWidth / scrollWidth) * 100) < 100,\n ];\n }\n}\n","import {DOCUMENT, ViewportScroller} from '@angular/common';\nimport {\n Directive,\n ElementRef,\n Inject,\n Input,\n NgZone,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n POLLING_TIME,\n preventDefault,\n stopPropagation,\n TuiDestroyService,\n tuiZonefree,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiOrientationT} from '@taiga-ui/core/types';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {map, switchMap, takeUntil, throttleTime} from 'rxjs/operators';\n\nconst MIN_WIDTH = 24;\n\n// @dynamic\n@Directive({\n selector: `[tuiScrollbar]`,\n providers: [TuiDestroyService],\n})\nexport class TuiScrollbarDirective {\n @Input()\n tuiScrollbar: TuiOrientationT = `vertical`;\n\n constructor(\n @Inject(NgZone) ngZone: NgZone,\n @Inject(Renderer2) renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TUI_ELEMENT_REF) private readonly wrapper: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly container: ElementRef<HTMLElement> | null,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ViewportScroller) private readonly viewportScroller: ViewportScroller,\n ) {\n const {nativeElement} = this.elementRef;\n const mousedown$ = typedFromEvent(nativeElement, `mousedown`);\n const mousemove$ = typedFromEvent(this.documentRef, `mousemove`);\n const mouseup$ = typedFromEvent(this.documentRef, `mouseup`);\n const mousedownWrapper$ = typedFromEvent(wrapper.nativeElement, `mousedown`);\n\n merge(\n mousedownWrapper$.pipe(\n preventDefault(),\n map(event => this.getScrolled(event, 0.5, 0.5)),\n ),\n mousedown$.pipe(\n preventDefault(),\n stopPropagation(),\n switchMap(event => {\n const rect = nativeElement.getBoundingClientRect();\n const vertical = getOffsetVertical(event, rect);\n const horizontal = getOffsetHorizontal(event, rect);\n\n return mousemove$.pipe(\n map(event => this.getScrolled(event, vertical, horizontal)),\n takeUntil(mouseup$),\n );\n }),\n ),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(([scrollTop, scrollLeft]) => {\n const [x, y] = this.viewportScroller.getScrollPosition();\n\n if (!this.container) {\n this.viewportScroller.scrollToPosition([\n this.tuiScrollbar === `vertical` ? x : scrollLeft,\n this.tuiScrollbar === `vertical` ? scrollTop : y,\n ]);\n\n return;\n }\n\n if (this.tuiScrollbar === `vertical`) {\n renderer.setProperty(\n this.container.nativeElement,\n `scrollTop`,\n scrollTop,\n );\n } else {\n renderer.setProperty(\n this.container.nativeElement,\n `scrollLeft`,\n scrollLeft,\n );\n }\n });\n\n merge(\n fromEvent(\n this.container ? this.container.nativeElement : this.windowRef,\n `scroll`,\n ),\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n if (this.tuiScrollbar === `vertical`) {\n renderer.setStyle(nativeElement, `top`, `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, `height`, `${this.view * 100}%`);\n } else {\n renderer.setStyle(nativeElement, `left`, `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, `width`, `${this.view * 100}%`);\n }\n });\n }\n\n private get scrolled(): number {\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n scrollLeft,\n scrollWidth,\n clientWidth,\n } = this.computedContainer;\n\n return this.tuiScrollbar === `vertical`\n ? scrollTop / (scrollHeight - clientHeight)\n : scrollLeft / (scrollWidth - clientWidth);\n }\n\n private get compensation(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n if (\n ((clientHeight * clientHeight) / scrollHeight > MIN_WIDTH &&\n this.tuiScrollbar === `vertical`) ||\n ((clientWidth * clientWidth) / scrollWidth > MIN_WIDTH &&\n this.tuiScrollbar === `horizontal`)\n ) {\n return 0;\n }\n\n return this.tuiScrollbar === `vertical`\n ? MIN_WIDTH / clientHeight\n : MIN_WIDTH / clientWidth;\n }\n\n private get thumb(): number {\n const compensation = this.compensation || this.view;\n\n return this.scrolled * (1 - compensation);\n }\n\n private get view(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n return this.tuiScrollbar === `vertical`\n ? Math.ceil((clientHeight / scrollHeight) * 100) / 100\n : Math.ceil((clientWidth / scrollWidth) * 100) / 100;\n }\n\n private get computedContainer(): Element {\n return this.container\n ? this.container.nativeElement\n : this.documentRef.scrollingElement!;\n }\n\n private getScrolled(\n {clientY, clientX}: MouseEvent,\n offsetVertical: number,\n offsetHorizontal: number,\n ): [number, number] {\n const {offsetHeight, offsetWidth} = this.elementRef.nativeElement;\n const {top, left, width, height} =\n this.wrapper.nativeElement.getBoundingClientRect();\n\n const maxTop = this.computedContainer.scrollHeight - height;\n const maxLeft = this.computedContainer.scrollWidth - width;\n const scrolledTop =\n (clientY - top - offsetHeight * offsetVertical) / (height - offsetHeight);\n const scrolledLeft =\n (clientX - left - offsetWidth * offsetHorizontal) / (width - offsetWidth);\n\n return [maxTop * scrolledTop, maxLeft * scrolledLeft];\n }\n}\n\nfunction getOffsetVertical({clientY}: MouseEvent, {top, height}: ClientRect): number {\n return (clientY - top) / height;\n}\n\nfunction getOffsetHorizontal({clientX}: MouseEvent, {left, width}: ClientRect): number {\n return (clientX - left) / width;\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core/tokens';\n\n@Directive({\n selector: `[tuiScrollbarWrapper]`,\n providers: [\n {\n provide: TUI_ELEMENT_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiScrollbarWrapperDirective {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiScrollControlsComponent} from './scroll-controls.component';\nimport {TuiScrollbarDirective} from './scrollbar.directive';\nimport {TuiScrollbarWrapperDirective} from './scrollbar-wrapper.directive';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [\n TuiScrollbarDirective,\n TuiScrollbarWrapperDirective,\n TuiScrollControlsComponent,\n ],\n exports: [TuiScrollControlsComponent],\n})\nexport class TuiScrollControlsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {TuiScrollbarWrapperDirective as ɵa} from './scrollbar-wrapper.directive';"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-scroll-controls.js","sources":["ng://@taiga-ui/core/components/scroll-controls/scroll-controls.component.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar-wrapper.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scroll-controls.module.ts","ng://@taiga-ui/core/components/scroll-controls/taiga-ui-core-components-scroll-controls.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n NgZone,\n Optional,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_ANIMATION_OPTIONS, TUI_MODE, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, startWith, throttleTime} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-scroll-controls',\n templateUrl: './scroll-controls.template.html',\n styleUrls: ['./scroll-controls.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiScrollControlsComponent {\n readonly refresh$ = this.animationFrame$.pipe(\n throttleTime(300),\n map(() => this.scrollbars),\n startWith([false, false]),\n distinctUntilChanged((a, b) => a[0] === b[0] && a[1] === b[1]),\n tuiZoneOptimized(this.ngZone),\n );\n\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly scrollRef: ElementRef<HTMLElement> | null,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {}\n\n private get scrollbars(): [boolean, boolean] {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} = this.scrollRef\n ? this.scrollRef.nativeElement\n : this.documentRef.documentElement;\n\n return [\n Math.ceil((clientHeight / scrollHeight) * 100) < 100,\n Math.ceil((clientWidth / scrollWidth) * 100) < 100,\n ];\n }\n}\n","import {DOCUMENT, ViewportScroller} from '@angular/common';\nimport {\n Directive,\n ElementRef,\n Inject,\n Input,\n NgZone,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n POLLING_TIME,\n preventDefault,\n stopPropagation,\n TuiDestroyService,\n tuiZonefree,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiOrientationT} from '@taiga-ui/core/types';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {map, switchMap, takeUntil, throttleTime} from 'rxjs/operators';\n\nconst MIN_WIDTH = 24;\n\n// @dynamic\n@Directive({\n selector: '[tuiScrollbar]',\n providers: [TuiDestroyService],\n})\nexport class TuiScrollbarDirective {\n @Input()\n tuiScrollbar: TuiOrientationT = 'vertical';\n\n constructor(\n @Inject(NgZone) ngZone: NgZone,\n @Inject(Renderer2) renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TUI_ELEMENT_REF) private readonly wrapper: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly container: ElementRef<HTMLElement> | null,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ViewportScroller) private readonly viewportScroller: ViewportScroller,\n ) {\n const {nativeElement} = this.elementRef;\n const mousedown$ = typedFromEvent(nativeElement, 'mousedown');\n const mousemove$ = typedFromEvent(this.documentRef, 'mousemove');\n const mouseup$ = typedFromEvent(this.documentRef, 'mouseup');\n const mousedownWrapper$ = typedFromEvent(wrapper.nativeElement, 'mousedown');\n\n merge(\n mousedownWrapper$.pipe(\n preventDefault(),\n map(event => this.getScrolled(event, 0.5, 0.5)),\n ),\n mousedown$.pipe(\n preventDefault(),\n stopPropagation(),\n switchMap(event => {\n const rect = nativeElement.getBoundingClientRect();\n const vertical = getOffsetVertical(event, rect);\n const horizontal = getOffsetHorizontal(event, rect);\n\n return mousemove$.pipe(\n map(event => this.getScrolled(event, vertical, horizontal)),\n takeUntil(mouseup$),\n );\n }),\n ),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(([scrollTop, scrollLeft]) => {\n const [x, y] = this.viewportScroller.getScrollPosition();\n\n if (!this.container) {\n this.viewportScroller.scrollToPosition([\n this.tuiScrollbar === 'vertical' ? x : scrollLeft,\n this.tuiScrollbar === 'vertical' ? scrollTop : y,\n ]);\n\n return;\n }\n\n if (this.tuiScrollbar === 'vertical') {\n renderer.setProperty(\n this.container.nativeElement,\n 'scrollTop',\n scrollTop,\n );\n } else {\n renderer.setProperty(\n this.container.nativeElement,\n 'scrollLeft',\n scrollLeft,\n );\n }\n });\n\n merge(\n fromEvent(\n this.container ? this.container.nativeElement : this.windowRef,\n 'scroll',\n ),\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n if (this.tuiScrollbar === 'vertical') {\n renderer.setStyle(nativeElement, 'top', `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, 'height', `${this.view * 100}%`);\n } else {\n renderer.setStyle(nativeElement, 'left', `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, 'width', `${this.view * 100}%`);\n }\n });\n }\n\n private get scrolled(): number {\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n scrollLeft,\n scrollWidth,\n clientWidth,\n } = this.computedContainer;\n\n return this.tuiScrollbar === 'vertical'\n ? scrollTop / (scrollHeight - clientHeight)\n : scrollLeft / (scrollWidth - clientWidth);\n }\n\n private get compensation(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n if (\n ((clientHeight * clientHeight) / scrollHeight > MIN_WIDTH &&\n this.tuiScrollbar === 'vertical') ||\n ((clientWidth * clientWidth) / scrollWidth > MIN_WIDTH &&\n this.tuiScrollbar === 'horizontal')\n ) {\n return 0;\n }\n\n return this.tuiScrollbar === 'vertical'\n ? MIN_WIDTH / clientHeight\n : MIN_WIDTH / clientWidth;\n }\n\n private get thumb(): number {\n const compensation = this.compensation || this.view;\n\n return this.scrolled * (1 - compensation);\n }\n\n private get view(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n return this.tuiScrollbar === 'vertical'\n ? Math.ceil((clientHeight / scrollHeight) * 100) / 100\n : Math.ceil((clientWidth / scrollWidth) * 100) / 100;\n }\n\n private get computedContainer(): Element {\n return this.container\n ? this.container.nativeElement\n : (this.documentRef.scrollingElement as unknown as Element);\n }\n\n private getScrolled(\n {clientY, clientX}: MouseEvent,\n offsetVertical: number,\n offsetHorizontal: number,\n ): [number, number] {\n const {offsetHeight, offsetWidth} = this.elementRef.nativeElement;\n const {top, left, width, height} =\n this.wrapper.nativeElement.getBoundingClientRect();\n\n const maxTop = this.computedContainer.scrollHeight - height;\n const maxLeft = this.computedContainer.scrollWidth - width;\n const scrolledTop =\n (clientY - top - offsetHeight * offsetVertical) / (height - offsetHeight);\n const scrolledLeft =\n (clientX - left - offsetWidth * offsetHorizontal) / (width - offsetWidth);\n\n return [maxTop * scrolledTop, maxLeft * scrolledLeft];\n }\n}\n\nfunction getOffsetVertical({clientY}: MouseEvent, {top, height}: ClientRect): number {\n return (clientY - top) / height;\n}\n\nfunction getOffsetHorizontal({clientX}: MouseEvent, {left, width}: ClientRect): number {\n return (clientX - left) / width;\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core/tokens';\n\n@Directive({\n selector: '[tuiScrollbarWrapper]',\n providers: [\n {\n provide: TUI_ELEMENT_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiScrollbarWrapperDirective {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiScrollControlsComponent} from './scroll-controls.component';\nimport {TuiScrollbarDirective} from './scrollbar.directive';\nimport {TuiScrollbarWrapperDirective} from './scrollbar-wrapper.directive';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [\n TuiScrollbarDirective,\n TuiScrollbarWrapperDirective,\n TuiScrollControlsComponent,\n ],\n exports: [TuiScrollControlsComponent],\n})\nexport class TuiScrollControlsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {TuiScrollbarWrapperDirective as ɵa} from './scrollbar-wrapper.directive';"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { isFirefox, getElementOffset, TUI_IS_IOS, tuiDefaultProp } from '@taiga-
7
7
  import { CommonModule } from '@angular/common';
8
8
  import { TuiScrollControlsModule } from '@taiga-ui/core/components/scroll-controls';
9
9
 
10
- var SCROLL_REF_SELECTOR = "[tuiScrollRef]";
10
+ var SCROLL_REF_SELECTOR = '[tuiScrollRef]';
11
11
  var TuiScrollRefDirective = /** @class */ (function () {
12
12
  function TuiScrollRefDirective() {
13
13
  }
@@ -40,7 +40,7 @@ var TuiScrollableDirective = /** @class */ (function () {
40
40
  ]; };
41
41
  TuiScrollableDirective = __decorate([
42
42
  Directive({
43
- selector: "[tuiScrollable]",
43
+ selector: '[tuiScrollable]',
44
44
  }),
45
45
  __param(0, Inject(ElementRef))
46
46
  ], TuiScrollableDirective);
@@ -60,8 +60,8 @@ var TuiScrollbarComponent = /** @class */ (function () {
60
60
  this.userAgent = userAgent;
61
61
  this.isIos = isIos;
62
62
  this.delegated = false;
63
- this.isLegacy = !this.cssRef.supports("position", "sticky") ||
64
- (isFirefox(this.userAgent) && !this.cssRef.supports("scrollbar-width", "none"));
63
+ this.isLegacy = !this.cssRef.supports('position', 'sticky') ||
64
+ (isFirefox(this.userAgent) && !this.cssRef.supports('scrollbar-width', 'none'));
65
65
  this.hidden = false;
66
66
  this.browserScrollRef = new ElementRef(this.elementRef.nativeElement);
67
67
  }
@@ -107,17 +107,17 @@ var TuiScrollbarComponent = /** @class */ (function () {
107
107
  tuiDefaultProp()
108
108
  ], TuiScrollbarComponent.prototype, "hidden", void 0);
109
109
  __decorate([
110
- HostBinding("class._legacy")
110
+ HostBinding('class._legacy')
111
111
  ], TuiScrollbarComponent.prototype, "showNative", null);
112
112
  __decorate([
113
- HostListener(TUI_SCROLLABLE + ".stop", ["$event.detail"])
113
+ HostListener(TUI_SCROLLABLE + ".stop", ['$event.detail'])
114
114
  ], TuiScrollbarComponent.prototype, "onScrollable", null);
115
115
  __decorate([
116
- HostListener(TUI_SCROLL_INTO_VIEW + ".stop", ["$event.detail"])
116
+ HostListener(TUI_SCROLL_INTO_VIEW + ".stop", ['$event.detail'])
117
117
  ], TuiScrollbarComponent.prototype, "scrollIntoView", null);
118
118
  TuiScrollbarComponent = TuiScrollbarComponent_1 = __decorate([
119
119
  Component({
120
- selector: "tui-scrollbar",
120
+ selector: 'tui-scrollbar',
121
121
  template: "<tui-scroll-controls *ngIf=\"showScrollbars\"></tui-scroll-controls>\n<div class=\"t-content\">\n <ng-content></ng-content>\n</div>\n",
122
122
  changeDetection: ChangeDetectionStrategy.OnPush,
123
123
  providers: [
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-scrollbar.js","sources":["ng://@taiga-ui/core/components/scrollbar/scroll-ref.directive.ts","ng://@taiga-ui/core/components/scrollbar/scrollable.directive.ts","ng://@taiga-ui/core/components/scrollbar/scrollbar.component.ts","ng://@taiga-ui/core/components/scrollbar/scrollbar.module.ts","ng://@taiga-ui/core/components/scrollbar/taiga-ui-core-components-scrollbar.ts"],"sourcesContent":["import {Directive, ElementRef} from '@angular/core';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\n\nexport const SCROLL_REF_SELECTOR = `[tuiScrollRef]`;\n\n@Directive({\n selector: SCROLL_REF_SELECTOR,\n providers: [\n {\n provide: TUI_SCROLL_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiScrollRefDirective {}\n","import {Directive, ElementRef, Inject, OnInit} from '@angular/core';\nimport {TUI_SCROLLABLE} from '@taiga-ui/core/constants';\n\n@Directive({\n selector: `[tuiScrollable]`,\n})\nexport class TuiScrollableDirective implements OnInit {\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n\n ngOnInit(): void {\n this.elementRef.nativeElement.dispatchEvent(\n new CustomEvent(TUI_SCROLLABLE, {\n bubbles: true,\n detail: this.elementRef.nativeElement,\n }),\n );\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {CSS as CSS_TOKEN, USER_AGENT} from '@ng-web-apis/common';\nimport {\n getElementOffset,\n isFirefox,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiInjectionTokenType,\n} from '@taiga-ui/cdk';\nimport {TUI_SCROLL_INTO_VIEW, TUI_SCROLLABLE} from '@taiga-ui/core/constants';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function scrollRefFactory({\n browserScrollRef,\n}: TuiScrollbarComponent): ElementRef<HTMLElement> {\n return browserScrollRef;\n}\n\n// @dynamic\n@Component({\n selector: `tui-scrollbar`,\n templateUrl: `./scrollbar.template.html`,\n styleUrls: [`./scrollbar.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_SCROLL_REF,\n deps: [TuiScrollbarComponent],\n useFactory: scrollRefFactory,\n },\n ],\n})\nexport class TuiScrollbarComponent {\n private delegated = false;\n\n private readonly isLegacy: boolean =\n !this.cssRef.supports(`position`, `sticky`) ||\n (isFirefox(this.userAgent) && !this.cssRef.supports(`scrollbar-width`, `none`));\n\n @Input()\n @tuiDefaultProp()\n hidden = false;\n\n readonly browserScrollRef = new ElementRef(this.elementRef.nativeElement);\n\n constructor(\n @Inject(CSS_TOKEN)\n private readonly cssRef: TuiInjectionTokenType<typeof CSS_TOKEN>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n ) {}\n\n get showScrollbars(): boolean {\n return !this.hidden && !this.isIos && (!this.isLegacy || this.delegated);\n }\n\n @HostBinding(`class._legacy`)\n get showNative(): boolean {\n return this.isLegacy && !this.hidden && !this.delegated;\n }\n\n @HostListener(`${TUI_SCROLLABLE}.stop`, [`$event.detail`])\n onScrollable(element: HTMLElement): void {\n this.delegated = true;\n this.browserScrollRef.nativeElement = element;\n }\n\n @HostListener(`${TUI_SCROLL_INTO_VIEW}.stop`, [`$event.detail`])\n scrollIntoView(detail: HTMLElement): void {\n if (this.delegated) {\n return;\n }\n\n const {nativeElement} = this.browserScrollRef;\n const {offsetTop, offsetLeft} = getElementOffset(nativeElement, detail);\n\n nativeElement.scrollTop =\n offsetTop + detail.offsetHeight / 2 - nativeElement.clientHeight / 2;\n nativeElement.scrollLeft =\n offsetLeft + detail.offsetWidth / 2 - nativeElement.clientWidth / 2;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\n\nimport {TuiScrollRefDirective} from './scroll-ref.directive';\nimport {TuiScrollableDirective} from './scrollable.directive';\nimport {TuiScrollbarComponent} from './scrollbar.component';\n\n@NgModule({\n imports: [CommonModule, TuiScrollControlsModule],\n declarations: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective],\n exports: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective],\n})\nexport class TuiScrollbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["CSS_TOKEN"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-scrollbar.js","sources":["ng://@taiga-ui/core/components/scrollbar/scroll-ref.directive.ts","ng://@taiga-ui/core/components/scrollbar/scrollable.directive.ts","ng://@taiga-ui/core/components/scrollbar/scrollbar.component.ts","ng://@taiga-ui/core/components/scrollbar/scrollbar.module.ts","ng://@taiga-ui/core/components/scrollbar/taiga-ui-core-components-scrollbar.ts"],"sourcesContent":["import {Directive, ElementRef} from '@angular/core';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\n\nexport const SCROLL_REF_SELECTOR = '[tuiScrollRef]';\n\n@Directive({\n selector: SCROLL_REF_SELECTOR,\n providers: [\n {\n provide: TUI_SCROLL_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiScrollRefDirective {}\n","import {Directive, ElementRef, Inject, OnInit} from '@angular/core';\nimport {TUI_SCROLLABLE} from '@taiga-ui/core/constants';\n\n@Directive({\n selector: '[tuiScrollable]',\n})\nexport class TuiScrollableDirective implements OnInit {\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n\n ngOnInit(): void {\n this.elementRef.nativeElement.dispatchEvent(\n new CustomEvent(TUI_SCROLLABLE, {\n bubbles: true,\n detail: this.elementRef.nativeElement,\n }),\n );\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {CSS as CSS_TOKEN, USER_AGENT} from '@ng-web-apis/common';\nimport {\n getElementOffset,\n isFirefox,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiInjectionTokenType,\n} from '@taiga-ui/cdk';\nimport {TUI_SCROLL_INTO_VIEW, TUI_SCROLLABLE} from '@taiga-ui/core/constants';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function scrollRefFactory({\n browserScrollRef,\n}: TuiScrollbarComponent): ElementRef<HTMLElement> {\n return browserScrollRef;\n}\n\n// @dynamic\n@Component({\n selector: 'tui-scrollbar',\n templateUrl: './scrollbar.template.html',\n styleUrls: ['./scrollbar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_SCROLL_REF,\n deps: [TuiScrollbarComponent],\n useFactory: scrollRefFactory,\n },\n ],\n})\nexport class TuiScrollbarComponent {\n private delegated = false;\n\n private readonly isLegacy: boolean =\n !this.cssRef.supports('position', 'sticky') ||\n (isFirefox(this.userAgent) && !this.cssRef.supports('scrollbar-width', 'none'));\n\n @Input()\n @tuiDefaultProp()\n hidden = false;\n\n readonly browserScrollRef = new ElementRef(this.elementRef.nativeElement);\n\n constructor(\n @Inject(CSS_TOKEN)\n private readonly cssRef: TuiInjectionTokenType<typeof CSS_TOKEN>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n ) {}\n\n get showScrollbars(): boolean {\n return !this.hidden && !this.isIos && (!this.isLegacy || this.delegated);\n }\n\n @HostBinding('class._legacy')\n get showNative(): boolean {\n return this.isLegacy && !this.hidden && !this.delegated;\n }\n\n @HostListener(`${TUI_SCROLLABLE}.stop`, ['$event.detail'])\n onScrollable(element: HTMLElement): void {\n this.delegated = true;\n this.browserScrollRef.nativeElement = element;\n }\n\n @HostListener(`${TUI_SCROLL_INTO_VIEW}.stop`, ['$event.detail'])\n scrollIntoView(detail: HTMLElement): void {\n if (this.delegated) {\n return;\n }\n\n const {nativeElement} = this.browserScrollRef;\n const {offsetTop, offsetLeft} = getElementOffset(nativeElement, detail);\n\n nativeElement.scrollTop =\n offsetTop + detail.offsetHeight / 2 - nativeElement.clientHeight / 2;\n nativeElement.scrollLeft =\n offsetLeft + detail.offsetWidth / 2 - nativeElement.clientWidth / 2;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\n\nimport {TuiScrollRefDirective} from './scroll-ref.directive';\nimport {TuiScrollableDirective} from './scrollable.directive';\nimport {TuiScrollbarComponent} from './scrollbar.component';\n\n@NgModule({\n imports: [CommonModule, TuiScrollControlsModule],\n declarations: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective],\n exports: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective],\n})\nexport class TuiScrollbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["CSS_TOKEN"],"mappings":"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"}
@@ -11,9 +11,9 @@ import { isPresumedHTMLString } from '@taiga-ui/core/utils/miscellaneous';
11
11
  import { ReplaySubject, of } from 'rxjs';
12
12
  import { switchMap, startWith, catchError, map } from 'rxjs/operators';
13
13
 
14
- var UNDEFINED_NAMED_ICON = "Attempted to use undefined named icon";
15
- var MISSING_EXTERNAL_ICON = "External icon is missing on the given URL";
16
- var FAILED_EXTERNAL_ICON = "Failed to load external SVG";
14
+ var UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';
15
+ var MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';
16
+ var FAILED_EXTERNAL_ICON = 'Failed to load external SVG';
17
17
  // TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent
18
18
  // @dynamic
19
19
  var TuiSvgComponent = /** @class */ (function () {
@@ -32,12 +32,12 @@ var TuiSvgComponent = /** @class */ (function () {
32
32
  this.contentProcessor = contentProcessor;
33
33
  this.src$ = new ReplaySubject(1);
34
34
  this.isIE = isIE(this.userAgent);
35
- this.icon = "";
35
+ this.icon = '';
36
36
  this.innerHTML$ = this.src$.pipe(switchMap(function () {
37
37
  return _this.isExternal
38
38
  ? _this.getExternalIcon(_this.icon)
39
39
  : of(_this.getSafeHtml(_this.icon));
40
- }), startWith(""));
40
+ }), startWith(''));
41
41
  }
42
42
  Object.defineProperty(TuiSvgComponent.prototype, "src", {
43
43
  get: function () {
@@ -52,7 +52,7 @@ var TuiSvgComponent = /** @class */ (function () {
52
52
  });
53
53
  Object.defineProperty(TuiSvgComponent.prototype, "use", {
54
54
  get: function () {
55
- return this.icon.includes(".svg#")
55
+ return this.icon.includes('.svg#')
56
56
  ? this.icon
57
57
  : this.resolveName(this.icon, this.iconsPath);
58
58
  },
@@ -75,7 +75,7 @@ var TuiSvgComponent = /** @class */ (function () {
75
75
  });
76
76
  Object.defineProperty(TuiSvgComponent.prototype, "isUse", {
77
77
  get: function () {
78
- return this.use.includes(".svg#");
78
+ return this.use.includes('.svg#');
79
79
  },
80
80
  enumerable: true,
81
81
  configurable: true
@@ -89,7 +89,7 @@ var TuiSvgComponent = /** @class */ (function () {
89
89
  });
90
90
  Object.defineProperty(TuiSvgComponent.prototype, "isUrl", {
91
91
  get: function () {
92
- return this.icon.endsWith(".svg");
92
+ return this.icon.endsWith('.svg');
93
93
  },
94
94
  enumerable: true,
95
95
  configurable: true
@@ -112,7 +112,7 @@ var TuiSvgComponent = /** @class */ (function () {
112
112
  get: function () {
113
113
  var _a = this, use = _a.use, isUse = _a.isUse, windowRef = _a.windowRef;
114
114
  return (isUse &&
115
- use.startsWith("http") &&
115
+ use.startsWith('http') &&
116
116
  !!windowRef.origin &&
117
117
  !use.startsWith(windowRef.origin));
118
118
  },
@@ -144,22 +144,22 @@ var TuiSvgComponent = /** @class */ (function () {
144
144
  this.onError(UNDEFINED_NAMED_ICON);
145
145
  }
146
146
  // Empty line for innerHTML when icon is shown through USE tag
147
- return !this.isShadowDOM || !this.isName ? "" : this.sanitize(icon || "");
147
+ return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');
148
148
  };
149
149
  TuiSvgComponent.prototype.sanitize = function (src) {
150
150
  src = this.contentProcessor(src);
151
151
  return this.tuiSanitizer
152
- ? this.sanitizer.bypassSecurityTrustHtml(this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || "")
152
+ ? this.sanitizer.bypassSecurityTrustHtml(this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '')
153
153
  : src;
154
154
  };
155
155
  TuiSvgComponent.prototype.getExternalIcon = function (src) {
156
156
  var _this = this;
157
- var url = src.includes(".svg") ? src : this.use;
157
+ var url = src.includes('.svg') ? src : this.use;
158
158
  return this.staticRequestService.request(url).pipe(catchError(function () {
159
159
  _this.onError(FAILED_EXTERNAL_ICON);
160
- return of("");
160
+ return of('');
161
161
  }), map(function (response) {
162
- return _this.sanitize(response.replace("<svg", "<svg focusable=\"false\""));
162
+ return _this.sanitize(response.replace('<svg', '<svg focusable="false"'));
163
163
  }));
164
164
  };
165
165
  TuiSvgComponent.ctorParameters = function () { return [
@@ -184,7 +184,7 @@ var TuiSvgComponent = /** @class */ (function () {
184
184
  ], TuiSvgComponent.prototype, "resolveName", null);
185
185
  TuiSvgComponent = __decorate([
186
186
  Component({
187
- selector: "tui-svg",
187
+ selector: 'tui-svg',
188
188
  template: "<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n width=\"100%\"\n height=\"100%\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n",
189
189
  changeDetection: ChangeDetectionStrategy.OnPush,
190
190
  styles: [":host{display:inline-block;vertical-align:middle;flex-shrink:0;line-height:0;height:1.5rem;width:1.5rem;fill:currentColor;font-size:1rem}.t-src{display:flex;height:100%;align-items:center;justify-content:center}"]
@@ -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_CONTENT_PROCESSOR,\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.srcProcessor(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 srcProcessor: TuiStringHandler<string>,\n @Inject(TUI_SVG_CONTENT_PROCESSOR)\n private readonly contentProcessor: 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): void {\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 src = this.contentProcessor(src);\n\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
+ {"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_CONTENT_PROCESSOR,\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.srcProcessor(src);\n this.src$.next();\n }\n\n get src(): string {\n return this.icon;\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 srcProcessor: TuiStringHandler<string>,\n @Inject(TUI_SVG_CONTENT_PROCESSOR)\n private readonly contentProcessor: 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 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): void {\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 src = this.contentProcessor(src);\n\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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"}
@@ -10,8 +10,8 @@ var TuiThemeNightComponent = /** @class */ (function (_super) {
10
10
  }
11
11
  TuiThemeNightComponent = __decorate([
12
12
  Component({
13
- selector: "tui-theme-night",
14
- template: "",
13
+ selector: 'tui-theme-night',
14
+ template: '',
15
15
  encapsulation: ViewEncapsulation.None,
16
16
  styles: [":root{--tui-base-01:#222;--tui-base-02:#333;--tui-base-03:#808080;--tui-base-04:#959595;--tui-base-05:#b0b0b0;--tui-base-06:#d7d7d7;--tui-base-07:#ededed;--tui-base-08:#f6f6f6;--tui-base-09:#fff;--tui-focus:rgba(51, 51, 51, 0.64);--tui-secondary:rgba(255, 255, 255, 0.16);--tui-secondary-hover:rgba(255, 255, 255, 0.24);--tui-secondary-active:rgba(255, 255, 255, 0.4);--tui-clear:rgba(255, 255, 255, 0.16);--tui-clear-disabled:rgba(255, 255, 255, 0.08);--tui-clear-hover:rgba(255, 255, 255, 0.24);--tui-clear-active:rgba(255, 255, 255, 0.4);--tui-error-fill:#ff8c67;--tui-error-bg:rgba(244, 87, 37, 0.32);--tui-error-bg-hover:rgba(244, 87, 37, 0.4);--tui-success-fill:#4ac99b;--tui-success-bg:rgba(74, 201, 155, 0.32);--tui-success-bg-hover:rgba(74, 201, 155, 0.4);--tui-warning-fill:#ffc700;--tui-warning-bg:rgba(255, 199, 0, 0.32);--tui-warning-bg-hover:rgba(255, 199, 0, 0.4);--tui-info-fill:#70b6f6;--tui-info-bg:rgba(112, 182, 246, 0.32);--tui-info-bg-hover:rgba(112, 182, 246, 0.4);--tui-neutral-fill:#959ba4;--tui-neutral-bg:rgba(149, 155, 164, 0.32);--tui-neutral-bg-hover:rgba(149, 155, 164, 0.48);--tui-text-01:#ffffff;--tui-text-02:rgba(255, 255, 255, 0.72);--tui-text-03:rgba(255, 255, 255, 0.6);--tui-link:#6788ff;--tui-link-hover:#526ed3;--tui-positive:#44c596;--tui-positive-hover:#3aa981;--tui-negative:#ff8c67;--tui-negative-hover:#bb593a;--tui-autofill:var(--tui-autofill-night);--tui-elevation-01:#222;--tui-elevation-02:#222}tui-notification{--tui-base-01:#000}"]
17
17
  })
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-theme-night.js","sources":["ng://@taiga-ui/core/components/theme-night/theme-night.component.ts","ng://@taiga-ui/core/components/theme-night/theme-night.module.ts","ng://@taiga-ui/core/components/theme-night/taiga-ui-core-components-theme-night.ts"],"sourcesContent":["import {Component, ViewEncapsulation} from '@angular/core';\nimport {AbstractTuiThemeSwitcher} from '@taiga-ui/cdk';\n\n// @dynamic\n@Component({\n selector: `tui-theme-night`,\n template: ``,\n styleUrls: [`./theme-night.style.less`],\n encapsulation: ViewEncapsulation.None,\n})\nexport class TuiThemeNightComponent extends AbstractTuiThemeSwitcher {}\n","import {NgModule} from '@angular/core';\n\nimport {TuiThemeNightComponent} from './theme-night.component';\n\n@NgModule({\n declarations: [TuiThemeNightComponent],\n exports: [TuiThemeNightComponent],\n})\nexport class TuiThemeNightModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA;;IAO4C,0CAAwB;IAApE;;KAAuE;IAA1D,sBAAsB;QANlC,SAAS,CAAC;YACP,QAAQ,EAAE,iBAAiB;YAC3B,QAAQ,EAAE,EAAE;YAEZ,aAAa,EAAE,iBAAiB,CAAC,IAAI;;SACxC,CAAC;OACW,sBAAsB,CAAoC;IAAD,6BAAC;CAAA,CAA3B,wBAAwB;;;ICFpE;KAAmC;IAAtB,mBAAmB;QAJ/B,QAAQ,CAAC;YACN,YAAY,EAAE,CAAC,sBAAsB,CAAC;YACtC,OAAO,EAAE,CAAC,sBAAsB,CAAC;SACpC,CAAC;OACW,mBAAmB,CAAG;IAAD,0BAAC;CAAnC;;ACRA;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-theme-night.js","sources":["ng://@taiga-ui/core/components/theme-night/theme-night.component.ts","ng://@taiga-ui/core/components/theme-night/theme-night.module.ts","ng://@taiga-ui/core/components/theme-night/taiga-ui-core-components-theme-night.ts"],"sourcesContent":["import {Component, ViewEncapsulation} from '@angular/core';\nimport {AbstractTuiThemeSwitcher} from '@taiga-ui/cdk';\n\n// @dynamic\n@Component({\n selector: 'tui-theme-night',\n template: '',\n styleUrls: ['./theme-night.style.less'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class TuiThemeNightComponent extends AbstractTuiThemeSwitcher {}\n","import {NgModule} from '@angular/core';\n\nimport {TuiThemeNightComponent} from './theme-night.component';\n\n@NgModule({\n declarations: [TuiThemeNightComponent],\n exports: [TuiThemeNightComponent],\n})\nexport class TuiThemeNightModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA;;IAO4C,0CAAwB;IAApE;;KAAuE;IAA1D,sBAAsB;QANlC,SAAS,CAAC;YACP,QAAQ,EAAE,iBAAiB;YAC3B,QAAQ,EAAE,EAAE;YAEZ,aAAa,EAAE,iBAAiB,CAAC,IAAI;;SACxC,CAAC;OACW,sBAAsB,CAAoC;IAAD,6BAAC;CAAA,CAA3B,wBAAwB;;;ICFpE;KAAmC;IAAtB,mBAAmB;QAJ/B,QAAQ,CAAC;YACN,YAAY,EAAE,CAAC,sBAAsB,CAAC;YACtC,OAAO,EAAE,CAAC,sBAAsB,CAAC;SACpC,CAAC;OACW,mBAAmB,CAAG;IAAD,0BAAC;CAAnC;;ACRA;;;;;;"}
@@ -17,12 +17,12 @@ var TuiTooltipComponent = /** @class */ (function () {
17
17
  this.isMobile = isMobile;
18
18
  this.options = options;
19
19
  this.globalMode = null;
20
- this.content = "";
20
+ this.content = '';
21
21
  this.mode = this.options.mode;
22
22
  this.direction = this.options.direction;
23
23
  this.showDelay = this.options.tuiHintShowDelay;
24
24
  this.hideDelay = this.options.tuiHintHideDelay;
25
- this.describeId = "";
25
+ this.describeId = '';
26
26
  mode$.pipe(takeUntil(destroy$)).subscribe(function (mode) {
27
27
  _this.globalMode = mode;
28
28
  });
@@ -30,7 +30,7 @@ var TuiTooltipComponent = /** @class */ (function () {
30
30
  Object.defineProperty(TuiTooltipComponent.prototype, "computedMode", {
31
31
  // TODO: Simplify
32
32
  get: function () {
33
- return this.mode || (this.globalMode === "onDark" ? "onDark" : null);
33
+ return this.mode || (this.globalMode === 'onDark' ? 'onDark' : null);
34
34
  },
35
35
  enumerable: true,
36
36
  configurable: true
@@ -79,15 +79,15 @@ var TuiTooltipComponent = /** @class */ (function () {
79
79
  tuiDefaultProp()
80
80
  ], TuiTooltipComponent.prototype, "describeId", void 0);
81
81
  __decorate([
82
- HostBinding("attr.data-mode")
82
+ HostBinding('attr.data-mode')
83
83
  ], TuiTooltipComponent.prototype, "computedMode", null);
84
84
  __decorate([
85
- HostListener("mousedown", ["$event"]),
86
- HostListener("click", ["$event"])
85
+ HostListener('mousedown', ['$event']),
86
+ HostListener('click', ['$event'])
87
87
  ], TuiTooltipComponent.prototype, "stopOnMobile", null);
88
88
  TuiTooltipComponent = __decorate([
89
89
  Component({
90
- selector: "tui-tooltip",
90
+ selector: 'tui-tooltip',
91
91
  template: "<span\n polymorpheus-outlet\n automation-id=\"tui-tooltip__icon\"\n class=\"t-tooltip-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",
92
92
  changeDetection: ChangeDetectionStrategy.OnPush,
93
93
  providers: [TuiDestroyService, MODE_PROVIDER],