@taiga-ui/cdk 2.55.0 → 2.58.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 (668) hide show
  1. package/bundles/taiga-ui-cdk-abstract.umd.js +12 -12
  2. package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-cdk-abstract.umd.min.js.map +1 -1
  4. package/bundles/taiga-ui-cdk-classes.umd.js +1 -1
  5. package/bundles/taiga-ui-cdk-classes.umd.js.map +1 -1
  6. package/bundles/taiga-ui-cdk-classes.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-cdk-coercion.umd.js +1 -1
  8. package/bundles/taiga-ui-cdk-coercion.umd.js.map +1 -1
  9. package/bundles/taiga-ui-cdk-coercion.umd.min.js.map +1 -1
  10. package/bundles/taiga-ui-cdk-components-alert-host.umd.js +1 -1
  11. package/bundles/taiga-ui-cdk-components-alert-host.umd.js.map +1 -1
  12. package/bundles/taiga-ui-cdk-components-alert-host.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js +4 -4
  14. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-components-dialog-host.umd.min.js.map +1 -1
  16. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js +4 -4
  17. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js.map +1 -1
  18. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.min.js +1 -1
  19. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-cdk-components-portal-host.umd.js +1 -1
  21. package/bundles/taiga-ui-cdk-components-portal-host.umd.js.map +1 -1
  22. package/bundles/taiga-ui-cdk-components-portal-host.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-cdk-constants.umd.js +25 -15
  24. package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
  25. package/bundles/taiga-ui-cdk-constants.umd.min.js +1 -1
  26. package/bundles/taiga-ui-cdk-constants.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-cdk-date-time.umd.js +35 -35
  28. package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
  29. package/bundles/taiga-ui-cdk-date-time.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-cdk-decorators.umd.js +1 -1
  31. package/bundles/taiga-ui-cdk-decorators.umd.js.map +1 -1
  32. package/bundles/taiga-ui-cdk-decorators.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js +3 -3
  34. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js.map +1 -1
  35. package/bundles/taiga-ui-cdk-directives-active-zone.umd.min.js.map +1 -1
  36. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js +15 -15
  37. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js.map +1 -1
  38. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.min.js.map +1 -1
  39. package/bundles/taiga-ui-cdk-directives-autofilled.umd.js +7 -7
  40. package/bundles/taiga-ui-cdk-directives-autofilled.umd.js.map +1 -1
  41. package/bundles/taiga-ui-cdk-directives-autofilled.umd.min.js +1 -1
  42. package/bundles/taiga-ui-cdk-directives-autofilled.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-cdk-directives-checked.umd.js +6 -6
  44. package/bundles/taiga-ui-cdk-directives-checked.umd.js.map +1 -1
  45. package/bundles/taiga-ui-cdk-directives-checked.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-cdk-directives-copy-processor.umd.js +3 -3
  47. package/bundles/taiga-ui-cdk-directives-copy-processor.umd.js.map +1 -1
  48. package/bundles/taiga-ui-cdk-directives-copy-processor.umd.min.js.map +1 -1
  49. package/bundles/taiga-ui-cdk-directives-drag.umd.js +4 -4
  50. package/bundles/taiga-ui-cdk-directives-drag.umd.js.map +1 -1
  51. package/bundles/taiga-ui-cdk-directives-drag.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-cdk-directives-droppable.umd.js +5 -5
  53. package/bundles/taiga-ui-cdk-directives-droppable.umd.js.map +1 -1
  54. package/bundles/taiga-ui-cdk-directives-droppable.umd.min.js.map +1 -1
  55. package/bundles/taiga-ui-cdk-directives-element.umd.js +2 -2
  56. package/bundles/taiga-ui-cdk-directives-element.umd.js.map +1 -1
  57. package/bundles/taiga-ui-cdk-directives-element.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-cdk-directives-focus-trap.umd.js +5 -5
  59. package/bundles/taiga-ui-cdk-directives-focus-trap.umd.js.map +1 -1
  60. package/bundles/taiga-ui-cdk-directives-focus-trap.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-cdk-directives-focus-visible.umd.js +2 -2
  62. package/bundles/taiga-ui-cdk-directives-focus-visible.umd.js.map +1 -1
  63. package/bundles/taiga-ui-cdk-directives-focus-visible.umd.min.js.map +1 -1
  64. package/bundles/taiga-ui-cdk-directives-focusable.umd.js +3 -3
  65. package/bundles/taiga-ui-cdk-directives-focusable.umd.js.map +1 -1
  66. package/bundles/taiga-ui-cdk-directives-focusable.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-cdk-directives-focused.umd.js +2 -2
  68. package/bundles/taiga-ui-cdk-directives-focused.umd.js.map +1 -1
  69. package/bundles/taiga-ui-cdk-directives-focused.umd.min.js.map +1 -1
  70. package/bundles/taiga-ui-cdk-directives-for-async.umd.js +1 -1
  71. package/bundles/taiga-ui-cdk-directives-for-async.umd.js.map +1 -1
  72. package/bundles/taiga-ui-cdk-directives-for-async.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-cdk-directives-for.umd.js +1 -1
  74. package/bundles/taiga-ui-cdk-directives-for.umd.js.map +1 -1
  75. package/bundles/taiga-ui-cdk-directives-for.umd.min.js.map +1 -1
  76. package/bundles/taiga-ui-cdk-directives-high-dpi.umd.js +1 -1
  77. package/bundles/taiga-ui-cdk-directives-high-dpi.umd.js.map +1 -1
  78. package/bundles/taiga-ui-cdk-directives-high-dpi.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-cdk-directives-hovered.umd.js +4 -4
  80. package/bundles/taiga-ui-cdk-directives-hovered.umd.js.map +1 -1
  81. package/bundles/taiga-ui-cdk-directives-hovered.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-cdk-directives-input-mode.umd.js +10 -10
  83. package/bundles/taiga-ui-cdk-directives-input-mode.umd.js.map +1 -1
  84. package/bundles/taiga-ui-cdk-directives-input-mode.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-cdk-directives-item.umd.js +1 -1
  86. package/bundles/taiga-ui-cdk-directives-item.umd.js.map +1 -1
  87. package/bundles/taiga-ui-cdk-directives-item.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-cdk-directives-let.umd.js +1 -1
  89. package/bundles/taiga-ui-cdk-directives-let.umd.js.map +1 -1
  90. package/bundles/taiga-ui-cdk-directives-let.umd.min.js.map +1 -1
  91. package/bundles/taiga-ui-cdk-directives-media.umd.js +12 -12
  92. package/bundles/taiga-ui-cdk-directives-media.umd.js.map +1 -1
  93. package/bundles/taiga-ui-cdk-directives-media.umd.min.js.map +1 -1
  94. package/bundles/taiga-ui-cdk-directives-obscured.umd.js +1 -1
  95. package/bundles/taiga-ui-cdk-directives-obscured.umd.js.map +1 -1
  96. package/bundles/taiga-ui-cdk-directives-obscured.umd.min.js.map +1 -1
  97. package/bundles/taiga-ui-cdk-directives-overscroll.umd.js +11 -11
  98. package/bundles/taiga-ui-cdk-directives-overscroll.umd.js.map +1 -1
  99. package/bundles/taiga-ui-cdk-directives-overscroll.umd.min.js.map +1 -1
  100. package/bundles/taiga-ui-cdk-directives-pan.umd.js +2 -2
  101. package/bundles/taiga-ui-cdk-directives-pan.umd.js.map +1 -1
  102. package/bundles/taiga-ui-cdk-directives-pan.umd.min.js.map +1 -1
  103. package/bundles/taiga-ui-cdk-directives-portal.umd.js +1 -1
  104. package/bundles/taiga-ui-cdk-directives-portal.umd.js.map +1 -1
  105. package/bundles/taiga-ui-cdk-directives-portal.umd.min.js.map +1 -1
  106. package/bundles/taiga-ui-cdk-directives-pressed.umd.js +1 -1
  107. package/bundles/taiga-ui-cdk-directives-pressed.umd.js.map +1 -1
  108. package/bundles/taiga-ui-cdk-directives-pressed.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-cdk-directives-prevent-default.umd.js +3 -3
  110. package/bundles/taiga-ui-cdk-directives-prevent-default.umd.js.map +1 -1
  111. package/bundles/taiga-ui-cdk-directives-prevent-default.umd.min.js.map +1 -1
  112. package/bundles/taiga-ui-cdk-directives-repeat-times.umd.js +1 -1
  113. package/bundles/taiga-ui-cdk-directives-repeat-times.umd.js.map +1 -1
  114. package/bundles/taiga-ui-cdk-directives-repeat-times.umd.min.js.map +1 -1
  115. package/bundles/taiga-ui-cdk-directives-resize.umd.js +2 -2
  116. package/bundles/taiga-ui-cdk-directives-resize.umd.js.map +1 -1
  117. package/bundles/taiga-ui-cdk-directives-resize.umd.min.js.map +1 -1
  118. package/bundles/taiga-ui-cdk-directives-swipe.umd.js +2 -2
  119. package/bundles/taiga-ui-cdk-directives-swipe.umd.js.map +1 -1
  120. package/bundles/taiga-ui-cdk-directives-swipe.umd.min.js.map +1 -1
  121. package/bundles/taiga-ui-cdk-directives-validator.umd.js +1 -1
  122. package/bundles/taiga-ui-cdk-directives-validator.umd.js.map +1 -1
  123. package/bundles/taiga-ui-cdk-directives-validator.umd.min.js.map +1 -1
  124. package/bundles/taiga-ui-cdk-directives-zoom.umd.js +3 -3
  125. package/bundles/taiga-ui-cdk-directives-zoom.umd.js.map +1 -1
  126. package/bundles/taiga-ui-cdk-directives-zoom.umd.min.js.map +1 -1
  127. package/bundles/taiga-ui-cdk-enums.umd.js.map +1 -1
  128. package/bundles/taiga-ui-cdk-enums.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-cdk-exceptions.umd.js +10 -10
  130. package/bundles/taiga-ui-cdk-exceptions.umd.js.map +1 -1
  131. package/bundles/taiga-ui-cdk-exceptions.umd.min.js.map +1 -1
  132. package/bundles/taiga-ui-cdk-observables.umd.js +7 -7
  133. package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
  134. package/bundles/taiga-ui-cdk-observables.umd.min.js.map +1 -1
  135. package/bundles/taiga-ui-cdk-pipes-filter.umd.js +1 -1
  136. package/bundles/taiga-ui-cdk-pipes-filter.umd.js.map +1 -1
  137. package/bundles/taiga-ui-cdk-pipes-filter.umd.min.js.map +1 -1
  138. package/bundles/taiga-ui-cdk-pipes-mapper.umd.js +1 -1
  139. package/bundles/taiga-ui-cdk-pipes-mapper.umd.js.map +1 -1
  140. package/bundles/taiga-ui-cdk-pipes-mapper.umd.min.js.map +1 -1
  141. package/bundles/taiga-ui-cdk-services.umd.js +27 -27
  142. package/bundles/taiga-ui-cdk-services.umd.js.map +1 -1
  143. package/bundles/taiga-ui-cdk-services.umd.min.js.map +1 -1
  144. package/bundles/taiga-ui-cdk-tokens.umd.js +31 -31
  145. package/bundles/taiga-ui-cdk-tokens.umd.js.map +1 -1
  146. package/bundles/taiga-ui-cdk-tokens.umd.min.js.map +1 -1
  147. package/bundles/taiga-ui-cdk-utils-browser.umd.js +5 -5
  148. package/bundles/taiga-ui-cdk-utils-browser.umd.js.map +1 -1
  149. package/bundles/taiga-ui-cdk-utils-browser.umd.min.js.map +1 -1
  150. package/bundles/taiga-ui-cdk-utils-dom.umd.js +17 -11
  151. package/bundles/taiga-ui-cdk-utils-dom.umd.js.map +1 -1
  152. package/bundles/taiga-ui-cdk-utils-dom.umd.min.js +1 -1
  153. package/bundles/taiga-ui-cdk-utils-dom.umd.min.js.map +1 -1
  154. package/bundles/taiga-ui-cdk-utils-focus.umd.js +19 -19
  155. package/bundles/taiga-ui-cdk-utils-focus.umd.js.map +1 -1
  156. package/bundles/taiga-ui-cdk-utils-focus.umd.min.js.map +1 -1
  157. package/bundles/taiga-ui-cdk-utils-format.umd.js +2 -2
  158. package/bundles/taiga-ui-cdk-utils-format.umd.js.map +1 -1
  159. package/bundles/taiga-ui-cdk-utils-format.umd.min.js.map +1 -1
  160. package/bundles/taiga-ui-cdk-utils-math.umd.js +4 -4
  161. package/bundles/taiga-ui-cdk-utils-math.umd.js.map +1 -1
  162. package/bundles/taiga-ui-cdk-utils-math.umd.min.js.map +1 -1
  163. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js +4 -4
  164. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js.map +1 -1
  165. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-cdk-utils-os.umd.js +1 -1
  167. package/bundles/taiga-ui-cdk-utils-os.umd.js.map +1 -1
  168. package/bundles/taiga-ui-cdk-utils-os.umd.min.js.map +1 -1
  169. package/bundles/taiga-ui-cdk-utils-svg.umd.js +1 -1
  170. package/bundles/taiga-ui-cdk-utils-svg.umd.js.map +1 -1
  171. package/bundles/taiga-ui-cdk-utils-svg.umd.min.js.map +1 -1
  172. package/components/dropdown-host/taiga-ui-cdk-components-dropdown-host.metadata.json +1 -1
  173. package/constants/taiga-ui-cdk-constants.metadata.json +1 -1
  174. package/constants/unicode-chars.d.ts +8 -0
  175. package/directives/active-zone/taiga-ui-cdk-directives-active-zone.metadata.json +1 -1
  176. package/directives/autofilled/taiga-ui-cdk-directives-autofilled.metadata.json +1 -1
  177. package/esm2015/abstract/control.js +4 -4
  178. package/esm2015/abstract/interactive.js +8 -8
  179. package/esm2015/abstract/portal-host.js +2 -2
  180. package/esm2015/abstract/theme-switcher.js +2 -2
  181. package/esm2015/classes/assert.js +2 -2
  182. package/esm2015/coercion/coerce-boolean-property.js +2 -2
  183. package/esm2015/components/alert-host/alert-host.component.js +2 -2
  184. package/esm2015/components/dialog-host/dialog-host.component.js +5 -5
  185. package/esm2015/components/dropdown-host/dropdown-host.component.js +5 -5
  186. package/esm2015/components/portal-host/portal.service.js +2 -2
  187. package/esm2015/constants/parent-animation.js +5 -5
  188. package/esm2015/constants/svg-node-filter.js +2 -2
  189. package/esm2015/constants/unicode-chars.js +19 -11
  190. package/esm2015/date-time/date-fillers.js +3 -3
  191. package/esm2015/date-time/date-format.js +3 -3
  192. package/esm2015/date-time/date-separator.js +3 -3
  193. package/esm2015/date-time/day-range.js +7 -7
  194. package/esm2015/date-time/day.js +14 -14
  195. package/esm2015/date-time/month.js +2 -2
  196. package/esm2015/date-time/time.js +7 -7
  197. package/esm2015/date-time/year.js +2 -2
  198. package/esm2015/decorators/pure.js +2 -2
  199. package/esm2015/directives/active-zone/active-zone.directive.js +4 -4
  200. package/esm2015/directives/auto-focus/autofocus.directive.js +2 -2
  201. package/esm2015/directives/auto-focus/autofocus.options.js +2 -2
  202. package/esm2015/directives/auto-focus/handlers/abstract.handler.js +2 -2
  203. package/esm2015/directives/auto-focus/handlers/default.handler.js +2 -2
  204. package/esm2015/directives/auto-focus/handlers/ios.handler.js +12 -12
  205. package/esm2015/directives/autofilled/autofilled-style.component.js +3 -3
  206. package/esm2015/directives/autofilled/autofilled.directive.js +6 -6
  207. package/esm2015/directives/checked/checked.directive.js +7 -7
  208. package/esm2015/directives/copy-processor/copy-processor.directive.js +4 -4
  209. package/esm2015/directives/drag/drag.directive.js +5 -5
  210. package/esm2015/directives/droppable/droppable.directive.js +5 -5
  211. package/esm2015/directives/element/element.directive.js +3 -3
  212. package/esm2015/directives/focus-trap/focus-trap.directive.js +6 -6
  213. package/esm2015/directives/focus-visible/focus-visible.directive.js +3 -3
  214. package/esm2015/directives/focusable/focusable.directive.js +4 -4
  215. package/esm2015/directives/focused/focused.directive.js +3 -3
  216. package/esm2015/directives/for/for.directive.js +2 -2
  217. package/esm2015/directives/for-async/for-async.directive.js +2 -2
  218. package/esm2015/directives/high-dpi/high-dpi.directive.js +2 -2
  219. package/esm2015/directives/hovered/hovered.directive.js +5 -5
  220. package/esm2015/directives/input-mode/input-mode.directive.js +11 -11
  221. package/esm2015/directives/item/item.directive.js +2 -2
  222. package/esm2015/directives/let/let.directive.js +2 -2
  223. package/esm2015/directives/media/media.directive.js +13 -13
  224. package/esm2015/directives/obscured/obscured.directive.js +2 -2
  225. package/esm2015/directives/overscroll/overscroll.directive.js +12 -12
  226. package/esm2015/directives/pan/pan.directive.js +3 -3
  227. package/esm2015/directives/portal/portal.directive.js +2 -2
  228. package/esm2015/directives/pressed/pressed.directive.js +2 -2
  229. package/esm2015/directives/prevent-default/prevent-default.directive.js +4 -4
  230. package/esm2015/directives/repeat-times/repeat-times.directive.js +2 -2
  231. package/esm2015/directives/resize/resize.directive.js +3 -3
  232. package/esm2015/directives/swipe/swipe.directive.js +3 -3
  233. package/esm2015/directives/validator/validator.directive.js +2 -2
  234. package/esm2015/directives/zoom/zoom.directive.js +4 -4
  235. package/esm2015/enums/autocomplete.js +1 -1
  236. package/esm2015/enums/input-mode.js +1 -1
  237. package/esm2015/enums/input-type.js +1 -1
  238. package/esm2015/enums/overscroll-mode.js +1 -1
  239. package/esm2015/exceptions/computed-document.exception.js +2 -2
  240. package/esm2015/exceptions/document-selection.exception.js +2 -2
  241. package/esm2015/exceptions/no-host.exception.js +2 -2
  242. package/esm2015/exceptions/owner-document.exception.js +2 -2
  243. package/esm2015/exceptions/pure.exception.js +2 -2
  244. package/esm2015/exceptions/table-sort-key.exception.js +2 -2
  245. package/esm2015/exceptions/ts-parser.exception.js +2 -2
  246. package/esm2015/exceptions/value-changes.exception.js +2 -2
  247. package/esm2015/exceptions/value-present.exception.js +2 -2
  248. package/esm2015/exceptions/xml-parsing.exception.js +2 -2
  249. package/esm2015/observables/drag-and-drop-from.js +2 -2
  250. package/esm2015/observables/focus-visible-observable.js +5 -5
  251. package/esm2015/observables/mouse-drag-finish-from.js +2 -2
  252. package/esm2015/observables/pressed-observable.js +2 -2
  253. package/esm2015/pipes/filter/filter.pipe.js +2 -2
  254. package/esm2015/pipes/mapper/mapper.pipe.js +2 -2
  255. package/esm2015/services/directive-styles.service.js +5 -5
  256. package/esm2015/services/hovered.service.js +4 -4
  257. package/esm2015/services/id.service.js +3 -3
  258. package/esm2015/services/obscured.service.js +2 -2
  259. package/esm2015/services/pan.service.js +5 -5
  260. package/esm2015/services/parents-scroll.service.js +2 -2
  261. package/esm2015/services/scroll.service.js +5 -5
  262. package/esm2015/services/static-request.service.js +3 -3
  263. package/esm2015/services/swipe.service.js +2 -2
  264. package/esm2015/services/zoom.service.js +3 -3
  265. package/esm2015/tokens/active-element.js +9 -9
  266. package/esm2015/tokens/alerts.js +2 -2
  267. package/esm2015/tokens/default-renderer.js +2 -2
  268. package/esm2015/tokens/dialogs.js +2 -2
  269. package/esm2015/tokens/focusable-item-accessor.js +2 -2
  270. package/esm2015/tokens/is-android.js +2 -2
  271. package/esm2015/tokens/is-apple.js +2 -2
  272. package/esm2015/tokens/is-chromium.js +2 -2
  273. package/esm2015/tokens/is-cypress.js +2 -2
  274. package/esm2015/tokens/is-firefox.js +3 -3
  275. package/esm2015/tokens/is-ios.js +2 -2
  276. package/esm2015/tokens/is-mobile.js +2 -2
  277. package/esm2015/tokens/is-webkit.js +2 -2
  278. package/esm2015/tokens/removed-element.js +2 -2
  279. package/esm2015/tokens/sanitizer.js +2 -2
  280. package/esm2015/tokens/swipe-options.js +2 -2
  281. package/esm2015/tokens/take-only-trusted-events.js +2 -2
  282. package/esm2015/tokens/touch-supported.js +3 -3
  283. package/esm2015/tokens/window-height.js +3 -3
  284. package/esm2015/tokens/zoom-options.js +2 -2
  285. package/esm2015/utils/browser/is-edge-older-than.js +2 -2
  286. package/esm2015/utils/browser/is-edge.js +2 -2
  287. package/esm2015/utils/browser/is-firefox.js +2 -2
  288. package/esm2015/utils/browser/is-ie.js +2 -2
  289. package/esm2015/utils/browser/is-safari.js +2 -2
  290. package/esm2015/utils/dom/custom-event.js +3 -3
  291. package/esm2015/utils/dom/get-actual-target.js +2 -2
  292. package/esm2015/utils/dom/get-clipboard-data-text.js +4 -4
  293. package/esm2015/utils/dom/get-document-or-shadow-root.js +2 -2
  294. package/esm2015/utils/dom/get-element-offset.js +2 -2
  295. package/esm2015/utils/dom/index.js +2 -1
  296. package/esm2015/utils/dom/is-element.js +5 -0
  297. package/esm2015/utils/dom/is-form-field.js +4 -4
  298. package/esm2015/utils/focus/is-native-keyboard-focusable.js +14 -14
  299. package/esm2015/utils/focus/is-native-mouse-focusable.js +3 -3
  300. package/esm2015/utils/focus/set-native-mouse-focused.js +5 -5
  301. package/esm2015/utils/format/pad-start.js +2 -2
  302. package/esm2015/utils/format/px.js +2 -2
  303. package/esm2015/utils/math/round.js +5 -5
  304. package/esm2015/utils/miscellaneous/ease-in-out-quad.js +2 -2
  305. package/esm2015/utils/miscellaneous/get-swipe-direction.js +3 -3
  306. package/esm2015/utils/miscellaneous/is-number.js +2 -2
  307. package/esm2015/utils/os/is-apple-platform.js +2 -2
  308. package/esm2015/utils/svg/svg-linear-gradient-processor.js +2 -2
  309. package/esm5/abstract/control.js +4 -4
  310. package/esm5/abstract/interactive.js +8 -8
  311. package/esm5/abstract/portal-host.js +2 -2
  312. package/esm5/abstract/theme-switcher.js +2 -2
  313. package/esm5/classes/assert.js +2 -2
  314. package/esm5/coercion/coerce-boolean-property.js +2 -2
  315. package/esm5/components/alert-host/alert-host.component.js +2 -2
  316. package/esm5/components/dialog-host/dialog-host.component.js +5 -5
  317. package/esm5/components/dropdown-host/dropdown-host.component.js +5 -5
  318. package/esm5/components/portal-host/portal.service.js +2 -2
  319. package/esm5/constants/parent-animation.js +5 -5
  320. package/esm5/constants/svg-node-filter.js +2 -2
  321. package/esm5/constants/unicode-chars.js +19 -11
  322. package/esm5/date-time/date-fillers.js +3 -3
  323. package/esm5/date-time/date-format.js +3 -3
  324. package/esm5/date-time/date-separator.js +3 -3
  325. package/esm5/date-time/day-range.js +8 -8
  326. package/esm5/date-time/day.js +15 -15
  327. package/esm5/date-time/month.js +2 -2
  328. package/esm5/date-time/time.js +7 -7
  329. package/esm5/date-time/year.js +2 -2
  330. package/esm5/decorators/pure.js +2 -2
  331. package/esm5/directives/active-zone/active-zone.directive.js +4 -4
  332. package/esm5/directives/auto-focus/autofocus.directive.js +2 -2
  333. package/esm5/directives/auto-focus/autofocus.options.js +2 -2
  334. package/esm5/directives/auto-focus/handlers/abstract.handler.js +2 -2
  335. package/esm5/directives/auto-focus/handlers/default.handler.js +2 -2
  336. package/esm5/directives/auto-focus/handlers/ios.handler.js +12 -12
  337. package/esm5/directives/autofilled/autofilled-style.component.js +3 -3
  338. package/esm5/directives/autofilled/autofilled.directive.js +6 -6
  339. package/esm5/directives/checked/checked.directive.js +7 -7
  340. package/esm5/directives/copy-processor/copy-processor.directive.js +4 -4
  341. package/esm5/directives/drag/drag.directive.js +5 -5
  342. package/esm5/directives/droppable/droppable.directive.js +6 -6
  343. package/esm5/directives/element/element.directive.js +3 -3
  344. package/esm5/directives/focus-trap/focus-trap.directive.js +6 -6
  345. package/esm5/directives/focus-visible/focus-visible.directive.js +3 -3
  346. package/esm5/directives/focusable/focusable.directive.js +4 -4
  347. package/esm5/directives/focused/focused.directive.js +3 -3
  348. package/esm5/directives/for/for.directive.js +2 -2
  349. package/esm5/directives/for-async/for-async.directive.js +2 -2
  350. package/esm5/directives/high-dpi/high-dpi.directive.js +2 -2
  351. package/esm5/directives/hovered/hovered.directive.js +5 -5
  352. package/esm5/directives/input-mode/input-mode.directive.js +11 -11
  353. package/esm5/directives/item/item.directive.js +2 -2
  354. package/esm5/directives/let/let.directive.js +2 -2
  355. package/esm5/directives/media/media.directive.js +13 -13
  356. package/esm5/directives/obscured/obscured.directive.js +2 -2
  357. package/esm5/directives/overscroll/overscroll.directive.js +12 -12
  358. package/esm5/directives/pan/pan.directive.js +3 -3
  359. package/esm5/directives/portal/portal.directive.js +2 -2
  360. package/esm5/directives/pressed/pressed.directive.js +2 -2
  361. package/esm5/directives/prevent-default/prevent-default.directive.js +4 -4
  362. package/esm5/directives/repeat-times/repeat-times.directive.js +2 -2
  363. package/esm5/directives/resize/resize.directive.js +3 -3
  364. package/esm5/directives/swipe/swipe.directive.js +3 -3
  365. package/esm5/directives/validator/validator.directive.js +2 -2
  366. package/esm5/directives/zoom/zoom.directive.js +4 -4
  367. package/esm5/enums/autocomplete.js +1 -1
  368. package/esm5/enums/input-mode.js +1 -1
  369. package/esm5/enums/input-type.js +1 -1
  370. package/esm5/enums/overscroll-mode.js +1 -1
  371. package/esm5/exceptions/computed-document.exception.js +2 -2
  372. package/esm5/exceptions/document-selection.exception.js +2 -2
  373. package/esm5/exceptions/no-host.exception.js +2 -2
  374. package/esm5/exceptions/owner-document.exception.js +2 -2
  375. package/esm5/exceptions/pure.exception.js +2 -2
  376. package/esm5/exceptions/table-sort-key.exception.js +2 -2
  377. package/esm5/exceptions/ts-parser.exception.js +2 -2
  378. package/esm5/exceptions/value-changes.exception.js +2 -2
  379. package/esm5/exceptions/value-present.exception.js +2 -2
  380. package/esm5/exceptions/xml-parsing.exception.js +2 -2
  381. package/esm5/observables/drag-and-drop-from.js +2 -2
  382. package/esm5/observables/focus-visible-observable.js +5 -5
  383. package/esm5/observables/mouse-drag-finish-from.js +2 -2
  384. package/esm5/observables/pressed-observable.js +2 -2
  385. package/esm5/pipes/filter/filter.pipe.js +2 -2
  386. package/esm5/pipes/mapper/mapper.pipe.js +2 -2
  387. package/esm5/services/directive-styles.service.js +5 -5
  388. package/esm5/services/hovered.service.js +5 -5
  389. package/esm5/services/id.service.js +3 -3
  390. package/esm5/services/obscured.service.js +2 -2
  391. package/esm5/services/pan.service.js +5 -5
  392. package/esm5/services/parents-scroll.service.js +2 -2
  393. package/esm5/services/scroll.service.js +5 -5
  394. package/esm5/services/static-request.service.js +3 -3
  395. package/esm5/services/swipe.service.js +2 -2
  396. package/esm5/services/zoom.service.js +5 -5
  397. package/esm5/tokens/active-element.js +10 -10
  398. package/esm5/tokens/alerts.js +2 -2
  399. package/esm5/tokens/default-renderer.js +2 -2
  400. package/esm5/tokens/dialogs.js +2 -2
  401. package/esm5/tokens/focusable-item-accessor.js +2 -2
  402. package/esm5/tokens/is-android.js +2 -2
  403. package/esm5/tokens/is-apple.js +2 -2
  404. package/esm5/tokens/is-chromium.js +2 -2
  405. package/esm5/tokens/is-cypress.js +2 -2
  406. package/esm5/tokens/is-firefox.js +3 -3
  407. package/esm5/tokens/is-ios.js +2 -2
  408. package/esm5/tokens/is-mobile.js +2 -2
  409. package/esm5/tokens/is-webkit.js +2 -2
  410. package/esm5/tokens/removed-element.js +2 -2
  411. package/esm5/tokens/sanitizer.js +2 -2
  412. package/esm5/tokens/swipe-options.js +2 -2
  413. package/esm5/tokens/take-only-trusted-events.js +2 -2
  414. package/esm5/tokens/touch-supported.js +3 -3
  415. package/esm5/tokens/window-height.js +3 -3
  416. package/esm5/tokens/zoom-options.js +2 -2
  417. package/esm5/utils/browser/is-edge-older-than.js +2 -2
  418. package/esm5/utils/browser/is-edge.js +2 -2
  419. package/esm5/utils/browser/is-firefox.js +2 -2
  420. package/esm5/utils/browser/is-ie.js +2 -2
  421. package/esm5/utils/browser/is-safari.js +2 -2
  422. package/esm5/utils/dom/custom-event.js +3 -3
  423. package/esm5/utils/dom/get-actual-target.js +2 -2
  424. package/esm5/utils/dom/get-clipboard-data-text.js +4 -4
  425. package/esm5/utils/dom/get-document-or-shadow-root.js +2 -2
  426. package/esm5/utils/dom/get-element-offset.js +2 -2
  427. package/esm5/utils/dom/index.js +2 -1
  428. package/esm5/utils/dom/is-element.js +5 -0
  429. package/esm5/utils/dom/is-form-field.js +4 -4
  430. package/esm5/utils/focus/is-native-keyboard-focusable.js +14 -14
  431. package/esm5/utils/focus/is-native-mouse-focusable.js +3 -3
  432. package/esm5/utils/focus/set-native-mouse-focused.js +5 -5
  433. package/esm5/utils/format/pad-start.js +2 -2
  434. package/esm5/utils/format/px.js +2 -2
  435. package/esm5/utils/math/round.js +5 -5
  436. package/esm5/utils/miscellaneous/ease-in-out-quad.js +2 -2
  437. package/esm5/utils/miscellaneous/get-swipe-direction.js +3 -3
  438. package/esm5/utils/miscellaneous/is-number.js +2 -2
  439. package/esm5/utils/os/is-apple-platform.js +2 -2
  440. package/esm5/utils/svg/svg-linear-gradient-processor.js +2 -2
  441. package/fesm2015/taiga-ui-cdk-abstract.js +12 -12
  442. package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
  443. package/fesm2015/taiga-ui-cdk-classes.js +1 -1
  444. package/fesm2015/taiga-ui-cdk-classes.js.map +1 -1
  445. package/fesm2015/taiga-ui-cdk-coercion.js +1 -1
  446. package/fesm2015/taiga-ui-cdk-coercion.js.map +1 -1
  447. package/fesm2015/taiga-ui-cdk-components-alert-host.js +1 -1
  448. package/fesm2015/taiga-ui-cdk-components-alert-host.js.map +1 -1
  449. package/fesm2015/taiga-ui-cdk-components-dialog-host.js +4 -4
  450. package/fesm2015/taiga-ui-cdk-components-dialog-host.js.map +1 -1
  451. package/fesm2015/taiga-ui-cdk-components-dropdown-host.js +4 -4
  452. package/fesm2015/taiga-ui-cdk-components-dropdown-host.js.map +1 -1
  453. package/fesm2015/taiga-ui-cdk-components-portal-host.js +1 -1
  454. package/fesm2015/taiga-ui-cdk-components-portal-host.js.map +1 -1
  455. package/fesm2015/taiga-ui-cdk-constants.js +24 -16
  456. package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
  457. package/fesm2015/taiga-ui-cdk-date-time.js +33 -33
  458. package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
  459. package/fesm2015/taiga-ui-cdk-decorators.js +1 -1
  460. package/fesm2015/taiga-ui-cdk-decorators.js.map +1 -1
  461. package/fesm2015/taiga-ui-cdk-directives-active-zone.js +3 -3
  462. package/fesm2015/taiga-ui-cdk-directives-active-zone.js.map +1 -1
  463. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js +15 -15
  464. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
  465. package/fesm2015/taiga-ui-cdk-directives-autofilled.js +7 -7
  466. package/fesm2015/taiga-ui-cdk-directives-autofilled.js.map +1 -1
  467. package/fesm2015/taiga-ui-cdk-directives-checked.js +6 -6
  468. package/fesm2015/taiga-ui-cdk-directives-checked.js.map +1 -1
  469. package/fesm2015/taiga-ui-cdk-directives-copy-processor.js +3 -3
  470. package/fesm2015/taiga-ui-cdk-directives-copy-processor.js.map +1 -1
  471. package/fesm2015/taiga-ui-cdk-directives-drag.js +4 -4
  472. package/fesm2015/taiga-ui-cdk-directives-drag.js.map +1 -1
  473. package/fesm2015/taiga-ui-cdk-directives-droppable.js +4 -4
  474. package/fesm2015/taiga-ui-cdk-directives-droppable.js.map +1 -1
  475. package/fesm2015/taiga-ui-cdk-directives-element.js +2 -2
  476. package/fesm2015/taiga-ui-cdk-directives-element.js.map +1 -1
  477. package/fesm2015/taiga-ui-cdk-directives-focus-trap.js +5 -5
  478. package/fesm2015/taiga-ui-cdk-directives-focus-trap.js.map +1 -1
  479. package/fesm2015/taiga-ui-cdk-directives-focus-visible.js +2 -2
  480. package/fesm2015/taiga-ui-cdk-directives-focus-visible.js.map +1 -1
  481. package/fesm2015/taiga-ui-cdk-directives-focusable.js +3 -3
  482. package/fesm2015/taiga-ui-cdk-directives-focusable.js.map +1 -1
  483. package/fesm2015/taiga-ui-cdk-directives-focused.js +2 -2
  484. package/fesm2015/taiga-ui-cdk-directives-focused.js.map +1 -1
  485. package/fesm2015/taiga-ui-cdk-directives-for-async.js +1 -1
  486. package/fesm2015/taiga-ui-cdk-directives-for-async.js.map +1 -1
  487. package/fesm2015/taiga-ui-cdk-directives-for.js +1 -1
  488. package/fesm2015/taiga-ui-cdk-directives-for.js.map +1 -1
  489. package/fesm2015/taiga-ui-cdk-directives-high-dpi.js +1 -1
  490. package/fesm2015/taiga-ui-cdk-directives-high-dpi.js.map +1 -1
  491. package/fesm2015/taiga-ui-cdk-directives-hovered.js +4 -4
  492. package/fesm2015/taiga-ui-cdk-directives-hovered.js.map +1 -1
  493. package/fesm2015/taiga-ui-cdk-directives-input-mode.js +10 -10
  494. package/fesm2015/taiga-ui-cdk-directives-input-mode.js.map +1 -1
  495. package/fesm2015/taiga-ui-cdk-directives-item.js +1 -1
  496. package/fesm2015/taiga-ui-cdk-directives-item.js.map +1 -1
  497. package/fesm2015/taiga-ui-cdk-directives-let.js +1 -1
  498. package/fesm2015/taiga-ui-cdk-directives-let.js.map +1 -1
  499. package/fesm2015/taiga-ui-cdk-directives-media.js +12 -12
  500. package/fesm2015/taiga-ui-cdk-directives-media.js.map +1 -1
  501. package/fesm2015/taiga-ui-cdk-directives-obscured.js +1 -1
  502. package/fesm2015/taiga-ui-cdk-directives-obscured.js.map +1 -1
  503. package/fesm2015/taiga-ui-cdk-directives-overscroll.js +11 -11
  504. package/fesm2015/taiga-ui-cdk-directives-overscroll.js.map +1 -1
  505. package/fesm2015/taiga-ui-cdk-directives-pan.js +2 -2
  506. package/fesm2015/taiga-ui-cdk-directives-pan.js.map +1 -1
  507. package/fesm2015/taiga-ui-cdk-directives-portal.js +1 -1
  508. package/fesm2015/taiga-ui-cdk-directives-portal.js.map +1 -1
  509. package/fesm2015/taiga-ui-cdk-directives-pressed.js +1 -1
  510. package/fesm2015/taiga-ui-cdk-directives-pressed.js.map +1 -1
  511. package/fesm2015/taiga-ui-cdk-directives-prevent-default.js +3 -3
  512. package/fesm2015/taiga-ui-cdk-directives-prevent-default.js.map +1 -1
  513. package/fesm2015/taiga-ui-cdk-directives-repeat-times.js +1 -1
  514. package/fesm2015/taiga-ui-cdk-directives-repeat-times.js.map +1 -1
  515. package/fesm2015/taiga-ui-cdk-directives-resize.js +2 -2
  516. package/fesm2015/taiga-ui-cdk-directives-resize.js.map +1 -1
  517. package/fesm2015/taiga-ui-cdk-directives-swipe.js +2 -2
  518. package/fesm2015/taiga-ui-cdk-directives-swipe.js.map +1 -1
  519. package/fesm2015/taiga-ui-cdk-directives-validator.js +1 -1
  520. package/fesm2015/taiga-ui-cdk-directives-validator.js.map +1 -1
  521. package/fesm2015/taiga-ui-cdk-directives-zoom.js +3 -3
  522. package/fesm2015/taiga-ui-cdk-directives-zoom.js.map +1 -1
  523. package/fesm2015/taiga-ui-cdk-enums.js.map +1 -1
  524. package/fesm2015/taiga-ui-cdk-exceptions.js +10 -10
  525. package/fesm2015/taiga-ui-cdk-exceptions.js.map +1 -1
  526. package/fesm2015/taiga-ui-cdk-observables.js +7 -7
  527. package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
  528. package/fesm2015/taiga-ui-cdk-pipes-filter.js +1 -1
  529. package/fesm2015/taiga-ui-cdk-pipes-filter.js.map +1 -1
  530. package/fesm2015/taiga-ui-cdk-pipes-mapper.js +1 -1
  531. package/fesm2015/taiga-ui-cdk-pipes-mapper.js.map +1 -1
  532. package/fesm2015/taiga-ui-cdk-services.js +24 -24
  533. package/fesm2015/taiga-ui-cdk-services.js.map +1 -1
  534. package/fesm2015/taiga-ui-cdk-tokens.js +30 -30
  535. package/fesm2015/taiga-ui-cdk-tokens.js.map +1 -1
  536. package/fesm2015/taiga-ui-cdk-utils-browser.js +5 -5
  537. package/fesm2015/taiga-ui-cdk-utils-browser.js.map +1 -1
  538. package/fesm2015/taiga-ui-cdk-utils-dom.js +17 -12
  539. package/fesm2015/taiga-ui-cdk-utils-dom.js.map +1 -1
  540. package/fesm2015/taiga-ui-cdk-utils-focus.js +19 -19
  541. package/fesm2015/taiga-ui-cdk-utils-focus.js.map +1 -1
  542. package/fesm2015/taiga-ui-cdk-utils-format.js +2 -2
  543. package/fesm2015/taiga-ui-cdk-utils-format.js.map +1 -1
  544. package/fesm2015/taiga-ui-cdk-utils-math.js +4 -4
  545. package/fesm2015/taiga-ui-cdk-utils-math.js.map +1 -1
  546. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js +4 -4
  547. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  548. package/fesm2015/taiga-ui-cdk-utils-os.js +1 -1
  549. package/fesm2015/taiga-ui-cdk-utils-os.js.map +1 -1
  550. package/fesm2015/taiga-ui-cdk-utils-svg.js +1 -1
  551. package/fesm2015/taiga-ui-cdk-utils-svg.js.map +1 -1
  552. package/fesm5/taiga-ui-cdk-abstract.js +12 -12
  553. package/fesm5/taiga-ui-cdk-abstract.js.map +1 -1
  554. package/fesm5/taiga-ui-cdk-classes.js +1 -1
  555. package/fesm5/taiga-ui-cdk-classes.js.map +1 -1
  556. package/fesm5/taiga-ui-cdk-coercion.js +1 -1
  557. package/fesm5/taiga-ui-cdk-coercion.js.map +1 -1
  558. package/fesm5/taiga-ui-cdk-components-alert-host.js +1 -1
  559. package/fesm5/taiga-ui-cdk-components-alert-host.js.map +1 -1
  560. package/fesm5/taiga-ui-cdk-components-dialog-host.js +4 -4
  561. package/fesm5/taiga-ui-cdk-components-dialog-host.js.map +1 -1
  562. package/fesm5/taiga-ui-cdk-components-dropdown-host.js +4 -4
  563. package/fesm5/taiga-ui-cdk-components-dropdown-host.js.map +1 -1
  564. package/fesm5/taiga-ui-cdk-components-portal-host.js +1 -1
  565. package/fesm5/taiga-ui-cdk-components-portal-host.js.map +1 -1
  566. package/fesm5/taiga-ui-cdk-constants.js +24 -16
  567. package/fesm5/taiga-ui-cdk-constants.js.map +1 -1
  568. package/fesm5/taiga-ui-cdk-date-time.js +35 -35
  569. package/fesm5/taiga-ui-cdk-date-time.js.map +1 -1
  570. package/fesm5/taiga-ui-cdk-decorators.js +1 -1
  571. package/fesm5/taiga-ui-cdk-decorators.js.map +1 -1
  572. package/fesm5/taiga-ui-cdk-directives-active-zone.js +3 -3
  573. package/fesm5/taiga-ui-cdk-directives-active-zone.js.map +1 -1
  574. package/fesm5/taiga-ui-cdk-directives-auto-focus.js +15 -15
  575. package/fesm5/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
  576. package/fesm5/taiga-ui-cdk-directives-autofilled.js +7 -7
  577. package/fesm5/taiga-ui-cdk-directives-autofilled.js.map +1 -1
  578. package/fesm5/taiga-ui-cdk-directives-checked.js +6 -6
  579. package/fesm5/taiga-ui-cdk-directives-checked.js.map +1 -1
  580. package/fesm5/taiga-ui-cdk-directives-copy-processor.js +3 -3
  581. package/fesm5/taiga-ui-cdk-directives-copy-processor.js.map +1 -1
  582. package/fesm5/taiga-ui-cdk-directives-drag.js +4 -4
  583. package/fesm5/taiga-ui-cdk-directives-drag.js.map +1 -1
  584. package/fesm5/taiga-ui-cdk-directives-droppable.js +5 -5
  585. package/fesm5/taiga-ui-cdk-directives-droppable.js.map +1 -1
  586. package/fesm5/taiga-ui-cdk-directives-element.js +2 -2
  587. package/fesm5/taiga-ui-cdk-directives-element.js.map +1 -1
  588. package/fesm5/taiga-ui-cdk-directives-focus-trap.js +5 -5
  589. package/fesm5/taiga-ui-cdk-directives-focus-trap.js.map +1 -1
  590. package/fesm5/taiga-ui-cdk-directives-focus-visible.js +2 -2
  591. package/fesm5/taiga-ui-cdk-directives-focus-visible.js.map +1 -1
  592. package/fesm5/taiga-ui-cdk-directives-focusable.js +3 -3
  593. package/fesm5/taiga-ui-cdk-directives-focusable.js.map +1 -1
  594. package/fesm5/taiga-ui-cdk-directives-focused.js +2 -2
  595. package/fesm5/taiga-ui-cdk-directives-focused.js.map +1 -1
  596. package/fesm5/taiga-ui-cdk-directives-for-async.js +1 -1
  597. package/fesm5/taiga-ui-cdk-directives-for-async.js.map +1 -1
  598. package/fesm5/taiga-ui-cdk-directives-for.js +1 -1
  599. package/fesm5/taiga-ui-cdk-directives-for.js.map +1 -1
  600. package/fesm5/taiga-ui-cdk-directives-high-dpi.js +1 -1
  601. package/fesm5/taiga-ui-cdk-directives-high-dpi.js.map +1 -1
  602. package/fesm5/taiga-ui-cdk-directives-hovered.js +4 -4
  603. package/fesm5/taiga-ui-cdk-directives-hovered.js.map +1 -1
  604. package/fesm5/taiga-ui-cdk-directives-input-mode.js +10 -10
  605. package/fesm5/taiga-ui-cdk-directives-input-mode.js.map +1 -1
  606. package/fesm5/taiga-ui-cdk-directives-item.js +1 -1
  607. package/fesm5/taiga-ui-cdk-directives-item.js.map +1 -1
  608. package/fesm5/taiga-ui-cdk-directives-let.js +1 -1
  609. package/fesm5/taiga-ui-cdk-directives-let.js.map +1 -1
  610. package/fesm5/taiga-ui-cdk-directives-media.js +12 -12
  611. package/fesm5/taiga-ui-cdk-directives-media.js.map +1 -1
  612. package/fesm5/taiga-ui-cdk-directives-obscured.js +1 -1
  613. package/fesm5/taiga-ui-cdk-directives-obscured.js.map +1 -1
  614. package/fesm5/taiga-ui-cdk-directives-overscroll.js +11 -11
  615. package/fesm5/taiga-ui-cdk-directives-overscroll.js.map +1 -1
  616. package/fesm5/taiga-ui-cdk-directives-pan.js +2 -2
  617. package/fesm5/taiga-ui-cdk-directives-pan.js.map +1 -1
  618. package/fesm5/taiga-ui-cdk-directives-portal.js +1 -1
  619. package/fesm5/taiga-ui-cdk-directives-portal.js.map +1 -1
  620. package/fesm5/taiga-ui-cdk-directives-pressed.js +1 -1
  621. package/fesm5/taiga-ui-cdk-directives-pressed.js.map +1 -1
  622. package/fesm5/taiga-ui-cdk-directives-prevent-default.js +3 -3
  623. package/fesm5/taiga-ui-cdk-directives-prevent-default.js.map +1 -1
  624. package/fesm5/taiga-ui-cdk-directives-repeat-times.js +1 -1
  625. package/fesm5/taiga-ui-cdk-directives-repeat-times.js.map +1 -1
  626. package/fesm5/taiga-ui-cdk-directives-resize.js +2 -2
  627. package/fesm5/taiga-ui-cdk-directives-resize.js.map +1 -1
  628. package/fesm5/taiga-ui-cdk-directives-swipe.js +2 -2
  629. package/fesm5/taiga-ui-cdk-directives-swipe.js.map +1 -1
  630. package/fesm5/taiga-ui-cdk-directives-validator.js +1 -1
  631. package/fesm5/taiga-ui-cdk-directives-validator.js.map +1 -1
  632. package/fesm5/taiga-ui-cdk-directives-zoom.js +3 -3
  633. package/fesm5/taiga-ui-cdk-directives-zoom.js.map +1 -1
  634. package/fesm5/taiga-ui-cdk-enums.js.map +1 -1
  635. package/fesm5/taiga-ui-cdk-exceptions.js +10 -10
  636. package/fesm5/taiga-ui-cdk-exceptions.js.map +1 -1
  637. package/fesm5/taiga-ui-cdk-observables.js +7 -7
  638. package/fesm5/taiga-ui-cdk-observables.js.map +1 -1
  639. package/fesm5/taiga-ui-cdk-pipes-filter.js +1 -1
  640. package/fesm5/taiga-ui-cdk-pipes-filter.js.map +1 -1
  641. package/fesm5/taiga-ui-cdk-pipes-mapper.js +1 -1
  642. package/fesm5/taiga-ui-cdk-pipes-mapper.js.map +1 -1
  643. package/fesm5/taiga-ui-cdk-services.js +27 -27
  644. package/fesm5/taiga-ui-cdk-services.js.map +1 -1
  645. package/fesm5/taiga-ui-cdk-tokens.js +31 -31
  646. package/fesm5/taiga-ui-cdk-tokens.js.map +1 -1
  647. package/fesm5/taiga-ui-cdk-utils-browser.js +5 -5
  648. package/fesm5/taiga-ui-cdk-utils-browser.js.map +1 -1
  649. package/fesm5/taiga-ui-cdk-utils-dom.js +17 -12
  650. package/fesm5/taiga-ui-cdk-utils-dom.js.map +1 -1
  651. package/fesm5/taiga-ui-cdk-utils-focus.js +19 -19
  652. package/fesm5/taiga-ui-cdk-utils-focus.js.map +1 -1
  653. package/fesm5/taiga-ui-cdk-utils-format.js +2 -2
  654. package/fesm5/taiga-ui-cdk-utils-format.js.map +1 -1
  655. package/fesm5/taiga-ui-cdk-utils-math.js +4 -4
  656. package/fesm5/taiga-ui-cdk-utils-math.js.map +1 -1
  657. package/fesm5/taiga-ui-cdk-utils-miscellaneous.js +4 -4
  658. package/fesm5/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  659. package/fesm5/taiga-ui-cdk-utils-os.js +1 -1
  660. package/fesm5/taiga-ui-cdk-utils-os.js.map +1 -1
  661. package/fesm5/taiga-ui-cdk-utils-svg.js +1 -1
  662. package/fesm5/taiga-ui-cdk-utils-svg.js.map +1 -1
  663. package/package.json +1 -1
  664. package/schematics/ng-update/constants/templates.d.ts +4 -0
  665. package/schematics/ng-update/constants/templates.js +5 -0
  666. package/utils/dom/index.d.ts +1 -0
  667. package/utils/dom/is-element.d.ts +1 -0
  668. package/utils/dom/taiga-ui-cdk-utils-dom.metadata.json +1 -1
