@taiga-ui/cdk 3.60.0 → 3.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/bundles/taiga-ui-cdk-abstract.umd.js +971 -1117
  2. package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-cdk-coercion.umd.js +1 -1
  4. package/bundles/taiga-ui-cdk-coercion.umd.js.map +1 -1
  5. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js +505 -651
  6. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js.map +1 -1
  7. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js +404 -550
  8. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js.map +1 -1
  9. package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js +590 -736
  10. package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js.map +1 -1
  11. package/bundles/taiga-ui-cdk-constants.umd.js +80 -80
  12. package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
  13. package/bundles/taiga-ui-cdk-date-time.umd.js +33 -179
  14. package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-decorators.umd.js +10 -156
  16. package/bundles/taiga-ui-cdk-decorators.umd.js.map +1 -1
  17. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js +434 -580
  18. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js.map +1 -1
  19. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js +706 -852
  20. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js.map +1 -1
  21. package/bundles/taiga-ui-cdk-directives-for-async.umd.js +426 -572
  22. package/bundles/taiga-ui-cdk-directives-for-async.umd.js.map +1 -1
  23. package/bundles/taiga-ui-cdk-directives-hovered.umd.js +410 -556
  24. package/bundles/taiga-ui-cdk-directives-hovered.umd.js.map +1 -1
  25. package/bundles/taiga-ui-cdk-directives-resizer.umd.js +482 -628
  26. package/bundles/taiga-ui-cdk-directives-resizer.umd.js.map +1 -1
  27. package/bundles/taiga-ui-cdk-exceptions.umd.js +426 -572
  28. package/bundles/taiga-ui-cdk-exceptions.umd.js.map +1 -1
  29. package/bundles/taiga-ui-cdk-observables.umd.js +9 -9
  30. package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
  31. package/bundles/taiga-ui-cdk-pipes-filter.umd.js +373 -519
  32. package/bundles/taiga-ui-cdk-pipes-filter.umd.js.map +1 -1
  33. package/bundles/taiga-ui-cdk-pipes-is-present.umd.js +1 -1
  34. package/bundles/taiga-ui-cdk-pipes-is-present.umd.js.map +1 -1
  35. package/bundles/taiga-ui-cdk-pipes-keys.umd.js +1 -1
  36. package/bundles/taiga-ui-cdk-pipes-keys.umd.js.map +1 -1
  37. package/bundles/taiga-ui-cdk-pipes-mapper.umd.js +373 -519
  38. package/bundles/taiga-ui-cdk-pipes-mapper.umd.js.map +1 -1
  39. package/bundles/taiga-ui-cdk-pipes-replace.umd.js +2 -2
  40. package/bundles/taiga-ui-cdk-pipes-replace.umd.js.map +1 -1
  41. package/bundles/taiga-ui-cdk-services.umd.js +841 -984
  42. package/bundles/taiga-ui-cdk-services.umd.js.map +1 -1
  43. package/bundles/taiga-ui-cdk-tokens.umd.js +650 -796
  44. package/bundles/taiga-ui-cdk-tokens.umd.js.map +1 -1
  45. package/bundles/taiga-ui-cdk-utils-browser.umd.js +8 -8
  46. package/bundles/taiga-ui-cdk-utils-browser.umd.js.map +1 -1
  47. package/bundles/taiga-ui-cdk-utils-color.umd.js +26 -172
  48. package/bundles/taiga-ui-cdk-utils-color.umd.js.map +1 -1
  49. package/bundles/taiga-ui-cdk-utils-dom.umd.js +11 -11
  50. package/bundles/taiga-ui-cdk-utils-dom.umd.js.map +1 -1
  51. package/bundles/taiga-ui-cdk-utils-focus.umd.js +19 -19
  52. package/bundles/taiga-ui-cdk-utils-focus.umd.js.map +1 -1
  53. package/bundles/taiga-ui-cdk-utils-format.umd.js +1 -1
  54. package/bundles/taiga-ui-cdk-utils-format.umd.js.map +1 -1
  55. package/bundles/taiga-ui-cdk-utils-math.umd.js +7 -7
  56. package/bundles/taiga-ui-cdk-utils-math.umd.js.map +1 -1
  57. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js +21 -167
  58. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js.map +1 -1
  59. package/bundles/taiga-ui-cdk-utils-os.umd.js +1 -1
  60. package/bundles/taiga-ui-cdk-utils-os.umd.js.map +1 -1
  61. package/bundles/taiga-ui-cdk-utils-svg.umd.js +11 -11
  62. package/bundles/taiga-ui-cdk-utils-svg.umd.js.map +1 -1
  63. package/constants/version.d.ts +1 -1
  64. package/constants/version.js +1 -1
  65. package/esm2015/abstract/control.js +4 -4
  66. package/esm2015/abstract/interactive.js +7 -7
  67. package/esm2015/abstract/portal-host.js +2 -2
  68. package/esm2015/abstract/theme-switcher.js +2 -2
  69. package/esm2015/coercion/coerce-boolean-property.js +2 -2
  70. package/esm2015/components/dropdown-host/dropdown-portal.service.js +3 -3
  71. package/esm2015/constants/parent-animation.js +4 -4
  72. package/esm2015/constants/svg-node-filter.js +2 -2
  73. package/esm2015/constants/unicode-chars.js +13 -13
  74. package/esm2015/constants/used-icons.js +64 -64
  75. package/esm2015/constants/version.js +2 -2
  76. package/esm2015/date-time/date-format.js +2 -2
  77. package/esm2015/date-time/date-separator.js +2 -2
  78. package/esm2015/date-time/day-range.js +3 -3
  79. package/esm2015/date-time/day.js +14 -14
  80. package/esm2015/date-time/month.js +2 -2
  81. package/esm2015/date-time/time.js +7 -7
  82. package/esm2015/date-time/year.js +2 -2
  83. package/esm2015/decorators/pure.js +5 -5
  84. package/esm2015/directives/auto-focus/autofocus.options.js +2 -2
  85. package/esm2015/directives/auto-focus/handlers/abstract.handler.js +2 -2
  86. package/esm2015/directives/auto-focus/handlers/default.handler.js +2 -2
  87. package/esm2015/directives/auto-focus/handlers/ios.handler.js +28 -28
  88. package/esm2015/directives/hovered/hovered.service.js +3 -3
  89. package/esm2015/exceptions/computed-document.exception.js +2 -2
  90. package/esm2015/exceptions/document-selection.exception.js +2 -2
  91. package/esm2015/exceptions/invalid-day.exception.js +2 -2
  92. package/esm2015/exceptions/invalid-month.exception.js +2 -2
  93. package/esm2015/exceptions/invalid-year.exception.js +2 -2
  94. package/esm2015/exceptions/no-host.exception.js +2 -2
  95. package/esm2015/exceptions/owner-document.exception.js +2 -2
  96. package/esm2015/exceptions/pure.exception.js +2 -2
  97. package/esm2015/exceptions/table-sort-key.exception.js +2 -2
  98. package/esm2015/exceptions/ts-parser.exception.js +2 -2
  99. package/esm2015/exceptions/value-changes.exception.js +2 -2
  100. package/esm2015/exceptions/value-present.exception.js +2 -2
  101. package/esm2015/exceptions/xml-parsing.exception.js +2 -2
  102. package/esm2015/observables/drag-and-drop-from.js +2 -2
  103. package/esm2015/observables/focus-visible-observable.js +5 -5
  104. package/esm2015/observables/is-observed.js +2 -2
  105. package/esm2015/observables/mouse-drag-finish-from.js +2 -2
  106. package/esm2015/observables/pressed-observable.js +2 -2
  107. package/esm2015/observables/scroll-from.js +2 -2
  108. package/esm2015/pipes/filter/filter.pipe.js +2 -2
  109. package/esm2015/pipes/is-present/is-present.pipe.js +2 -2
  110. package/esm2015/pipes/keys/keys.pipe.js +2 -2
  111. package/esm2015/pipes/mapper/mapper.pipe.js +2 -2
  112. package/esm2015/pipes/replace/replace.pipe.js +3 -3
  113. package/esm2015/services/directive-styles.service.js +6 -3
  114. package/esm2015/services/id.service.js +4 -4
  115. package/esm2015/services/obscured.service.js +2 -2
  116. package/esm2015/services/pan.service.js +5 -5
  117. package/esm2015/services/parents-scroll.service.js +2 -2
  118. package/esm2015/services/scroll.service.js +8 -8
  119. package/esm2015/services/static-request.service.js +4 -4
  120. package/esm2015/services/swipe.service.js +2 -2
  121. package/esm2015/services/zoom.service.js +3 -3
  122. package/esm2015/tokens/active-element.js +9 -9
  123. package/esm2015/tokens/base-href.js +2 -2
  124. package/esm2015/tokens/ensure-base-href.js +4 -4
  125. package/esm2015/tokens/focusable-item-accessor.js +2 -2
  126. package/esm2015/tokens/fonts-ready.js +2 -2
  127. package/esm2015/tokens/is-firefox.js +2 -2
  128. package/esm2015/tokens/is-stackblitz.js +2 -2
  129. package/esm2015/tokens/platform.js +5 -5
  130. package/esm2015/tokens/touch-supported.js +2 -2
  131. package/esm2015/tokens/window-size.js +5 -5
  132. package/esm2015/utils/browser/is-edge-older-than.js +2 -2
  133. package/esm2015/utils/browser/is-edge.js +2 -2
  134. package/esm2015/utils/browser/is-firefox.js +2 -2
  135. package/esm2015/utils/browser/is-safari.js +6 -6
  136. package/esm2015/utils/color/hex-to-rgb.js +4 -4
  137. package/esm2015/utils/color/hex-to-rgba.js +5 -5
  138. package/esm2015/utils/color/parse-color.js +7 -7
  139. package/esm2015/utils/color/rgb-to-hex.js +2 -2
  140. package/esm2015/utils/color/rgba-to-hex.js +7 -7
  141. package/esm2015/utils/dom/element-checks.js +4 -4
  142. package/esm2015/utils/dom/get-clipboard-data-text.js +4 -4
  143. package/esm2015/utils/dom/get-document-or-shadow-root.js +2 -2
  144. package/esm2015/utils/dom/get-element-offset.js +2 -2
  145. package/esm2015/utils/dom/retarget-boundary-crossing.js +4 -4
  146. package/esm2015/utils/focus/is-native-keyboard-focusable.js +14 -14
  147. package/esm2015/utils/focus/is-native-mouse-focusable.js +3 -3
  148. package/esm2015/utils/focus/set-native-mouse-focused.js +5 -5
  149. package/esm2015/utils/format/px.js +2 -2
  150. package/esm2015/utils/math/round-with.js +4 -4
  151. package/esm2015/utils/math/round.js +5 -5
  152. package/esm2015/utils/miscellaneous/clean-object.js +2 -2
  153. package/esm2015/utils/miscellaneous/create-token.js +2 -2
  154. package/esm2015/utils/miscellaneous/ease-in-out-quad.js +2 -2
  155. package/esm2015/utils/miscellaneous/get-swipe-direction.js +3 -3
  156. package/esm2015/utils/miscellaneous/is-number.js +2 -2
  157. package/esm2015/utils/miscellaneous/is-object.js +2 -2
  158. package/esm2015/utils/miscellaneous/is-string.js +2 -2
  159. package/esm2015/utils/miscellaneous/is-valid-url.js +8 -8
  160. package/esm2015/utils/os/is-apple-platform.js +2 -2
  161. package/esm2015/utils/svg/svg-linear-gradient-processor.js +12 -12
  162. package/fesm2015/taiga-ui-cdk-abstract.js +11 -11
  163. package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
  164. package/fesm2015/taiga-ui-cdk-coercion.js +1 -1
  165. package/fesm2015/taiga-ui-cdk-coercion.js.map +1 -1
  166. package/fesm2015/taiga-ui-cdk-components-dropdown-host.js +2 -2
  167. package/fesm2015/taiga-ui-cdk-components-dropdown-host.js.map +1 -1
  168. package/fesm2015/taiga-ui-cdk-constants.js +80 -80
  169. package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
  170. package/fesm2015/taiga-ui-cdk-date-time.js +25 -25
  171. package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
  172. package/fesm2015/taiga-ui-cdk-decorators.js +4 -4
  173. package/fesm2015/taiga-ui-cdk-decorators.js.map +1 -1
  174. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js +30 -30
  175. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
  176. package/fesm2015/taiga-ui-cdk-directives-hovered.js +2 -2
  177. package/fesm2015/taiga-ui-cdk-directives-hovered.js.map +1 -1
  178. package/fesm2015/taiga-ui-cdk-exceptions.js +13 -13
  179. package/fesm2015/taiga-ui-cdk-exceptions.js.map +1 -1
  180. package/fesm2015/taiga-ui-cdk-observables.js +9 -9
  181. package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
  182. package/fesm2015/taiga-ui-cdk-pipes-filter.js +1 -1
  183. package/fesm2015/taiga-ui-cdk-pipes-filter.js.map +1 -1
  184. package/fesm2015/taiga-ui-cdk-pipes-is-present.js +1 -1
  185. package/fesm2015/taiga-ui-cdk-pipes-is-present.js.map +1 -1
  186. package/fesm2015/taiga-ui-cdk-pipes-keys.js +1 -1
  187. package/fesm2015/taiga-ui-cdk-pipes-keys.js.map +1 -1
  188. package/fesm2015/taiga-ui-cdk-pipes-mapper.js +1 -1
  189. package/fesm2015/taiga-ui-cdk-pipes-mapper.js.map +1 -1
  190. package/fesm2015/taiga-ui-cdk-pipes-replace.js +2 -2
  191. package/fesm2015/taiga-ui-cdk-pipes-replace.js.map +1 -1
  192. package/fesm2015/taiga-ui-cdk-services.js +27 -24
  193. package/fesm2015/taiga-ui-cdk-services.js.map +1 -1
  194. package/fesm2015/taiga-ui-cdk-tokens.js +25 -25
  195. package/fesm2015/taiga-ui-cdk-tokens.js.map +1 -1
  196. package/fesm2015/taiga-ui-cdk-utils-browser.js +8 -8
  197. package/fesm2015/taiga-ui-cdk-utils-browser.js.map +1 -1
  198. package/fesm2015/taiga-ui-cdk-utils-color.js +20 -20
  199. package/fesm2015/taiga-ui-cdk-utils-color.js.map +1 -1
  200. package/fesm2015/taiga-ui-cdk-utils-dom.js +11 -11
  201. package/fesm2015/taiga-ui-cdk-utils-dom.js.map +1 -1
  202. package/fesm2015/taiga-ui-cdk-utils-focus.js +19 -19
  203. package/fesm2015/taiga-ui-cdk-utils-focus.js.map +1 -1
  204. package/fesm2015/taiga-ui-cdk-utils-format.js +1 -1
  205. package/fesm2015/taiga-ui-cdk-utils-format.js.map +1 -1
  206. package/fesm2015/taiga-ui-cdk-utils-math.js +7 -7
  207. package/fesm2015/taiga-ui-cdk-utils-math.js.map +1 -1
  208. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js +15 -15
  209. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  210. package/fesm2015/taiga-ui-cdk-utils-os.js +1 -1
  211. package/fesm2015/taiga-ui-cdk-utils-os.js.map +1 -1
  212. package/fesm2015/taiga-ui-cdk-utils-svg.js +11 -11
  213. package/fesm2015/taiga-ui-cdk-utils-svg.js.map +1 -1
  214. package/package.json +1 -1
  215. package/schematics/constants/file-globs.js +24 -24
  216. package/schematics/constants/taiga-styles.js +4 -4
  217. package/schematics/ng-add/constants/modules.js +12 -12
  218. package/schematics/ng-add/constants/packages.js +1 -1
  219. package/schematics/ng-add/constants/versions.js +3 -3
  220. package/schematics/ng-add/index.js +10 -10
  221. package/schematics/ng-add/steps/add-taiga-icons.js +4 -4
  222. package/schematics/ng-add/steps/add-taiga-modules.js +14 -14
  223. package/schematics/ng-add/steps/wrap-with-tui-root.js +12 -12
  224. package/schematics/ng-update/steps/icons/replace-imports.js +2 -2
  225. package/schematics/ng-update/steps/remove-module.js +2 -2
  226. package/schematics/ng-update/steps/rename-types.js +5 -5
  227. package/schematics/ng-update/steps/replace-deep-import.js +4 -4
  228. package/schematics/ng-update/steps/replace-enums.js +2 -2
  229. package/schematics/ng-update/steps/replace-identifier.js +2 -2
  230. package/schematics/ng-update/steps/replace-services.js +4 -4
  231. package/schematics/ng-update/steps/show-warnings.js +1 -1
  232. package/schematics/ng-update/utils/replace-text.js +1 -1
  233. package/schematics/ng-update/utils/templates/replace-tag.js +1 -1
  234. package/schematics/ng-update/v3/constants/breakpoints.js +27 -27
  235. package/schematics/ng-update/v3/constants/constants.js +187 -187
  236. package/schematics/ng-update/v3/constants/deprecated-functions.js +405 -405
  237. package/schematics/ng-update/v3/constants/enums.js +153 -153
  238. package/schematics/ng-update/v3/constants/modules.js +4 -4
  239. package/schematics/ng-update/v3/constants/services.js +16 -16
  240. package/schematics/ng-update/v3/constants/templates.js +295 -295
  241. package/schematics/ng-update/v3/constants/tui-interactive-selectors.js +50 -50
  242. package/schematics/ng-update/v3/constants/types.js +88 -88
  243. package/schematics/ng-update/v3/constants/warnings.js +62 -62
  244. package/schematics/ng-update/v3/index.js +7 -7
  245. package/schematics/ng-update/v3/steps/migrate-date-time.js +42 -42
  246. package/schematics/ng-update/v3/steps/migrate-polymorpheus.js +14 -14
  247. package/schematics/ng-update/v3/steps/migrate-progress.js +6 -6
  248. package/schematics/ng-update/v3/steps/migrate-sliders/index.js +4 -4
  249. package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-range.js +27 -27
  250. package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-slider.js +26 -26
  251. package/schematics/ng-update/v3/steps/migrate-taiga-proprietary-icons.js +7 -7
  252. package/schematics/ng-update/v3/steps/migrate-templates.js +18 -18
  253. package/schematics/ng-update/v3/steps/migrate-textfield-controller.js +33 -33
  254. package/schematics/ng-update/v3/steps/miscellaneous.js +16 -16
  255. package/schematics/ng-update/v3/steps/replace-functions.js +17 -17
  256. package/schematics/ng-update/v3/steps/replace-styles.js +12 -12
  257. package/schematics/ng-update/v3-30/constants/constants.js +2 -2
  258. package/schematics/ng-update/v3-30/constants/icons.js +494 -494
  259. package/schematics/ng-update/v3-30/index.js +4 -4
  260. package/schematics/ng-update/v3-35/constants/constants.js +2 -2
  261. package/schematics/ng-update/v3-35/constants/icons.js +1266 -1266
  262. package/schematics/ng-update/v3-35/index.js +5 -5
  263. package/schematics/ng-update/v3-36/index.js +6 -6
  264. package/schematics/ng-update/v3-40/index.js +11 -11
  265. package/schematics/ng-update/v3-5/index.js +1 -1
  266. package/schematics/ng-update/v3-5/steps/migrate-expand-templates.js +7 -7
  267. package/schematics/ng-update/v4/index.js +2 -2
  268. package/schematics/ng-update/v4/steps/constants/attr-to-directive-replace.js +19 -19
  269. package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js +21 -21
  270. package/schematics/ng-update/v4/steps/constants/html-comments.js +9 -9
  271. package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js +21 -21
  272. package/schematics/ng-update/v4/steps/constants/inputs-to-remove.js +4 -4
  273. package/schematics/ng-update/v4/steps/constants/tags-to-replace.js +2 -2
  274. package/schematics/ng-update/v4/steps/migrate-templates.js +3 -3
  275. package/schematics/ng-update/v4/steps/restore-tui-mapper.js +6 -6
  276. package/schematics/ng-update/v4/steps/restore-tui-matcher.js +6 -6
  277. package/schematics/ng-update/v4/steps/templates/migrate-avatar.js +14 -14
  278. package/schematics/ng-update/v4/steps/templates/migrate-badge.js +3 -3
  279. package/schematics/ng-update/v4/steps/templates/toggles/common.js +5 -5
  280. package/schematics/ng-update/v4/steps/templates/toggles/migrate-checkbox.js +4 -4
  281. package/schematics/ng-update/v4/steps/templates/toggles/migrate-radio.js +4 -4
  282. package/schematics/ng-update/v4/steps/templates/toggles/migrate-toggle.js +4 -4
  283. package/schematics/utils/add-import-to-component.js +1 -1
  284. package/schematics/utils/angular/is-standalone-component.js +3 -3
  285. package/schematics/utils/angular/ng-component.js +1 -1
  286. package/schematics/utils/angular/ng-module.js +1 -1
  287. package/schematics/utils/angular-json-manipulations.js +5 -5
  288. package/schematics/utils/colored-log.js +11 -11
  289. package/schematics/utils/create-angular-json.js +3 -3
  290. package/schematics/utils/get-component-from-identifier.js +1 -1
  291. package/schematics/utils/get-named-import-references.js +1 -1
  292. package/schematics/utils/get-projects.js +2 -2
  293. package/schematics/utils/get-standalone-bootstrap-function.js +1 -1
  294. package/schematics/utils/insert-todo.js +1 -1
  295. package/schematics/utils/is-ci.js +1 -1
  296. package/schematics/utils/progress.js +2 -2
  297. package/schematics/utils/project-root.js +1 -1
  298. package/schematics/utils/push-to-array-property.js +1 -1
  299. package/schematics/utils/templates/elements.js +1 -1
  300. package/schematics/utils/templates/get-component-templates.js +5 -5
  301. package/schematics/utils/templates/ng-component-input-manipulations.js +5 -5
  302. package/schematics/utils/templates/template-resource.js +3 -3
  303. package/services/directive-styles.service.d.ts +3 -2
  304. package/utils/miscellaneous/is-string.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-focus.js","sources":["../../../projects/cdk/utils/focus/get-native-focused.ts","../../../projects/cdk/utils/focus/blur-native-focused.ts","../../../projects/cdk/utils/focus/is-native-keyboard-focusable.ts","../../../projects/cdk/utils/focus/is-native-mouse-focusable.ts","../../../projects/cdk/utils/focus/get-closest-focusable.ts","../../../projects/cdk/utils/focus/is-native-focused.ts","../../../projects/cdk/utils/focus/is-native-focused-in.ts","../../../projects/cdk/utils/focus/move-focus.ts","../../../projects/cdk/utils/focus/set-native-mouse-focused.ts","../../../projects/cdk/utils/focus/taiga-ui-cdk-utils-focus.ts"],"sourcesContent":["/**\n * Returns current active element, including shadow dom\n *\n * @return element or null\n */\nexport function tuiGetNativeFocused({activeElement}: Document): Element | null {\n if (!activeElement?.shadowRoot) {\n return activeElement;\n }\n\n let element = activeElement.shadowRoot.activeElement;\n\n while (element?.shadowRoot) {\n element = element.shadowRoot.activeElement;\n }\n\n return element;\n}\n","import {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\n\nimport {tuiGetNativeFocused} from './get-native-focused';\n\n/**\n * Finds and blurs current active element, including shadow DOM\n */\nexport function tuiBlurNativeFocused(doc: Document): void {\n const activeElement = tuiGetNativeFocused(doc);\n\n if (tuiIsHTMLElement(activeElement)) {\n activeElement.blur();\n }\n}\n","import {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\n\n/**\n * Checks for signs that element can be focused with keyboard. tabIndex above 0 is ignored to\n * only target natural focus order. Not checking the possibility of an element to\n * be focused, for example element can have display: none applied to it or any other\n * circumstances could prevent actual focus.\n */\nexport function tuiIsNativeKeyboardFocusable(element: Element): boolean {\n if (element.hasAttribute(`disabled`) || element.getAttribute(`tabIndex`) === `-1`) {\n return false;\n }\n\n if (\n (tuiIsHTMLElement(element) && element.isContentEditable) ||\n element.getAttribute(`tabIndex`) === `0`\n ) {\n return true;\n }\n\n switch (element.tagName) {\n case `BUTTON`:\n case `SELECT`:\n case `TEXTAREA`:\n return true;\n case `VIDEO`:\n case `AUDIO`:\n return element.hasAttribute(`controls`);\n case `INPUT`:\n return element.getAttribute(`type`) !== `hidden`;\n case `A`:\n case `LINK`:\n return element.hasAttribute(`href`);\n default:\n return false;\n }\n}\n","import {tuiIsNativeKeyboardFocusable} from './is-native-keyboard-focusable';\n\nexport function tuiIsNativeMouseFocusable(element: Element): boolean {\n return (\n !element.hasAttribute(`disabled`) &&\n (element.getAttribute(`tabIndex`) === `-1` ||\n tuiIsNativeKeyboardFocusable(element))\n );\n}\n","import {svgNodeFilter} from '@taiga-ui/cdk/constants';\nimport {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\n\nimport {tuiIsNativeKeyboardFocusable} from './is-native-keyboard-focusable';\nimport {tuiIsNativeMouseFocusable} from './is-native-mouse-focusable';\n\nexport interface TuiGetClosestFocusableOptions {\n /**\n * @description:\n * current HTML element\n */\n initial: Element;\n\n /**\n * @description:\n * determine if only keyboard focus is of interest\n */\n keyboard?: boolean;\n\n /**\n * @description:\n * should it look backwards instead (find item that will be focused with Shift + Tab)\n */\n previous?: boolean;\n\n /**\n * @description:\n * top Node limiting the search area\n */\n root: Node;\n}\n\n/**\n * @description:\n * Finds the closest element that can be focused with a keyboard or mouse in theory\n */\nexport function tuiGetClosestFocusable({\n initial,\n root,\n previous = false,\n keyboard = true,\n}: TuiGetClosestFocusableOptions): HTMLElement | null {\n if (!root.ownerDocument) {\n return null;\n }\n\n const check = keyboard ? tuiIsNativeKeyboardFocusable : tuiIsNativeMouseFocusable;\n const treeWalker = root.ownerDocument.createTreeWalker(\n root,\n NodeFilter.SHOW_ELEMENT,\n svgNodeFilter,\n );\n\n treeWalker.currentNode = initial;\n\n while (previous ? treeWalker.previousNode() : treeWalker.nextNode()) {\n if (tuiIsHTMLElement(treeWalker.currentNode)) {\n initial = treeWalker.currentNode;\n }\n\n if (tuiIsHTMLElement(initial) && check(initial)) {\n return initial;\n }\n }\n\n return null;\n}\n","import {tuiGetNativeFocused} from './get-native-focused';\n\n/**\n * Checks if element is focused.\n *\n * Could return true even after blur since element remains focused if you switch away from a browser tab.\n *\n * @param node or null (as a common return value of DOM nodes walking)\n * @return true if focused\n */\nexport function tuiIsNativeFocused(node: Node | null): boolean {\n return (\n !!node?.ownerDocument &&\n tuiGetNativeFocused(node.ownerDocument) === node &&\n node.ownerDocument.hasFocus()\n );\n}\n","import {tuiGetNativeFocused} from './get-native-focused';\n\n/**\n * Checks if focused element is within given element.\n *\n * @param node\n * @return true if focused node is contained within element\n */\nexport function tuiIsNativeFocusedIn(node: Node): boolean {\n // !node.contains - check for IE11\n if (!node.ownerDocument || !node.contains) {\n return false;\n }\n\n const nativeFocused = tuiGetNativeFocused(node.ownerDocument);\n\n return (\n nativeFocused !== null &&\n node.contains(nativeFocused) &&\n node.ownerDocument.hasFocus()\n );\n}\n","import {tuiIsNativeFocused} from './is-native-focused';\n\n/**\n * Utility method for moving focus in a list of elements\n *\n * @param currentIndex currently focused index\n * @param elements array of focusable elements\n * @param step a step to move focus by, typically -1 or 1\n */\nexport function tuiMoveFocus(\n currentIndex: number,\n elements: readonly HTMLElement[],\n step: number,\n): void {\n currentIndex += step;\n\n while (currentIndex >= 0 && currentIndex < elements.length) {\n elements[currentIndex].focus();\n\n if (tuiIsNativeFocused(elements[currentIndex])) {\n return;\n }\n\n currentIndex += step;\n }\n}\n","/**\n * Focuses or blurs element with mouse action imitation (to spoof {@link TuiFocusVisibleService})\n *\n * @param element\n * @param focused desired focused state\n * @param preventScroll optionally prevent native browser scroll after focus\n */\nexport function tuiSetNativeMouseFocused(\n element: Element & HTMLOrSVGElement,\n focused: boolean = true,\n preventScroll: boolean = false,\n): void {\n if (!element.ownerDocument) {\n return;\n }\n\n if (typeof Event === `function`) {\n element.dispatchEvent(new Event(`mousedown`, {bubbles: true, cancelable: true}));\n } else {\n const event = element.ownerDocument.createEvent(`Event`);\n\n event.initEvent(`mousedown`, true, true);\n element.dispatchEvent(event);\n }\n\n if (focused) {\n element.focus({preventScroll});\n } else {\n element.blur();\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-utils-focus.js","sources":["../../../projects/cdk/utils/focus/get-native-focused.ts","../../../projects/cdk/utils/focus/blur-native-focused.ts","../../../projects/cdk/utils/focus/is-native-keyboard-focusable.ts","../../../projects/cdk/utils/focus/is-native-mouse-focusable.ts","../../../projects/cdk/utils/focus/get-closest-focusable.ts","../../../projects/cdk/utils/focus/is-native-focused.ts","../../../projects/cdk/utils/focus/is-native-focused-in.ts","../../../projects/cdk/utils/focus/move-focus.ts","../../../projects/cdk/utils/focus/set-native-mouse-focused.ts","../../../projects/cdk/utils/focus/taiga-ui-cdk-utils-focus.ts"],"sourcesContent":["/**\n * Returns current active element, including shadow dom\n *\n * @return element or null\n */\nexport function tuiGetNativeFocused({activeElement}: Document): Element | null {\n if (!activeElement?.shadowRoot) {\n return activeElement;\n }\n\n let element = activeElement.shadowRoot.activeElement;\n\n while (element?.shadowRoot) {\n element = element.shadowRoot.activeElement;\n }\n\n return element;\n}\n","import {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\n\nimport {tuiGetNativeFocused} from './get-native-focused';\n\n/**\n * Finds and blurs current active element, including shadow DOM\n */\nexport function tuiBlurNativeFocused(doc: Document): void {\n const activeElement = tuiGetNativeFocused(doc);\n\n if (tuiIsHTMLElement(activeElement)) {\n activeElement.blur();\n }\n}\n","import {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\n\n/**\n * Checks for signs that element can be focused with keyboard. tabIndex above 0 is ignored to\n * only target natural focus order. Not checking the possibility of an element to\n * be focused, for example element can have display: none applied to it or any other\n * circumstances could prevent actual focus.\n */\nexport function tuiIsNativeKeyboardFocusable(element: Element): boolean {\n if (element.hasAttribute('disabled') || element.getAttribute('tabIndex') === '-1') {\n return false;\n }\n\n if (\n (tuiIsHTMLElement(element) && element.isContentEditable) ||\n element.getAttribute('tabIndex') === '0'\n ) {\n return true;\n }\n\n switch (element.tagName) {\n case 'BUTTON':\n case 'SELECT':\n case 'TEXTAREA':\n return true;\n case 'VIDEO':\n case 'AUDIO':\n return element.hasAttribute('controls');\n case 'INPUT':\n return element.getAttribute('type') !== 'hidden';\n case 'A':\n case 'LINK':\n return element.hasAttribute('href');\n default:\n return false;\n }\n}\n","import {tuiIsNativeKeyboardFocusable} from './is-native-keyboard-focusable';\n\nexport function tuiIsNativeMouseFocusable(element: Element): boolean {\n return (\n !element.hasAttribute('disabled') &&\n (element.getAttribute('tabIndex') === '-1' ||\n tuiIsNativeKeyboardFocusable(element))\n );\n}\n","import {svgNodeFilter} from '@taiga-ui/cdk/constants';\nimport {tuiIsHTMLElement} from '@taiga-ui/cdk/utils/dom';\n\nimport {tuiIsNativeKeyboardFocusable} from './is-native-keyboard-focusable';\nimport {tuiIsNativeMouseFocusable} from './is-native-mouse-focusable';\n\nexport interface TuiGetClosestFocusableOptions {\n /**\n * @description:\n * current HTML element\n */\n initial: Element;\n\n /**\n * @description:\n * determine if only keyboard focus is of interest\n */\n keyboard?: boolean;\n\n /**\n * @description:\n * should it look backwards instead (find item that will be focused with Shift + Tab)\n */\n previous?: boolean;\n\n /**\n * @description:\n * top Node limiting the search area\n */\n root: Node;\n}\n\n/**\n * @description:\n * Finds the closest element that can be focused with a keyboard or mouse in theory\n */\nexport function tuiGetClosestFocusable({\n initial,\n root,\n previous = false,\n keyboard = true,\n}: TuiGetClosestFocusableOptions): HTMLElement | null {\n if (!root.ownerDocument) {\n return null;\n }\n\n const check = keyboard ? tuiIsNativeKeyboardFocusable : tuiIsNativeMouseFocusable;\n const treeWalker = root.ownerDocument.createTreeWalker(\n root,\n NodeFilter.SHOW_ELEMENT,\n svgNodeFilter,\n );\n\n treeWalker.currentNode = initial;\n\n while (previous ? treeWalker.previousNode() : treeWalker.nextNode()) {\n if (tuiIsHTMLElement(treeWalker.currentNode)) {\n initial = treeWalker.currentNode;\n }\n\n if (tuiIsHTMLElement(initial) && check(initial)) {\n return initial;\n }\n }\n\n return null;\n}\n","import {tuiGetNativeFocused} from './get-native-focused';\n\n/**\n * Checks if element is focused.\n *\n * Could return true even after blur since element remains focused if you switch away from a browser tab.\n *\n * @param node or null (as a common return value of DOM nodes walking)\n * @return true if focused\n */\nexport function tuiIsNativeFocused(node: Node | null): boolean {\n return (\n !!node?.ownerDocument &&\n tuiGetNativeFocused(node.ownerDocument) === node &&\n node.ownerDocument.hasFocus()\n );\n}\n","import {tuiGetNativeFocused} from './get-native-focused';\n\n/**\n * Checks if focused element is within given element.\n *\n * @param node\n * @return true if focused node is contained within element\n */\nexport function tuiIsNativeFocusedIn(node: Node): boolean {\n // !node.contains - check for IE11\n if (!node.ownerDocument || !node.contains) {\n return false;\n }\n\n const nativeFocused = tuiGetNativeFocused(node.ownerDocument);\n\n return (\n nativeFocused !== null &&\n node.contains(nativeFocused) &&\n node.ownerDocument.hasFocus()\n );\n}\n","import {tuiIsNativeFocused} from './is-native-focused';\n\n/**\n * Utility method for moving focus in a list of elements\n *\n * @param currentIndex currently focused index\n * @param elements array of focusable elements\n * @param step a step to move focus by, typically -1 or 1\n */\nexport function tuiMoveFocus(\n currentIndex: number,\n elements: readonly HTMLElement[],\n step: number,\n): void {\n currentIndex += step;\n\n while (currentIndex >= 0 && currentIndex < elements.length) {\n elements[currentIndex].focus();\n\n if (tuiIsNativeFocused(elements[currentIndex])) {\n return;\n }\n\n currentIndex += step;\n }\n}\n","/**\n * Focuses or blurs element with mouse action imitation (to spoof {@link TuiFocusVisibleService})\n *\n * @param element\n * @param focused desired focused state\n * @param preventScroll optionally prevent native browser scroll after focus\n */\nexport function tuiSetNativeMouseFocused(\n element: Element & HTMLOrSVGElement,\n focused: boolean = true,\n preventScroll: boolean = false,\n): void {\n if (!element.ownerDocument) {\n return;\n }\n\n if (typeof Event === 'function') {\n element.dispatchEvent(new Event('mousedown', {bubbles: true, cancelable: true}));\n } else {\n const event = element.ownerDocument.createEvent('Event');\n\n event.initEvent('mousedown', true, true);\n element.dispatchEvent(event);\n }\n\n if (focused) {\n element.focus({preventScroll});\n } else {\n element.blur();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { tuiAssert } from '@taiga-ui/cdk/classes';
4
4
  * Adds 'px' to the number and turns it into a string
5
5
  */
6
6
  function tuiPx(value) {
7
- ngDevMode && tuiAssert.assert(Number.isFinite(value), `Value must be finite number`);
7
+ ngDevMode && tuiAssert.assert(Number.isFinite(value), 'Value must be finite number');
8
8
  return `${value}px`;
9
9
  }
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-format.js","sources":["../../../projects/cdk/utils/format/px.ts","../../../projects/cdk/utils/format/taiga-ui-cdk-utils-format.ts"],"sourcesContent":["import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Adds 'px' to the number and turns it into a string\n */\nexport function tuiPx(value: number): string {\n ngDevMode && tuiAssert.assert(Number.isFinite(value), `Value must be finite number`);\n\n return `${value}px`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAEA;;AAEG;AACG,SAAU,KAAK,CAAC,KAAa,EAAA;AAC/B,IAAA,SAAS,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA,2BAAA,CAA6B,CAAC,CAAC;IAErF,OAAO,CAAA,EAAG,KAAK,CAAA,EAAA,CAAI,CAAC;AACxB;;ACTA;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-format.js","sources":["../../../projects/cdk/utils/format/px.ts","../../../projects/cdk/utils/format/taiga-ui-cdk-utils-format.ts"],"sourcesContent":["import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Adds 'px' to the number and turns it into a string\n */\nexport function tuiPx(value: number): string {\n ngDevMode && tuiAssert.assert(Number.isFinite(value), 'Value must be finite number');\n\n return `${value}px`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAEA;;AAEG;AACG,SAAU,KAAK,CAAC,KAAa,EAAA;AAC/B,IAAA,SAAS,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,6BAA6B,CAAC,CAAC;IAErF,OAAO,CAAA,EAAG,KAAK,CAAA,EAAA,CAAI,CAAC;AACxB;;ACTA;;AAEG;;;;"}
@@ -70,13 +70,13 @@ function calculate(value, precision, func) {
70
70
  if (value === Infinity) {
71
71
  return value;
72
72
  }
73
- ngDevMode && tuiAssert.assert(!Number.isNaN(value), `Value must be number`);
73
+ ngDevMode && tuiAssert.assert(!Number.isNaN(value), 'Value must be number');
74
74
  ngDevMode &&
75
- tuiAssert.assert(Number.isInteger(precision), `Precision must be integer`);
75
+ tuiAssert.assert(Number.isInteger(precision), 'Precision must be integer');
76
76
  precision = Math.min(precision, MAX_PRECISION);
77
- const pair = `${value}e`.split(`e`);
77
+ const pair = `${value}e`.split('e');
78
78
  const tempValue = func(Number(`${pair[0]}e${Number(pair[1]) + precision}`));
79
- const processedPair = `${tempValue}e`.split(`e`);
79
+ const processedPair = `${tempValue}e`.split('e');
80
80
  return Number(`${processedPair[0]}e${Number(processedPair[1]) - precision}`);
81
81
  }
82
82
  function tuiRound(value, precision = 0) {
@@ -94,11 +94,11 @@ function tuiTrunc(value, precision = 0) {
94
94
 
95
95
  function tuiRoundWith({ value, precision, method, }) {
96
96
  switch (method) {
97
- case `round`:
97
+ case 'round':
98
98
  return tuiRound(value, precision);
99
- case `ceil`:
99
+ case 'ceil':
100
100
  return tuiCeil(value, precision);
101
- case `floor`:
101
+ case 'floor':
102
102
  return tuiFloor(value, precision);
103
103
  default:
104
104
  return tuiTrunc(value, precision);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-math.js","sources":["../../../projects/cdk/utils/math/clamp.ts","../../../projects/cdk/utils/math/in-range.ts","../../../projects/cdk/utils/math/normalize-to-int-number.ts","../../../projects/cdk/utils/math/quantize.ts","../../../projects/cdk/utils/math/round.ts","../../../projects/cdk/utils/math/round-with.ts","../../../projects/cdk/utils/math/sum.ts","../../../projects/cdk/utils/math/to-int.ts","../../../projects/cdk/utils/math/to-integer.ts","../../../projects/cdk/utils/math/to-radians.ts","../../../projects/cdk/utils/math/taiga-ui-cdk-utils-math.ts"],"sourcesContent":["import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Clamps a value between two inclusive limits\n *\n * @param value\n * @param min lower limit\n * @param max upper limit\n */\nexport function tuiClamp(value: number, min: number, max: number): number {\n ngDevMode && tuiAssert.assert(!Number.isNaN(value));\n ngDevMode && tuiAssert.assert(!Number.isNaN(min));\n ngDevMode && tuiAssert.assert(!Number.isNaN(max));\n ngDevMode && tuiAssert.assert(max >= min);\n\n return Math.min(max, Math.max(min, value));\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nexport function tuiInRange(\n value: number,\n fromInclude: number,\n toExclude: number,\n): boolean {\n ngDevMode && tuiAssert.assert(!Number.isNaN(value));\n ngDevMode && tuiAssert.assert(!Number.isNaN(fromInclude));\n ngDevMode && tuiAssert.assert(!Number.isNaN(toExclude));\n ngDevMode && tuiAssert.assert(fromInclude < toExclude);\n\n return value >= fromInclude && value < toExclude;\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Normalizes any number to an integer within inclusive range\n *\n * @param value\n * @param min lower inclusive integer\n * @param max upper inclusive integer\n * @return an integer between min and max inclusive\n */\nexport function tuiNormalizeToIntNumber(value: number, min: number, max: number): number {\n ngDevMode && tuiAssert.assert(Number.isInteger(min));\n ngDevMode && tuiAssert.assert(Number.isInteger(max));\n ngDevMode && tuiAssert.assert(min <= max);\n\n if (Number.isNaN(value) || value <= min) {\n return min;\n }\n\n if (value >= max) {\n return max;\n }\n\n return Math.round(value);\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Rounds a number to the closest value in a fixed discrete series\n *\n * @param value\n * @param quantum series step\n */\nexport function tuiQuantize(value: number, quantum: number): number {\n ngDevMode && tuiAssert.assert(Number.isFinite(value));\n ngDevMode && tuiAssert.assert(Number.isFinite(quantum));\n ngDevMode && tuiAssert.assert(quantum > 0);\n\n const remainder = value % quantum;\n\n return remainder < quantum / 2 ? value - remainder : value + quantum - remainder;\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nconst MAX_PRECISION = 292;\n\n/**\n * Rounding number to the set precision\n *\n * @param value\n * @param precision number of digits in a float part\n * @param func rounding function (round, floor, ceil)\n */\nfunction calculate(\n value: number,\n precision: number,\n func: (x: number) => number,\n): number {\n if (value === Infinity) {\n return value;\n }\n\n ngDevMode && tuiAssert.assert(!Number.isNaN(value), `Value must be number`);\n ngDevMode &&\n tuiAssert.assert(Number.isInteger(precision), `Precision must be integer`);\n\n precision = Math.min(precision, MAX_PRECISION);\n\n const pair = `${value}e`.split(`e`);\n const tempValue = func(Number(`${pair[0]}e${Number(pair[1]) + precision}`));\n const processedPair = `${tempValue}e`.split(`e`);\n\n return Number(`${processedPair[0]}e${Number(processedPair[1]) - precision}`);\n}\n\nexport function tuiRound(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.round);\n}\n\nexport function tuiCeil(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.ceil);\n}\n\nexport function tuiFloor(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.floor);\n}\n\nexport function tuiTrunc(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.trunc);\n}\n","import {TuiRounding} from '@taiga-ui/cdk/types';\n\nimport {tuiCeil, tuiFloor, tuiRound, tuiTrunc} from './round';\n\nexport function tuiRoundWith({\n value,\n precision,\n method,\n}: {\n method: TuiRounding;\n precision: number;\n value: number;\n}): number {\n switch (method) {\n case `round`:\n return tuiRound(value, precision);\n case `ceil`:\n return tuiCeil(value, precision);\n case `floor`:\n return tuiFloor(value, precision);\n default:\n return tuiTrunc(value, precision);\n }\n}\n","/**\n * Calculates sum of any number of passed arguments\n */\nexport function tuiSum(...args: number[]): number {\n return args.reduce((a, b) => a + b, 0);\n}\n","export function tuiToInt(bool: boolean): 0 | 1 {\n return bool ? 1 : 0;\n}\n","export function tuiToInteger(value: number | string): number {\n return parseInt(value as unknown as string, 10);\n}\n","/**\n * Converts angle in degrees to radians\n */\nexport function tuiToRadians(deg: number): number {\n return (deg * Math.PI) / 180;\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-utils-math.js","sources":["../../../projects/cdk/utils/math/clamp.ts","../../../projects/cdk/utils/math/in-range.ts","../../../projects/cdk/utils/math/normalize-to-int-number.ts","../../../projects/cdk/utils/math/quantize.ts","../../../projects/cdk/utils/math/round.ts","../../../projects/cdk/utils/math/round-with.ts","../../../projects/cdk/utils/math/sum.ts","../../../projects/cdk/utils/math/to-int.ts","../../../projects/cdk/utils/math/to-integer.ts","../../../projects/cdk/utils/math/to-radians.ts","../../../projects/cdk/utils/math/taiga-ui-cdk-utils-math.ts"],"sourcesContent":["import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Clamps a value between two inclusive limits\n *\n * @param value\n * @param min lower limit\n * @param max upper limit\n */\nexport function tuiClamp(value: number, min: number, max: number): number {\n ngDevMode && tuiAssert.assert(!Number.isNaN(value));\n ngDevMode && tuiAssert.assert(!Number.isNaN(min));\n ngDevMode && tuiAssert.assert(!Number.isNaN(max));\n ngDevMode && tuiAssert.assert(max >= min);\n\n return Math.min(max, Math.max(min, value));\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nexport function tuiInRange(\n value: number,\n fromInclude: number,\n toExclude: number,\n): boolean {\n ngDevMode && tuiAssert.assert(!Number.isNaN(value));\n ngDevMode && tuiAssert.assert(!Number.isNaN(fromInclude));\n ngDevMode && tuiAssert.assert(!Number.isNaN(toExclude));\n ngDevMode && tuiAssert.assert(fromInclude < toExclude);\n\n return value >= fromInclude && value < toExclude;\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Normalizes any number to an integer within inclusive range\n *\n * @param value\n * @param min lower inclusive integer\n * @param max upper inclusive integer\n * @return an integer between min and max inclusive\n */\nexport function tuiNormalizeToIntNumber(value: number, min: number, max: number): number {\n ngDevMode && tuiAssert.assert(Number.isInteger(min));\n ngDevMode && tuiAssert.assert(Number.isInteger(max));\n ngDevMode && tuiAssert.assert(min <= max);\n\n if (Number.isNaN(value) || value <= min) {\n return min;\n }\n\n if (value >= max) {\n return max;\n }\n\n return Math.round(value);\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\n/**\n * Rounds a number to the closest value in a fixed discrete series\n *\n * @param value\n * @param quantum series step\n */\nexport function tuiQuantize(value: number, quantum: number): number {\n ngDevMode && tuiAssert.assert(Number.isFinite(value));\n ngDevMode && tuiAssert.assert(Number.isFinite(quantum));\n ngDevMode && tuiAssert.assert(quantum > 0);\n\n const remainder = value % quantum;\n\n return remainder < quantum / 2 ? value - remainder : value + quantum - remainder;\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nconst MAX_PRECISION = 292;\n\n/**\n * Rounding number to the set precision\n *\n * @param value\n * @param precision number of digits in a float part\n * @param func rounding function (round, floor, ceil)\n */\nfunction calculate(\n value: number,\n precision: number,\n func: (x: number) => number,\n): number {\n if (value === Infinity) {\n return value;\n }\n\n ngDevMode && tuiAssert.assert(!Number.isNaN(value), 'Value must be number');\n ngDevMode &&\n tuiAssert.assert(Number.isInteger(precision), 'Precision must be integer');\n\n precision = Math.min(precision, MAX_PRECISION);\n\n const pair = `${value}e`.split('e');\n const tempValue = func(Number(`${pair[0]}e${Number(pair[1]) + precision}`));\n const processedPair = `${tempValue}e`.split('e');\n\n return Number(`${processedPair[0]}e${Number(processedPair[1]) - precision}`);\n}\n\nexport function tuiRound(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.round);\n}\n\nexport function tuiCeil(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.ceil);\n}\n\nexport function tuiFloor(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.floor);\n}\n\nexport function tuiTrunc(value: number, precision: number = 0): number {\n return calculate(value, precision, Math.trunc);\n}\n","import {TuiRounding} from '@taiga-ui/cdk/types';\n\nimport {tuiCeil, tuiFloor, tuiRound, tuiTrunc} from './round';\n\nexport function tuiRoundWith({\n value,\n precision,\n method,\n}: {\n method: TuiRounding;\n precision: number;\n value: number;\n}): number {\n switch (method) {\n case 'round':\n return tuiRound(value, precision);\n case 'ceil':\n return tuiCeil(value, precision);\n case 'floor':\n return tuiFloor(value, precision);\n default:\n return tuiTrunc(value, precision);\n }\n}\n","/**\n * Calculates sum of any number of passed arguments\n */\nexport function tuiSum(...args: number[]): number {\n return args.reduce((a, b) => a + b, 0);\n}\n","export function tuiToInt(bool: boolean): 0 | 1 {\n return bool ? 1 : 0;\n}\n","export function tuiToInteger(value: number | string): number {\n return parseInt(value as unknown as string, 10);\n}\n","/**\n * Converts angle in degrees to radians\n */\nexport function tuiToRadians(deg: number): number {\n return (deg * Math.PI) / 180;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -16,12 +16,12 @@ function tuiArrayToggle(array, item) {
16
16
  }
17
17
 
18
18
  function tuiIsString(value) {
19
- return typeof value === `string`;
19
+ return typeof value === 'string';
20
20
  }
21
21
 
22
22
  function checkValueIsEmpty(value) {
23
23
  const nextValue = tuiIsString(value) ? value.trim() : value;
24
- return [undefined, null, NaN, ``].includes(nextValue);
24
+ return [undefined, null, NaN, ''].includes(nextValue);
25
25
  }
26
26
  function tuiCleanObject(object) {
27
27
  return JSON.parse(JSON.stringify(object, (_key, value) => checkValueIsEmpty(value) ? undefined : value));
@@ -31,7 +31,7 @@ function tuiCreateToken(defaults) {
31
31
  return tuiCreateTokenFromFactory(() => defaults);
32
32
  }
33
33
  function tuiCreateTokenFromFactory(factory) {
34
- return new InjectionToken(``, { factory });
34
+ return new InjectionToken('', { factory });
35
35
  }
36
36
 
37
37
  /** @deprecated use {@link tuiCreateToken} instead */
@@ -55,7 +55,7 @@ function tuiDistanceBetweenTouches({ touches }) {
55
55
 
56
56
  function tuiEaseInOutQuad(t) {
57
57
  ngDevMode &&
58
- tuiAssert.assert(t >= 0 && t <= 1, `Input must be between 0 and 1 inclusive but received `, t);
58
+ tuiAssert.assert(t >= 0 && t <= 1, 'Input must be between 0 and 1 inclusive but received ', t);
59
59
  return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
60
60
  }
61
61
 
@@ -85,9 +85,9 @@ function tuiGetOriginalArrayFromQueryList(queryList) {
85
85
 
86
86
  function tuiGetSwipeDirection(deltaX, deltaY) {
87
87
  if (Math.abs(deltaY) > Math.abs(deltaX)) {
88
- return deltaY > 0 ? `top` : `bottom`;
88
+ return deltaY > 0 ? 'top' : 'bottom';
89
89
  }
90
- return deltaX > 0 ? `left` : `right`;
90
+ return deltaX > 0 ? 'left' : 'right';
91
91
  }
92
92
 
93
93
  function tuiIsFalsy(value) {
@@ -95,11 +95,11 @@ function tuiIsFalsy(value) {
95
95
  }
96
96
 
97
97
  function tuiIsNumber(value) {
98
- return typeof value === `number`;
98
+ return typeof value === 'number';
99
99
  }
100
100
 
101
101
  function tuiIsObject(value) {
102
- return typeof value === `object` && !!value;
102
+ return typeof value === 'object' && !!value;
103
103
  }
104
104
 
105
105
  function tuiIsPresent(value) {
@@ -107,13 +107,13 @@ function tuiIsPresent(value) {
107
107
  }
108
108
 
109
109
  function tuiIsValidUrl(url) {
110
- const pattern = new RegExp(`^([a-zA-Z]+:\\/\\/)?` + // protocol
111
- `((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|localhost|` + // domain name
112
- `((\\d{1,3}\\.){3}\\d{1,3}))` + // OR IP (v4) address
113
- `(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*` + // port and path
114
- `(\\?[;&a-z\\d%_.~+=-]*)?` + // query string
115
- `(\\#[-a-z\\d_]*)?$`, // fragment locator
116
- `i`);
110
+ const pattern = new RegExp('^([a-zA-Z]+:\\/\\/)?' + // protocol
111
+ '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|localhost|' + // domain name
112
+ '((\\d{1,3}\\.){3}\\d{1,3}))' + // OR IP (v4) address
113
+ '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*' + // port and path
114
+ '(\\?[;&a-z\\d%_.~+=-]*)?' + // query string
115
+ '(\\#[-a-z\\d_]*)?$', // fragment locator
116
+ 'i');
117
117
  return pattern.test(url);
118
118
  }
119
119
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-miscellaneous.js","sources":["../../../projects/cdk/utils/miscellaneous/array-remove.ts","../../../projects/cdk/utils/miscellaneous/array-shallow-equals.ts","../../../projects/cdk/utils/miscellaneous/array-toggle.ts","../../../projects/cdk/utils/miscellaneous/is-string.ts","../../../projects/cdk/utils/miscellaneous/clean-object.ts","../../../projects/cdk/utils/miscellaneous/create-token.ts","../../../projects/cdk/utils/miscellaneous/create-options.ts","../../../projects/cdk/utils/miscellaneous/default-sort.ts","../../../projects/cdk/utils/miscellaneous/distance-between-touches.ts","../../../projects/cdk/utils/miscellaneous/ease-in-out-quad.ts","../../../projects/cdk/utils/miscellaneous/flat-length.ts","../../../projects/cdk/utils/miscellaneous/get-original-array-from-query-list.ts","../../../projects/cdk/utils/miscellaneous/get-swipe-direction.ts","../../../projects/cdk/utils/miscellaneous/is-falsy.ts","../../../projects/cdk/utils/miscellaneous/is-number.ts","../../../projects/cdk/utils/miscellaneous/is-object.ts","../../../projects/cdk/utils/miscellaneous/is-present.ts","../../../projects/cdk/utils/miscellaneous/is-valid-url.ts","../../../projects/cdk/utils/miscellaneous/mark-control-as-touched-and-validate.ts","../../../projects/cdk/utils/miscellaneous/nullable-same.ts","../../../projects/cdk/utils/miscellaneous/object-from-entries.ts","../../../projects/cdk/utils/miscellaneous/provide-options.ts","../../../projects/cdk/utils/miscellaneous/uniq-by.ts","../../../projects/cdk/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.ts"],"sourcesContent":["export function tuiArrayRemove<T>(array: readonly T[], index: number): T[] {\n return array.slice(0, Math.max(index, 0)).concat(array.slice(Math.max(index + 1, 0)));\n}\n","export function tuiArrayShallowEquals<T>(a: readonly T[], b: readonly T[]): boolean {\n return a.length === b.length && a.every((item, index) => item === b[index]);\n}\n","import {tuiArrayRemove} from './array-remove';\n\nexport function tuiArrayToggle<T>(array: readonly T[], item: T): T[] {\n const index = array.indexOf(item);\n\n return index === -1 ? [...array, item] : tuiArrayRemove(array, index);\n}\n","export function tuiIsString(value: unknown): value is string {\n return typeof value === `string`;\n}\n","import {TuiDeepPartial} from '@taiga-ui/cdk/types';\n\nimport {tuiIsString} from './is-string';\n\ntype EmptyValue = '' | null | undefined;\n\nfunction checkValueIsEmpty<T>(value: EmptyValue | T): value is EmptyValue {\n const nextValue: any = tuiIsString(value) ? value.trim() : value;\n\n return [undefined, null, NaN, ``].includes(nextValue);\n}\n\nexport function tuiCleanObject<T>(object: T): TuiDeepPartial<T> {\n return JSON.parse(\n JSON.stringify(object, (_key: string, value: unknown) =>\n checkValueIsEmpty(value) ? undefined : value,\n ),\n );\n}\n","import {InjectionToken} from '@angular/core';\n\nexport function tuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function tuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>(``, {factory});\n}\n","import {InjectionToken} from '@angular/core';\n\nimport {tuiCreateTokenFromFactory} from './create-token';\n\n/** @deprecated use {@link tuiCreateToken} instead */\nexport function tuiCreateOptions<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n","import {tuiIsString} from './is-string';\n\nexport function tuiDefaultSort<T>(x: T, y: T): number {\n if (x === y) {\n return 0;\n }\n\n if (tuiIsString(x) && tuiIsString(y)) {\n return x.localeCompare(y);\n }\n\n return x > y ? 1 : -1;\n}\n","export function tuiDistanceBetweenTouches({touches}: TouchEvent): number {\n return Math.hypot(\n touches[0].clientX - touches[1].clientX,\n touches[0].clientY - touches[1].clientY,\n );\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nexport function tuiEaseInOutQuad(t: number): number {\n ngDevMode &&\n tuiAssert.assert(\n t >= 0 && t <= 1,\n `Input must be between 0 and 1 inclusive but received `,\n t,\n );\n\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n}\n","/**\n * Flattens two-dimensional array and calculates resulting length\n *\n * @param array twi dimensional array\n */\nexport function tuiFlatLength(array: ReadonlyArray<readonly unknown[]>): number {\n return array.reduce((count, section) => count + section.length, 0);\n}\n","import {QueryList} from '@angular/core';\n\n/**\n * Extracts original array from {@link QueryList} rather than\n * creating a copy like {@link QueryList.toArray} does.\n * @param queryList\n * @returns original array from {@link QueryList}.\n */\nexport function tuiGetOriginalArrayFromQueryList<T>(\n queryList: QueryList<T>,\n): readonly T[] {\n let array: readonly T[] = [];\n\n queryList.find((_item, _index, originalArray) => {\n array = originalArray;\n\n return true;\n });\n\n return array;\n}\n","import {TuiSwipeDirection} from '@taiga-ui/cdk/interfaces';\n\nexport function tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? `top` : `bottom`;\n }\n\n return deltaX > 0 ? `left` : `right`;\n}\n","export function tuiIsFalsy(value: unknown): boolean {\n return !value;\n}\n","export function tuiIsNumber(value: unknown): value is number {\n return typeof value === `number`;\n}\n","export function tuiIsObject<T extends Record<string, any>>(\n value: unknown,\n): value is NonNullable<T> {\n return typeof value === `object` && !!value;\n}\n","export function tuiIsPresent<T>(value?: T | null): value is T {\n return value !== null && value !== undefined;\n}\n","export function tuiIsValidUrl(url: string): boolean {\n const pattern = new RegExp(\n `^([a-zA-Z]+:\\\\/\\\\/)?` + // protocol\n `((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|localhost|` + // domain name\n `((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))` + // OR IP (v4) address\n `(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*` + // port and path\n `(\\\\?[;&a-z\\\\d%_.~+=-]*)?` + // query string\n `(\\\\#[-a-z\\\\d_]*)?$`, // fragment locator\n `i`,\n );\n\n return pattern.test(url);\n}\n","import {AbstractControl, FormArray, FormGroup} from '@angular/forms';\n\nexport function tuiMarkControlAsTouchedAndValidate(control: AbstractControl): void {\n if (control instanceof FormArray) {\n control.controls.forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n if (control instanceof FormGroup) {\n Object.values(control.controls).forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n control.markAsTouched();\n control.updateValueAndValidity();\n}\n","import {TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\n/**\n * Checks identity for nullable elements.\n *\n * @param a element a\n * @param b element b\n * @param handler called if both elements are not null\n * @return true if either both are null or they pass identity handler\n */\nexport function tuiNullableSame<T>(\n a: T | null,\n b: T | null,\n handler: TuiIdentityMatcher<T>,\n): boolean {\n if (a === null) {\n return b === null;\n }\n\n if (b === null) {\n return false;\n }\n\n return handler(a, b);\n}\n","/**\n * @deprecated use `Object.fromEntries` instead\n * (check browser support first https://caniuse.com/mdn-javascript_builtins_object_fromentries)\n * ___\n * TODO: after we bump Firefox to 63+ replace this function with `Object.fromEntries`.\n * TODO: Add `es2019.object` to `tsconfig.json` => `compilerOptions.lib`.\n *\n */\nexport function tuiObjectFromEntries<K extends number | string, V>(\n keyValuePairs: Array<[K, V]>,\n): Record<K, V> {\n return keyValuePairs.reduce(\n (obj, [key, val]) => ({...obj, [key]: val}),\n {} as Record<K, V>,\n );\n}\n","import {FactoryProvider, InjectionToken, Optional, SkipSelf} from '@angular/core';\n\nexport function tuiProvideOptions<T>(\n provide: InjectionToken<T>,\n options: Partial<T>,\n fallback: T,\n): FactoryProvider {\n return {\n provide,\n deps: [[new Optional(), new SkipSelf(), provide]],\n useFactory: (parent: T | null): T => ({\n ...(parent || fallback),\n ...options,\n }),\n };\n}\n","import {TuiValuesOf} from '@taiga-ui/cdk/types';\n\nexport function tuiUniqBy<T extends Record<string, any>>(\n array: readonly T[],\n key: keyof T,\n): readonly T[] {\n return Array.from(\n array\n .reduce(\n (map, item) => (map.has(item[key]) ? map : map.set(item[key], item)),\n new Map<TuiValuesOf<T>, T>(),\n )\n .values(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAgB,SAAA,cAAc,CAAI,KAAmB,EAAE,KAAa,EAAA;AAChE,IAAA,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F;;ACFgB,SAAA,qBAAqB,CAAI,CAAe,EAAE,CAAe,EAAA;IACrE,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAChF;;ACAgB,SAAA,cAAc,CAAI,KAAmB,EAAE,IAAO,EAAA;IAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC,OAAO,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1E;;ACNM,SAAU,WAAW,CAAC,KAAc,EAAA;AACtC,IAAA,OAAO,OAAO,KAAK,KAAK,CAAA,MAAA,CAAQ,CAAC;AACrC;;ACIA,SAAS,iBAAiB,CAAI,KAAqB,EAAA;AAC/C,IAAA,MAAM,SAAS,GAAQ,WAAW,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC;AAEjE,IAAA,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,CAAE,CAAA,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1D,CAAC;AAEK,SAAU,cAAc,CAAI,MAAS,EAAA;AACvC,IAAA,OAAO,IAAI,CAAC,KAAK,CACb,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,KAAc,KAChD,iBAAiB,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,KAAK,CAC/C,CACJ,CAAC;AACN;;AChBM,SAAU,cAAc,CAAI,QAAW,EAAA;AACzC,IAAA,OAAO,yBAAyB,CAAC,MAAM,QAAQ,CAAC,CAAC;AACrD,CAAC;AAEK,SAAU,yBAAyB,CAAI,OAAgB,EAAA;IACzD,OAAO,IAAI,cAAc,CAAI,CAAA,CAAE,EAAE,EAAC,OAAO,EAAC,CAAC,CAAC;AAChD;;ACJA;AACM,SAAU,gBAAgB,CAAI,QAAW,EAAA;AAC3C,IAAA,OAAO,yBAAyB,CAAC,MAAM,QAAQ,CAAC,CAAC;AACrD;;ACLgB,SAAA,cAAc,CAAI,CAAI,EAAE,CAAI,EAAA;IACxC,IAAI,CAAC,KAAK,CAAC,EAAE;AACT,QAAA,OAAO,CAAC,CAAC;AACZ,KAAA;IAED,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE;AAClC,QAAA,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAC7B,KAAA;AAED,IAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1B;;ACZgB,SAAA,yBAAyB,CAAC,EAAC,OAAO,EAAa,EAAA;AAC3D,IAAA,OAAO,IAAI,CAAC,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EACvC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAC1C,CAAC;AACN;;ACHM,SAAU,gBAAgB,CAAC,CAAS,EAAA;IACtC,SAAS;AACL,QAAA,SAAS,CAAC,MAAM,CACZ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAChB,CAAA,qDAAA,CAAuD,EACvD,CAAC,CACJ,CAAC;IAEN,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACtD;;ACXA;;;;AAIG;AACG,SAAU,aAAa,CAAC,KAAwC,EAAA;AAClE,IAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACvE;;ACLA;;;;;AAKG;AACG,SAAU,gCAAgC,CAC5C,SAAuB,EAAA;IAEvB,IAAI,KAAK,GAAiB,EAAE,CAAC;IAE7B,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,KAAI;QAC5C,KAAK,GAAG,aAAa,CAAC;AAEtB,QAAA,OAAO,IAAI,CAAC;AAChB,KAAC,CAAC,CAAC;AAEH,IAAA,OAAO,KAAK,CAAC;AACjB;;AClBgB,SAAA,oBAAoB,CAAC,MAAc,EAAE,MAAc,EAAA;AAC/D,IAAA,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACrC,OAAO,MAAM,GAAG,CAAC,GAAG,CAAA,GAAA,CAAK,GAAG,CAAA,MAAA,CAAQ,CAAC;AACxC,KAAA;IAED,OAAO,MAAM,GAAG,CAAC,GAAG,CAAA,IAAA,CAAM,GAAG,CAAA,KAAA,CAAO,CAAC;AACzC;;ACRM,SAAU,UAAU,CAAC,KAAc,EAAA;IACrC,OAAO,CAAC,KAAK,CAAC;AAClB;;ACFM,SAAU,WAAW,CAAC,KAAc,EAAA;AACtC,IAAA,OAAO,OAAO,KAAK,KAAK,CAAA,MAAA,CAAQ,CAAC;AACrC;;ACFM,SAAU,WAAW,CACvB,KAAc,EAAA;IAEd,OAAO,OAAO,KAAK,KAAK,CAAA,MAAA,CAAQ,IAAI,CAAC,CAAC,KAAK,CAAC;AAChD;;ACJM,SAAU,YAAY,CAAI,KAAgB,EAAA;AAC5C,IAAA,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;AACjD;;ACFM,SAAU,aAAa,CAAC,GAAW,EAAA;AACrC,IAAA,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,CAAA,oBAAA,CAAsB;AAClB,QAAA,CAAA,0DAAA,CAA4D;AAC5D,QAAA,CAAA,2BAAA,CAA6B;AAC7B,QAAA,CAAA,+BAAA,CAAiC;AACjC,QAAA,CAAA,wBAAA,CAA0B;AAC1B,QAAA,CAAA,kBAAA,CAAoB;AACxB,IAAA,CAAA,CAAA,CAAG,CACN,CAAC;AAEF,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7B;;ACVM,SAAU,kCAAkC,CAAC,OAAwB,EAAA;IACvE,IAAI,OAAO,YAAY,SAAS,EAAE;AAC9B,QAAA,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,IAAG;YACrC,kCAAkC,CAAC,aAAa,CAAC,CAAC;AACtD,SAAC,CAAC,CAAC;AACN,KAAA;IAED,IAAI,OAAO,YAAY,SAAS,EAAE;AAC9B,QAAA,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,aAAa,IAAG;YACpD,kCAAkC,CAAC,aAAa,CAAC,CAAC;AACtD,SAAC,CAAC,CAAC;AACN,KAAA;IAED,OAAO,CAAC,aAAa,EAAE,CAAC;IACxB,OAAO,CAAC,sBAAsB,EAAE,CAAC;AACrC;;ACfA;;;;;;;AAOG;SACa,eAAe,CAC3B,CAAW,EACX,CAAW,EACX,OAA8B,EAAA;IAE9B,IAAI,CAAC,KAAK,IAAI,EAAE;QACZ,OAAO,CAAC,KAAK,IAAI,CAAC;AACrB,KAAA;IAED,IAAI,CAAC,KAAK,IAAI,EAAE;AACZ,QAAA,OAAO,KAAK,CAAC;AAChB,KAAA;AAED,IAAA,OAAO,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACzB;;ACxBA;;;;;;;AAOG;AACG,SAAU,oBAAoB,CAChC,aAA4B,EAAA;IAE5B,OAAO,aAAa,CAAC,MAAM,CACvB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,MAAU,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,GAAG,CAAE,EAAA,EAAA,CAAC,GAAG,GAAG,GAAG,EAAE,CAAA,CAAA,EAC3C,EAAkB,CACrB,CAAC;AACN;;SCbgB,iBAAiB,CAC7B,OAA0B,EAC1B,OAAmB,EACnB,QAAW,EAAA;IAEX,OAAO;QACH,OAAO;AACP,QAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;AACjD,QAAA,UAAU,EAAE,CAAC,MAAgB,MAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAC7B,MAAM,IAAI,QAAQ,EAAC,EACpB,OAAO,CACZ,CAAA;KACL,CAAC;AACN;;ACbgB,SAAA,SAAS,CACrB,KAAmB,EACnB,GAAY,EAAA;AAEZ,IAAA,OAAO,KAAK,CAAC,IAAI,CACb,KAAK;AACA,SAAA,MAAM,CACH,CAAC,GAAG,EAAE,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EACpE,IAAI,GAAG,EAAqB,CAC/B;SACA,MAAM,EAAE,CAChB,CAAC;AACN;;ACdA;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-miscellaneous.js","sources":["../../../projects/cdk/utils/miscellaneous/array-remove.ts","../../../projects/cdk/utils/miscellaneous/array-shallow-equals.ts","../../../projects/cdk/utils/miscellaneous/array-toggle.ts","../../../projects/cdk/utils/miscellaneous/is-string.ts","../../../projects/cdk/utils/miscellaneous/clean-object.ts","../../../projects/cdk/utils/miscellaneous/create-token.ts","../../../projects/cdk/utils/miscellaneous/create-options.ts","../../../projects/cdk/utils/miscellaneous/default-sort.ts","../../../projects/cdk/utils/miscellaneous/distance-between-touches.ts","../../../projects/cdk/utils/miscellaneous/ease-in-out-quad.ts","../../../projects/cdk/utils/miscellaneous/flat-length.ts","../../../projects/cdk/utils/miscellaneous/get-original-array-from-query-list.ts","../../../projects/cdk/utils/miscellaneous/get-swipe-direction.ts","../../../projects/cdk/utils/miscellaneous/is-falsy.ts","../../../projects/cdk/utils/miscellaneous/is-number.ts","../../../projects/cdk/utils/miscellaneous/is-object.ts","../../../projects/cdk/utils/miscellaneous/is-present.ts","../../../projects/cdk/utils/miscellaneous/is-valid-url.ts","../../../projects/cdk/utils/miscellaneous/mark-control-as-touched-and-validate.ts","../../../projects/cdk/utils/miscellaneous/nullable-same.ts","../../../projects/cdk/utils/miscellaneous/object-from-entries.ts","../../../projects/cdk/utils/miscellaneous/provide-options.ts","../../../projects/cdk/utils/miscellaneous/uniq-by.ts","../../../projects/cdk/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.ts"],"sourcesContent":["export function tuiArrayRemove<T>(array: readonly T[], index: number): T[] {\n return array.slice(0, Math.max(index, 0)).concat(array.slice(Math.max(index + 1, 0)));\n}\n","export function tuiArrayShallowEquals<T>(a: readonly T[], b: readonly T[]): boolean {\n return a.length === b.length && a.every((item, index) => item === b[index]);\n}\n","import {tuiArrayRemove} from './array-remove';\n\nexport function tuiArrayToggle<T>(array: readonly T[], item: T): T[] {\n const index = array.indexOf(item);\n\n return index === -1 ? [...array, item] : tuiArrayRemove(array, index);\n}\n","export function tuiIsString(value: unknown): value is string {\n return typeof value === 'string';\n}\n","import {TuiDeepPartial} from '@taiga-ui/cdk/types';\n\nimport {tuiIsString} from './is-string';\n\ntype EmptyValue = '' | null | undefined;\n\nfunction checkValueIsEmpty<T>(value: EmptyValue | T): value is EmptyValue {\n const nextValue: any = tuiIsString(value) ? value.trim() : value;\n\n return [undefined, null, NaN, ''].includes(nextValue);\n}\n\nexport function tuiCleanObject<T>(object: T): TuiDeepPartial<T> {\n return JSON.parse(\n JSON.stringify(object, (_key: string, value: unknown) =>\n checkValueIsEmpty(value) ? undefined : value,\n ),\n );\n}\n","import {InjectionToken} from '@angular/core';\n\nexport function tuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function tuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>('', {factory});\n}\n","import {InjectionToken} from '@angular/core';\n\nimport {tuiCreateTokenFromFactory} from './create-token';\n\n/** @deprecated use {@link tuiCreateToken} instead */\nexport function tuiCreateOptions<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n","import {tuiIsString} from './is-string';\n\nexport function tuiDefaultSort<T>(x: T, y: T): number {\n if (x === y) {\n return 0;\n }\n\n if (tuiIsString(x) && tuiIsString(y)) {\n return x.localeCompare(y);\n }\n\n return x > y ? 1 : -1;\n}\n","export function tuiDistanceBetweenTouches({touches}: TouchEvent): number {\n return Math.hypot(\n touches[0].clientX - touches[1].clientX,\n touches[0].clientY - touches[1].clientY,\n );\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nexport function tuiEaseInOutQuad(t: number): number {\n ngDevMode &&\n tuiAssert.assert(\n t >= 0 && t <= 1,\n 'Input must be between 0 and 1 inclusive but received ',\n t,\n );\n\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n}\n","/**\n * Flattens two-dimensional array and calculates resulting length\n *\n * @param array twi dimensional array\n */\nexport function tuiFlatLength(array: ReadonlyArray<readonly unknown[]>): number {\n return array.reduce((count, section) => count + section.length, 0);\n}\n","import {QueryList} from '@angular/core';\n\n/**\n * Extracts original array from {@link QueryList} rather than\n * creating a copy like {@link QueryList.toArray} does.\n * @param queryList\n * @returns original array from {@link QueryList}.\n */\nexport function tuiGetOriginalArrayFromQueryList<T>(\n queryList: QueryList<T>,\n): readonly T[] {\n let array: readonly T[] = [];\n\n queryList.find((_item, _index, originalArray) => {\n array = originalArray;\n\n return true;\n });\n\n return array;\n}\n","import {TuiSwipeDirection} from '@taiga-ui/cdk/interfaces';\n\nexport function tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? 'top' : 'bottom';\n }\n\n return deltaX > 0 ? 'left' : 'right';\n}\n","export function tuiIsFalsy(value: unknown): boolean {\n return !value;\n}\n","export function tuiIsNumber(value: unknown): value is number {\n return typeof value === 'number';\n}\n","export function tuiIsObject<T extends Record<string, any>>(\n value: unknown,\n): value is NonNullable<T> {\n return typeof value === 'object' && !!value;\n}\n","export function tuiIsPresent<T>(value?: T | null): value is T {\n return value !== null && value !== undefined;\n}\n","export function tuiIsValidUrl(url: string): boolean {\n const pattern = new RegExp(\n '^([a-zA-Z]+:\\\\/\\\\/)?' + // protocol\n '((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|localhost|' + // domain name\n '((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))' + // OR IP (v4) address\n '(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*' + // port and path\n '(\\\\?[;&a-z\\\\d%_.~+=-]*)?' + // query string\n '(\\\\#[-a-z\\\\d_]*)?$', // fragment locator\n 'i',\n );\n\n return pattern.test(url);\n}\n","import {AbstractControl, FormArray, FormGroup} from '@angular/forms';\n\nexport function tuiMarkControlAsTouchedAndValidate(control: AbstractControl): void {\n if (control instanceof FormArray) {\n control.controls.forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n if (control instanceof FormGroup) {\n Object.values(control.controls).forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n control.markAsTouched();\n control.updateValueAndValidity();\n}\n","import {TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\n/**\n * Checks identity for nullable elements.\n *\n * @param a element a\n * @param b element b\n * @param handler called if both elements are not null\n * @return true if either both are null or they pass identity handler\n */\nexport function tuiNullableSame<T>(\n a: T | null,\n b: T | null,\n handler: TuiIdentityMatcher<T>,\n): boolean {\n if (a === null) {\n return b === null;\n }\n\n if (b === null) {\n return false;\n }\n\n return handler(a, b);\n}\n","/**\n * @deprecated use `Object.fromEntries` instead\n * (check browser support first https://caniuse.com/mdn-javascript_builtins_object_fromentries)\n * ___\n * TODO: after we bump Firefox to 63+ replace this function with `Object.fromEntries`.\n * TODO: Add `es2019.object` to `tsconfig.json` => `compilerOptions.lib`.\n *\n */\nexport function tuiObjectFromEntries<K extends number | string, V>(\n keyValuePairs: Array<[K, V]>,\n): Record<K, V> {\n return keyValuePairs.reduce(\n (obj, [key, val]) => ({...obj, [key]: val}),\n {} as Record<K, V>,\n );\n}\n","import {FactoryProvider, InjectionToken, Optional, SkipSelf} from '@angular/core';\n\nexport function tuiProvideOptions<T>(\n provide: InjectionToken<T>,\n options: Partial<T>,\n fallback: T,\n): FactoryProvider {\n return {\n provide,\n deps: [[new Optional(), new SkipSelf(), provide]],\n useFactory: (parent: T | null): T => ({\n ...(parent || fallback),\n ...options,\n }),\n };\n}\n","import {TuiValuesOf} from '@taiga-ui/cdk/types';\n\nexport function tuiUniqBy<T extends Record<string, any>>(\n array: readonly T[],\n key: keyof T,\n): readonly T[] {\n return Array.from(\n array\n .reduce(\n (map, item) => (map.has(item[key]) ? map : map.set(item[key], item)),\n new Map<TuiValuesOf<T>, T>(),\n )\n .values(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform
10
10
  */
11
11
  function tuiIsApplePlatform(navigator) {
12
- return navigator.platform.startsWith(`Mac`) || navigator.platform === `iPhone`;
12
+ return navigator.platform.startsWith('Mac') || navigator.platform === 'iPhone';
13
13
  }
14
14
 
15
15
  const IOS_REG_EXP = /ipad|iphone|ipod/;
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-os.js","sources":["../../../projects/cdk/utils/os/is-apple-platform.ts","../../../projects/cdk/utils/os/is-ios.ts","../../../projects/cdk/utils/os/is-apple.ts","../../../projects/cdk/utils/os/taiga-ui-cdk-utils-os.ts"],"sourcesContent":["/**\n * @description:\n * All Chrome / Chromium-based browsers will return MacIntel on macOS,\n * no matter what the hardware architecture is. See the source code here:\n * https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/frame/navigator_id.cc;l=64;drc=703d3c472cf27470dad21a3f2c8972aca3732cd6\n * But maybe in future years, it will be changed to MacM1\n *\n * Documentation:\n * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform\n */\nexport function tuiIsApplePlatform(navigator: Navigator): boolean {\n return navigator.platform.startsWith(`Mac`) || navigator.platform === `iPhone`;\n}\n","import {tuiIsApplePlatform} from './is-apple-platform';\n\nconst IOS_REG_EXP = /ipad|iphone|ipod/;\n\nexport function tuiIsIos(navigator: Navigator): boolean {\n return (\n IOS_REG_EXP.test(navigator.userAgent.toLowerCase()) ||\n (tuiIsApplePlatform(navigator) && navigator.maxTouchPoints > 1)\n );\n}\n","import {tuiIsIos} from './is-ios';\n\nconst SAFARI_REG_EXP = /^((?!chrome|android).)*safari/i;\n\nexport function tuiIsApple(navigator: Navigator): boolean {\n return tuiIsIos(navigator) || SAFARI_REG_EXP.test(navigator.userAgent.toLowerCase());\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;;;AASG;AACG,SAAU,kBAAkB,CAAC,SAAoB,EAAA;AACnD,IAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA,GAAA,CAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACnF;;ACVA,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAEjC,SAAU,QAAQ,CAAC,SAAoB,EAAA;IACzC,QACI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;AACnD,SAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,EACjE;AACN;;ACPA,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAElD,SAAU,UAAU,CAAC,SAAoB,EAAA;AAC3C,IAAA,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;AACzF;;ACNA;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-os.js","sources":["../../../projects/cdk/utils/os/is-apple-platform.ts","../../../projects/cdk/utils/os/is-ios.ts","../../../projects/cdk/utils/os/is-apple.ts","../../../projects/cdk/utils/os/taiga-ui-cdk-utils-os.ts"],"sourcesContent":["/**\n * @description:\n * All Chrome / Chromium-based browsers will return MacIntel on macOS,\n * no matter what the hardware architecture is. See the source code here:\n * https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/frame/navigator_id.cc;l=64;drc=703d3c472cf27470dad21a3f2c8972aca3732cd6\n * But maybe in future years, it will be changed to MacM1\n *\n * Documentation:\n * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform\n */\nexport function tuiIsApplePlatform(navigator: Navigator): boolean {\n return navigator.platform.startsWith('Mac') || navigator.platform === 'iPhone';\n}\n","import {tuiIsApplePlatform} from './is-apple-platform';\n\nconst IOS_REG_EXP = /ipad|iphone|ipod/;\n\nexport function tuiIsIos(navigator: Navigator): boolean {\n return (\n IOS_REG_EXP.test(navigator.userAgent.toLowerCase()) ||\n (tuiIsApplePlatform(navigator) && navigator.maxTouchPoints > 1)\n );\n}\n","import {tuiIsIos} from './is-ios';\n\nconst SAFARI_REG_EXP = /^((?!chrome|android).)*safari/i;\n\nexport function tuiIsApple(navigator: Navigator): boolean {\n return tuiIsIos(navigator) || SAFARI_REG_EXP.test(navigator.userAgent.toLowerCase());\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;;;AASG;AACG,SAAU,kBAAkB,CAAC,SAAoB,EAAA;AACnD,IAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACnF;;ACVA,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAEjC,SAAU,QAAQ,CAAC,SAAoB,EAAA;IACzC,QACI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;AACnD,SAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,EACjE;AACN;;ACPA,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAElD,SAAU,UAAU,CAAC,SAAoB,EAAA;AAC3C,IAAA,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;AACzF;;ACNA;;AAEG;;;;"}
@@ -4,11 +4,11 @@ function makeRandomSalt() {
4
4
  return Math.floor(Math.random() * Date.now());
5
5
  }
6
6
  function escapeRegExp(search) {
7
- return search.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, `\\$&`);
7
+ return search.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
8
8
  }
9
9
  function extractLinearGradientIdsFromSvg(svg) {
10
10
  var _a;
11
- const ids = ((_a = svg.match(/url\(("?)('*)#(.*?)('*)\)/g)) !== null && _a !== void 0 ? _a : []).map(url => url.slice(4, url.length - 1).replace(/['"#]+/g, ``));
11
+ const ids = ((_a = svg.match(/url\(("?)('*)#(.*?)('*)\)/g)) !== null && _a !== void 0 ? _a : []).map(url => url.slice(4, url.length - 1).replace(/['"#]+/g, ''));
12
12
  return Array.from(new Set(ids));
13
13
  }
14
14
  /**
@@ -17,10 +17,10 @@ function extractLinearGradientIdsFromSvg(svg) {
17
17
  */
18
18
  function setFallbackForGradientFill(svg, fallback) {
19
19
  try {
20
- const tree = new DOMParser().parseFromString(svg, `text/html`);
20
+ const tree = new DOMParser().parseFromString(svg, 'text/html');
21
21
  tree.body
22
- .querySelectorAll(`[fill^=url]`) // only gradient
23
- .forEach(element => element.setAttribute(`fill`, `${element.getAttribute(`fill`)} ${fallback}`.trim()));
22
+ .querySelectorAll('[fill^=url]') // only gradient
23
+ .forEach(element => element.setAttribute('fill', `${element.getAttribute('fill')} ${fallback}`.trim()));
24
24
  return tree.body.innerHTML.trim();
25
25
  }
26
26
  catch (_a) {
@@ -46,18 +46,18 @@ function tuiSvgLinearGradientProcessor(svg, salt = makeRandomSalt(),
46
46
  * TODO: remove in v4.0
47
47
  * @deprecated
48
48
  */
49
- fallback = `rgba(0, 0, 0, 0.7)`) {
49
+ fallback = 'rgba(0, 0, 0, 0.7)') {
50
50
  if (tuiIsString(svg)) {
51
51
  const uniqueIds = extractLinearGradientIdsFromSvg(svg);
52
52
  const rawSvg = uniqueIds.reduce((newSvg, previousId) => {
53
53
  const escapedId = escapeRegExp(previousId);
54
54
  const newId = `id_${salt}_${previousId}`;
55
55
  return newSvg
56
- .replace(new RegExp(`"${escapedId}"`, `g`), `"${newId}"`)
57
- .replace(new RegExp(`'${escapedId}'`, `g`), `'${newId}'`)
58
- .replace(new RegExp(`url\\('#${escapedId}'\\)`, `g`), `url('#${newId}')`)
59
- .replace(new RegExp(`url\\("#${escapedId}"\\)`, `g`), `url("#${newId}")`)
60
- .replace(new RegExp(`url\\(#${escapedId}\\)`, `g`), `url(#${newId})`);
56
+ .replace(new RegExp(`"${escapedId}"`, 'g'), `"${newId}"`)
57
+ .replace(new RegExp(`'${escapedId}'`, 'g'), `'${newId}'`)
58
+ .replace(new RegExp(`url\\('#${escapedId}'\\)`, 'g'), `url('#${newId}')`)
59
+ .replace(new RegExp(`url\\("#${escapedId}"\\)`, 'g'), `url("#${newId}")`)
60
+ .replace(new RegExp(`url\\(#${escapedId}\\)`, 'g'), `url(#${newId})`);
61
61
  }, svg);
62
62
  return setFallbackForGradientFill(rawSvg, fallback);
63
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-svg.js","sources":["../../../projects/cdk/utils/svg/svg-linear-gradient-processor.ts","../../../projects/cdk/utils/svg/taiga-ui-cdk-utils-svg.ts"],"sourcesContent":["import {TuiSafeHtml} from '@taiga-ui/cdk/interfaces';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\nfunction makeRandomSalt(): number {\n return Math.floor(Math.random() * Date.now());\n}\n\nfunction escapeRegExp(search: string): string {\n return search.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, `\\\\$&`);\n}\n\nfunction extractLinearGradientIdsFromSvg(svg: string): string[] {\n const ids = (svg.match(/url\\((\"?)('*)#(.*?)('*)\\)/g) ?? []).map(url =>\n url.slice(4, url.length - 1).replace(/['\"#]+/g, ``),\n );\n\n return Array.from(new Set(ids));\n}\n\n/**\n * TODO: remove in v4.0\n * @deprecated\n */\nfunction setFallbackForGradientFill(svg: string, fallback: string): string {\n try {\n const tree = new DOMParser().parseFromString(svg, `text/html`);\n\n tree.body\n .querySelectorAll(`[fill^=url]`) // only gradient\n .forEach(element =>\n element.setAttribute(\n `fill`,\n `${element.getAttribute(`fill`)} ${fallback}`.trim(),\n ),\n );\n\n return tree.body.innerHTML.trim();\n } catch {\n return svg;\n }\n}\n\n/**\n * @description:\n * Any ‘linearGradient’ attributes which are defined on the referenced\n * element which are not defined on this element are inherited by this element.\n * If this element has no defined gradient stops, and the referenced element does\n * (possibly due to its own ‘xlink:href’ attribute), then this element inherits\n * the gradient stop from the referenced element. Inheritance can be indirect\n * to an arbitrary level; thus, if the referenced element inherits attribute\n * or gradient stops due to its own ‘xlink:href’ attribute, then the current\n * element can inherit those attributes or gradient stops.\n *\n * Documentation: https://www.w3.org/TR/SVG11/pservers.html\n *\n */\nexport function tuiSvgLinearGradientProcessor(\n svg: TuiSafeHtml,\n salt: number | string = makeRandomSalt(),\n /**\n * TODO: remove in v4.0\n * @deprecated\n */\n fallback: string = `rgba(0, 0, 0, 0.7)`,\n): TuiSafeHtml {\n if (tuiIsString(svg)) {\n const uniqueIds = extractLinearGradientIdsFromSvg(svg);\n const rawSvg = uniqueIds.reduce((newSvg, previousId) => {\n const escapedId = escapeRegExp(previousId);\n const newId = `id_${salt}_${previousId}`;\n\n return newSvg\n .replace(new RegExp(`\"${escapedId}\"`, `g`), `\"${newId}\"`)\n .replace(new RegExp(`'${escapedId}'`, `g`), `'${newId}'`)\n .replace(new RegExp(`url\\\\('#${escapedId}'\\\\)`, `g`), `url('#${newId}')`)\n .replace(new RegExp(`url\\\\(\"#${escapedId}\"\\\\)`, `g`), `url(\"#${newId}\")`)\n .replace(new RegExp(`url\\\\(#${escapedId}\\\\)`, `g`), `url(#${newId})`);\n }, svg);\n\n return setFallbackForGradientFill(rawSvg, fallback);\n }\n\n return svg;\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-utils-svg.js","sources":["../../../projects/cdk/utils/svg/svg-linear-gradient-processor.ts","../../../projects/cdk/utils/svg/taiga-ui-cdk-utils-svg.ts"],"sourcesContent":["import {TuiSafeHtml} from '@taiga-ui/cdk/interfaces';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\nfunction makeRandomSalt(): number {\n return Math.floor(Math.random() * Date.now());\n}\n\nfunction escapeRegExp(search: string): string {\n return search.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n}\n\nfunction extractLinearGradientIdsFromSvg(svg: string): string[] {\n const ids = (svg.match(/url\\((\"?)('*)#(.*?)('*)\\)/g) ?? []).map(url =>\n url.slice(4, url.length - 1).replace(/['\"#]+/g, ''),\n );\n\n return Array.from(new Set(ids));\n}\n\n/**\n * TODO: remove in v4.0\n * @deprecated\n */\nfunction setFallbackForGradientFill(svg: string, fallback: string): string {\n try {\n const tree = new DOMParser().parseFromString(svg, 'text/html');\n\n tree.body\n .querySelectorAll('[fill^=url]') // only gradient\n .forEach(element =>\n element.setAttribute(\n 'fill',\n `${element.getAttribute('fill')} ${fallback}`.trim(),\n ),\n );\n\n return tree.body.innerHTML.trim();\n } catch {\n return svg;\n }\n}\n\n/**\n * @description:\n * Any ‘linearGradient’ attributes which are defined on the referenced\n * element which are not defined on this element are inherited by this element.\n * If this element has no defined gradient stops, and the referenced element does\n * (possibly due to its own ‘xlink:href’ attribute), then this element inherits\n * the gradient stop from the referenced element. Inheritance can be indirect\n * to an arbitrary level; thus, if the referenced element inherits attribute\n * or gradient stops due to its own ‘xlink:href’ attribute, then the current\n * element can inherit those attributes or gradient stops.\n *\n * Documentation: https://www.w3.org/TR/SVG11/pservers.html\n *\n */\nexport function tuiSvgLinearGradientProcessor(\n svg: TuiSafeHtml,\n salt: number | string = makeRandomSalt(),\n /**\n * TODO: remove in v4.0\n * @deprecated\n */\n fallback: string = 'rgba(0, 0, 0, 0.7)',\n): TuiSafeHtml {\n if (tuiIsString(svg)) {\n const uniqueIds = extractLinearGradientIdsFromSvg(svg);\n const rawSvg = uniqueIds.reduce((newSvg, previousId) => {\n const escapedId = escapeRegExp(previousId);\n const newId = `id_${salt}_${previousId}`;\n\n return newSvg\n .replace(new RegExp(`\"${escapedId}\"`, 'g'), `\"${newId}\"`)\n .replace(new RegExp(`'${escapedId}'`, 'g'), `'${newId}'`)\n .replace(new RegExp(`url\\\\('#${escapedId}'\\\\)`, 'g'), `url('#${newId}')`)\n .replace(new RegExp(`url\\\\(\"#${escapedId}\"\\\\)`, 'g'), `url(\"#${newId}\")`)\n .replace(new RegExp(`url\\\\(#${escapedId}\\\\)`, 'g'), `url(#${newId})`);\n }, svg);\n\n return setFallbackForGradientFill(rawSvg, fallback);\n }\n\n return svg;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/cdk",
3
- "version": "3.60.0",
3
+ "version": "3.61.0",
4
4
  "description": "Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance",
5
5
  "keywords": [
6
6
  "angular",
@@ -2,33 +2,33 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ALL_FILES = exports.ALL_TS_FILES = void 0;
4
4
  const EXCLUDE_DIRECTORIES = [
5
- `e2e`,
5
+ 'e2e',
6
6
  // compiled
7
- `scripts`,
8
- `dist`,
9
- `node_modules`,
10
- `coverage`,
11
- `dll`,
12
- `tmp`,
13
- `__build__`,
7
+ 'scripts',
8
+ 'dist',
9
+ 'node_modules',
10
+ 'coverage',
11
+ 'dll',
12
+ 'tmp',
13
+ '__build__',
14
14
  // hidden directories
15
- `.rpt2_cache`,
16
- `.husky`,
17
- `.vscode`,
18
- `.idea`,
19
- `.github`,
20
- `.gitlab`,
21
- `.devplatform`,
22
- `.angular`,
23
- `.tmp`,
24
- `.nx`,
25
- ].join(`|`);
15
+ '.rpt2_cache',
16
+ '.husky',
17
+ '.vscode',
18
+ '.idea',
19
+ '.github',
20
+ '.gitlab',
21
+ '.devplatform',
22
+ '.angular',
23
+ '.tmp',
24
+ '.nx',
25
+ ].join('|');
26
26
  const EXCLUDE_FILE_PATTERNS = [
27
- `*__name@dasherize__*`,
28
- `*__name@camelize__*`,
29
- `*__name@underscore__*`,
30
- `*.d`, // typings
31
- ].join(`|`);
27
+ '*__name@dasherize__*',
28
+ '*__name@camelize__*',
29
+ '*__name@underscore__*',
30
+ '*.d', // typings
31
+ ].join('|');
32
32
  exports.ALL_TS_FILES = [
33
33
  `!(${EXCLUDE_FILE_PATTERNS}).ts`,
34
34
  `!(${EXCLUDE_DIRECTORIES})/**/!(${EXCLUDE_FILE_PATTERNS}).ts`,
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TAIGA_THEME_FONTS = exports.TAIGA_THEME_STYLE = exports.TAIGA_GLOBAL_NEW_STYLE = exports.TAIGA_GLOBAL_OLD_STYLE = void 0;
4
- exports.TAIGA_GLOBAL_OLD_STYLE = `node_modules/@taiga-ui/core/styles/taiga-ui-global.less`;
5
- exports.TAIGA_GLOBAL_NEW_STYLE = `node_modules/@taiga-ui/styles/taiga-ui-global.less`;
6
- exports.TAIGA_THEME_STYLE = `node_modules/@taiga-ui/core/styles/taiga-ui-theme.less`;
7
- exports.TAIGA_THEME_FONTS = `node_modules/@taiga-ui/core/styles/taiga-ui-fonts.less`;
4
+ exports.TAIGA_GLOBAL_OLD_STYLE = 'node_modules/@taiga-ui/core/styles/taiga-ui-global.less';
5
+ exports.TAIGA_GLOBAL_NEW_STYLE = 'node_modules/@taiga-ui/styles/taiga-ui-global.less';
6
+ exports.TAIGA_THEME_STYLE = 'node_modules/@taiga-ui/core/styles/taiga-ui-theme.less';
7
+ exports.TAIGA_THEME_FONTS = 'node_modules/@taiga-ui/core/styles/taiga-ui-fonts.less';
@@ -2,32 +2,32 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SANITIZER_MODULES = exports.ALERT_MODULES = exports.DIALOG_MODULES = exports.BROWSER_ANIMATION_MODULE = exports.MAIN_MODULE = void 0;
4
4
  exports.MAIN_MODULE = {
5
- name: `TuiRootModule`,
6
- packageName: `@taiga-ui/core`,
5
+ name: 'TuiRootModule',
6
+ packageName: '@taiga-ui/core',
7
7
  };
8
8
  exports.BROWSER_ANIMATION_MODULE = {
9
- name: `BrowserAnimationsModule`,
10
- packageName: `@angular/platform-browser/animations`,
9
+ name: 'BrowserAnimationsModule',
10
+ packageName: '@angular/platform-browser/animations',
11
11
  };
12
12
  exports.DIALOG_MODULES = [
13
13
  {
14
- name: `TuiDialogModule`,
15
- packageName: `@taiga-ui/core`,
14
+ name: 'TuiDialogModule',
15
+ packageName: '@taiga-ui/core',
16
16
  },
17
17
  ];
18
18
  exports.ALERT_MODULES = [
19
19
  {
20
- name: `TuiAlertModule`,
21
- packageName: `@taiga-ui/core`,
20
+ name: 'TuiAlertModule',
21
+ packageName: '@taiga-ui/core',
22
22
  },
23
23
  ];
24
24
  exports.SANITIZER_MODULES = [
25
25
  {
26
- name: `TUI_SANITIZER`,
27
- packageName: `@taiga-ui/core`,
26
+ name: 'TUI_SANITIZER',
27
+ packageName: '@taiga-ui/core',
28
28
  },
29
29
  {
30
- name: `NgDompurifySanitizer`,
31
- packageName: `@tinkoff/ng-dompurify`,
30
+ name: 'NgDompurifySanitizer',
31
+ packageName: '@tinkoff/ng-dompurify',
32
32
  },
33
33
  ];
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MAIN_PACKAGES = void 0;
4
- exports.MAIN_PACKAGES = [`core`, `cdk`, `kit`, `icons`];
4
+ exports.MAIN_PACKAGES = ['core', 'cdk', 'kit', 'icons'];
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DOMPURIFY_TYPES_VERSION = exports.DOMPURIFY_VERSION = exports.NG_DOMPURIFY_VERSION = exports.TAIGA_VERSION = void 0;
4
4
  const version_1 = require("../../../constants/version");
5
5
  exports.TAIGA_VERSION = `^${version_1.TUI_VERSION}`;
6
- exports.NG_DOMPURIFY_VERSION = `3.0.0`;
7
- exports.DOMPURIFY_VERSION = `2.2.9`;
8
- exports.DOMPURIFY_TYPES_VERSION = `2.2.3`;
6
+ exports.NG_DOMPURIFY_VERSION = '3.0.0';
7
+ exports.DOMPURIFY_VERSION = '2.2.9';
8
+ exports.DOMPURIFY_TYPES_VERSION = '2.2.3';