@@ -54,9 +54,9 @@ let TuiDirectiveStylesService = class TuiDirectiveStylesService {
54
54
  if (this.documentRef.head.querySelector(`style[${attribute}]`)) {
55
55
  return;
56
56
  }
57
- const style = this.renderer.createElement('style');
58
- this.renderer.setProperty(style, 'textContent', styles);
59
- this.renderer.setAttribute(style, attribute, '');
57
+ const style = this.renderer.createElement(`style`);
58
+ this.renderer.setProperty(style, `textContent`, styles);
59
+ this.renderer.setAttribute(style, attribute, ``);
60
60
  this.documentRef.head.appendChild(style);
61
61
  }
62
62
  };
@@ -69,7 +69,7 @@ TuiDirectiveStylesService.ctorParameters = () => [
69
69
  TuiDirectiveStylesService.ɵprov = ɵɵdefineInjectable({ factory: function TuiDirectiveStylesService_Factory() { return new TuiDirectiveStylesService(ɵɵinject(ComponentFactoryResolver), ɵɵinject(INJECTOR), ɵɵinject(DOCUMENT), ɵɵinject(TUI_DEFAULT_RENDERER)); }, token: TuiDirectiveStylesService, providedIn: "root" });
70
70
  TuiDirectiveStylesService = __decorate([
71
71
  Injectable({
72
- providedIn: 'root',
72
+ providedIn: `root`,
73
73
  }),
74
74
  __param(0, Inject(ComponentFactoryResolver)),
75
75
  __param(1, Inject(INJECTOR)),
@@ -106,10 +106,10 @@ TuiFocusVisibleService = __decorate([
106
106
  let TuiHoveredService = class TuiHoveredService {
107
107
  constructor(documentRef, ngZone) {
108
108
  this.ngZone = ngZone;
109
- this.documentEvents$ = merge(typedFromEvent(documentRef, 'mousemove'), typedFromEvent(documentRef, 'touchstart', { capture: true }));
109
+ this.documentEvents$ = merge(typedFromEvent(documentRef, `mousemove`), typedFromEvent(documentRef, `touchstart`, { capture: true }));
110
110
  }
111
111
  createHovered$(target, options = { passive: true }) {
112
- return merge(typedFromEvent(target, 'mouseenter', options), typedFromEvent(target, 'touchstart', options)).pipe(switchMap(() => merge(typedFromEvent(target, 'mouseleave', options), this.documentEvents$.pipe(filter(event => !target.contains(getActualTarget(event))), tuiZoneOptimized(this.ngZone), take(1))).pipe(mapTo(false), startWith(true))), distinctUntilChanged());
112
+ return merge(typedFromEvent(target, `mouseenter`, options), typedFromEvent(target, `touchstart`, options)).pipe(switchMap(() => merge(typedFromEvent(target, `mouseleave`, options), this.documentEvents$.pipe(filter(event => !target.contains(getActualTarget(event))), tuiZoneOptimized(this.ngZone), take(1))).pipe(mapTo(false), startWith(true))), distinctUntilChanged());
113
113
  }
114
114
  };
115
115
  TuiHoveredService.ctorParameters = () => [
@@ -119,14 +119,14 @@ TuiHoveredService.ctorParameters = () => [
119
119
  TuiHoveredService.ɵprov = ɵɵdefineInjectable({ factory: function TuiHoveredService_Factory() { return new TuiHoveredService(ɵɵinject(DOCUMENT), ɵɵinject(NgZone)); }, token: TuiHoveredService, providedIn: "root" });
120
120
  TuiHoveredService = __decorate([
121
121
  Injectable({
122
- providedIn: 'root',
122
+ providedIn: `root`,
123
123
  }),
124
124
  __param(0, Inject(DOCUMENT)),
125
125
  __param(1, Inject(NgZone))
126
126
  ], TuiHoveredService);
127
127
 
128
128
  var TuiIdService_1;
129
- const TUI = 'tui_';
129
+ const TUI = `tui_`;
130
130
  /**
131
131
  * Generates unique ids
132
132
  */
@@ -139,7 +139,7 @@ TuiIdService.autoId = 0;
139
139
  TuiIdService.ɵprov = ɵɵdefineInjectable({ factory: function TuiIdService_Factory() { return new TuiIdService(); }, token: TuiIdService, providedIn: "root" });
140
140
  TuiIdService = TuiIdService_1 = __decorate([
141
141
  Injectable({
142
- providedIn: 'root',
142
+ providedIn: `root`,
143
143
  })
144
144
  ], TuiIdService);
145
145
 
@@ -158,7 +158,7 @@ let TuiParentsScrollService = class TuiParentsScrollService extends Observable {
158
158
  nativeElement = nativeElement.parentElement;
159
159
  eventTargets.push(nativeElement);
160
160
  }
161
- return merge(...eventTargets.map(element => typedFromEvent(element, 'scroll')));
161
+ return merge(...eventTargets.map(element => typedFromEvent(element, `scroll`)));
162
162
  });
163
163
  }
164
164
  };
@@ -185,7 +185,7 @@ let TuiObscuredService = class TuiObscuredService extends Observable {
185
185
  super(subscriber => this.obscured$.subscribe(subscriber));
186
186
  this.obscured$ = merge(
187
187
  // delay is added so it will not interfere with other listeners
188
- merge(parentsScroll$, fromEvent(windowRef, 'resize')).pipe(delay(0)), animationFrame$.pipe(throttleTime(POLLING_TIME))).pipe(map(() => getElementObscurers(nativeElement)), startWith(null), distinctUntilChanged(), tuiZoneOptimized(ngZone), takeUntil(destroy$));
188
+ merge(parentsScroll$, fromEvent(windowRef, `resize`)).pipe(delay(0)), animationFrame$.pipe(throttleTime(POLLING_TIME))).pipe(map(() => getElementObscurers(nativeElement)), startWith(null), distinctUntilChanged(), tuiZoneOptimized(ngZone), takeUntil(destroy$));
189
189
  }
190
190
  };
191
191
  TuiObscuredService.ctorParameters = () => [
@@ -213,16 +213,16 @@ TuiObscuredService = __decorate([
213
213
  let TuiPanService = class TuiPanService extends Observable {
214
214
  constructor({ nativeElement }, documentRef) {
215
215
  super(subscriber => {
216
- merge(typedFromEvent(nativeElement, 'touchstart', { passive: true }), typedFromEvent(nativeElement, 'mousedown'))
217
- .pipe(switchMapTo(merge(typedFromEvent(documentRef, 'touchmove', {
216
+ merge(typedFromEvent(nativeElement, `touchstart`, { passive: true }), typedFromEvent(nativeElement, `mousedown`))
217
+ .pipe(switchMapTo(merge(typedFromEvent(documentRef, `touchmove`, {
218
218
  passive: true,
219
- }).pipe(filter(({ touches }) => touches.length < 2), map(({ touches }) => touches[0])), typedFromEvent(documentRef, 'mousemove'))), pairwise(), map(([first, second]) => {
219
+ }).pipe(filter(({ touches }) => touches.length < 2), map(({ touches }) => touches[0])), typedFromEvent(documentRef, `mousemove`))), pairwise(), map(([first, second]) => {
220
220
  const deltaX = second.clientX - first.clientX;
221
221
  const deltaY = second.clientY - first.clientY;
222
222
  return [deltaX, deltaY];
223
223
  }),
224
224
  // eslint-disable-next-line rxjs/no-unsafe-takeuntil
225
- takeUntil(merge(typedFromEvent(documentRef, 'touchend'), typedFromEvent(documentRef, 'mouseup'))), repeat())
225
+ takeUntil(merge(typedFromEvent(documentRef, `touchend`), typedFromEvent(documentRef, `mouseup`))), repeat())
226
226
  .subscribe(subscriber);
227
227
  });
228
228
  }
@@ -270,9 +270,9 @@ let TuiScrollService = class TuiScrollService {
270
270
  this.animationFrame$ = animationFrame$;
271
271
  }
272
272
  scroll$(element, scrollTop, scrollLeft = element.scrollLeft, duration = SCROLL_TIME) {
273
- tuiAssert.assert(duration >= 0, 'Duration cannot be negative');
274
- tuiAssert.assert(scrollTop >= 0, 'scrollTop cannot be negative');
275
- tuiAssert.assert(scrollLeft >= 0, 'scrollLeft cannot be negative');
273
+ tuiAssert.assert(duration >= 0, `Duration cannot be negative`);
274
+ tuiAssert.assert(scrollTop >= 0, `scrollTop cannot be negative`);
275
+ tuiAssert.assert(scrollLeft >= 0, `scrollLeft cannot be negative`);
276
276
  const initialTop = element.scrollTop;
277
277
  const initialLeft = element.scrollLeft;
278
278
  const deltaTop = scrollTop - initialTop;
@@ -296,7 +296,7 @@ TuiScrollService.ctorParameters = () => [
296
296
  TuiScrollService.ɵprov = ɵɵdefineInjectable({ factory: function TuiScrollService_Factory() { return new TuiScrollService(ɵɵinject(PERFORMANCE), ɵɵinject(ANIMATION_FRAME)); }, token: TuiScrollService, providedIn: "root" });
297
297
  TuiScrollService = __decorate([
298
298
  Injectable({
299
- providedIn: 'root',
299
+ providedIn: `root`,
300
300
  }),
301
301
  __param(0, Inject(PERFORMANCE)),
302
302
  __param(1, Inject(ANIMATION_FRAME))
@@ -325,7 +325,7 @@ let TuiStaticRequestService = class TuiStaticRequestService {
325
325
  }
326
326
  }
327
327
  };
328
- xhr.open('GET', url);
328
+ xhr.open(`GET`, url);
329
329
  xhr.send();
330
330
  return () => {
331
331
  xhr.abort();
@@ -339,7 +339,7 @@ let TuiStaticRequestService = class TuiStaticRequestService {
339
339
  TuiStaticRequestService.ɵprov = ɵɵdefineInjectable({ factory: function TuiStaticRequestService_Factory() { return new TuiStaticRequestService(); }, token: TuiStaticRequestService, providedIn: "root" });
340
340
  TuiStaticRequestService = __decorate([
341
341
  Injectable({
342
- providedIn: 'root',
342
+ providedIn: `root`,
343
343
  })
344
344
  ], TuiStaticRequestService);
345
345
 
@@ -349,7 +349,7 @@ TuiStaticRequestService = __decorate([
349
349
  let TuiSwipeService = class TuiSwipeService extends Observable {
350
350
  constructor({ nativeElement }, { timeout, threshold }, documentRef) {
351
351
  super(subscriber => {
352
- merge(typedFromEvent(nativeElement, 'touchstart', { passive: true }), typedFromEvent(documentRef, 'touchend'))
352
+ merge(typedFromEvent(nativeElement, `touchstart`, { passive: true }), typedFromEvent(documentRef, `touchend`))
353
353
  .pipe(pairwise(), filter(([first, second]) => !!first.touches.length &&
354
354
  first.touches[0].identifier ===
355
355
  second.changedTouches[0].identifier), map(([start, end]) => {
@@ -391,7 +391,7 @@ const TOUCH_SENSITIVITY = 0.01;
391
391
  let TuiZoomService = class TuiZoomService extends Observable {
392
392
  constructor({ nativeElement }, { wheelSensitivity }) {
393
393
  super(subscriber => {
394
- merge(typedFromEvent(nativeElement, 'touchstart', { passive: true }).pipe(filter(({ touches }) => touches.length > 1), switchMap(startEvent => typedFromEvent(nativeElement, 'touchmove', {
394
+ merge(typedFromEvent(nativeElement, `touchstart`, { passive: true }).pipe(filter(({ touches }) => touches.length > 1), switchMap(startEvent => typedFromEvent(nativeElement, `touchmove`, {
395
395
  passive: true,
396
396
  }).pipe(preventDefault(), scan((prev, event) => {
397
397
  const distance = distanceBetweenTouches(event);
@@ -413,7 +413,7 @@ let TuiZoomService = class TuiZoomService extends Observable {
413
413
  event.touches[1].clientY) /
414
414
  2;
415
415
  return { clientX, clientY, delta, event };
416
- }), takeUntil(typedFromEvent(nativeElement, 'touchend'))))), typedFromEvent(nativeElement, 'wheel', { passive: false }).pipe(preventDefault(), map(wheel => ({
416
+ }), takeUntil(typedFromEvent(nativeElement, `touchend`))))), typedFromEvent(nativeElement, `wheel`, { passive: false }).pipe(preventDefault(), map(wheel => ({
417
417
  clientX: wheel.clientX,
418
418
  clientY: wheel.clientY,
419
419
  delta: -wheel.deltaY * wheelSensitivity,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-services.js","sources":["ng://@taiga-ui/cdk/services/destroy.service.ts","ng://@taiga-ui/cdk/services/directive-styles.service.ts","ng://@taiga-ui/cdk/services/focus-visible.service.ts","ng://@taiga-ui/cdk/services/hovered.service.ts","ng://@taiga-ui/cdk/services/id.service.ts","ng://@taiga-ui/cdk/services/parents-scroll.service.ts","ng://@taiga-ui/cdk/services/obscured.service.ts","ng://@taiga-ui/cdk/services/pan.service.ts","ng://@taiga-ui/cdk/services/resize.service.ts","ng://@taiga-ui/cdk/services/scroll.service.ts","ng://@taiga-ui/cdk/services/static-request.service.ts","ng://@taiga-ui/cdk/services/swipe.service.ts","ng://@taiga-ui/cdk/services/zoom.service.ts","ng://@taiga-ui/cdk/services/taiga-ui-cdk-services.ts"],"sourcesContent":["import {Injectable, OnDestroy} from '@angular/core';\nimport {ReplaySubject} from 'rxjs';\n\n/**\n * Observable abstraction over ngOnDestroy to use with takeUntil\n */\n@Injectable()\nexport class TuiDestroyService extends ReplaySubject<void> implements OnDestroy {\n constructor() {\n super(1);\n }\n\n ngOnDestroy(): void {\n this.next();\n this.complete();\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ComponentFactoryResolver,\n Inject,\n Injectable,\n INJECTOR,\n Injector,\n Renderer2,\n Type,\n} from '@angular/core';\nimport {TUI_DEFAULT_RENDERER} from '@taiga-ui/cdk/tokens';\n\n/**\n * Service to use styles with directives\n * @dynamic\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiDirectiveStylesService {\n private readonly map = new Map<Type<unknown>, unknown>();\n\n constructor(\n @Inject(ComponentFactoryResolver)\n private readonly resolver: ComponentFactoryResolver,\n @Inject(INJECTOR) private readonly injector: Injector,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(TUI_DEFAULT_RENDERER) private readonly renderer: Renderer2,\n ) {}\n\n addComponent(component: Type<unknown>): void {\n if (!this.map.has(component)) {\n this.map.set(\n component,\n this.resolver.resolveComponentFactory(component).create(this.injector),\n );\n }\n }\n\n /** @deprecated use components approach\n * TODO: delete in v3.0\n */\n addStyle(styles: string, attribute: string): void {\n if (this.documentRef.head.querySelector(`style[${attribute}]`)) {\n return;\n }\n\n const style = this.renderer.createElement('style');\n\n this.renderer.setProperty(style, 'textContent', styles);\n this.renderer.setAttribute(style, attribute, '');\n this.documentRef.head.appendChild(style);\n }\n}\n","import {ChangeDetectorRef, ElementRef, Inject, Injectable} from '@angular/core';\nimport {focusVisibleObservable, watch} from '@taiga-ui/cdk/observables';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiDestroyService} from './destroy.service';\n\n/**\n * Service to imitate :focus-visible\n * (https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible)\n * in browsers that do not support it\n * @dynamic\n */\n@Injectable()\nexport class TuiFocusVisibleService extends Observable<boolean> {\n private readonly focusVisible$: Observable<boolean>;\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n ) {\n super(subscriber => this.focusVisible$.subscribe(subscriber));\n\n this.focusVisible$ = focusVisibleObservable(nativeElement).pipe(\n watch(changeDetectorRef),\n takeUntil(destroy$),\n );\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Inject, Injectable, NgZone} from '@angular/core';\nimport {tuiZoneOptimized, typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {getActualTarget} from '@taiga-ui/cdk/utils/dom';\nimport {merge, Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n mapTo,\n startWith,\n switchMap,\n take,\n} from 'rxjs/operators';\n\n/** @deprecated TODO remove in v3.0 */\n// @dynamic\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiHoveredService {\n private readonly documentEvents$: Observable<Event>;\n\n constructor(\n @Inject(DOCUMENT) documentRef: Document,\n @Inject(NgZone) private readonly ngZone: NgZone,\n ) {\n this.documentEvents$ = merge(\n typedFromEvent(documentRef, 'mousemove'),\n typedFromEvent(documentRef, 'touchstart', {capture: true}),\n );\n }\n\n createHovered$(\n target: Element,\n options: AddEventListenerOptions = {passive: true},\n ): Observable<boolean> {\n return merge(\n typedFromEvent(target, 'mouseenter', options),\n typedFromEvent(target, 'touchstart', options),\n ).pipe(\n switchMap(() =>\n merge(\n typedFromEvent(target, 'mouseleave', options),\n this.documentEvents$.pipe(\n filter(event => !target.contains(getActualTarget(event))),\n tuiZoneOptimized(this.ngZone),\n take(1),\n ),\n ).pipe(mapTo(false), startWith(true)),\n ),\n distinctUntilChanged(),\n );\n }\n}\n","import {Injectable} from '@angular/core';\n\nconst TUI = 'tui_';\n\n/**\n * Generates unique ids\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiIdService {\n private static autoId = 0;\n\n generate(): string {\n return `${TUI}${TuiIdService.autoId++}${Date.now()}`;\n }\n}\n","import {ElementRef, Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {defer, merge, Observable} from 'rxjs';\n\n/**\n * Service that subscribes to scroll events of all parent elements\n */\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Injectable()\nexport class TuiParentsScrollService extends Observable<Event> {\n private readonly callback$: Observable<Event>;\n\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<Element>,\n @Inject(WINDOW) windowRef: Window,\n ) {\n super(subscriber => this.callback$.subscribe(subscriber));\n\n this.callback$ = defer(() => {\n let {nativeElement} = elementRef;\n const eventTargets: Array<Element | Window> = [windowRef, nativeElement];\n\n while (nativeElement.parentElement) {\n nativeElement = nativeElement.parentElement;\n eventTargets.push(nativeElement);\n }\n\n return merge<Event>(\n ...eventTargets.map<Observable<Event>>(element =>\n typedFromEvent(element, 'scroll'),\n ),\n );\n });\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone, Self} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {POLLING_TIME} from '@taiga-ui/cdk/constants';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {getElementObscurers} from '@taiga-ui/cdk/utils/dom';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {\n delay,\n distinctUntilChanged,\n map,\n startWith,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiDestroyService} from './destroy.service';\nimport {TuiParentsScrollService} from './parents-scroll.service';\n\n// @bad TODO: Consider Intersection Observer with fallback to current implementation\n/**\n * Service that monitors element visibility by subscribing to scrolls\n * and polling with set interval, returns either null or an array\n * of elements that overlap given element edges\n */\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Injectable()\nexport class TuiObscuredService extends Observable<null | readonly Element[]> {\n private readonly obscured$: Observable<null | readonly Element[]>;\n\n constructor(\n @Inject(TuiParentsScrollService)\n @Self()\n parentsScroll$: TuiParentsScrollService,\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(WINDOW) windowRef: Window,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n super(subscriber => this.obscured$.subscribe(subscriber));\n\n this.obscured$ = merge(\n // delay is added so it will not interfere with other listeners\n merge(parentsScroll$, fromEvent(windowRef, 'resize')).pipe(delay(0)),\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n ).pipe(\n map(() => getElementObscurers(nativeElement)),\n startWith(null),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n );\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, Inject, Injectable} from '@angular/core';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {merge, Observable} from 'rxjs';\nimport {filter, map, pairwise, repeat, switchMapTo, takeUntil} from 'rxjs/operators';\n\n/**\n * @dynamic\n */\n@Injectable()\nexport class TuiPanService extends Observable<readonly [number, number]> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(DOCUMENT) documentRef: Document,\n ) {\n super(subscriber => {\n merge(\n typedFromEvent(nativeElement, 'touchstart', {passive: true}),\n typedFromEvent(nativeElement, 'mousedown'),\n )\n .pipe(\n switchMapTo(\n merge(\n typedFromEvent(documentRef, 'touchmove', {\n passive: true,\n }).pipe(\n filter(({touches}) => touches.length < 2),\n map(({touches}) => touches[0]),\n ),\n typedFromEvent(documentRef, 'mousemove'),\n ),\n ),\n pairwise(),\n map(([first, second]) => {\n const deltaX = second.clientX - first.clientX;\n const deltaY = second.clientY - first.clientY;\n\n return [deltaX, deltaY] as [number, number];\n }),\n // eslint-disable-next-line rxjs/no-unsafe-takeuntil\n takeUntil(\n merge(\n typedFromEvent(documentRef, 'touchend'),\n typedFromEvent(documentRef, 'mouseup'),\n ),\n ),\n repeat(),\n )\n .subscribe(subscriber);\n });\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {\n RESIZE_OBSERVER_SUPPORT,\n RESIZE_OPTION_BOX,\n ResizeObserverService,\n} from '@ng-web-apis/resize-observer';\nimport {EMPTY_ARRAY, POLLING_TIME} from '@taiga-ui/cdk/constants';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {Observable} from 'rxjs';\nimport {\n catchError,\n debounceTime,\n distinctUntilChanged,\n map,\n mapTo,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiDestroyService} from './destroy.service';\n\n// @dynamic\n@Injectable()\nexport class TuiResizeService extends ResizeObserverService {\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(RESIZE_OBSERVER_SUPPORT) support: boolean,\n @Inject(RESIZE_OPTION_BOX) box: ResizeObserverOptions['box'],\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n super(elementRef, ngZone, support, box);\n\n return this.pipe(\n catchError(() =>\n animationFrame$.pipe(\n throttleTime(POLLING_TIME),\n map(\n () =>\n `${elementRef.nativeElement.clientWidth} ${elementRef.nativeElement.clientHeight}`,\n ),\n distinctUntilChanged(),\n mapTo(EMPTY_ARRAY),\n ),\n ),\n debounceTime(0),\n tuiZonefree(ngZone),\n takeUntil(destroy$),\n );\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {ANIMATION_FRAME, PERFORMANCE} from '@ng-web-apis/common';\nimport {tuiAssert} from '@taiga-ui/cdk/classes';\nimport {clamp} from '@taiga-ui/cdk/utils/math';\nimport {easeInOutQuad} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {defer, Observable, of, timer} from 'rxjs';\nimport {map, switchMap, takeUntil, tap} from 'rxjs/operators';\n\nconst SCROLL_TIME = 300;\n\n// @dynamic\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiScrollService {\n constructor(\n @Inject(PERFORMANCE) private readonly performanceRef: Performance,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n ) {}\n\n scroll$(\n element: Element,\n scrollTop: number,\n scrollLeft: number = element.scrollLeft,\n duration: number = SCROLL_TIME,\n ): Observable<[number, number]> {\n tuiAssert.assert(duration >= 0, 'Duration cannot be negative');\n tuiAssert.assert(scrollTop >= 0, 'scrollTop cannot be negative');\n tuiAssert.assert(scrollLeft >= 0, 'scrollLeft cannot be negative');\n\n const initialTop = element.scrollTop;\n const initialLeft = element.scrollLeft;\n const deltaTop = scrollTop - initialTop;\n const deltaLeft = scrollLeft - initialLeft;\n const observable = !duration\n ? of([scrollTop, scrollLeft] as [number, number])\n : defer(() => of(this.performanceRef.now())).pipe(\n switchMap(start => this.animationFrame$.pipe(map(now => now - start))),\n map(elapsed => easeInOutQuad(clamp(elapsed / duration, 0, 1))),\n map(\n percent =>\n [\n initialTop + deltaTop * percent,\n initialLeft + deltaLeft * percent,\n ] as [number, number],\n ),\n takeUntil(timer(duration)),\n );\n\n return observable.pipe(\n tap(([scrollTop, scrollLeft]) => {\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }),\n );\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Observer} from 'rxjs';\nimport {shareReplay} from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiStaticRequestService {\n private readonly cache = new Map<string, Observable<string>>();\n\n request(url: string): Observable<string> {\n const cache = this.cache.get(url);\n\n if (cache) {\n return cache;\n }\n\n const observable = new Observable((observer: Observer<string>) => {\n const xhr = new XMLHttpRequest();\n\n xhr.onreadystatechange = () => {\n if (xhr.readyState === 4) {\n const response = xhr.responseType ? xhr.response : xhr.responseText;\n\n if (xhr.status === 200) {\n observer.next(response);\n observer.complete();\n } else {\n observer.error(response);\n }\n }\n };\n\n xhr.open('GET', url);\n xhr.send();\n\n return () => {\n xhr.abort();\n };\n });\n const piped = observable.pipe(shareReplay({bufferSize: 1, refCount: false}));\n\n this.cache.set(url, piped);\n\n return piped;\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, Inject, Injectable} from '@angular/core';\nimport {TuiSwipe, TuiSwipeOptions} from '@taiga-ui/cdk/interfaces';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {TUI_SWIPE_OPTIONS} from '@taiga-ui/cdk/tokens';\nimport {getSwipeDirection, isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {merge, Observable} from 'rxjs';\nimport {filter, map, pairwise} from 'rxjs/operators';\n\n/**\n * @dynamic\n */\n@Injectable()\nexport class TuiSwipeService extends Observable<TuiSwipe> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(TUI_SWIPE_OPTIONS) {timeout, threshold}: TuiSwipeOptions,\n @Inject(DOCUMENT) documentRef: Document,\n ) {\n super(subscriber => {\n merge(\n typedFromEvent(nativeElement, 'touchstart', {passive: true}),\n typedFromEvent(documentRef, 'touchend'),\n )\n .pipe(\n pairwise(),\n filter(\n ([first, second]) =>\n !!first.touches.length &&\n first.touches[0].identifier ===\n second.changedTouches[0].identifier,\n ),\n map(([start, end]) => {\n const startX = start.touches[0].clientX;\n const startY = start.touches[0].clientY;\n const endX = end.changedTouches[0].clientX;\n const endY = end.changedTouches[0].clientY;\n\n const distanceX = startX - endX;\n const distanceY = startY - endY;\n const duration = end.timeStamp - start.timeStamp;\n\n if (\n (Math.abs(distanceX) > threshold ||\n Math.abs(distanceY) > threshold) &&\n duration < timeout\n ) {\n return {\n direction: getSwipeDirection(distanceX, distanceY),\n events: [start, end] as [TouchEvent, TouchEvent],\n };\n }\n\n return null;\n }),\n filter(isPresent),\n )\n .subscribe(subscriber);\n });\n }\n}\n","import {ElementRef, Inject, Injectable} from '@angular/core';\nimport {TuiZoom, TuiZoomOptions} from '@taiga-ui/cdk/interfaces';\nimport {preventDefault, typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {TUI_ZOOM_OPTIONS} from '@taiga-ui/cdk/tokens';\nimport {distanceBetweenTouches} from '@taiga-ui/cdk/utils';\nimport {merge, Observable} from 'rxjs';\nimport {filter, map, scan, switchMap, takeUntil} from 'rxjs/operators';\n\nconst TOUCH_SENSITIVITY = 0.01;\n\n// @dynamic\n@Injectable()\nexport class TuiZoomService extends Observable<TuiZoom> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(TUI_ZOOM_OPTIONS) {wheelSensitivity}: TuiZoomOptions,\n ) {\n super(subscriber => {\n merge(\n typedFromEvent(nativeElement, 'touchstart', {passive: true}).pipe(\n filter(({touches}) => touches.length > 1),\n switchMap(startEvent =>\n typedFromEvent(nativeElement, 'touchmove', {\n passive: true,\n }).pipe(\n preventDefault(),\n scan(\n (prev, event) => {\n const distance = distanceBetweenTouches(event);\n\n return {\n event,\n distance,\n delta:\n (distance - prev.distance) *\n TOUCH_SENSITIVITY,\n };\n },\n {\n event: startEvent,\n distance: distanceBetweenTouches(startEvent),\n delta: 0,\n },\n ),\n map(({event, delta}) => {\n const clientX =\n (event.touches[0].clientX +\n event.touches[1].clientX) /\n 2;\n const clientY =\n (event.touches[0].clientY +\n event.touches[1].clientY) /\n 2;\n\n return {clientX, clientY, delta, event};\n }),\n takeUntil(typedFromEvent(nativeElement, 'touchend')),\n ),\n ),\n ),\n typedFromEvent(nativeElement, 'wheel', {passive: false}).pipe(\n preventDefault(),\n map(wheel => ({\n clientX: wheel.clientX,\n clientY: wheel.clientY,\n delta: -wheel.deltaY * wheelSensitivity,\n event: wheel,\n })),\n ),\n ).subscribe(subscriber);\n });\n }\n}\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-cdk-services.js","sources":["ng://@taiga-ui/cdk/services/destroy.service.ts","ng://@taiga-ui/cdk/services/directive-styles.service.ts","ng://@taiga-ui/cdk/services/focus-visible.service.ts","ng://@taiga-ui/cdk/services/hovered.service.ts","ng://@taiga-ui/cdk/services/id.service.ts","ng://@taiga-ui/cdk/services/parents-scroll.service.ts","ng://@taiga-ui/cdk/services/obscured.service.ts","ng://@taiga-ui/cdk/services/pan.service.ts","ng://@taiga-ui/cdk/services/resize.service.ts","ng://@taiga-ui/cdk/services/scroll.service.ts","ng://@taiga-ui/cdk/services/static-request.service.ts","ng://@taiga-ui/cdk/services/swipe.service.ts","ng://@taiga-ui/cdk/services/zoom.service.ts","ng://@taiga-ui/cdk/services/taiga-ui-cdk-services.ts"],"sourcesContent":["import {Injectable, OnDestroy} from '@angular/core';\nimport {ReplaySubject} from 'rxjs';\n\n/**\n * Observable abstraction over ngOnDestroy to use with takeUntil\n */\n@Injectable()\nexport class TuiDestroyService extends ReplaySubject<void> implements OnDestroy {\n constructor() {\n super(1);\n }\n\n ngOnDestroy(): void {\n this.next();\n this.complete();\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ComponentFactoryResolver,\n Inject,\n Injectable,\n INJECTOR,\n Injector,\n Renderer2,\n Type,\n} from '@angular/core';\nimport {TUI_DEFAULT_RENDERER} from '@taiga-ui/cdk/tokens';\n\n/**\n * Service to use styles with directives\n * @dynamic\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiDirectiveStylesService {\n private readonly map = new Map<Type<unknown>, unknown>();\n\n constructor(\n @Inject(ComponentFactoryResolver)\n private readonly resolver: ComponentFactoryResolver,\n @Inject(INJECTOR) private readonly injector: Injector,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(TUI_DEFAULT_RENDERER) private readonly renderer: Renderer2,\n ) {}\n\n addComponent(component: Type<unknown>): void {\n if (!this.map.has(component)) {\n this.map.set(\n component,\n this.resolver.resolveComponentFactory(component).create(this.injector),\n );\n }\n }\n\n /** @deprecated use components approach\n * TODO: delete in v3.0\n */\n addStyle(styles: string, attribute: string): void {\n if (this.documentRef.head.querySelector(`style[${attribute}]`)) {\n return;\n }\n\n const style = this.renderer.createElement(`style`);\n\n this.renderer.setProperty(style, `textContent`, styles);\n this.renderer.setAttribute(style, attribute, ``);\n this.documentRef.head.appendChild(style);\n }\n}\n","import {ChangeDetectorRef, ElementRef, Inject, Injectable} from '@angular/core';\nimport {focusVisibleObservable, watch} from '@taiga-ui/cdk/observables';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiDestroyService} from './destroy.service';\n\n/**\n * Service to imitate :focus-visible\n * (https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible)\n * in browsers that do not support it\n * @dynamic\n */\n@Injectable()\nexport class TuiFocusVisibleService extends Observable<boolean> {\n private readonly focusVisible$: Observable<boolean>;\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n ) {\n super(subscriber => this.focusVisible$.subscribe(subscriber));\n\n this.focusVisible$ = focusVisibleObservable(nativeElement).pipe(\n watch(changeDetectorRef),\n takeUntil(destroy$),\n );\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Inject, Injectable, NgZone} from '@angular/core';\nimport {tuiZoneOptimized, typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {getActualTarget} from '@taiga-ui/cdk/utils/dom';\nimport {merge, Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n mapTo,\n startWith,\n switchMap,\n take,\n} from 'rxjs/operators';\n\n/** @deprecated TODO remove in v3.0 */\n// @dynamic\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiHoveredService {\n private readonly documentEvents$: Observable<Event>;\n\n constructor(\n @Inject(DOCUMENT) documentRef: Document,\n @Inject(NgZone) private readonly ngZone: NgZone,\n ) {\n this.documentEvents$ = merge(\n typedFromEvent(documentRef, `mousemove`),\n typedFromEvent(documentRef, `touchstart`, {capture: true}),\n );\n }\n\n createHovered$(\n target: Element,\n options: AddEventListenerOptions = {passive: true},\n ): Observable<boolean> {\n return merge(\n typedFromEvent(target, `mouseenter`, options),\n typedFromEvent(target, `touchstart`, options),\n ).pipe(\n switchMap(() =>\n merge(\n typedFromEvent(target, `mouseleave`, options),\n this.documentEvents$.pipe(\n filter(event => !target.contains(getActualTarget(event))),\n tuiZoneOptimized(this.ngZone),\n take(1),\n ),\n ).pipe(mapTo(false), startWith(true)),\n ),\n distinctUntilChanged(),\n );\n }\n}\n","import {Injectable} from '@angular/core';\n\nconst TUI = `tui_`;\n\n/**\n * Generates unique ids\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiIdService {\n private static autoId = 0;\n\n generate(): string {\n return `${TUI}${TuiIdService.autoId++}${Date.now()}`;\n }\n}\n","import {ElementRef, Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {defer, merge, Observable} from 'rxjs';\n\n/**\n * Service that subscribes to scroll events of all parent elements\n */\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Injectable()\nexport class TuiParentsScrollService extends Observable<Event> {\n private readonly callback$: Observable<Event>;\n\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<Element>,\n @Inject(WINDOW) windowRef: Window,\n ) {\n super(subscriber => this.callback$.subscribe(subscriber));\n\n this.callback$ = defer(() => {\n let {nativeElement} = elementRef;\n const eventTargets: Array<Element | Window> = [windowRef, nativeElement];\n\n while (nativeElement.parentElement) {\n nativeElement = nativeElement.parentElement;\n eventTargets.push(nativeElement);\n }\n\n return merge<Event>(\n ...eventTargets.map<Observable<Event>>(element =>\n typedFromEvent(element, `scroll`),\n ),\n );\n });\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone, Self} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {POLLING_TIME} from '@taiga-ui/cdk/constants';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {getElementObscurers} from '@taiga-ui/cdk/utils/dom';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {\n delay,\n distinctUntilChanged,\n map,\n startWith,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiDestroyService} from './destroy.service';\nimport {TuiParentsScrollService} from './parents-scroll.service';\n\n// @bad TODO: Consider Intersection Observer with fallback to current implementation\n/**\n * Service that monitors element visibility by subscribing to scrolls\n * and polling with set interval, returns either null or an array\n * of elements that overlap given element edges\n */\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Injectable()\nexport class TuiObscuredService extends Observable<null | readonly Element[]> {\n private readonly obscured$: Observable<null | readonly Element[]>;\n\n constructor(\n @Inject(TuiParentsScrollService)\n @Self()\n parentsScroll$: TuiParentsScrollService,\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(WINDOW) windowRef: Window,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n super(subscriber => this.obscured$.subscribe(subscriber));\n\n this.obscured$ = merge(\n // delay is added so it will not interfere with other listeners\n merge(parentsScroll$, fromEvent(windowRef, `resize`)).pipe(delay(0)),\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n ).pipe(\n map(() => getElementObscurers(nativeElement)),\n startWith(null),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n );\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, Inject, Injectable} from '@angular/core';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {merge, Observable} from 'rxjs';\nimport {filter, map, pairwise, repeat, switchMapTo, takeUntil} from 'rxjs/operators';\n\n/**\n * @dynamic\n */\n@Injectable()\nexport class TuiPanService extends Observable<readonly [number, number]> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(DOCUMENT) documentRef: Document,\n ) {\n super(subscriber => {\n merge(\n typedFromEvent(nativeElement, `touchstart`, {passive: true}),\n typedFromEvent(nativeElement, `mousedown`),\n )\n .pipe(\n switchMapTo(\n merge(\n typedFromEvent(documentRef, `touchmove`, {\n passive: true,\n }).pipe(\n filter(({touches}) => touches.length < 2),\n map(({touches}) => touches[0]),\n ),\n typedFromEvent(documentRef, `mousemove`),\n ),\n ),\n pairwise(),\n map(([first, second]) => {\n const deltaX = second.clientX - first.clientX;\n const deltaY = second.clientY - first.clientY;\n\n return [deltaX, deltaY] as [number, number];\n }),\n // eslint-disable-next-line rxjs/no-unsafe-takeuntil\n takeUntil(\n merge(\n typedFromEvent(documentRef, `touchend`),\n typedFromEvent(documentRef, `mouseup`),\n ),\n ),\n repeat(),\n )\n .subscribe(subscriber);\n });\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {\n RESIZE_OBSERVER_SUPPORT,\n RESIZE_OPTION_BOX,\n ResizeObserverService,\n} from '@ng-web-apis/resize-observer';\nimport {EMPTY_ARRAY, POLLING_TIME} from '@taiga-ui/cdk/constants';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {Observable} from 'rxjs';\nimport {\n catchError,\n debounceTime,\n distinctUntilChanged,\n map,\n mapTo,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiDestroyService} from './destroy.service';\n\n// @dynamic\n@Injectable()\nexport class TuiResizeService extends ResizeObserverService {\n constructor(\n @Inject(ElementRef) elementRef: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(RESIZE_OBSERVER_SUPPORT) support: boolean,\n @Inject(RESIZE_OPTION_BOX) box: ResizeObserverOptions['box'],\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n super(elementRef, ngZone, support, box);\n\n return this.pipe(\n catchError(() =>\n animationFrame$.pipe(\n throttleTime(POLLING_TIME),\n map(\n () =>\n `${elementRef.nativeElement.clientWidth} ${elementRef.nativeElement.clientHeight}`,\n ),\n distinctUntilChanged(),\n mapTo(EMPTY_ARRAY),\n ),\n ),\n debounceTime(0),\n tuiZonefree(ngZone),\n takeUntil(destroy$),\n );\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {ANIMATION_FRAME, PERFORMANCE} from '@ng-web-apis/common';\nimport {tuiAssert} from '@taiga-ui/cdk/classes';\nimport {clamp} from '@taiga-ui/cdk/utils/math';\nimport {easeInOutQuad} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {defer, Observable, of, timer} from 'rxjs';\nimport {map, switchMap, takeUntil, tap} from 'rxjs/operators';\n\nconst SCROLL_TIME = 300;\n\n// @dynamic\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiScrollService {\n constructor(\n @Inject(PERFORMANCE) private readonly performanceRef: Performance,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n ) {}\n\n scroll$(\n element: Element,\n scrollTop: number,\n scrollLeft: number = element.scrollLeft,\n duration: number = SCROLL_TIME,\n ): Observable<[number, number]> {\n tuiAssert.assert(duration >= 0, `Duration cannot be negative`);\n tuiAssert.assert(scrollTop >= 0, `scrollTop cannot be negative`);\n tuiAssert.assert(scrollLeft >= 0, `scrollLeft cannot be negative`);\n\n const initialTop = element.scrollTop;\n const initialLeft = element.scrollLeft;\n const deltaTop = scrollTop - initialTop;\n const deltaLeft = scrollLeft - initialLeft;\n const observable = !duration\n ? of([scrollTop, scrollLeft] as [number, number])\n : defer(() => of(this.performanceRef.now())).pipe(\n switchMap(start => this.animationFrame$.pipe(map(now => now - start))),\n map(elapsed => easeInOutQuad(clamp(elapsed / duration, 0, 1))),\n map(\n percent =>\n [\n initialTop + deltaTop * percent,\n initialLeft + deltaLeft * percent,\n ] as [number, number],\n ),\n takeUntil(timer(duration)),\n );\n\n return observable.pipe(\n tap(([scrollTop, scrollLeft]) => {\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }),\n );\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Observable, Observer} from 'rxjs';\nimport {shareReplay} from 'rxjs/operators';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiStaticRequestService {\n private readonly cache = new Map<string, Observable<string>>();\n\n request(url: string): Observable<string> {\n const cache = this.cache.get(url);\n\n if (cache) {\n return cache;\n }\n\n const observable = new Observable((observer: Observer<string>) => {\n const xhr = new XMLHttpRequest();\n\n xhr.onreadystatechange = () => {\n if (xhr.readyState === 4) {\n const response = xhr.responseType ? xhr.response : xhr.responseText;\n\n if (xhr.status === 200) {\n observer.next(response);\n observer.complete();\n } else {\n observer.error(response);\n }\n }\n };\n\n xhr.open(`GET`, url);\n xhr.send();\n\n return () => {\n xhr.abort();\n };\n });\n const piped = observable.pipe(shareReplay({bufferSize: 1, refCount: false}));\n\n this.cache.set(url, piped);\n\n return piped;\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, Inject, Injectable} from '@angular/core';\nimport {TuiSwipe, TuiSwipeOptions} from '@taiga-ui/cdk/interfaces';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {TUI_SWIPE_OPTIONS} from '@taiga-ui/cdk/tokens';\nimport {getSwipeDirection, isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {merge, Observable} from 'rxjs';\nimport {filter, map, pairwise} from 'rxjs/operators';\n\n/**\n * @dynamic\n */\n@Injectable()\nexport class TuiSwipeService extends Observable<TuiSwipe> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<Element>,\n @Inject(TUI_SWIPE_OPTIONS) {timeout, threshold}: TuiSwipeOptions,\n @Inject(DOCUMENT) documentRef: Document,\n ) {\n super(subscriber => {\n merge(\n typedFromEvent(nativeElement, `touchstart`, {passive: true}),\n typedFromEvent(documentRef, `touchend`),\n )\n .pipe(\n pairwise(),\n filter(\n ([first, second]) =>\n !!first.touches.length &&\n first.touches[0].identifier ===\n second.changedTouches[0].identifier,\n ),\n map(([start, end]) => {\n const startX = start.touches[0].clientX;\n const startY = start.touches[0].clientY;\n const endX = end.changedTouches[0].clientX;\n const endY = end.changedTouches[0].clientY;\n\n const distanceX = startX - endX;\n const distanceY = startY - endY;\n const duration = end.timeStamp - start.timeStamp;\n\n if (\n (Math.abs(distanceX) > threshold ||\n Math.abs(distanceY) > threshold) &&\n duration < timeout\n ) {\n return {\n direction: getSwipeDirection(distanceX, distanceY),\n events: [start, end] as [TouchEvent, TouchEvent],\n };\n }\n\n return null;\n }),\n filter(isPresent),\n )\n .subscribe(subscriber);\n });\n }\n}\n","import {ElementRef, Inject, Injectable} from '@angular/core';\nimport {TuiZoom, TuiZoomOptions} from '@taiga-ui/cdk/interfaces';\nimport {preventDefault, typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {TUI_ZOOM_OPTIONS} from '@taiga-ui/cdk/tokens';\nimport {distanceBetweenTouches} from '@taiga-ui/cdk/utils';\nimport {merge, Observable} from 'rxjs';\nimport {filter, map, scan, switchMap, takeUntil} from 'rxjs/operators';\n\nconst TOUCH_SENSITIVITY = 0.01;\n\n// @dynamic\n@Injectable()\nexport class TuiZoomService extends Observable<TuiZoom> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(TUI_ZOOM_OPTIONS) {wheelSensitivity}: TuiZoomOptions,\n ) {\n super(subscriber => {\n merge(\n typedFromEvent(nativeElement, `touchstart`, {passive: true}).pipe(\n filter(({touches}) => touches.length > 1),\n switchMap(startEvent =>\n typedFromEvent(nativeElement, `touchmove`, {\n passive: true,\n }).pipe(\n preventDefault(),\n scan(\n (prev, event) => {\n const distance = distanceBetweenTouches(event);\n\n return {\n event,\n distance,\n delta:\n (distance - prev.distance) *\n TOUCH_SENSITIVITY,\n };\n },\n {\n event: startEvent,\n distance: distanceBetweenTouches(startEvent),\n delta: 0,\n },\n ),\n map(({event, delta}) => {\n const clientX =\n (event.touches[0].clientX +\n event.touches[1].clientX) /\n 2;\n const clientY =\n (event.touches[0].clientY +\n event.touches[1].clientY) /\n 2;\n\n return {clientX, clientY, delta, event};\n }),\n takeUntil(typedFromEvent(nativeElement, `touchend`)),\n ),\n ),\n ),\n typedFromEvent(nativeElement, `wheel`, {passive: false}).pipe(\n preventDefault(),\n map(wheel => ({\n clientX: wheel.clientX,\n clientY: wheel.clientY,\n delta: -wheel.deltaY * wheelSensitivity,\n event: wheel,\n })),\n ),\n ).subscribe(subscriber);\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { BehaviorSubject, timer, merge, of } from 'rxjs';
7
7
  import { switchMap, mapTo, startWith, share, takeUntil, repeatWhen, withLatestFrom, filter, map, take, distinctUntilChanged, shareReplay } from 'rxjs/operators';
8
8
  import { ɵAnimationEngine } from '@angular/animations/browser';
9
9
 
10
- const TUI_REMOVED_ELEMENT = new InjectionToken('Element currently being removed by AnimationEngine', {
10
+ const TUI_REMOVED_ELEMENT = new InjectionToken(`Element currently being removed by AnimationEngine`, {
11
11
  factory: () => {
12
12
  var _a;
13
13
  const stub = { onRemovalComplete: () => { } };
@@ -22,21 +22,21 @@ const TUI_REMOVED_ELEMENT = new InjectionToken('Element currently being removed
22
22
  },
23
23
  });
24
24
 
25
- const TUI_ACTIVE_ELEMENT = new InjectionToken('Active element on the document for ActiveZone', {
25
+ const TUI_ACTIVE_ELEMENT = new InjectionToken(`Active element on the document for ActiveZone`, {
26
26
  factory: () => {
27
27
  const removedElement$ = inject(TUI_REMOVED_ELEMENT);
28
28
  const windowRef = inject(WINDOW);
29
29
  const documentRef = inject(DOCUMENT);
30
- const focusout$ = typedFromEvent(windowRef, 'focusout');
31
- const focusin$ = typedFromEvent(windowRef, 'focusin');
32
- const blur$ = typedFromEvent(windowRef, 'blur');
33
- const mousedown$ = typedFromEvent(windowRef, 'mousedown');
34
- const mouseup$ = typedFromEvent(windowRef, 'mouseup');
30
+ const focusout$ = typedFromEvent(windowRef, `focusout`);
31
+ const focusin$ = typedFromEvent(windowRef, `focusin`);
32
+ const blur$ = typedFromEvent(windowRef, `blur`);
33
+ const mousedown$ = typedFromEvent(windowRef, `mousedown`);
34
+ const mouseup$ = typedFromEvent(windowRef, `mouseup`);
35
35
  return merge(focusout$.pipe(
36
36
  // eslint-disable-next-line rxjs/no-unsafe-takeuntil
37
37
  takeUntil(mousedown$),
38
38
  // eslint-disable-next-line rxjs/no-ignored-notifier
39
- repeatWhen(() => mouseup$), withLatestFrom(removedElement$), filter(([event, removedElement]) => isValidFocusout(getActualTarget(event), removedElement)), map(([{ relatedTarget }]) => relatedTarget)), blur$.pipe(map(() => documentRef.activeElement), filter(element => !!element && element.matches('iframe'))), focusin$.pipe(switchMap(event => {
39
+ repeatWhen(() => mouseup$), withLatestFrom(removedElement$), filter(([event, removedElement]) => isValidFocusout(getActualTarget(event), removedElement)), map(([{ relatedTarget }]) => relatedTarget)), blur$.pipe(map(() => documentRef.activeElement), filter(element => !!element && element.matches(`iframe`))), focusin$.pipe(switchMap(event => {
40
40
  const target = getActualTarget(event);
41
41
  const root = getDocumentOrShadowRoot(target);
42
42
  return root === documentRef
@@ -59,69 +59,69 @@ function isValidFocusout(target, removedElement = null) {
59
59
  (!removedElement || !removedElement.contains(target)));
60
60
  }
61
61
  function shadowRootActiveElement(root) {
62
- return merge(typedFromEvent(root, 'focusin').pipe(map(({ target }) => target)), typedFromEvent(root, 'focusout').pipe(filter(({ target, relatedTarget }) => !!relatedTarget && isValidFocusout(target)), map(({ relatedTarget }) => relatedTarget)));
62
+ return merge(typedFromEvent(root, `focusin`).pipe(map(({ target }) => target)), typedFromEvent(root, `focusout`).pipe(filter(({ target, relatedTarget }) => !!relatedTarget && isValidFocusout(target)), map(({ relatedTarget }) => relatedTarget)));
63
63
  }
64
64
 
65
- const TUI_ALERTS = new InjectionToken('A stream of alerts', {
65
+ const TUI_ALERTS = new InjectionToken(`A stream of alerts`, {
66
66
  factory: () => [],
67
67
  });
68
68
 
69
69
  // https://github.com/angular/angular/issues/17824#issuecomment-353239017
70
- const TUI_DEFAULT_RENDERER = new InjectionToken('A Renderer2 for global services', {
70
+ const TUI_DEFAULT_RENDERER = new InjectionToken(`A Renderer2 for global services`, {
71
71
  // @ts-ignore
72
72
  factory: () => inject(RendererFactory2).createRenderer(null, null),
73
73
  });
74
74
 
75
- const TUI_DIALOGS = new InjectionToken('A stream of dialogs', {
75
+ const TUI_DIALOGS = new InjectionToken(`A stream of dialogs`, {
76
76
  factory: () => [],
77
77
  });
78
78
 
79
- const TUI_FOCUSABLE_ITEM_ACCESSOR = new InjectionToken('A component that can be focused');
79
+ const TUI_FOCUSABLE_ITEM_ACCESSOR = new InjectionToken(`A component that can be focused`);
80
80
 
81
- const TUI_IS_IOS = new InjectionToken('iOS browser detection', {
81
+ const TUI_IS_IOS = new InjectionToken(`iOS browser detection`, {
82
82
  factory: () => isIos(inject(NAVIGATOR)),
83
83
  });
84
84
 
85
85
  // https://stackoverflow.com/a/11381730/2706426 http://detectmobilebrowsers.com/
86
86
  const firstRegex = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/;
87
87
  const secondRegex = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/;
88
- const TUI_IS_MOBILE = new InjectionToken('Mobile browser detection', {
88
+ const TUI_IS_MOBILE = new InjectionToken(`Mobile browser detection`, {
89
89
  factory: () => firstRegex.test(inject(USER_AGENT).toLowerCase()) ||
90
90
  secondRegex.test(inject(USER_AGENT).slice(0, 4).toLowerCase()),
91
91
  });
92
92
 
93
- const TUI_IS_ANDROID = new InjectionToken('Mobile browser that is not iOS (technically includes Windows Phone, Blackberry etc.)', {
93
+ const TUI_IS_ANDROID = new InjectionToken(`Mobile browser that is not iOS (technically includes Windows Phone, Blackberry etc.)`, {
94
94
  factory: () => inject(TUI_IS_MOBILE) && !inject(TUI_IS_IOS),
95
95
  });
96
96
 
97
- const TUI_IS_APPLE = new InjectionToken('Apple(safari/webkit) detection', { factory: () => isApple(inject(NAVIGATOR)) });
97
+ const TUI_IS_APPLE = new InjectionToken(`Apple(safari/webkit) detection`, { factory: () => isApple(inject(NAVIGATOR)) });
98
98
 
99
- const TUI_IS_CHROMIUM = new InjectionToken('Chromium browser engine detection', {
99
+ const TUI_IS_CHROMIUM = new InjectionToken(`Chromium browser engine detection`, {
100
100
  factory: () => !!inject(WINDOW).chrome,
101
101
  });
102
102
 
103
103
  /**
104
104
  * {@link https://docs.cypress.io/faq/questions/using-cypress-faq#Is-there-any-way-to-detect-if-my-app-is-running-under-Cypress Cypress docs}
105
105
  */
106
- const TUI_IS_CYPRESS = new InjectionToken('Detect if app is running under Cypress', {
106
+ const TUI_IS_CYPRESS = new InjectionToken(`Detect if app is running under Cypress`, {
107
107
  factory: () => !!inject(WINDOW).Cypress,
108
108
  });
109
109
 
110
- const TUI_IS_FIREFOX = new InjectionToken('Firefox browser engine detection', {
110
+ const TUI_IS_FIREFOX = new InjectionToken(`Firefox browser engine detection`, {
111
111
  factory: () => {
112
112
  var _a;
113
- return typeof ((_a = inject(WINDOW)) === null || _a === void 0 ? void 0 : _a.mozCancelFullScreen) !== 'undefined';
113
+ return typeof ((_a = inject(WINDOW)) === null || _a === void 0 ? void 0 : _a.mozCancelFullScreen) !== `undefined`;
114
114
  },
115
115
  });
116
116
 
117
- const TUI_IS_WEBKIT = new InjectionToken('Webkit browser engine detection', {
117
+ const TUI_IS_WEBKIT = new InjectionToken(`Webkit browser engine detection`, {
118
118
  factory: () => !!inject(WINDOW).webkitConvertPointFromNodeToPage,
119
119
  });
120
120
 
121
121
  /* @deprecated export token from @taiga-ui/core package **/
122
- const TUI_SANITIZER = new InjectionToken('A custom Sanitizer to sanitize source before inlining');
122
+ const TUI_SANITIZER = new InjectionToken(`A custom Sanitizer to sanitize source before inlining`);
123
123
 
124
- const TUI_SWIPE_OPTIONS = new InjectionToken('Swipe options', {
124
+ const TUI_SWIPE_OPTIONS = new InjectionToken(`Swipe options`, {
125
125
  factory: () => ({ timeout: 500, threshold: 30 }),
126
126
  });
127
127
 
@@ -131,22 +131,22 @@ const TUI_SWIPE_OPTIONS = new InjectionToken('Swipe options', {
131
131
  * when the event was generated by a user action, and false when the event was created or
132
132
  * modified by a script or dispatched via EventTarget.dispatchEvent().
133
133
  */
134
- const TUI_TAKE_ONLY_TRUSTED_EVENTS = new InjectionToken('This token need for override behavior the `pressedObservable` function', {
134
+ const TUI_TAKE_ONLY_TRUSTED_EVENTS = new InjectionToken(`This token need for override behavior the \`pressedObservable\` function`, {
135
135
  factory: () => true,
136
136
  });
137
137
 
138
- const TUI_TOUCH_SUPPORTED = new InjectionToken('Touch support detection', {
139
- factory: () => inject(WINDOW).matchMedia('(any-pointer: coarse)').matches,
138
+ const TUI_TOUCH_SUPPORTED = new InjectionToken(`Touch support detection`, {
139
+ factory: () => inject(WINDOW).matchMedia(`(any-pointer: coarse)`).matches,
140
140
  });
141
141
 
142
- const TUI_WINDOW_HEIGHT = new InjectionToken('Window height accounting for disappearing address bar', {
142
+ const TUI_WINDOW_HEIGHT = new InjectionToken(`Window height accounting for disappearing address bar`, {
143
143
  factory: () => {
144
144
  const windowRef = inject(WINDOW);
145
- return typedFromEvent(windowRef, 'resize').pipe(startWith(null), map(() => windowRef.innerHeight), shareReplay({ bufferSize: 1, refCount: true }));
145
+ return typedFromEvent(windowRef, `resize`).pipe(startWith(null), map(() => windowRef.innerHeight), shareReplay({ bufferSize: 1, refCount: true }));
146
146
  },
147
147
  });
148
148
 
149
- const TUI_ZOOM_OPTIONS = new InjectionToken('Zoom options', {
149
+ const TUI_ZOOM_OPTIONS = new InjectionToken(`Zoom options`, {
150
150
  factory: () => ({
151
151
  wheelSensitivity: 0.01,
152
152
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-tokens.js","sources":["ng://@taiga-ui/cdk/tokens/removed-element.ts","ng://@taiga-ui/cdk/tokens/active-element.ts","ng://@taiga-ui/cdk/tokens/alerts.ts","ng://@taiga-ui/cdk/tokens/default-renderer.ts","ng://@taiga-ui/cdk/tokens/dialogs.ts","ng://@taiga-ui/cdk/tokens/focusable-item-accessor.ts","ng://@taiga-ui/cdk/tokens/is-ios.ts","ng://@taiga-ui/cdk/tokens/is-mobile.ts","ng://@taiga-ui/cdk/tokens/is-android.ts","ng://@taiga-ui/cdk/tokens/is-apple.ts","ng://@taiga-ui/cdk/tokens/is-chromium.ts","ng://@taiga-ui/cdk/tokens/is-cypress.ts","ng://@taiga-ui/cdk/tokens/is-firefox.ts","ng://@taiga-ui/cdk/tokens/is-webkit.ts","ng://@taiga-ui/cdk/tokens/sanitizer.ts","ng://@taiga-ui/cdk/tokens/swipe-options.ts","ng://@taiga-ui/cdk/tokens/take-only-trusted-events.ts","ng://@taiga-ui/cdk/tokens/touch-supported.ts","ng://@taiga-ui/cdk/tokens/window-height.ts","ng://@taiga-ui/cdk/tokens/zoom-options.ts","ng://@taiga-ui/cdk/tokens/taiga-ui-cdk-tokens.ts"],"sourcesContent":["import {ɵAnimationEngine} from '@angular/animations/browser';\nimport {inject, InjectFlags, InjectionToken} from '@angular/core';\nimport {BehaviorSubject, Observable, timer} from 'rxjs';\nimport {mapTo, share, startWith, switchMap} from 'rxjs/operators';\n\nexport const TUI_REMOVED_ELEMENT = new InjectionToken<Observable<Element | null>>(\n 'Element currently being removed by AnimationEngine',\n {\n factory: () => {\n const stub = {onRemovalComplete: () => {}};\n const element$ = new BehaviorSubject<Element | null>(null);\n const engine = inject(ɵAnimationEngine, InjectFlags.Optional) ?? stub;\n const {onRemovalComplete = stub.onRemovalComplete} = engine;\n\n engine.onRemovalComplete = (element, context) => {\n element$.next(element);\n onRemovalComplete(element, context);\n };\n\n return element$.pipe(\n switchMap(element => timer(0).pipe(mapTo(null), startWith(element))),\n share(),\n );\n },\n },\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {getActualTarget, getDocumentOrShadowRoot} from '@taiga-ui/cdk/utils';\nimport {merge, Observable, of, timer} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n mapTo,\n repeatWhen,\n share,\n startWith,\n switchMap,\n take,\n takeUntil,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {TUI_REMOVED_ELEMENT} from './removed-element';\n\nexport const TUI_ACTIVE_ELEMENT = new InjectionToken<Observable<EventTarget | null>>(\n 'Active element on the document for ActiveZone',\n {\n factory: () => {\n const removedElement$ = inject(TUI_REMOVED_ELEMENT);\n const windowRef = inject(WINDOW);\n const documentRef = inject(DOCUMENT);\n const focusout$ = typedFromEvent(windowRef, 'focusout');\n const focusin$ = typedFromEvent(windowRef, 'focusin');\n const blur$ = typedFromEvent(windowRef, 'blur');\n const mousedown$ = typedFromEvent(windowRef, 'mousedown');\n const mouseup$ = typedFromEvent(windowRef, 'mouseup');\n\n return merge(\n focusout$.pipe(\n // eslint-disable-next-line rxjs/no-unsafe-takeuntil\n takeUntil(mousedown$),\n // eslint-disable-next-line rxjs/no-ignored-notifier\n repeatWhen(() => mouseup$),\n withLatestFrom(removedElement$),\n filter(([event, removedElement]) =>\n isValidFocusout(getActualTarget(event), removedElement),\n ),\n map(([{relatedTarget}]) => relatedTarget),\n ),\n blur$.pipe(\n map(() => documentRef.activeElement),\n filter(element => !!element && element.matches('iframe')),\n ),\n focusin$.pipe(\n switchMap(event => {\n const target = getActualTarget(event);\n const root = getDocumentOrShadowRoot(target) as Document;\n\n return root === documentRef\n ? of(target)\n : shadowRootActiveElement(root).pipe(startWith(target));\n }),\n ),\n mousedown$.pipe(\n switchMap(event =>\n !documentRef.activeElement ||\n documentRef.activeElement === documentRef.body\n ? of(getActualTarget(event))\n : focusout$.pipe(\n take(1),\n mapTo(getActualTarget(event)),\n takeUntil(timer(0)),\n ),\n ),\n ),\n ).pipe(distinctUntilChanged(), share());\n },\n },\n);\n\n// Checks if focusout event should be considered leaving active zone\nfunction isValidFocusout(target: any, removedElement: Element | null = null): boolean {\n return (\n // Not due to switching tabs/going to DevTools\n getDocumentOrShadowRoot(target).activeElement !== target &&\n // Not due to button/input becoming disabled\n !target.disabled &&\n // Not due to element being removed from DOM\n (!removedElement || !removedElement.contains(target))\n );\n}\n\nfunction shadowRootActiveElement(root: Document): Observable<EventTarget | null> {\n return merge(\n typedFromEvent(root, 'focusin').pipe(map(({target}) => target)),\n typedFromEvent(root, 'focusout').pipe(\n filter(\n ({target, relatedTarget}) => !!relatedTarget && isValidFocusout(target),\n ),\n map(({relatedTarget}) => relatedTarget),\n ),\n );\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiAriaDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {Observable} from 'rxjs';\n\nexport const TUI_ALERTS = new InjectionToken<\n ReadonlyArray<Observable<readonly TuiAriaDialogContext[]>>\n>('A stream of alerts', {\n factory: () => [],\n});\n","import {inject, InjectionToken, Renderer2, RendererFactory2} from '@angular/core';\n\n// https://github.com/angular/angular/issues/17824#issuecomment-353239017\nexport const TUI_DEFAULT_RENDERER = new InjectionToken<Renderer2>(\n 'A Renderer2 for global services',\n {\n // @ts-ignore\n factory: () => inject(RendererFactory2).createRenderer(null, null),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiAriaDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {Observable} from 'rxjs';\n\nexport const TUI_DIALOGS = new InjectionToken<\n ReadonlyArray<Observable<readonly TuiAriaDialogContext[]>>\n>('A stream of dialogs', {\n factory: () => [],\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiFocusableElementAccessor} from '@taiga-ui/cdk/interfaces';\n\nexport const TUI_FOCUSABLE_ITEM_ACCESSOR =\n new InjectionToken<TuiFocusableElementAccessor>('A component that can be focused');\n","import {inject, InjectionToken} from '@angular/core';\nimport {NAVIGATOR} from '@ng-web-apis/common';\nimport {isIos} from '@taiga-ui/cdk/utils';\n\nexport const TUI_IS_IOS = new InjectionToken<boolean>('iOS browser detection', {\n factory: () => isIos(inject(NAVIGATOR)),\n});\n","import {inject, InjectionToken} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\n\n// https://stackoverflow.com/a/11381730/2706426 http://detectmobilebrowsers.com/\nconst firstRegex =\n /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/;\nconst secondRegex =\n /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/;\n\nexport const TUI_IS_MOBILE = new InjectionToken<boolean>('Mobile browser detection', {\n factory: () =>\n firstRegex.test(inject(USER_AGENT).toLowerCase()) ||\n secondRegex.test(inject(USER_AGENT).slice(0, 4).toLowerCase()),\n});\n","import {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_IS_IOS} from './is-ios';\nimport {TUI_IS_MOBILE} from './is-mobile';\n\nexport const TUI_IS_ANDROID = new InjectionToken<boolean>(\n 'Mobile browser that is not iOS (technically includes Windows Phone, Blackberry etc.)',\n {\n factory: () => inject(TUI_IS_MOBILE) && !inject(TUI_IS_IOS),\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {NAVIGATOR} from '@ng-web-apis/common';\nimport {isApple} from '@taiga-ui/cdk/utils';\n\nexport const TUI_IS_APPLE = new InjectionToken<boolean>(\n 'Apple(safari/webkit) detection',\n {factory: () => isApple(inject(NAVIGATOR))},\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_IS_CHROMIUM = new InjectionToken<boolean>(\n 'Chromium browser engine detection',\n {\n factory: () => !!(inject(WINDOW) as Window & {chrome: unknown}).chrome,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface WindowWithCypress extends Window {\n Cypress?: unknown;\n}\n\n/**\n * {@link https://docs.cypress.io/faq/questions/using-cypress-faq#Is-there-any-way-to-detect-if-my-app-is-running-under-Cypress Cypress docs}\n */\nexport const TUI_IS_CYPRESS = new InjectionToken<boolean>(\n 'Detect if app is running under Cypress',\n {\n factory: () => !!inject<WindowWithCypress>(WINDOW).Cypress,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_IS_FIREFOX = new InjectionToken<boolean>(\n 'Firefox browser engine detection',\n {\n factory: () =>\n typeof (inject(WINDOW) as Window & {mozCancelFullScreen: unknown})\n ?.mozCancelFullScreen !== 'undefined',\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_IS_WEBKIT = new InjectionToken<boolean>(\n 'Webkit browser engine detection',\n {\n factory: () => !!inject(WINDOW).webkitConvertPointFromNodeToPage,\n },\n);\n","import {InjectionToken, Sanitizer} from '@angular/core';\n\n/* @deprecated export token from @taiga-ui/core package **/\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(\n 'A custom Sanitizer to sanitize source before inlining',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiSwipeOptions} from '@taiga-ui/cdk/interfaces';\n\nexport const TUI_SWIPE_OPTIONS = new InjectionToken<TuiSwipeOptions>('Swipe options', {\n factory: () => ({timeout: 500, threshold: 30}),\n});\n","import {InjectionToken} from '@angular/core';\n\n/**\n * @description:\n * The isTrusted read-only property of the Event interface is a boolean value that is true\n * when the event was generated by a user action, and false when the event was created or\n * modified by a script or dispatched via EventTarget.dispatchEvent().\n */\nexport const TUI_TAKE_ONLY_TRUSTED_EVENTS: InjectionToken<boolean> =\n new InjectionToken<boolean>(\n 'This token need for override behavior the `pressedObservable` function',\n {\n factory: () => true,\n },\n );\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_TOUCH_SUPPORTED = new InjectionToken('Touch support detection', {\n factory: () => inject(WINDOW).matchMedia('(any-pointer: coarse)').matches,\n});\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {Observable} from 'rxjs';\nimport {map, shareReplay, startWith} from 'rxjs/operators';\n\nexport const TUI_WINDOW_HEIGHT = new InjectionToken<Observable<number>>(\n 'Window height accounting for disappearing address bar',\n {\n factory: () => {\n const windowRef = inject(WINDOW);\n\n return typedFromEvent(windowRef, 'resize').pipe(\n startWith(null),\n map(() => windowRef.innerHeight),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiZoomOptions} from '@taiga-ui/cdk/interfaces';\n\nexport const TUI_ZOOM_OPTIONS = new InjectionToken<TuiZoomOptions>('Zoom options', {\n factory: () => ({\n wheelSensitivity: 0.01,\n }),\n});\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-cdk-tokens.js","sources":["ng://@taiga-ui/cdk/tokens/removed-element.ts","ng://@taiga-ui/cdk/tokens/active-element.ts","ng://@taiga-ui/cdk/tokens/alerts.ts","ng://@taiga-ui/cdk/tokens/default-renderer.ts","ng://@taiga-ui/cdk/tokens/dialogs.ts","ng://@taiga-ui/cdk/tokens/focusable-item-accessor.ts","ng://@taiga-ui/cdk/tokens/is-ios.ts","ng://@taiga-ui/cdk/tokens/is-mobile.ts","ng://@taiga-ui/cdk/tokens/is-android.ts","ng://@taiga-ui/cdk/tokens/is-apple.ts","ng://@taiga-ui/cdk/tokens/is-chromium.ts","ng://@taiga-ui/cdk/tokens/is-cypress.ts","ng://@taiga-ui/cdk/tokens/is-firefox.ts","ng://@taiga-ui/cdk/tokens/is-webkit.ts","ng://@taiga-ui/cdk/tokens/sanitizer.ts","ng://@taiga-ui/cdk/tokens/swipe-options.ts","ng://@taiga-ui/cdk/tokens/take-only-trusted-events.ts","ng://@taiga-ui/cdk/tokens/touch-supported.ts","ng://@taiga-ui/cdk/tokens/window-height.ts","ng://@taiga-ui/cdk/tokens/zoom-options.ts","ng://@taiga-ui/cdk/tokens/taiga-ui-cdk-tokens.ts"],"sourcesContent":["import {ɵAnimationEngine} from '@angular/animations/browser';\nimport {inject, InjectFlags, InjectionToken} from '@angular/core';\nimport {BehaviorSubject, Observable, timer} from 'rxjs';\nimport {mapTo, share, startWith, switchMap} from 'rxjs/operators';\n\nexport const TUI_REMOVED_ELEMENT = new InjectionToken<Observable<Element | null>>(\n `Element currently being removed by AnimationEngine`,\n {\n factory: () => {\n const stub = {onRemovalComplete: () => {}};\n const element$ = new BehaviorSubject<Element | null>(null);\n const engine = inject(ɵAnimationEngine, InjectFlags.Optional) ?? stub;\n const {onRemovalComplete = stub.onRemovalComplete} = engine;\n\n engine.onRemovalComplete = (element, context) => {\n element$.next(element);\n onRemovalComplete(element, context);\n };\n\n return element$.pipe(\n switchMap(element => timer(0).pipe(mapTo(null), startWith(element))),\n share(),\n );\n },\n },\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {getActualTarget, getDocumentOrShadowRoot} from '@taiga-ui/cdk/utils';\nimport {merge, Observable, of, timer} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n mapTo,\n repeatWhen,\n share,\n startWith,\n switchMap,\n take,\n takeUntil,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {TUI_REMOVED_ELEMENT} from './removed-element';\n\nexport const TUI_ACTIVE_ELEMENT = new InjectionToken<Observable<EventTarget | null>>(\n `Active element on the document for ActiveZone`,\n {\n factory: () => {\n const removedElement$ = inject(TUI_REMOVED_ELEMENT);\n const windowRef = inject(WINDOW);\n const documentRef = inject(DOCUMENT);\n const focusout$ = typedFromEvent(windowRef, `focusout`);\n const focusin$ = typedFromEvent(windowRef, `focusin`);\n const blur$ = typedFromEvent(windowRef, `blur`);\n const mousedown$ = typedFromEvent(windowRef, `mousedown`);\n const mouseup$ = typedFromEvent(windowRef, `mouseup`);\n\n return merge(\n focusout$.pipe(\n // eslint-disable-next-line rxjs/no-unsafe-takeuntil\n takeUntil(mousedown$),\n // eslint-disable-next-line rxjs/no-ignored-notifier\n repeatWhen(() => mouseup$),\n withLatestFrom(removedElement$),\n filter(([event, removedElement]) =>\n isValidFocusout(getActualTarget(event), removedElement),\n ),\n map(([{relatedTarget}]) => relatedTarget),\n ),\n blur$.pipe(\n map(() => documentRef.activeElement),\n filter(element => !!element && element.matches(`iframe`)),\n ),\n focusin$.pipe(\n switchMap(event => {\n const target = getActualTarget(event);\n const root = getDocumentOrShadowRoot(target) as Document;\n\n return root === documentRef\n ? of(target)\n : shadowRootActiveElement(root).pipe(startWith(target));\n }),\n ),\n mousedown$.pipe(\n switchMap(event =>\n !documentRef.activeElement ||\n documentRef.activeElement === documentRef.body\n ? of(getActualTarget(event))\n : focusout$.pipe(\n take(1),\n mapTo(getActualTarget(event)),\n takeUntil(timer(0)),\n ),\n ),\n ),\n ).pipe(distinctUntilChanged(), share());\n },\n },\n);\n\n// Checks if focusout event should be considered leaving active zone\nfunction isValidFocusout(target: any, removedElement: Element | null = null): boolean {\n return (\n // Not due to switching tabs/going to DevTools\n getDocumentOrShadowRoot(target).activeElement !== target &&\n // Not due to button/input becoming disabled\n !target.disabled &&\n // Not due to element being removed from DOM\n (!removedElement || !removedElement.contains(target))\n );\n}\n\nfunction shadowRootActiveElement(root: Document): Observable<EventTarget | null> {\n return merge(\n typedFromEvent(root, `focusin`).pipe(map(({target}) => target)),\n typedFromEvent(root, `focusout`).pipe(\n filter(\n ({target, relatedTarget}) => !!relatedTarget && isValidFocusout(target),\n ),\n map(({relatedTarget}) => relatedTarget),\n ),\n );\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiAriaDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {Observable} from 'rxjs';\n\nexport const TUI_ALERTS = new InjectionToken<\n ReadonlyArray<Observable<readonly TuiAriaDialogContext[]>>\n>(`A stream of alerts`, {\n factory: () => [],\n});\n","import {inject, InjectionToken, Renderer2, RendererFactory2} from '@angular/core';\n\n// https://github.com/angular/angular/issues/17824#issuecomment-353239017\nexport const TUI_DEFAULT_RENDERER = new InjectionToken<Renderer2>(\n `A Renderer2 for global services`,\n {\n // @ts-ignore\n factory: () => inject(RendererFactory2).createRenderer(null, null),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiAriaDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {Observable} from 'rxjs';\n\nexport const TUI_DIALOGS = new InjectionToken<\n ReadonlyArray<Observable<readonly TuiAriaDialogContext[]>>\n>(`A stream of dialogs`, {\n factory: () => [],\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiFocusableElementAccessor} from '@taiga-ui/cdk/interfaces';\n\nexport const TUI_FOCUSABLE_ITEM_ACCESSOR =\n new InjectionToken<TuiFocusableElementAccessor>(`A component that can be focused`);\n","import {inject, InjectionToken} from '@angular/core';\nimport {NAVIGATOR} from '@ng-web-apis/common';\nimport {isIos} from '@taiga-ui/cdk/utils';\n\nexport const TUI_IS_IOS = new InjectionToken<boolean>(`iOS browser detection`, {\n factory: () => isIos(inject(NAVIGATOR)),\n});\n","import {inject, InjectionToken} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\n\n// https://stackoverflow.com/a/11381730/2706426 http://detectmobilebrowsers.com/\nconst firstRegex =\n /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/;\nconst secondRegex =\n /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/;\n\nexport const TUI_IS_MOBILE = new InjectionToken<boolean>(`Mobile browser detection`, {\n factory: () =>\n firstRegex.test(inject(USER_AGENT).toLowerCase()) ||\n secondRegex.test(inject(USER_AGENT).slice(0, 4).toLowerCase()),\n});\n","import {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_IS_IOS} from './is-ios';\nimport {TUI_IS_MOBILE} from './is-mobile';\n\nexport const TUI_IS_ANDROID = new InjectionToken<boolean>(\n `Mobile browser that is not iOS (technically includes Windows Phone, Blackberry etc.)`,\n {\n factory: () => inject(TUI_IS_MOBILE) && !inject(TUI_IS_IOS),\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {NAVIGATOR} from '@ng-web-apis/common';\nimport {isApple} from '@taiga-ui/cdk/utils';\n\nexport const TUI_IS_APPLE = new InjectionToken<boolean>(\n `Apple(safari/webkit) detection`,\n {factory: () => isApple(inject(NAVIGATOR))},\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_IS_CHROMIUM = new InjectionToken<boolean>(\n `Chromium browser engine detection`,\n {\n factory: () => !!(inject(WINDOW) as Window & {chrome: unknown}).chrome,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface WindowWithCypress extends Window {\n Cypress?: unknown;\n}\n\n/**\n * {@link https://docs.cypress.io/faq/questions/using-cypress-faq#Is-there-any-way-to-detect-if-my-app-is-running-under-Cypress Cypress docs}\n */\nexport const TUI_IS_CYPRESS = new InjectionToken<boolean>(\n `Detect if app is running under Cypress`,\n {\n factory: () => !!inject<WindowWithCypress>(WINDOW).Cypress,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_IS_FIREFOX = new InjectionToken<boolean>(\n `Firefox browser engine detection`,\n {\n factory: () =>\n typeof (inject(WINDOW) as Window & {mozCancelFullScreen: unknown})\n ?.mozCancelFullScreen !== `undefined`,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_IS_WEBKIT = new InjectionToken<boolean>(\n `Webkit browser engine detection`,\n {\n factory: () => !!inject(WINDOW).webkitConvertPointFromNodeToPage,\n },\n);\n","import {InjectionToken, Sanitizer} from '@angular/core';\n\n/* @deprecated export token from @taiga-ui/core package **/\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(\n `A custom Sanitizer to sanitize source before inlining`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiSwipeOptions} from '@taiga-ui/cdk/interfaces';\n\nexport const TUI_SWIPE_OPTIONS = new InjectionToken<TuiSwipeOptions>(`Swipe options`, {\n factory: () => ({timeout: 500, threshold: 30}),\n});\n","import {InjectionToken} from '@angular/core';\n\n/**\n * @description:\n * The isTrusted read-only property of the Event interface is a boolean value that is true\n * when the event was generated by a user action, and false when the event was created or\n * modified by a script or dispatched via EventTarget.dispatchEvent().\n */\nexport const TUI_TAKE_ONLY_TRUSTED_EVENTS: InjectionToken<boolean> =\n new InjectionToken<boolean>(\n `This token need for override behavior the \\`pressedObservable\\` function`,\n {\n factory: () => true,\n },\n );\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\n\nexport const TUI_TOUCH_SUPPORTED = new InjectionToken(`Touch support detection`, {\n factory: () => inject(WINDOW).matchMedia(`(any-pointer: coarse)`).matches,\n});\n","import {inject, InjectionToken} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {typedFromEvent} from '@taiga-ui/cdk/observables';\nimport {Observable} from 'rxjs';\nimport {map, shareReplay, startWith} from 'rxjs/operators';\n\nexport const TUI_WINDOW_HEIGHT = new InjectionToken<Observable<number>>(\n `Window height accounting for disappearing address bar`,\n {\n factory: () => {\n const windowRef = inject(WINDOW);\n\n return typedFromEvent(windowRef, `resize`).pipe(\n startWith(null),\n map(() => windowRef.innerHeight),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiZoomOptions} from '@taiga-ui/cdk/interfaces';\n\nexport const TUI_ZOOM_OPTIONS = new InjectionToken<TuiZoomOptions>(`Zoom options`, {\n factory: () => ({\n wheelSensitivity: 0.01,\n }),\n});\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}