@taiga-ui/core 2.24.0 → 2.25.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 (458) hide show
  1. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  2. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  4. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-dialog.umd.js +14 -38
  6. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-dialog.umd.min.js +1 -1
  8. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  10. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  12. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  16. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-hints-host.umd.js +10 -10
  18. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-hints-host.umd.min.js +2 -2
  20. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  22. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +61 -61
  36. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +2 -2
  38. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-scrollbar.umd.js +22 -22
  40. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  41. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js +2 -2
  42. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  44. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  47. package/bundles/taiga-ui-core-components-wrapper.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-wrapper.umd.min.js.map +1 -1
  49. package/bundles/taiga-ui-core-components.umd.js +8 -8
  50. package/bundles/taiga-ui-core-components.umd.min.js +1 -1
  51. package/bundles/taiga-ui-core-constants.umd.js +3 -3
  52. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  53. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  54. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  55. package/bundles/taiga-ui-core-directives-border.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-directives-border.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  58. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  59. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  60. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  62. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  63. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  64. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  65. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  66. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  68. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  69. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  70. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  71. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  72. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  74. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  75. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  76. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  77. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  78. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  80. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-core-directives.umd.js +8 -8
  82. package/bundles/taiga-ui-core-directives.umd.min.js +1 -1
  83. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  84. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-core-modules-notifications.umd.js +23 -23
  86. package/bundles/taiga-ui-core-modules-notifications.umd.js.map +1 -1
  87. package/bundles/taiga-ui-core-modules-notifications.umd.min.js +1 -1
  88. package/bundles/taiga-ui-core-modules-notifications.umd.min.js.map +1 -1
  89. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  90. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  91. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  92. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  93. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  94. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  96. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  97. package/bundles/taiga-ui-core-pipes.umd.js +12 -12
  98. package/bundles/taiga-ui-core-pipes.umd.min.js +1 -1
  99. package/bundles/taiga-ui-core-providers.umd.js +9 -9
  100. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  101. package/bundles/taiga-ui-core-providers.umd.min.js +1 -1
  102. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  103. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  104. package/bundles/taiga-ui-core-tokens.umd.js +25 -25
  105. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  106. package/bundles/taiga-ui-core-tokens.umd.min.js +1 -1
  107. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  108. package/components/button/taiga-ui-core-components-button.metadata.json +1 -1
  109. package/components/data-list/index.d.ts +1 -1
  110. package/components/data-list/taiga-ui-core-components-data-list.metadata.json +1 -1
  111. package/components/dialog/dialog.directive.d.ts +2 -11
  112. package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
  113. package/components/dropdown-box/taiga-ui-core-components-dropdown-box.metadata.json +1 -1
  114. package/components/error/taiga-ui-core-components-error.metadata.json +1 -1
  115. package/components/expand/taiga-ui-core-components-expand.metadata.json +1 -1
  116. package/components/group/taiga-ui-core-components-group.metadata.json +1 -1
  117. package/components/hints-host/index.d.ts +2 -2
  118. package/components/hints-host/taiga-ui-core-components-hints-host.metadata.json +1 -1
  119. package/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.metadata.json +1 -1
  120. package/components/index.d.ts +1 -1
  121. package/components/label/taiga-ui-core-components-label.metadata.json +1 -1
  122. package/components/loader/taiga-ui-core-components-loader.metadata.json +1 -1
  123. package/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.metadata.json +1 -1
  124. package/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.metadata.json +1 -1
  125. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
  126. package/components/root/taiga-ui-core-components-root.metadata.json +1 -1
  127. package/components/scroll-controls/index.d.ts +1 -1
  128. package/components/scroll-controls/taiga-ui-core-components-scroll-controls.metadata.json +1 -1
  129. package/components/scrollbar/index.d.ts +1 -1
  130. package/components/scrollbar/taiga-ui-core-components-scrollbar.metadata.json +1 -1
  131. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  132. package/components/taiga-ui-core-components.metadata.json +1 -1
  133. package/components/theme-night/taiga-ui-core-components-theme-night.metadata.json +1 -1
  134. package/components/wrapper/taiga-ui-core-components-wrapper.metadata.json +1 -1
  135. package/constants/index.d.ts +1 -1
  136. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  137. package/constants/version.d.ts +1 -1
  138. package/directives/border/taiga-ui-core-directives-border.metadata.json +1 -1
  139. package/directives/color/index.d.ts +1 -1
  140. package/directives/color/taiga-ui-core-directives-color.metadata.json +1 -1
  141. package/directives/described-by/taiga-ui-core-directives-described-by.metadata.json +1 -1
  142. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  143. package/directives/hint/taiga-ui-core-directives-hint.metadata.json +1 -1
  144. package/directives/hint-controller/taiga-ui-core-directives-hint-controller.metadata.json +1 -1
  145. package/directives/index.d.ts +1 -1
  146. package/directives/manual-hint/taiga-ui-core-directives-manual-hint.metadata.json +1 -1
  147. package/directives/mask-accessor/taiga-ui-core-directives-mask-accessor.metadata.json +1 -1
  148. package/directives/mode/taiga-ui-core-directives-mode.metadata.json +1 -1
  149. package/directives/pointer-hint/taiga-ui-core-directives-pointer-hint.metadata.json +1 -1
  150. package/directives/scroll-into-view/taiga-ui-core-directives-scroll-into-view.metadata.json +1 -1
  151. package/directives/table-mode/taiga-ui-core-directives-table-mode.metadata.json +1 -1
  152. package/directives/taiga-ui-core-directives.metadata.json +1 -1
  153. package/directives/textfield-controller/index.d.ts +2 -2
  154. package/directives/textfield-controller/taiga-ui-core-directives-textfield-controller.metadata.json +1 -1
  155. package/directives/textfield-controller/textfield-controller.provider.d.ts +1 -1
  156. package/esm2015/components/button/button.component.js +1 -1
  157. package/esm2015/components/button/button.module.js +1 -1
  158. package/esm2015/components/data-list/data-list.component.js +1 -1
  159. package/esm2015/components/data-list/data-list.module.js +2 -2
  160. package/esm2015/components/data-list/index.js +2 -2
  161. package/esm2015/components/data-list/option/option.component.js +1 -1
  162. package/esm2015/components/dialog/dialog.component.js +1 -1
  163. package/esm2015/components/dialog/dialog.directive.js +14 -36
  164. package/esm2015/components/dialog/dialog.module.js +1 -1
  165. package/esm2015/components/dialog/dialog.service.js +1 -1
  166. package/esm2015/components/dropdown-box/dropdown-box.module.js +1 -1
  167. package/esm2015/components/error/error.module.js +1 -1
  168. package/esm2015/components/expand/expand.component.js +1 -1
  169. package/esm2015/components/expand/expand.module.js +2 -2
  170. package/esm2015/components/group/group.component.js +1 -1
  171. package/esm2015/components/group/group.module.js +1 -1
  172. package/esm2015/components/hints-host/hint-box/hint-box.component.js +1 -1
  173. package/esm2015/components/hints-host/hint-box/hint-box.module.js +1 -1
  174. package/esm2015/components/hints-host/hints-host.module.js +1 -1
  175. package/esm2015/components/hints-host/index.js +3 -3
  176. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +1 -1
  177. package/esm2015/components/hosted-dropdown/hosted-dropdown.module.js +2 -2
  178. package/esm2015/components/index.js +2 -2
  179. package/esm2015/components/label/label.module.js +1 -1
  180. package/esm2015/components/loader/loader.module.js +1 -1
  181. package/esm2015/components/primitive-calendar/primitive-calendar.module.js +1 -1
  182. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +1 -1
  183. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +1 -1
  184. package/esm2015/components/primitive-textfield/primitive-textfield.module.js +1 -1
  185. package/esm2015/components/primitive-textfield/primitive-textfield.providers.js +1 -1
  186. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +1 -1
  187. package/esm2015/components/root/root.module.js +1 -1
  188. package/esm2015/components/scroll-controls/index.js +2 -2
  189. package/esm2015/components/scroll-controls/scroll-controls.module.js +2 -2
  190. package/esm2015/components/scrollbar/index.js +2 -2
  191. package/esm2015/components/scrollbar/scrollbar.module.js +1 -1
  192. package/esm2015/components/svg/svg.module.js +1 -1
  193. package/esm2015/components/theme-night/theme-night.module.js +1 -1
  194. package/esm2015/components/wrapper/wrapper.module.js +1 -1
  195. package/esm2015/constants/index.js +2 -2
  196. package/esm2015/constants/version.js +2 -2
  197. package/esm2015/directives/border/border.module.js +1 -1
  198. package/esm2015/directives/color/color.module.js +1 -1
  199. package/esm2015/directives/color/index.js +2 -2
  200. package/esm2015/directives/described-by/described-by.module.js +1 -1
  201. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +1 -1
  202. package/esm2015/directives/dropdown-controller/dropdown-controller.module.js +1 -1
  203. package/esm2015/directives/dropdown-controller/dropdown-controller.provider.js +1 -1
  204. package/esm2015/directives/dropdown-controller/dropdown-controller.token.js +1 -1
  205. package/esm2015/directives/hint/hint.module.js +1 -1
  206. package/esm2015/directives/hint-controller/hint-controller.directive.js +1 -1
  207. package/esm2015/directives/hint-controller/hint-controller.module.js +1 -1
  208. package/esm2015/directives/hint-controller/hint-controller.provider.js +1 -1
  209. package/esm2015/directives/hint-controller/hint-controller.token.js +1 -1
  210. package/esm2015/directives/index.js +2 -2
  211. package/esm2015/directives/manual-hint/manual-hint.module.js +1 -1
  212. package/esm2015/directives/mask-accessor/mask-accessor.module.js +1 -1
  213. package/esm2015/directives/mode/mode.module.js +1 -1
  214. package/esm2015/directives/pointer-hint/pointer-hint.module.js +1 -1
  215. package/esm2015/directives/scroll-into-view/scroll-into-view.module.js +1 -1
  216. package/esm2015/directives/table-mode/table-mode.module.js +1 -1
  217. package/esm2015/directives/textfield-controller/index.js +3 -3
  218. package/esm2015/directives/textfield-controller/textfield-controller.module.js +1 -1
  219. package/esm2015/directives/textfield-controller/textfield-controller.provider.js +2 -2
  220. package/esm2015/directives/textfield-controller/textfield.controller.js +1 -1
  221. package/esm2015/interfaces/dialog-context.js +1 -1
  222. package/esm2015/interfaces/index.js +1 -1
  223. package/esm2015/internal/svg-defs-host/svg-defs-host.module.js +1 -1
  224. package/esm2015/mask/index.js +1 -1
  225. package/esm2015/modules/notifications/index.js +3 -3
  226. package/esm2015/modules/notifications/notification-alert/Notification-alert.js +1 -1
  227. package/esm2015/modules/notifications/notification-alert/notification-alert.component.js +1 -1
  228. package/esm2015/modules/notifications/notifications-host/notifications-host.component.js +1 -1
  229. package/esm2015/modules/notifications/notifications.module.js +1 -1
  230. package/esm2015/modules/notifications/notifications.service.js +1 -1
  231. package/esm2015/pipes/calendar-sheet/calendar-sheet.module.js +1 -1
  232. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +1 -1
  233. package/esm2015/pipes/calendar-sheet/index.js +2 -2
  234. package/esm2015/pipes/format-number/format-number.pipe.js +1 -1
  235. package/esm2015/pipes/index.js +2 -2
  236. package/esm2015/pipes/month/month.module.js +1 -1
  237. package/esm2015/pipes/pluralize/pluralize.module.js +1 -1
  238. package/esm2015/providers/index.js +2 -2
  239. package/esm2015/services/hint.service.js +1 -1
  240. package/esm2015/tokens/animation-options.js +1 -1
  241. package/esm2015/tokens/index.js +5 -5
  242. package/esm2015/tokens/ordered-short-week-days.js +1 -1
  243. package/esm2015/types/marker-handler.js +1 -1
  244. package/esm5/components/button/button.component.js +1 -1
  245. package/esm5/components/button/button.module.js +1 -1
  246. package/esm5/components/data-list/data-list.component.js +1 -1
  247. package/esm5/components/data-list/data-list.module.js +2 -2
  248. package/esm5/components/data-list/index.js +2 -2
  249. package/esm5/components/data-list/option/option.component.js +1 -1
  250. package/esm5/components/dialog/dialog.component.js +1 -1
  251. package/esm5/components/dialog/dialog.directive.js +18 -43
  252. package/esm5/components/dialog/dialog.module.js +1 -1
  253. package/esm5/components/dialog/dialog.service.js +1 -1
  254. package/esm5/components/dropdown-box/dropdown-box.module.js +1 -1
  255. package/esm5/components/error/error.module.js +1 -1
  256. package/esm5/components/expand/expand.component.js +1 -1
  257. package/esm5/components/expand/expand.module.js +2 -2
  258. package/esm5/components/group/group.component.js +1 -1
  259. package/esm5/components/group/group.module.js +1 -1
  260. package/esm5/components/hints-host/hint-box/hint-box.component.js +1 -1
  261. package/esm5/components/hints-host/hint-box/hint-box.module.js +1 -1
  262. package/esm5/components/hints-host/hints-host.module.js +1 -1
  263. package/esm5/components/hints-host/index.js +3 -3
  264. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +1 -1
  265. package/esm5/components/hosted-dropdown/hosted-dropdown.module.js +2 -2
  266. package/esm5/components/index.js +2 -2
  267. package/esm5/components/label/label.module.js +1 -1
  268. package/esm5/components/loader/loader.module.js +1 -1
  269. package/esm5/components/primitive-calendar/primitive-calendar.module.js +1 -1
  270. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +1 -1
  271. package/esm5/components/primitive-textfield/primitive-textfield.component.js +1 -1
  272. package/esm5/components/primitive-textfield/primitive-textfield.module.js +1 -1
  273. package/esm5/components/primitive-textfield/primitive-textfield.providers.js +1 -1
  274. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +1 -1
  275. package/esm5/components/root/root.module.js +1 -1
  276. package/esm5/components/scroll-controls/index.js +2 -2
  277. package/esm5/components/scroll-controls/scroll-controls.module.js +2 -2
  278. package/esm5/components/scrollbar/index.js +2 -2
  279. package/esm5/components/scrollbar/scrollbar.module.js +1 -1
  280. package/esm5/components/svg/svg.module.js +1 -1
  281. package/esm5/components/theme-night/theme-night.module.js +1 -1
  282. package/esm5/components/wrapper/wrapper.module.js +1 -1
  283. package/esm5/constants/index.js +2 -2
  284. package/esm5/constants/version.js +2 -2
  285. package/esm5/directives/border/border.module.js +1 -1
  286. package/esm5/directives/color/color.module.js +1 -1
  287. package/esm5/directives/color/index.js +2 -2
  288. package/esm5/directives/described-by/described-by.module.js +1 -1
  289. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +1 -1
  290. package/esm5/directives/dropdown-controller/dropdown-controller.module.js +1 -1
  291. package/esm5/directives/dropdown-controller/dropdown-controller.provider.js +1 -1
  292. package/esm5/directives/dropdown-controller/dropdown-controller.token.js +1 -1
  293. package/esm5/directives/hint/hint.module.js +1 -1
  294. package/esm5/directives/hint-controller/hint-controller.directive.js +1 -1
  295. package/esm5/directives/hint-controller/hint-controller.module.js +1 -1
  296. package/esm5/directives/hint-controller/hint-controller.provider.js +1 -1
  297. package/esm5/directives/hint-controller/hint-controller.token.js +1 -1
  298. package/esm5/directives/index.js +2 -2
  299. package/esm5/directives/manual-hint/manual-hint.module.js +1 -1
  300. package/esm5/directives/mask-accessor/mask-accessor.module.js +1 -1
  301. package/esm5/directives/mode/mode.module.js +1 -1
  302. package/esm5/directives/pointer-hint/pointer-hint.module.js +1 -1
  303. package/esm5/directives/scroll-into-view/scroll-into-view.module.js +1 -1
  304. package/esm5/directives/table-mode/table-mode.module.js +1 -1
  305. package/esm5/directives/textfield-controller/index.js +3 -3
  306. package/esm5/directives/textfield-controller/textfield-controller.module.js +1 -1
  307. package/esm5/directives/textfield-controller/textfield-controller.provider.js +2 -2
  308. package/esm5/directives/textfield-controller/textfield.controller.js +1 -1
  309. package/esm5/interfaces/dialog-context.js +1 -1
  310. package/esm5/interfaces/index.js +1 -1
  311. package/esm5/internal/svg-defs-host/svg-defs-host.module.js +1 -1
  312. package/esm5/mask/index.js +1 -1
  313. package/esm5/modules/notifications/index.js +3 -3
  314. package/esm5/modules/notifications/notification-alert/Notification-alert.js +1 -1
  315. package/esm5/modules/notifications/notification-alert/notification-alert.component.js +1 -1
  316. package/esm5/modules/notifications/notifications-host/notifications-host.component.js +1 -1
  317. package/esm5/modules/notifications/notifications.module.js +1 -1
  318. package/esm5/modules/notifications/notifications.service.js +1 -1
  319. package/esm5/pipes/calendar-sheet/calendar-sheet.module.js +1 -1
  320. package/esm5/pipes/calendar-sheet/calendar-sheet.pipe.js +1 -1
  321. package/esm5/pipes/calendar-sheet/index.js +2 -2
  322. package/esm5/pipes/format-number/format-number.pipe.js +1 -1
  323. package/esm5/pipes/index.js +2 -2
  324. package/esm5/pipes/month/month.module.js +1 -1
  325. package/esm5/pipes/pluralize/pluralize.module.js +1 -1
  326. package/esm5/providers/index.js +2 -2
  327. package/esm5/services/hint.service.js +1 -1
  328. package/esm5/tokens/animation-options.js +1 -1
  329. package/esm5/tokens/index.js +5 -5
  330. package/esm5/tokens/ordered-short-week-days.js +1 -1
  331. package/esm5/types/marker-handler.js +1 -1
  332. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  333. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  334. package/fesm2015/taiga-ui-core-components-dialog.js +14 -35
  335. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  336. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  337. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  338. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  339. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  340. package/fesm2015/taiga-ui-core-components-hints-host.js +5 -5
  341. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  342. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  343. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  344. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  345. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  346. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  347. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  348. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  349. package/fesm2015/taiga-ui-core-components-scroll-controls.js +56 -56
  350. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  351. package/fesm2015/taiga-ui-core-components-scrollbar.js +17 -17
  352. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  353. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  354. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  355. package/fesm2015/taiga-ui-core-components-wrapper.js.map +1 -1
  356. package/fesm2015/taiga-ui-core-components.js +1 -1
  357. package/fesm2015/taiga-ui-core-constants.js +3 -3
  358. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  359. package/fesm2015/taiga-ui-core-directives-border.js.map +1 -1
  360. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  361. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  362. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  363. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  364. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  365. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  366. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  367. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  368. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  369. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  370. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  371. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  372. package/fesm2015/taiga-ui-core-directives.js +1 -1
  373. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  374. package/fesm2015/taiga-ui-core-modules-notifications.js +22 -22
  375. package/fesm2015/taiga-ui-core-modules-notifications.js.map +1 -1
  376. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  377. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  378. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  379. package/fesm2015/taiga-ui-core-pipes-pluralize.js.map +1 -1
  380. package/fesm2015/taiga-ui-core-pipes.js +1 -1
  381. package/fesm2015/taiga-ui-core-providers.js +7 -7
  382. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  383. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  384. package/fesm2015/taiga-ui-core-tokens.js +25 -25
  385. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  386. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  387. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  388. package/fesm5/taiga-ui-core-components-dialog.js +18 -42
  389. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  390. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  391. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  392. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  393. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  394. package/fesm5/taiga-ui-core-components-hints-host.js +5 -5
  395. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  396. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  397. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  398. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  399. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  400. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  401. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  402. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  403. package/fesm5/taiga-ui-core-components-scroll-controls.js +63 -63
  404. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  405. package/fesm5/taiga-ui-core-components-scrollbar.js +20 -20
  406. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  407. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  408. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  409. package/fesm5/taiga-ui-core-components-wrapper.js.map +1 -1
  410. package/fesm5/taiga-ui-core-components.js +1 -1
  411. package/fesm5/taiga-ui-core-constants.js +3 -3
  412. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  413. package/fesm5/taiga-ui-core-directives-border.js.map +1 -1
  414. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  415. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  416. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  417. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  418. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  419. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  420. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  421. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  422. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  423. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  424. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  425. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  426. package/fesm5/taiga-ui-core-directives.js +1 -1
  427. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  428. package/fesm5/taiga-ui-core-modules-notifications.js +23 -23
  429. package/fesm5/taiga-ui-core-modules-notifications.js.map +1 -1
  430. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  431. package/fesm5/taiga-ui-core-pipes-format-number.js.map +1 -1
  432. package/fesm5/taiga-ui-core-pipes-month.js.map +1 -1
  433. package/fesm5/taiga-ui-core-pipes-pluralize.js.map +1 -1
  434. package/fesm5/taiga-ui-core-pipes.js +1 -1
  435. package/fesm5/taiga-ui-core-providers.js +7 -7
  436. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  437. package/fesm5/taiga-ui-core-services.js.map +1 -1
  438. package/fesm5/taiga-ui-core-tokens.js +25 -25
  439. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  440. package/interfaces/index.d.ts +2 -2
  441. package/interfaces/taiga-ui-core-interfaces.metadata.json +1 -1
  442. package/internal/svg-defs-host/taiga-ui-core-internal-svg-defs-host.metadata.json +1 -1
  443. package/mask/index.d.ts +1 -1
  444. package/mask/taiga-ui-core-mask.metadata.json +1 -1
  445. package/modules/notifications/index.d.ts +2 -2
  446. package/modules/notifications/taiga-ui-core-modules-notifications.metadata.json +1 -1
  447. package/package.json +3 -3
  448. package/pipes/calendar-sheet/index.d.ts +1 -1
  449. package/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.metadata.json +1 -1
  450. package/pipes/index.d.ts +1 -1
  451. package/pipes/month/taiga-ui-core-pipes-month.metadata.json +1 -1
  452. package/pipes/pluralize/taiga-ui-core-pipes-pluralize.metadata.json +1 -1
  453. package/pipes/taiga-ui-core-pipes.metadata.json +1 -1
  454. package/providers/index.d.ts +1 -1
  455. package/providers/taiga-ui-core-providers.metadata.json +1 -1
  456. package/services/taiga-ui-core-services.metadata.json +1 -1
  457. package/tokens/index.d.ts +4 -4
  458. package/tokens/taiga-ui-core-tokens.metadata.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-hints-host.js","sources":["ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts","ng://@taiga-ui/core/components/hints-host/taiga-ui-core-components-hints-host.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\n@Component({\n selector: 'tui-hints-host',\n templateUrl: './hints-host.template.html',\n styleUrls: ['./hints-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n host: {\n 'aria-live': 'polite',\n },\n})\nexport class TuiHintsHostComponent {\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: TuiHintService,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n onHovered(hovered: boolean, directive: AbstractTuiHint) {\n if (directive instanceof TuiHintDirective) {\n directive.componentHovered$.next(hovered);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {px, TUI_IS_MOBILE, TuiDestroyService, tuiPure, tuiZonefree} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'bottom-left',\n 'top-right': 'bottom-right',\n 'bottom-left': 'top-left',\n 'bottom-right': 'top-right',\n left: 'right',\n right: 'left',\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'top-right',\n 'top-right': 'top-left',\n 'bottom-left': 'bottom-right',\n 'bottom-right': 'bottom-left',\n left: 'right',\n right: 'left',\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-hint-box[hint]',\n templateUrl: './hint-box.template.html',\n styleUrls: ['./hint-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiHintBoxComponent {\n @Input()\n hint!: AbstractTuiHint;\n\n @ViewChild('arrow')\n private readonly arrow?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(TuiHintsHostComponent)\n private readonly hintsHost: TuiHintsHostComponent,\n ) {\n animationFrame$.pipe(tuiZonefree(ngZone), takeUntil(destroy$)).subscribe(() => {\n this.calculatePosition();\n });\n }\n\n @tuiPure\n @HostBinding('class._untouchable')\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding('attr.data-mode')\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition() {\n if (this.mode !== 'overflow') {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates() {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n 'left',\n 'right',\n 'bottom-left',\n 'bottom-right',\n 'top-left',\n 'top-right',\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n while (true) {\n switch (direction) {\n case 'left':\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case 'right':\n top = horizontalTop;\n left = horizontalRight;\n break;\n case 'top-right':\n top = verticalTop;\n left = verticalRight;\n break;\n case 'top-left':\n top = verticalTop;\n left = verticalLeft;\n break;\n case 'bottom-right':\n top = verticalBottom;\n left = verticalRight;\n break;\n case 'bottom-left':\n top = verticalBottom;\n left = verticalLeft;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private calculateMobileCoordinates() {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit\n ? 'top'\n : 'bottom';\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private setOverflowStyles() {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHoveredModule,\n TuiHintBoxModule,\n TuiActiveZoneModule,\n ],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n entryComponents: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;IAkBa,qBAAqB,GAAlC,MAAa,qBAAqB;IAM9B,YACoD,OAAyB,EACpC,UAAmC,EACvC,MAAsB;QAFP,YAAO,GAAP,OAAO,CAAkB;QACpC,eAAU,GAAV,UAAU,CAAyB;QACvC,WAAM,GAAN,MAAM,CAAgB;QARlD,cAAS,GAAG,gBACjB,KAAK,EAAE,EAAE,IACN,IAAI,CAAC,OAAO,CACT,CAAC;KAMP;IAEJ,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;KAChE;IAED,SAAS,CAAC,OAAgB,EAAE,SAA0B;QAClD,IAAI,SAAS,YAAY,gBAAgB,EAAE;YACvC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC7C;KACJ;EACJ;;4CAdQ,MAAM,SAAC,qBAAqB;YACoB,UAAU,uBAA1D,MAAM,SAAC,UAAU;YACuB,cAAc,uBAAtD,MAAM,SAAC,cAAc;;AATjB,qBAAqB;IAVjC,SAAS,CAAC;QACP,QAAQ,EAAE,gBAAgB;QAC1B,udAAyC;QAEzC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;QACvB,IAAI,EAAE;YACF,WAAW,EAAE,QAAQ;SACxB;;KACJ,CAAC;IAQO,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;IAC7B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;GATlB,qBAAqB,CAqBjC;;ACpBD,MAAM,KAAK,GAAG,CAAC,CAAC;AAChB,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,gBAAgB,GAAG,YAAY,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACxE,MAAM,yBAAyB,GAA0C;IACrE,UAAU,EAAE,aAAa;IACzB,WAAW,EAAE,cAAc;IAC3B,aAAa,EAAE,UAAU;IACzB,cAAc,EAAE,WAAW;IAC3B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,MAAM;CAChB,CAAC;AACF,MAAM,2BAA2B,GAA0C;IACvE,UAAU,EAAE,WAAW;IACvB,WAAW,EAAE,UAAU;IACvB,aAAa,EAAE,cAAc;IAC7B,cAAc,EAAE,aAAa;IAC7B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,MAAM;CAChB,CAAC;AAEF;AACA;AACA;IAQa,mBAAmB,GAAhC,MAAa,mBAAmB;IAO5B,YAC6B,eAAmC,EACjC,QAA0B,EACrC,MAAc,EACO,UAAmC,EACvC,SAAiB,EAClB,QAAiB,EAEhC,SAAgC;QAJZ,eAAU,GAAV,UAAU,CAAyB;QACvC,cAAS,GAAT,SAAS,CAAQ;QAClB,aAAQ,GAAR,QAAQ,CAAS;QAEhC,cAAS,GAAT,SAAS,CAAuB;QAEjD,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YACrE,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B,CAAC,CAAC;KACN;IAID,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,IAAI,YAAY,uBAAuB,CAAC;KACvD;IAGD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;KACzB;;;;;IAMO,iBAAiB;QACrB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE;YAC1B,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC/B;aAAM;YACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B;KACJ;IAEO,oBAAoB;QACxB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAElC,OAAO;SACV;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAC9C,MAAM,EAAC,KAAK,EAAC,GAAG,OAAO,CAAC;QACxB,MAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,GAAG,gBAAgB,GAAG,CAAC,CAAC;QACzD,MAAM,UAAU,GAAmB;YAC/B,MAAM;YACN,OAAO;YACP,aAAa;YACb,cAAc;YACd,UAAU;YACV,WAAW;SACd,CAAC;QAEF,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,EAAC,SAAS,EAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QAE5B,MAAM,aAAa,GACf,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC;QACjF,MAAM,cAAc,GAChB,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;QAChE,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;QACjF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAChE,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAC/E,MAAM,aAAa,GAAG,UAAU;cAC1B,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI;cAC/B,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,GAAG,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC;QAC9E,MAAM,YAAY,GAAG,UAAU;cACzB,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI;cACpE,QAAQ,CAAC,IAAI;gBACb,WAAW,CAAC,KAAK;gBACjB,QAAQ,CAAC,KAAK,GAAG,CAAC;gBAClB,gBAAgB;gBAChB,UAAU,CAAC,IAAI,CAAC;QAEtB,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpD,OAAO,IAAI,EAAE;YACT,QAAQ,SAAS;gBACb,KAAK,MAAM;oBACP,GAAG,GAAG,aAAa,CAAC;oBACpB,IAAI,GAAG,cAAc,CAAC;oBACtB,MAAM;gBACV,KAAK,OAAO;oBACR,GAAG,GAAG,aAAa,CAAC;oBACpB,IAAI,GAAG,eAAe,CAAC;oBACvB,MAAM;gBACV,KAAK,WAAW;oBACZ,GAAG,GAAG,WAAW,CAAC;oBAClB,IAAI,GAAG,aAAa,CAAC;oBACrB,MAAM;gBACV,KAAK,UAAU;oBACX,GAAG,GAAG,WAAW,CAAC;oBAClB,IAAI,GAAG,YAAY,CAAC;oBACpB,MAAM;gBACV,KAAK,cAAc;oBACf,GAAG,GAAG,cAAc,CAAC;oBACrB,IAAI,GAAG,aAAa,CAAC;oBACrB,MAAM;gBACV,KAAK,aAAa;oBACd,GAAG,GAAG,cAAc,CAAC;oBACrB,IAAI,GAAG,YAAY,CAAC;oBACpB,MAAM;aACb;YAED,MAAM,WAAW,GACb,GAAG,GAAG,UAAU,CAAC,GAAG,GAAG,KAAK;gBAC5B,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG;oBAC7C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;YACnC,MAAM,aAAa,GACf,IAAI,GAAG,KAAK;gBACZ,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC;YAE1E,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,KAAK,WAAW,IAAI,aAAa,CAAC,EAAE;gBAC3D,MAAM;aACT;YAED,SAAS,GAAG,WAAW;kBACjB,2BAA2B,CAAC,SAAS,CAAC;kBACtC,yBAAyB,CAAC,SAAS,CAAC,CAAC;YAC3C,SAAS;gBACL,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;SAC3E;QAED,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;KAC9D;IAEO,0BAA0B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAC9C,MAAM,EAAC,KAAK,EAAC,GAAG,OAAO,CAAC;QACxB,MAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACpD,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAC/E,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAChE,MAAM,cAAc,GAChB,WAAW,GAAG,UAAU,CAAC,GAAG,GAAG,KAAK;YACpC,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QAC9C,MAAM,iBAAiB,GACnB,QAAQ,CAAC,MAAM,GAAG,CAAC;YACnB,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QAClF,MAAM,SAAS,GACX,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,iBAAiB;cACvE,KAAK;cACL,QAAQ,CAAC;QACnB,MAAM,aAAa,GACf,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC;QACjF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACjB,aAAa,GAAG,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,KAAK;cACtD,UAAU,CAAC,KAAK,GAAG,KAAK,GAAG,WAAW,CAAC,KAAK;cAC5C,aAAa,EACnB,KAAK,GAAG,CAAC,CACZ,CAAC;QAEF,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACtB,KAAK,CAAC,GAAG,GAAG,SAAS,KAAK,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;QAEvE,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CACpC,QAAQ,CAAC,IAAI,IAAI,KAAK,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,GAAG,YAAY,GAAG,CAAC;kBACzD,YAAY;kBACZ,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,UAAU,GAAG,CAAC,CACnE,CAAC;SACL;QAED,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;KAC9D;IAEO,iBAAiB;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClD,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAE9C,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,GAAG,MAAM,CAAC,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC,CAAC;QAC/E,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC;QAC7D,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,YAAY,GAAG,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC;KAC1E;EACJ;;YAzLiD,UAAU,uBAAnD,MAAM,SAAC,eAAe;YACc,UAAU,uBAA9C,MAAM,SAAC,iBAAiB;YACD,MAAM,uBAA7B,MAAM,SAAC,MAAM;YACmC,UAAU,uBAA1D,MAAM,SAAC,UAAU;YAC0B,MAAM,uBAAjD,MAAM,SAAC,MAAM;0CACb,MAAM,SAAC,aAAa;YAEO,qBAAqB,uBADhD,MAAM,SAAC,qBAAqB;;AAZjC;IADC,KAAK,EAAE;iDACe;AAGvB;IADC,SAAS,CAAC,OAAO,CAAC;kDAC8B;AAmBjD;IAFC,OAAO;IACP,WAAW,CAAC,oBAAoB,CAAC;wDAGjC;AAGD;IADC,WAAW,CAAC,gBAAgB,CAAC;+CAG7B;AA/BQ,mBAAmB;IAP/B,SAAS,CAAC;QACP,QAAQ,EAAE,oBAAoB;QAC9B,4OAAuC;QAEvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,CAAC,iBAAiB,CAAC;;KACjC,CAAC;IASO,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;IACvB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACzB,WAAA,MAAM,CAAC,MAAM,CAAC,CAAA;IACd,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,MAAM,CAAC,CAAA;IACd,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;GAdzB,mBAAmB,CAiM/B;;IC7OY,gBAAgB,GAA7B,MAAa,gBAAgB;EAAG;AAAnB,gBAAgB;IAL5B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,CAAC;QACvB,YAAY,EAAE,CAAC,mBAAmB,CAAC;QACnC,OAAO,EAAE,CAAC,mBAAmB,CAAC;KACjC,CAAC;GACW,gBAAgB,CAAG;;ICUnB,kBAAkB,GAA/B,MAAa,kBAAkB;EAAG;AAArB,kBAAkB;IAZ9B,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,gBAAgB;YAChB,gBAAgB;YAChB,mBAAmB;SACtB;QACD,YAAY,EAAE,CAAC,qBAAqB,CAAC;QACrC,OAAO,EAAE,CAAC,qBAAqB,CAAC;QAChC,eAAe,EAAE,CAAC,qBAAqB,CAAC;KAC3C,CAAC;GACW,kBAAkB,CAAG;;ACnBlC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-hints-host.js","sources":["ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts","ng://@taiga-ui/core/components/hints-host/taiga-ui-core-components-hints-host.ts"],"sourcesContent":["import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {TUI_ANIMATION_OPTIONS} from '@taiga-ui/core/tokens';\n\n@Component({\n selector: 'tui-hints-host',\n templateUrl: './hints-host.template.html',\n styleUrls: ['./hints-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n host: {\n 'aria-live': 'polite',\n },\n})\nexport class TuiHintsHostComponent {\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: TuiHintService,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n onHovered(hovered: boolean, directive: AbstractTuiHint) {\n if (directive instanceof TuiHintDirective) {\n directive.componentHovered$.next(hovered);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {px, TUI_IS_MOBILE, TuiDestroyService, tuiPure, tuiZonefree} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'bottom-left',\n 'top-right': 'bottom-right',\n 'bottom-left': 'top-left',\n 'bottom-right': 'top-right',\n left: 'right',\n right: 'left',\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': 'top-right',\n 'top-right': 'top-left',\n 'bottom-left': 'bottom-right',\n 'bottom-right': 'bottom-left',\n left: 'right',\n right: 'left',\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-hint-box[hint]',\n templateUrl: './hint-box.template.html',\n styleUrls: ['./hint-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiHintBoxComponent {\n @Input()\n hint!: AbstractTuiHint;\n\n @ViewChild('arrow')\n private readonly arrow?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(TuiHintsHostComponent)\n private readonly hintsHost: TuiHintsHostComponent,\n ) {\n animationFrame$.pipe(tuiZonefree(ngZone), takeUntil(destroy$)).subscribe(() => {\n this.calculatePosition();\n });\n }\n\n @tuiPure\n @HostBinding('class._untouchable')\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding('attr.data-mode')\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition() {\n if (this.mode !== 'overflow') {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates() {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n 'left',\n 'right',\n 'bottom-left',\n 'bottom-right',\n 'top-left',\n 'top-right',\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n while (true) {\n switch (direction) {\n case 'left':\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case 'right':\n top = horizontalTop;\n left = horizontalRight;\n break;\n case 'top-right':\n top = verticalTop;\n left = verticalRight;\n break;\n case 'top-left':\n top = verticalTop;\n left = verticalLeft;\n break;\n case 'bottom-right':\n top = verticalBottom;\n left = verticalRight;\n break;\n case 'bottom-left':\n top = verticalBottom;\n left = verticalLeft;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private calculateMobileCoordinates() {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit\n ? 'top'\n : 'bottom';\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute('data-tui-host-direction', direction);\n }\n\n private setOverflowStyles() {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHoveredModule,\n TuiHintBoxModule,\n TuiActiveZoneModule,\n ],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n entryComponents: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-hosted-dropdown.js","sources":["ng://@taiga-ui/core/components/hosted-dropdown/hosted-dropdown-connector.directive.ts","ng://@taiga-ui/core/components/hosted-dropdown/hosted-dropdown.component.ts","ng://@taiga-ui/core/components/hosted-dropdown/hosted-dropdown.module.ts","ng://@taiga-ui/core/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.ts"],"sourcesContent":["import {Directive} from '@angular/core';\n\n@Directive({\n selector: '[tuiHostedDropdownHost]',\n})\nexport class TuiHostedDropdownConnectorDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {\n getClosestFocusable,\n isElementEditable,\n isNativeFocusedIn,\n isNativeKeyboardFocusable,\n setNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiActiveZoneDirective,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {\n DROPDOWN_CONTROLLER_PROVIDER,\n TUI_DROPDOWN_WATCHED_CONTROLLER,\n TuiDropdownControllerDirective,\n} from '@taiga-ui/core/directives/dropdown-controller';\nimport {isEditingKey} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\n@Component({\n selector: 'tui-hosted-dropdown',\n templateUrl: './hosted-dropdown.template.html',\n styleUrls: ['./hosted-dropdown.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiHostedDropdownComponent),\n },\n DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiHostedDropdownComponent implements TuiFocusableElementAccessor {\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n canOpen = true;\n\n @Input()\n @tuiDefaultProp()\n open = false;\n\n @Output()\n readonly openChange = new EventEmitter<boolean>();\n\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n @ViewChild(TuiActiveZoneDirective)\n readonly activeZone?: TuiActiveZoneDirective;\n\n @ContentChild(TuiHostedDropdownConnectorDirective, {read: ElementRef})\n private dropdownHost?: ElementRef<HTMLElement>;\n\n @ViewChild('wrapper', {read: ElementRef})\n private wrapper?: ElementRef<HTMLDivElement>;\n\n @ViewChild(TuiDropdownDirective)\n private dropdownDirective?: TuiDropdownDirective;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef,\n @Inject(TUI_DROPDOWN_WATCHED_CONTROLLER)\n readonly controller: TuiDropdownControllerDirective,\n ) {}\n\n get host(): HTMLElement {\n return this.dropdownHost\n ? this.dropdownHost.nativeElement\n : this.elementRef.nativeElement;\n }\n\n get dropdown(): HTMLElement | null {\n return !this.dropdownDirective || this.dropdownDirective.dropdownBoxRef === null\n ? null\n : this.dropdownDirective.dropdownBoxRef.location.nativeElement;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return isNativeKeyboardFocusable(this.host)\n ? this.host\n : getClosestFocusable(this.host, false, this.elementRef.nativeElement);\n }\n\n @HostBinding('class._hosted_dropdown_focused')\n get focused(): boolean {\n return (\n isNativeFocusedIn(this.host) ||\n (this.open && !!this.wrapper && isNativeFocusedIn(this.wrapper.nativeElement))\n );\n }\n\n @HostListener('focusin', ['$event.target'])\n onFocusIn(target: HTMLElement) {\n const host = this.dropdownHost\n ? this.dropdownHost.nativeElement\n : this.nativeFocusableElement || this.elementRef.nativeElement;\n\n if (!host.contains(target)) {\n this.updateOpen(false);\n }\n }\n\n @HostListener('click', ['$event.target'])\n onClick(target: HTMLElement) {\n const host = this.nativeFocusableElement || this.host;\n const dropdownHost = this.dropdownHost ? this.dropdownHost.nativeElement : host;\n\n if (!this.hostEditable && dropdownHost.contains(target)) {\n this.updateOpen(!this.open);\n }\n }\n\n @HostListener('keydown.esc', ['$event'])\n onKeyDownEsc(event: KeyboardEvent) {\n if (!this.canOpen || !this.open) {\n return;\n }\n\n event.stopPropagation();\n this.closeDropdown();\n }\n\n @HostListener('keydown.arrowDown', ['$event', 'true'])\n @HostListener('keydown.arrowUp', ['$event', 'false'])\n onArrow(event: KeyboardEvent, down: boolean) {\n this.focusDropdown(event, down);\n }\n\n onKeydown({key, target, defaultPrevented}: KeyboardEvent) {\n if (\n !defaultPrevented &&\n isEditingKey(key) &&\n this.hostEditable &&\n // TODO: iframe warning\n target instanceof HTMLElement &&\n !isElementEditable(target)\n ) {\n this.focusHost();\n }\n }\n\n onActiveZone(active: boolean) {\n this.updateFocused(active);\n\n if (!active) {\n this.updateOpen(false);\n }\n }\n\n onHostObscured(obscured: boolean) {\n if (obscured) {\n this.closeDropdown();\n }\n }\n\n updateOpen(open: boolean) {\n if (open && !this.canOpen) {\n return;\n }\n\n this.open = open;\n this.openChange.emit(open);\n }\n\n private get hostEditable(): boolean {\n const host = this.nativeFocusableElement || this.host;\n\n // TODO: iframe warning\n return host instanceof HTMLElement && isElementEditable(host);\n }\n\n private focusDropdown(event: KeyboardEvent, first: boolean) {\n const host = this.nativeFocusableElement;\n\n // TODO: iframe warning\n if (\n !host ||\n !(host instanceof HTMLElement) ||\n !(event.target instanceof Node) ||\n !host.contains(event.target)\n ) {\n return;\n }\n\n if (\n !this.wrapper ||\n !this.open ||\n this.dropdown === null ||\n // TODO: iframe warning\n !(this.wrapper.nativeElement.nextElementSibling instanceof HTMLElement)\n ) {\n this.updateOpen(true);\n\n if (!isElementEditable(host)) {\n event.preventDefault();\n }\n\n return;\n }\n\n const initial = first\n ? this.wrapper.nativeElement\n : this.wrapper.nativeElement.nextElementSibling;\n const focusable = getClosestFocusable(\n initial,\n !first,\n this.wrapper.nativeElement,\n );\n\n if (focusable === null) {\n return;\n }\n\n setNativeFocused(focusable);\n event.preventDefault();\n }\n\n private closeDropdown() {\n if (this.focused) {\n this.focusHost();\n }\n\n this.updateOpen(false);\n }\n\n private focusHost() {\n const host = this.nativeFocusableElement;\n\n if (host !== null) {\n setNativeFocused(host, true, true);\n }\n }\n\n private updateFocused(focused: boolean) {\n this.focusedChange.emit(focused);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiObscuredModule} from '@taiga-ui/cdk';\nimport {TuiDropdownModule} from '@taiga-ui/core/directives/dropdown';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\nimport {TuiHostedDropdownComponent} from './hosted-dropdown.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiObscuredModule,\n PolymorpheusModule,\n TuiActiveZoneModule,\n TuiDropdownModule,\n ],\n declarations: [TuiHostedDropdownComponent, TuiHostedDropdownConnectorDirective],\n exports: [TuiHostedDropdownComponent, TuiHostedDropdownConnectorDirective],\n})\nexport class TuiHostedDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;IAKa,mCAAmC,GAAhD,MAAa,mCAAmC;EAAG;AAAtC,mCAAmC;IAH/C,SAAS,CAAC;QACP,QAAQ,EAAE,yBAAyB;KACtC,CAAC;GACW,mCAAmC,CAAG;;;IC4CtC,0BAA0B,kCAAvC,MAAa,0BAA0B;IA+BnC,YACyC,UAAsB,EAElD,UAA0C;QAFd,eAAU,GAAV,UAAU,CAAY;QAElD,eAAU,GAAV,UAAU,CAAgC;QA/BvD,YAAO,GAAwB,EAAE,CAAC;QAIlC,YAAO,GAAG,IAAI,CAAC;QAIf,SAAI,GAAG,KAAK,CAAC;QAGJ,eAAU,GAAG,IAAI,YAAY,EAAW,CAAC;QAGzC,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;KAkBjD;IAEJ,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,YAAY;cAClB,IAAI,CAAC,YAAY,CAAC,aAAa;cAC/B,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;KACvC;IAED,IAAI,QAAQ;QACR,OAAO,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,cAAc,KAAK,IAAI;cAC1E,IAAI;cACJ,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC;KACtE;IAED,IAAI,sBAAsB;QACtB,OAAO,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC;cACrC,IAAI,CAAC,IAAI;cACT,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;KAC9E;IAGD,IAAI,OAAO;QACP,QACI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;aAC3B,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAChF;KACL;IAGD,SAAS,CAAC,MAAmB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY;cACxB,IAAI,CAAC,YAAY,CAAC,aAAa;cAC/B,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAEnE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACxB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SAC1B;KACJ;IAGD,OAAO,CAAC,MAAmB;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,IAAI,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,IAAI,CAAC;QAEhF,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACrD,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC/B;KACJ;IAGD,YAAY,CAAC,KAAoB;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAC7B,OAAO;SACV;QAED,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,aAAa,EAAE,CAAC;KACxB;IAID,OAAO,CAAC,KAAoB,EAAE,IAAa;QACvC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KACnC;IAED,SAAS,CAAC,EAAC,GAAG,EAAE,MAAM,EAAE,gBAAgB,EAAgB;QACpD,IACI,CAAC,gBAAgB;YACjB,YAAY,CAAC,GAAG,CAAC;YACjB,IAAI,CAAC,YAAY;;YAEjB,MAAM,YAAY,WAAW;YAC7B,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC5B;YACE,IAAI,CAAC,SAAS,EAAE,CAAC;SACpB;KACJ;IAED,YAAY,CAAC,MAAe;QACxB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,CAAC,MAAM,EAAE;YACT,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SAC1B;KACJ;IAED,cAAc,CAAC,QAAiB;QAC5B,IAAI,QAAQ,EAAE;YACV,IAAI,CAAC,aAAa,EAAE,CAAC;SACxB;KACJ;IAED,UAAU,CAAC,IAAa;QACpB,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACvB,OAAO;SACV;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,IAAY,YAAY;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,IAAI,CAAC;;QAGtD,OAAO,IAAI,YAAY,WAAW,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;KACjE;IAEO,aAAa,CAAC,KAAoB,EAAE,KAAc;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC;;QAGzC,IACI,CAAC,IAAI;YACL,EAAE,IAAI,YAAY,WAAW,CAAC;YAC9B,EAAE,KAAK,CAAC,MAAM,YAAY,IAAI,CAAC;YAC/B,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAC9B;YACE,OAAO;SACV;QAED,IACI,CAAC,IAAI,CAAC,OAAO;YACb,CAAC,IAAI,CAAC,IAAI;YACV,IAAI,CAAC,QAAQ,KAAK,IAAI;;YAEtB,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,YAAY,WAAW,CAAC,EACzE;YACE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEtB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE;gBAC1B,KAAK,CAAC,cAAc,EAAE,CAAC;aAC1B;YAED,OAAO;SACV;QAED,MAAM,OAAO,GAAG,KAAK;cACf,IAAI,CAAC,OAAO,CAAC,aAAa;cAC1B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC;QACpD,MAAM,SAAS,GAAG,mBAAmB,CACjC,OAAO,EACP,CAAC,KAAK,EACN,IAAI,CAAC,OAAO,CAAC,aAAa,CAC7B,CAAC;QAEF,IAAI,SAAS,KAAK,IAAI,EAAE;YACpB,OAAO;SACV;QAED,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC5B,KAAK,CAAC,cAAc,EAAE,CAAC;KAC1B;IAEO,aAAa;QACjB,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,SAAS,EAAE,CAAC;SACpB;QAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KAC1B;IAEO,SAAS;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAEzC,IAAI,IAAI,KAAK,IAAI,EAAE;YACf,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SACtC;KACJ;IAEO,aAAa,CAAC,OAAgB;QAClC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpC;EACJ;;YAhLwD,UAAU,uBAA1D,MAAM,SAAC,UAAU;YAEG,8BAA8B,uBADlD,MAAM,SAAC,+BAA+B;;AA9B3C;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;2DACiB;AAIlC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;2DACF;AAIf;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;wDACJ;AAGb;IADC,MAAM,EAAE;8DACyC;AAGlD;IADC,MAAM,EAAE;iEAC4C;AAGrD;IADC,SAAS,CAAC,sBAAsB,CAAC;8DACW;AAG7C;IADC,YAAY,CAAC,mCAAmC,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC;gEACvB;AAG/C;IADC,SAAS,CAAC,SAAS,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC;2DACI;AAG7C;IADC,SAAS,CAAC,oBAAoB,CAAC;qEACiB;AA2BjD;IADC,WAAW,CAAC,gCAAgC,CAAC;yDAM7C;AAGD;IADC,YAAY,CAAC,SAAS,EAAE,CAAC,eAAe,CAAC,CAAC;2DAS1C;AAGD;IADC,YAAY,CAAC,OAAO,EAAE,CAAC,eAAe,CAAC,CAAC;yDAQxC;AAGD;IADC,YAAY,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC;8DAQvC;AAID;IAFC,YAAY,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrD,YAAY,CAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;yDAGpD;AAlGQ,0BAA0B;IAbtC,SAAS,CAAC;QACP,QAAQ,EAAE,qBAAqB;QAC/B,smCAA8C;QAE9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,2BAA2B;gBACpC,WAAW,EAAE,UAAU,CAAC,MAAM,4BAA0B,CAAC;aAC5D;YACD,4BAA4B;SAC/B;;KACJ,CAAC;IAiCO,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,MAAM,CAAC,+BAA+B,CAAC,CAAA;GAjCnC,0BAA0B,CAgNtC;;IC7OY,uBAAuB,GAApC,MAAa,uBAAuB;EAAG;AAA1B,uBAAuB;IAXnC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,iBAAiB;YACjB,kBAAkB;YAClB,mBAAmB;YACnB,iBAAiB;SACpB;QACD,YAAY,EAAE,CAAC,0BAA0B,EAAE,mCAAmC,CAAC;QAC/E,OAAO,EAAE,CAAC,0BAA0B,EAAE,mCAAmC,CAAC;KAC7E,CAAC;GACW,uBAAuB,CAAG;;ACpBvC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-hosted-dropdown.js","sources":["ng://@taiga-ui/core/components/hosted-dropdown/hosted-dropdown-connector.directive.ts","ng://@taiga-ui/core/components/hosted-dropdown/hosted-dropdown.component.ts","ng://@taiga-ui/core/components/hosted-dropdown/hosted-dropdown.module.ts","ng://@taiga-ui/core/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.ts"],"sourcesContent":["import {Directive} from '@angular/core';\n\n@Directive({\n selector: '[tuiHostedDropdownHost]',\n})\nexport class TuiHostedDropdownConnectorDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {\n getClosestFocusable,\n isElementEditable,\n isNativeFocusedIn,\n isNativeKeyboardFocusable,\n setNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiActiveZoneDirective,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {\n DROPDOWN_CONTROLLER_PROVIDER,\n TUI_DROPDOWN_WATCHED_CONTROLLER,\n TuiDropdownControllerDirective,\n} from '@taiga-ui/core/directives/dropdown-controller';\nimport {isEditingKey} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\n@Component({\n selector: 'tui-hosted-dropdown',\n templateUrl: './hosted-dropdown.template.html',\n styleUrls: ['./hosted-dropdown.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiHostedDropdownComponent),\n },\n DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiHostedDropdownComponent implements TuiFocusableElementAccessor {\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n canOpen = true;\n\n @Input()\n @tuiDefaultProp()\n open = false;\n\n @Output()\n readonly openChange = new EventEmitter<boolean>();\n\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n @ViewChild(TuiActiveZoneDirective)\n readonly activeZone?: TuiActiveZoneDirective;\n\n @ContentChild(TuiHostedDropdownConnectorDirective, {read: ElementRef})\n private dropdownHost?: ElementRef<HTMLElement>;\n\n @ViewChild('wrapper', {read: ElementRef})\n private wrapper?: ElementRef<HTMLDivElement>;\n\n @ViewChild(TuiDropdownDirective)\n private dropdownDirective?: TuiDropdownDirective;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef,\n @Inject(TUI_DROPDOWN_WATCHED_CONTROLLER)\n readonly controller: TuiDropdownControllerDirective,\n ) {}\n\n get host(): HTMLElement {\n return this.dropdownHost\n ? this.dropdownHost.nativeElement\n : this.elementRef.nativeElement;\n }\n\n get dropdown(): HTMLElement | null {\n return !this.dropdownDirective || this.dropdownDirective.dropdownBoxRef === null\n ? null\n : this.dropdownDirective.dropdownBoxRef.location.nativeElement;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return isNativeKeyboardFocusable(this.host)\n ? this.host\n : getClosestFocusable(this.host, false, this.elementRef.nativeElement);\n }\n\n @HostBinding('class._hosted_dropdown_focused')\n get focused(): boolean {\n return (\n isNativeFocusedIn(this.host) ||\n (this.open && !!this.wrapper && isNativeFocusedIn(this.wrapper.nativeElement))\n );\n }\n\n @HostListener('focusin', ['$event.target'])\n onFocusIn(target: HTMLElement) {\n const host = this.dropdownHost\n ? this.dropdownHost.nativeElement\n : this.nativeFocusableElement || this.elementRef.nativeElement;\n\n if (!host.contains(target)) {\n this.updateOpen(false);\n }\n }\n\n @HostListener('click', ['$event.target'])\n onClick(target: HTMLElement) {\n const host = this.nativeFocusableElement || this.host;\n const dropdownHost = this.dropdownHost ? this.dropdownHost.nativeElement : host;\n\n if (!this.hostEditable && dropdownHost.contains(target)) {\n this.updateOpen(!this.open);\n }\n }\n\n @HostListener('keydown.esc', ['$event'])\n onKeyDownEsc(event: KeyboardEvent) {\n if (!this.canOpen || !this.open) {\n return;\n }\n\n event.stopPropagation();\n this.closeDropdown();\n }\n\n @HostListener('keydown.arrowDown', ['$event', 'true'])\n @HostListener('keydown.arrowUp', ['$event', 'false'])\n onArrow(event: KeyboardEvent, down: boolean) {\n this.focusDropdown(event, down);\n }\n\n onKeydown({key, target, defaultPrevented}: KeyboardEvent) {\n if (\n !defaultPrevented &&\n isEditingKey(key) &&\n this.hostEditable &&\n // TODO: iframe warning\n target instanceof HTMLElement &&\n !isElementEditable(target)\n ) {\n this.focusHost();\n }\n }\n\n onActiveZone(active: boolean) {\n this.updateFocused(active);\n\n if (!active) {\n this.updateOpen(false);\n }\n }\n\n onHostObscured(obscured: boolean) {\n if (obscured) {\n this.closeDropdown();\n }\n }\n\n updateOpen(open: boolean) {\n if (open && !this.canOpen) {\n return;\n }\n\n this.open = open;\n this.openChange.emit(open);\n }\n\n private get hostEditable(): boolean {\n const host = this.nativeFocusableElement || this.host;\n\n // TODO: iframe warning\n return host instanceof HTMLElement && isElementEditable(host);\n }\n\n private focusDropdown(event: KeyboardEvent, first: boolean) {\n const host = this.nativeFocusableElement;\n\n // TODO: iframe warning\n if (\n !host ||\n !(host instanceof HTMLElement) ||\n !(event.target instanceof Node) ||\n !host.contains(event.target)\n ) {\n return;\n }\n\n if (\n !this.wrapper ||\n !this.open ||\n this.dropdown === null ||\n // TODO: iframe warning\n !(this.wrapper.nativeElement.nextElementSibling instanceof HTMLElement)\n ) {\n this.updateOpen(true);\n\n if (!isElementEditable(host)) {\n event.preventDefault();\n }\n\n return;\n }\n\n const initial = first\n ? this.wrapper.nativeElement\n : this.wrapper.nativeElement.nextElementSibling;\n const focusable = getClosestFocusable(\n initial,\n !first,\n this.wrapper.nativeElement,\n );\n\n if (focusable === null) {\n return;\n }\n\n setNativeFocused(focusable);\n event.preventDefault();\n }\n\n private closeDropdown() {\n if (this.focused) {\n this.focusHost();\n }\n\n this.updateOpen(false);\n }\n\n private focusHost() {\n const host = this.nativeFocusableElement;\n\n if (host !== null) {\n setNativeFocused(host, true, true);\n }\n }\n\n private updateFocused(focused: boolean) {\n this.focusedChange.emit(focused);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiObscuredModule} from '@taiga-ui/cdk';\nimport {TuiDropdownModule} from '@taiga-ui/core/directives/dropdown';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHostedDropdownComponent} from './hosted-dropdown.component';\nimport {TuiHostedDropdownConnectorDirective} from './hosted-dropdown-connector.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiObscuredModule,\n PolymorpheusModule,\n TuiActiveZoneModule,\n TuiDropdownModule,\n ],\n declarations: [TuiHostedDropdownComponent, TuiHostedDropdownConnectorDirective],\n exports: [TuiHostedDropdownComponent, TuiHostedDropdownConnectorDirective],\n})\nexport class TuiHostedDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-label.js","sources":["ng://@taiga-ui/core/components/label/label.component.ts","ng://@taiga-ui/core/components/label/label.module.ts","ng://@taiga-ui/core/components/label/taiga-ui-core-components-label.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiContextWithImplicit, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'label[tuiLabel]',\n templateUrl: './label.template.html',\n styleUrls: ['./label.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiLabelComponent<T> {\n // TODO: Rename to tuiLabel in 3.0\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n context: TuiContextWithImplicit<T | null> = {\n $implicit: null,\n };\n\n @ContentChild(NgControl)\n @HostBinding('class._control')\n readonly control?: NgControl;\n\n constructor(@Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>) {}\n}\n","import {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiLabelComponent} from './label.component';\n\n@NgModule({\n imports: [PolymorpheusModule],\n declarations: [TuiLabelComponent],\n exports: [TuiLabelComponent],\n})\nexport class TuiLabelModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;IA0Ba,iBAAiB,GAA9B,MAAa,iBAAiB;IAgB1B,YAAuC,KAAuC;QAAvC,UAAK,GAAL,KAAK,CAAkC;;QAZ9E,UAAK,GAAwB,EAAE,CAAC;QAIhC,YAAO,GAAqC;YACxC,SAAS,EAAE,IAAI;SAClB,CAAC;KAMgF;EACrF;;YADiD,UAAU,uBAA3C,MAAM,SAAC,QAAQ;;AAZ5B;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;gDACe;AAIhC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;kDAGf;AAIF;IAFC,YAAY,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,gBAAgB,CAAC;kDACD;AAdpB,iBAAiB;IAV7B,SAAS,CAAC;QACP,QAAQ,EAAE,iBAAiB;QAC3B,qQAAoC;QAEpC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,CAAC,aAAa,CAAC;QAC1B,IAAI,EAAE;YACF,oBAAoB,EAAE,OAAO;SAChC;;KACJ,CAAC;IAiBe,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;GAhBpB,iBAAiB,CAiB7B;;IClCY,cAAc,GAA3B,MAAa,cAAc;EAAG;AAAjB,cAAc;IAL1B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,kBAAkB,CAAC;QAC7B,YAAY,EAAE,CAAC,iBAAiB,CAAC;QACjC,OAAO,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CAAC;GACW,cAAc,CAAG;;ACT9B;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-label.js","sources":["ng://@taiga-ui/core/components/label/label.component.ts","ng://@taiga-ui/core/components/label/label.module.ts","ng://@taiga-ui/core/components/label/taiga-ui-core-components-label.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiContextWithImplicit, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'label[tuiLabel]',\n templateUrl: './label.template.html',\n styleUrls: ['./label.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiLabelComponent<T> {\n // TODO: Rename to tuiLabel in 3.0\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n context: TuiContextWithImplicit<T | null> = {\n $implicit: null,\n };\n\n @ContentChild(NgControl)\n @HostBinding('class._control')\n readonly control?: NgControl;\n\n constructor(@Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>) {}\n}\n","import {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLabelComponent} from './label.component';\n\n@NgModule({\n imports: [PolymorpheusModule],\n declarations: [TuiLabelComponent],\n exports: [TuiLabelComponent],\n})\nexport class TuiLabelModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;IA0Ba,iBAAiB,GAA9B,MAAa,iBAAiB;IAgB1B,YAAuC,KAAuC;QAAvC,UAAK,GAAL,KAAK,CAAkC;;QAZ9E,UAAK,GAAwB,EAAE,CAAC;QAIhC,YAAO,GAAqC;YACxC,SAAS,EAAE,IAAI;SAClB,CAAC;KAMgF;EACrF;;YADiD,UAAU,uBAA3C,MAAM,SAAC,QAAQ;;AAZ5B;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;gDACe;AAIhC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;kDAGf;AAIF;IAFC,YAAY,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,gBAAgB,CAAC;kDACD;AAdpB,iBAAiB;IAV7B,SAAS,CAAC;QACP,QAAQ,EAAE,iBAAiB;QAC3B,qQAAoC;QAEpC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE,CAAC,aAAa,CAAC;QAC1B,IAAI,EAAE;YACF,oBAAoB,EAAE,OAAO;SAChC;;KACJ,CAAC;IAiBe,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;GAhBpB,iBAAiB,CAiB7B;;ICjCY,cAAc,GAA3B,MAAa,cAAc;EAAG;AAAjB,cAAc;IAL1B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,kBAAkB,CAAC;QAC7B,YAAY,EAAE,CAAC,iBAAiB,CAAC;QACjC,OAAO,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CAAC;GACW,cAAc,CAAG;;ACV9B;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-loader.js","sources":["ng://@taiga-ui/core/components/loader/loader.component.ts","ng://@taiga-ui/core/components/loader/loader.directive.ts","ng://@taiga-ui/core/components/loader/loader.module.ts","ng://@taiga-ui/core/components/loader/taiga-ui-core-components-loader.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {\n blurNativeFocused,\n isEdgeOlderThan,\n isIE,\n isNativeFocusedIn,\n isSafari,\n TUI_IS_IOS,\n tuiDefaultProp,\n tuiRequiredSetter,\n} from '@taiga-ui/cdk';\nimport {TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core/types';\nimport {sizeBigger} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// @dynamic\n@Component({\n selector: 'tui-loader',\n templateUrl: './loader.template.html',\n styleUrls: ['./loader.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLoaderComponent {\n @Input()\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n inheritColor = false;\n\n @Input()\n @tuiDefaultProp()\n overlay = false;\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiDefaultProp()\n textContent: PolymorpheusContent | null = null;\n\n @Input()\n @tuiRequiredSetter()\n set showLoader(value: boolean) {\n // @bad TODO: https://github.com/angular/angular/issues/32083 think of a better way\n if (value && this.focused) {\n blurNativeFocused(this.documentRef);\n }\n\n this.loading = value;\n }\n\n @HostBinding('class._loading')\n loading = true;\n\n @HostBinding('class._animated-with-js')\n animatedWithJs = isEdgeOlderThan(17, this.userAgent) || isIE(this.userAgent);\n\n readonly isApple = isSafari(this.elementRef.nativeElement) || this.isIos;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n ) {}\n\n get hasOverlay(): boolean {\n return this.overlay && this.loading;\n }\n\n get hasText(): boolean {\n return !!this.textContent;\n }\n\n get isHorizontal(): boolean {\n return !sizeBigger(this.size);\n }\n\n get focused(): boolean {\n return isNativeFocusedIn(this.elementRef.nativeElement);\n }\n}\n","import {Directive, ElementRef, Inject, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME, USER_AGENT} from '@ng-web-apis/common';\nimport {isEdgeOlderThan, isIE, TuiDestroyService, tuiZonefree} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {pairwise, takeUntil} from 'rxjs/operators';\n\nconst PERIMETER = 314;\nconst COEFFICIENT = 1.5;\n\n@Directive({\n selector: 'circle',\n providers: [TuiDestroyService],\n})\nexport class TuiLoaderDirective {\n private strokeDasharray = PERIMETER;\n\n private strokeDashoffset = 0;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<SVGCircleElement>,\n @Inject(USER_AGENT) userAgent: string,\n ) {\n if (!isEdgeOlderThan(17, userAgent) && !isIE(userAgent)) {\n return;\n }\n\n animationFrame$\n .pipe(tuiZonefree(ngZone), pairwise(), takeUntil(destroy$))\n .subscribe(([cur, prev]) => {\n this.animate(prev - cur);\n });\n }\n\n private animate(delta: number) {\n if (this.strokeDasharray < 0) {\n this.strokeDasharray = PERIMETER * 2;\n this.strokeDashoffset = 0;\n }\n\n const strokeDasharray = Math.abs(this.strokeDasharray - PERIMETER);\n const fps = 1000 / delta;\n const offsetStep = 1 + Math.floor(this.strokeDasharray / PERIMETER);\n const {style} = this.elementRef.nativeElement;\n\n style.strokeDashoffset = this.strokeDashoffset.toString();\n style.strokeDasharray = PERIMETER - strokeDasharray + ' ' + strokeDasharray;\n\n this.strokeDasharray -= PERIMETER / COEFFICIENT / fps;\n this.strokeDashoffset += (offsetStep * PERIMETER) / COEFFICIENT / fps;\n // this.elementRef.nativeElement.parentElement!.style.animation = 'none';\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiLoaderComponent} from './loader.component';\nimport {TuiLoaderDirective} from './loader.directive';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule],\n declarations: [TuiLoaderComponent, TuiLoaderDirective],\n exports: [TuiLoaderComponent],\n})\nexport class TuiLoaderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-loader.js","sources":["ng://@taiga-ui/core/components/loader/loader.component.ts","ng://@taiga-ui/core/components/loader/loader.directive.ts","ng://@taiga-ui/core/components/loader/loader.module.ts","ng://@taiga-ui/core/components/loader/taiga-ui-core-components-loader.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {\n blurNativeFocused,\n isEdgeOlderThan,\n isIE,\n isNativeFocusedIn,\n isSafari,\n TUI_IS_IOS,\n tuiDefaultProp,\n tuiRequiredSetter,\n} from '@taiga-ui/cdk';\nimport {TuiSizeXS, TuiSizeXXL} from '@taiga-ui/core/types';\nimport {sizeBigger} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// @dynamic\n@Component({\n selector: 'tui-loader',\n templateUrl: './loader.template.html',\n styleUrls: ['./loader.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLoaderComponent {\n @Input()\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n inheritColor = false;\n\n @Input()\n @tuiDefaultProp()\n overlay = false;\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiDefaultProp()\n textContent: PolymorpheusContent | null = null;\n\n @Input()\n @tuiRequiredSetter()\n set showLoader(value: boolean) {\n // @bad TODO: https://github.com/angular/angular/issues/32083 think of a better way\n if (value && this.focused) {\n blurNativeFocused(this.documentRef);\n }\n\n this.loading = value;\n }\n\n @HostBinding('class._loading')\n loading = true;\n\n @HostBinding('class._animated-with-js')\n animatedWithJs = isEdgeOlderThan(17, this.userAgent) || isIE(this.userAgent);\n\n readonly isApple = isSafari(this.elementRef.nativeElement) || this.isIos;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(TUI_IS_IOS) private readonly isIos: boolean,\n ) {}\n\n get hasOverlay(): boolean {\n return this.overlay && this.loading;\n }\n\n get hasText(): boolean {\n return !!this.textContent;\n }\n\n get isHorizontal(): boolean {\n return !sizeBigger(this.size);\n }\n\n get focused(): boolean {\n return isNativeFocusedIn(this.elementRef.nativeElement);\n }\n}\n","import {Directive, ElementRef, Inject, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME, USER_AGENT} from '@ng-web-apis/common';\nimport {isEdgeOlderThan, isIE, TuiDestroyService, tuiZonefree} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {pairwise, takeUntil} from 'rxjs/operators';\n\nconst PERIMETER = 314;\nconst COEFFICIENT = 1.5;\n\n@Directive({\n selector: 'circle',\n providers: [TuiDestroyService],\n})\nexport class TuiLoaderDirective {\n private strokeDasharray = PERIMETER;\n\n private strokeDashoffset = 0;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<SVGCircleElement>,\n @Inject(USER_AGENT) userAgent: string,\n ) {\n if (!isEdgeOlderThan(17, userAgent) && !isIE(userAgent)) {\n return;\n }\n\n animationFrame$\n .pipe(tuiZonefree(ngZone), pairwise(), takeUntil(destroy$))\n .subscribe(([cur, prev]) => {\n this.animate(prev - cur);\n });\n }\n\n private animate(delta: number) {\n if (this.strokeDasharray < 0) {\n this.strokeDasharray = PERIMETER * 2;\n this.strokeDashoffset = 0;\n }\n\n const strokeDasharray = Math.abs(this.strokeDasharray - PERIMETER);\n const fps = 1000 / delta;\n const offsetStep = 1 + Math.floor(this.strokeDasharray / PERIMETER);\n const {style} = this.elementRef.nativeElement;\n\n style.strokeDashoffset = this.strokeDashoffset.toString();\n style.strokeDasharray = PERIMETER - strokeDasharray + ' ' + strokeDasharray;\n\n this.strokeDasharray -= PERIMETER / COEFFICIENT / fps;\n this.strokeDashoffset += (offsetStep * PERIMETER) / COEFFICIENT / fps;\n // this.elementRef.nativeElement.parentElement!.style.animation = 'none';\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLoaderComponent} from './loader.component';\nimport {TuiLoaderDirective} from './loader.directive';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule],\n declarations: [TuiLoaderComponent, TuiLoaderDirective],\n exports: [TuiLoaderComponent],\n})\nexport class TuiLoaderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-primitive-calendar.js","sources":["ng://@taiga-ui/core/components/primitive-calendar/primitive-calendar.component.ts","ng://@taiga-ui/core/components/primitive-calendar/primitive-calendar.module.ts","ng://@taiga-ui/core/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n nullableSame,\n TuiBooleanHandler,\n TuiDay,\n TuiDayRange,\n tuiDefaultProp,\n TuiMonth,\n} from '@taiga-ui/cdk';\nimport {TUI_DEFAULT_MARKER_HANDLER} from '@taiga-ui/core/constants';\nimport {TuiInteractiveState, TuiRangeState} from '@taiga-ui/core/enums';\nimport {TUI_ORDERED_SHORT_WEEK_DAYS, WEEK_DAYS_NAMES} from '@taiga-ui/core/tokens';\nimport {TuiColor, TuiMarkerHandler} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\n// @dynamic\n@Component({\n selector: 'tui-primitive-calendar',\n templateUrl: './primitive-calendar.template.html',\n styleUrls: ['./primitive-calendar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveCalendarComponent {\n @Input()\n @tuiDefaultProp()\n month: TuiMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n value: TuiDayRange | TuiDay | null = null;\n\n @Input()\n @tuiDefaultProp()\n hoveredItem: TuiDay | null = null;\n\n @Input()\n @tuiDefaultProp()\n showAdjacent = true;\n\n @Output()\n readonly hoveredItemChange = new EventEmitter<TuiDay | null>();\n\n @Output()\n readonly dayClick = new EventEmitter<TuiDay>();\n\n private pressedItem: TuiDay | null = null;\n\n private today = TuiDay.currentLocal();\n\n readonly toMarkers = (\n day: TuiDay,\n today: boolean,\n inRange: boolean,\n ): null | [TuiColor | string] | [TuiColor | string, TuiColor | string] => {\n if (today || inRange) {\n return null;\n }\n\n const markers = this.markerHandler(day);\n\n return markers.length === 0 ? null : markers;\n };\n\n constructor(\n @Inject(TUI_ORDERED_SHORT_WEEK_DAYS)\n readonly weekDays$: Observable<WEEK_DAYS_NAMES>,\n ) {}\n\n @HostBinding('class._single')\n get isSingle(): boolean {\n return (\n this.value !== null &&\n (this.value instanceof TuiDay || this.value.isSingleDay)\n );\n }\n\n getItemState(item: TuiDay): TuiInteractiveState | null {\n const {disabledItemHandler, pressedItem, hoveredItem} = this;\n\n if (disabledItemHandler(item)) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem && pressedItem.daySame(item)) {\n return TuiInteractiveState.Pressed;\n }\n\n if (hoveredItem && hoveredItem.daySame(item)) {\n return TuiInteractiveState.Hovered;\n }\n\n return null;\n }\n\n getItemRange(item: TuiDay): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (!value) {\n return null;\n }\n\n if (value instanceof TuiDay) {\n return value.daySame(item) ? TuiRangeState.Single : null;\n }\n\n if (\n (value.from.daySame(item) && !value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.dayAfter(value.from) &&\n value.from.daySame(item) &&\n value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.daySame(item) &&\n hoveredItem.dayBefore(value.from) &&\n value.isSingleDay)\n ) {\n return TuiRangeState.Start;\n }\n\n if (\n (value.to.daySame(item) && !value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.dayBefore(value.from) &&\n value.from.daySame(item) &&\n value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.daySame(item) &&\n hoveredItem.dayAfter(value.from) &&\n value.isSingleDay)\n ) {\n return TuiRangeState.End;\n }\n\n return value.isSingleDay && value.from.daySame(item)\n ? TuiRangeState.Single\n : null;\n }\n\n itemIsDisabled(day: TuiDay): boolean {\n const {disabledItemHandler} = this;\n\n return disabledItemHandler(day);\n }\n\n itemIsToday(item: TuiDay): boolean {\n return this.today.daySame(item);\n }\n\n itemIsUnavailable(item: TuiDay): boolean {\n return !this.month.monthSame(item);\n }\n\n itemIsInterval(day: TuiDay): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || value instanceof TuiDay) {\n return false;\n }\n\n if (!value.isSingleDay) {\n return value.from.daySameOrBefore(day) && value.to.dayAfter(day);\n }\n\n if (hoveredItem === null) {\n return false;\n }\n\n const range = TuiDayRange.sort(value.from, hoveredItem);\n\n return range.from.daySameOrBefore(day) && range.to.dayAfter(day);\n }\n\n onItemHovered(item: TuiDay | false) {\n this.updateHoveredItem(item || null);\n }\n\n onItemPressed(item: TuiDay | false) {\n this.pressedItem = item || null;\n }\n\n onItemClick(item: TuiDay) {\n this.dayClick.emit(item);\n }\n\n private updateHoveredItem(day: TuiDay | null) {\n if (nullableSame(this.hoveredItem, day, (a, b) => a.daySame(b))) {\n return;\n }\n\n this.hoveredItem = day;\n this.hoveredItemChange.emit(day);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiHoveredModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiPressedModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiColorModule} from '@taiga-ui/core/directives/color';\nimport {TuiCalendarSheetPipeModule} from '@taiga-ui/core/pipes';\nimport {TuiPrimitiveCalendarComponent} from './primitive-calendar.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiRepeatTimesModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiColorModule,\n TuiCalendarSheetPipeModule,\n ],\n declarations: [TuiPrimitiveCalendarComponent],\n exports: [TuiPrimitiveCalendarComponent],\n})\nexport class TuiPrimitiveCalendarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-primitive-calendar.js","sources":["ng://@taiga-ui/core/components/primitive-calendar/primitive-calendar.component.ts","ng://@taiga-ui/core/components/primitive-calendar/primitive-calendar.module.ts","ng://@taiga-ui/core/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n nullableSame,\n TuiBooleanHandler,\n TuiDay,\n TuiDayRange,\n tuiDefaultProp,\n TuiMonth,\n} from '@taiga-ui/cdk';\nimport {TUI_DEFAULT_MARKER_HANDLER} from '@taiga-ui/core/constants';\nimport {TuiInteractiveState, TuiRangeState} from '@taiga-ui/core/enums';\nimport {TUI_ORDERED_SHORT_WEEK_DAYS, WEEK_DAYS_NAMES} from '@taiga-ui/core/tokens';\nimport {TuiColor, TuiMarkerHandler} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\n// @dynamic\n@Component({\n selector: 'tui-primitive-calendar',\n templateUrl: './primitive-calendar.template.html',\n styleUrls: ['./primitive-calendar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveCalendarComponent {\n @Input()\n @tuiDefaultProp()\n month: TuiMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n value: TuiDayRange | TuiDay | null = null;\n\n @Input()\n @tuiDefaultProp()\n hoveredItem: TuiDay | null = null;\n\n @Input()\n @tuiDefaultProp()\n showAdjacent = true;\n\n @Output()\n readonly hoveredItemChange = new EventEmitter<TuiDay | null>();\n\n @Output()\n readonly dayClick = new EventEmitter<TuiDay>();\n\n private pressedItem: TuiDay | null = null;\n\n private today = TuiDay.currentLocal();\n\n readonly toMarkers = (\n day: TuiDay,\n today: boolean,\n inRange: boolean,\n ): null | [TuiColor | string] | [TuiColor | string, TuiColor | string] => {\n if (today || inRange) {\n return null;\n }\n\n const markers = this.markerHandler(day);\n\n return markers.length === 0 ? null : markers;\n };\n\n constructor(\n @Inject(TUI_ORDERED_SHORT_WEEK_DAYS)\n readonly weekDays$: Observable<WEEK_DAYS_NAMES>,\n ) {}\n\n @HostBinding('class._single')\n get isSingle(): boolean {\n return (\n this.value !== null &&\n (this.value instanceof TuiDay || this.value.isSingleDay)\n );\n }\n\n getItemState(item: TuiDay): TuiInteractiveState | null {\n const {disabledItemHandler, pressedItem, hoveredItem} = this;\n\n if (disabledItemHandler(item)) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem && pressedItem.daySame(item)) {\n return TuiInteractiveState.Pressed;\n }\n\n if (hoveredItem && hoveredItem.daySame(item)) {\n return TuiInteractiveState.Hovered;\n }\n\n return null;\n }\n\n getItemRange(item: TuiDay): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (!value) {\n return null;\n }\n\n if (value instanceof TuiDay) {\n return value.daySame(item) ? TuiRangeState.Single : null;\n }\n\n if (\n (value.from.daySame(item) && !value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.dayAfter(value.from) &&\n value.from.daySame(item) &&\n value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.daySame(item) &&\n hoveredItem.dayBefore(value.from) &&\n value.isSingleDay)\n ) {\n return TuiRangeState.Start;\n }\n\n if (\n (value.to.daySame(item) && !value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.dayBefore(value.from) &&\n value.from.daySame(item) &&\n value.isSingleDay) ||\n (hoveredItem &&\n hoveredItem.daySame(item) &&\n hoveredItem.dayAfter(value.from) &&\n value.isSingleDay)\n ) {\n return TuiRangeState.End;\n }\n\n return value.isSingleDay && value.from.daySame(item)\n ? TuiRangeState.Single\n : null;\n }\n\n itemIsDisabled(day: TuiDay): boolean {\n const {disabledItemHandler} = this;\n\n return disabledItemHandler(day);\n }\n\n itemIsToday(item: TuiDay): boolean {\n return this.today.daySame(item);\n }\n\n itemIsUnavailable(item: TuiDay): boolean {\n return !this.month.monthSame(item);\n }\n\n itemIsInterval(day: TuiDay): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || value instanceof TuiDay) {\n return false;\n }\n\n if (!value.isSingleDay) {\n return value.from.daySameOrBefore(day) && value.to.dayAfter(day);\n }\n\n if (hoveredItem === null) {\n return false;\n }\n\n const range = TuiDayRange.sort(value.from, hoveredItem);\n\n return range.from.daySameOrBefore(day) && range.to.dayAfter(day);\n }\n\n onItemHovered(item: TuiDay | false) {\n this.updateHoveredItem(item || null);\n }\n\n onItemPressed(item: TuiDay | false) {\n this.pressedItem = item || null;\n }\n\n onItemClick(item: TuiDay) {\n this.dayClick.emit(item);\n }\n\n private updateHoveredItem(day: TuiDay | null) {\n if (nullableSame(this.hoveredItem, day, (a, b) => a.daySame(b))) {\n return;\n }\n\n this.hoveredItem = day;\n this.hoveredItemChange.emit(day);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiHoveredModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiPressedModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiColorModule} from '@taiga-ui/core/directives/color';\nimport {TuiCalendarSheetPipeModule} from '@taiga-ui/core/pipes';\n\nimport {TuiPrimitiveCalendarComponent} from './primitive-calendar.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiRepeatTimesModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiColorModule,\n TuiCalendarSheetPipeModule,\n ],\n declarations: [TuiPrimitiveCalendarComponent],\n exports: [TuiPrimitiveCalendarComponent],\n})\nexport class TuiPrimitiveCalendarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-primitive-checkbox.js","sources":["ng://@taiga-ui/core/components/primitive-checkbox/checkbox-options.ts","ng://@taiga-ui/core/components/primitive-checkbox/primitive-checkbox.component.ts","ng://@taiga-ui/core/components/primitive-checkbox/primitive-checkbox.module.ts","ng://@taiga-ui/core/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface CheckboxOptions {\n readonly size: TuiSizeL;\n readonly appearances: Readonly<{\n unchecked: string;\n checked: string;\n indeterminate: string;\n }>;\n readonly icons: Readonly<{\n checked: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n indeterminate: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n }>;\n}\n\n/** Default values for the checkbox options. */\nexport const TUI_CHECKBOX_DEFAULT_OPTIONS: CheckboxOptions = {\n size: 'm',\n appearances: {\n unchecked: TuiAppearance.Outline,\n checked: TuiAppearance.Primary,\n indeterminate: TuiAppearance.Primary,\n },\n icons: {\n checked({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconCheck' : 'tuiIconCheckLarge';\n },\n indeterminate({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconMinus' : 'tuiIconMinusLarge';\n },\n },\n};\n\nexport const TUI_CHECKBOX_OPTIONS = new InjectionToken<CheckboxOptions>(\n 'Default parameters for checkbox component',\n {\n factory: () => TUI_CHECKBOX_DEFAULT_OPTIONS,\n },\n);\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {TuiContextWithImplicit, tuiDefaultProp, tuiPure} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {CheckboxOptions, TUI_CHECKBOX_OPTIONS} from './checkbox-options';\n\n// @dynamic\n@Component({\n selector: 'tui-primitive-checkbox',\n templateUrl: './primitive-checkbox.template.html',\n styleUrls: ['./primitive-checkbox.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveCheckboxComponent {\n icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> =\n this.options.icons.checked;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeL = this.options.size;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n @tuiDefaultProp()\n focused = false;\n\n @Input()\n @tuiDefaultProp()\n hovered = false;\n\n @Input()\n @tuiDefaultProp()\n pressed = false;\n\n @Input()\n @tuiDefaultProp()\n invalid = false;\n\n @Input('value')\n @tuiDefaultProp()\n set valueSetter(value: boolean | null) {\n if (value !== false) {\n this.setCurrentIcon(value);\n }\n\n this.value = value;\n }\n\n value: boolean | null = false;\n\n constructor(\n @Inject(TUI_CHECKBOX_OPTIONS) private readonly options: CheckboxOptions,\n ) {}\n\n get appearance(): string {\n switch (this.value) {\n case false:\n return this.options.appearances.unchecked;\n case true:\n return this.options.appearances.checked;\n default:\n return this.options.appearances.indeterminate;\n }\n }\n\n get empty(): boolean {\n return this.value === false;\n }\n\n get context(): TuiContextWithImplicit<TuiSizeL> {\n return this.getContext(this.size);\n }\n\n @tuiPure\n private getContext($implicit: TuiSizeL): TuiContextWithImplicit<TuiSizeL> {\n return {$implicit};\n }\n\n private setCurrentIcon(value: null | boolean) {\n this.icon =\n value === null\n ? this.options.icons.indeterminate\n : this.options.icons.checked;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiWrapperModule} from '@taiga-ui/core/components/wrapper';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPrimitiveCheckboxComponent} from './primitive-checkbox.component';\n\n@NgModule({\n imports: [TuiSvgModule, TuiWrapperModule, PolymorpheusModule],\n declarations: [TuiPrimitiveCheckboxComponent],\n exports: [TuiPrimitiveCheckboxComponent],\n})\nexport class TuiPrimitiveCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-primitive-checkbox.js","sources":["ng://@taiga-ui/core/components/primitive-checkbox/checkbox-options.ts","ng://@taiga-ui/core/components/primitive-checkbox/primitive-checkbox.component.ts","ng://@taiga-ui/core/components/primitive-checkbox/primitive-checkbox.module.ts","ng://@taiga-ui/core/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface CheckboxOptions {\n readonly size: TuiSizeL;\n readonly appearances: Readonly<{\n unchecked: string;\n checked: string;\n indeterminate: string;\n }>;\n readonly icons: Readonly<{\n checked: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n indeterminate: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n }>;\n}\n\n/** Default values for the checkbox options. */\nexport const TUI_CHECKBOX_DEFAULT_OPTIONS: CheckboxOptions = {\n size: 'm',\n appearances: {\n unchecked: TuiAppearance.Outline,\n checked: TuiAppearance.Primary,\n indeterminate: TuiAppearance.Primary,\n },\n icons: {\n checked({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconCheck' : 'tuiIconCheckLarge';\n },\n indeterminate({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconMinus' : 'tuiIconMinusLarge';\n },\n },\n};\n\nexport const TUI_CHECKBOX_OPTIONS = new InjectionToken<CheckboxOptions>(\n 'Default parameters for checkbox component',\n {\n factory: () => TUI_CHECKBOX_DEFAULT_OPTIONS,\n },\n);\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {TuiContextWithImplicit, tuiDefaultProp, tuiPure} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {CheckboxOptions, TUI_CHECKBOX_OPTIONS} from './checkbox-options';\n\n// @dynamic\n@Component({\n selector: 'tui-primitive-checkbox',\n templateUrl: './primitive-checkbox.template.html',\n styleUrls: ['./primitive-checkbox.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveCheckboxComponent {\n icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> =\n this.options.icons.checked;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeL = this.options.size;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n @tuiDefaultProp()\n focused = false;\n\n @Input()\n @tuiDefaultProp()\n hovered = false;\n\n @Input()\n @tuiDefaultProp()\n pressed = false;\n\n @Input()\n @tuiDefaultProp()\n invalid = false;\n\n @Input('value')\n @tuiDefaultProp()\n set valueSetter(value: boolean | null) {\n if (value !== false) {\n this.setCurrentIcon(value);\n }\n\n this.value = value;\n }\n\n value: boolean | null = false;\n\n constructor(\n @Inject(TUI_CHECKBOX_OPTIONS) private readonly options: CheckboxOptions,\n ) {}\n\n get appearance(): string {\n switch (this.value) {\n case false:\n return this.options.appearances.unchecked;\n case true:\n return this.options.appearances.checked;\n default:\n return this.options.appearances.indeterminate;\n }\n }\n\n get empty(): boolean {\n return this.value === false;\n }\n\n get context(): TuiContextWithImplicit<TuiSizeL> {\n return this.getContext(this.size);\n }\n\n @tuiPure\n private getContext($implicit: TuiSizeL): TuiContextWithImplicit<TuiSizeL> {\n return {$implicit};\n }\n\n private setCurrentIcon(value: null | boolean) {\n this.icon =\n value === null\n ? this.options.icons.indeterminate\n : this.options.icons.checked;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiWrapperModule} from '@taiga-ui/core/components/wrapper';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPrimitiveCheckboxComponent} from './primitive-checkbox.component';\n\n@NgModule({\n imports: [TuiSvgModule, TuiWrapperModule, PolymorpheusModule],\n declarations: [TuiPrimitiveCheckboxComponent],\n exports: [TuiPrimitiveCheckboxComponent],\n})\nexport class TuiPrimitiveCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-primitive-textfield.js","sources":["ng://@taiga-ui/core/components/primitive-textfield/primitive-textfield.providers.ts","ng://@taiga-ui/core/components/primitive-textfield/primitive-textfield.component.ts","ng://@taiga-ui/core/components/primitive-textfield/value-decoration/value-decoration.component.ts","ng://@taiga-ui/core/components/primitive-textfield/primitive-textfield.module.ts","ng://@taiga-ui/core/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.ts"],"sourcesContent":["import {forwardRef} from '@angular/core';\nimport {TUI_FOCUSABLE_ITEM_ACCESSOR} from '@taiga-ui/cdk';\nimport {HINT_CONTROLLER_PROVIDER} from '@taiga-ui/core/directives/hint-controller';\nimport {TEXTFIELD_CONTROLLER_PROVIDER} from '@taiga-ui/core/directives/textfield-controller';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TuiPrimitiveTextfieldComponent} from './primitive-textfield.component';\n\nexport const TUI_PRIMITIVE_TEXTFIELD_PROVIDERS = [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiPrimitiveTextfieldComponent),\n },\n TEXTFIELD_CONTROLLER_PROVIDER,\n HINT_CONTROLLER_PROVIDER,\n MODE_PROVIDER,\n];\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n QueryList,\n ViewChild,\n} from '@angular/core';\nimport {\n AbstractTuiInteractive,\n isNativeFocused,\n setNativeFocused,\n TuiCreditCardAutofillName,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n TUI_HINT_WATCHED_CONTROLLER,\n TuiHintControllerDirective,\n} from '@taiga-ui/core/directives/hint-controller';\nimport {\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiTextfieldController,\n} from '@taiga-ui/core/directives/textfield-controller';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TUI_MODE, TUI_TEXTFIELD_APPEARANCE} from '@taiga-ui/core/tokens';\nimport {\n TuiBrightness,\n TuiHorizontalDirection,\n TuiSizeL,\n TuiSizeS,\n} from '@taiga-ui/core/types';\nimport {getBorder} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent, PolymorpheusOutletComponent} from '@tinkoff/ng-polymorpheus';\nimport {fromEvent, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\nimport {TUI_PRIMITIVE_TEXTFIELD_PROVIDERS} from './primitive-textfield.providers';\n\nconst ICON_PADDING = 1.75;\nconst ICON_PADDING_S = 1.5;\n\n@Component({\n selector: 'tui-primitive-textfield',\n templateUrl: './primitive-textfield.template.html',\n styleUrls: ['./primitive-textfield.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_PRIMITIVE_TEXTFIELD_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiPrimitiveTextfieldComponent\n extends AbstractTuiInteractive\n implements TuiFocusableElementAccessor\n{\n @Input()\n @tuiDefaultProp()\n editable = true;\n\n @Input()\n @tuiDefaultProp()\n filler = '';\n\n @Input()\n @tuiDefaultProp()\n iconAlign: TuiHorizontalDirection = 'right';\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiDefaultProp()\n iconContent: PolymorpheusContent | null = null;\n\n @Input()\n @HostBinding('class._readonly')\n @tuiDefaultProp()\n readOnly = false;\n\n @Input()\n @tuiDefaultProp()\n invalid = false;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n @tuiDefaultProp()\n prefix = '';\n\n @Input()\n @tuiDefaultProp()\n postfix = '';\n\n @Input()\n @tuiDefaultProp()\n value = '';\n\n @Output()\n readonly valueChange = new EventEmitter<string>();\n\n @Output()\n readonly autofilledChange = new EventEmitter<boolean>();\n\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<HTMLInputElement>;\n\n @ContentChildren(PolymorpheusOutletComponent)\n readonly content?: QueryList<unknown>;\n\n private autofilled = false;\n\n constructor(\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TEXTFIELD_APPEARANCE) readonly appearance: string,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n @Inject(TUI_HINT_WATCHED_CONTROLLER)\n readonly hintController: TuiHintControllerDirective,\n ) {\n super();\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.computedDisabled || !this.focusableElement\n ? null\n : this.focusableElement.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n @HostBinding('attr.data-tui-host-size')\n get size(): TuiSizeS | TuiSizeL {\n return this.controller.size;\n }\n\n @HostBinding('class._label-outside')\n get labelOutside(): boolean {\n return this.controller.labelOutside;\n }\n\n @HostBinding('class._invalid')\n get computedInvalid(): boolean {\n return !this.readOnly && !this.disabled && this.invalid;\n }\n\n get inputHidden(): boolean {\n return !!this.content?.length;\n }\n\n get isContextTable(): boolean {\n return this.appearance === TuiAppearance.Table;\n }\n\n get hasValue(): boolean {\n return !!this.value;\n }\n\n get hasCleaner(): boolean {\n return (\n this.controller.cleaner && this.hasValue && !this.disabled && !this.readOnly\n );\n }\n\n get hasTooltip(): boolean {\n return !!this.hintController?.content && !this.disabled;\n }\n\n get hasCustomContent(): boolean {\n return !!this.controller.customContent;\n }\n\n get hasPlaceholder(): boolean {\n const hasDecor = this.controller.exampleText || this.prefix || this.postfix;\n const showDecor = hasDecor && !this.readOnly && this.computedFocused;\n const placeholderVisible = !this.hasValue && !showDecor;\n\n return this.placeholderRaisable || placeholderVisible;\n }\n\n get placeholderRaised(): boolean {\n return (\n this.placeholderRaisable &&\n ((this.computedFocused && !this.readOnly) || this.hasValue || this.autofilled)\n );\n }\n\n get borderLeft(): number {\n return this.iconAlignLeft ? this.iconPaddingLeft : 0;\n }\n\n get borderRight(): number {\n return getBorder(\n this.iconAlignRight,\n this.hasCleaner,\n this.hasTooltip,\n this.hasCustomContent,\n );\n }\n\n get iconAlignLeft(): boolean {\n return this.hasIcon && this.iconAlign === 'left';\n }\n\n get iconAlignRight(): boolean {\n return this.hasIcon && this.iconAlign === 'right';\n }\n\n // Safari expiration date autofill workaround\n get name(): 'ccexpiryyear' | null {\n return this.controller.autocomplete === TuiCreditCardAutofillName.CcExp\n ? 'ccexpiryyear'\n : null;\n }\n\n @tuiPure\n getIndent$(element: HTMLElement): Observable<number> {\n return fromEvent(element, 'scroll').pipe(map(() => -1 * element.scrollLeft));\n }\n\n clear() {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = '';\n }\n\n this.updateValue('');\n }\n\n onMouseDown(event: MouseEvent) {\n if (\n !this.focusableElement ||\n event.target === this.focusableElement.nativeElement\n ) {\n return;\n }\n\n event.preventDefault();\n setNativeFocused(this.focusableElement.nativeElement);\n }\n\n onModelChange(value: string) {\n this.updateValue(value);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onAutofilled(autofilled: boolean) {\n this.updateAutofilled(autofilled);\n }\n\n private get iconPaddingLeft(): number {\n return this.size === 's' ? ICON_PADDING_S : ICON_PADDING;\n }\n\n private get placeholderRaisable(): boolean {\n return this.size !== 's' && !this.labelOutside;\n }\n\n private get hasIcon(): boolean {\n return !!this.iconContent;\n }\n\n private updateAutofilled(autofilled: boolean) {\n if (this.autofilled === autofilled) {\n return;\n }\n\n this.autofilled = autofilled;\n this.autofilledChange.emit(autofilled);\n }\n\n private updateValue(value: string) {\n this.value = value;\n this.valueChange.emit(value);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n ViewChild,\n} from '@angular/core';\nimport {MutationObserverDirective} from '@ng-web-apis/mutation-observer';\nimport {\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiTextfieldController,\n} from '@taiga-ui/core/directives';\nimport {defer, EMPTY} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\nimport {TuiPrimitiveTextfieldComponent} from '../primitive-textfield.component';\n\n@Component({\n selector: 'tui-value-decoration',\n templateUrl: 'value-decoration.template.html',\n styleUrls: ['value-decoration.style.less'],\n // It follows Change Detection of PrimitiveTextfield\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class TuiValueDecorationComponent {\n readonly pre$ = defer(() => this.directive?.waMutationObserver ?? EMPTY).pipe(\n map(() => this.pre?.nativeElement.offsetWidth ?? 0),\n startWith(0),\n distinctUntilChanged(),\n );\n\n @ViewChild('pre', {read: ElementRef, static: true})\n private readonly pre?: ElementRef<HTMLElement>;\n\n @ViewChild(MutationObserverDirective, {static: true})\n private readonly directive?: MutationObserverDirective;\n\n constructor(\n @Inject(TuiPrimitiveTextfieldComponent)\n private readonly textfield: TuiPrimitiveTextfieldComponent,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n private readonly controller: TuiTextfieldController,\n ) {}\n\n get value(): string {\n return this.textfield.value;\n }\n\n get filler(): string {\n return this.focused\n ? this.exampleText || this.textfield.filler.slice(this.value.length)\n : '';\n }\n\n get prefix(): string {\n return this.decorationsVisible ? this.textfield.prefix : '';\n }\n\n get postfix(): string {\n return this.decorationsVisible ? this.computedPostfix : '';\n }\n\n private get exampleText(): string {\n return !this.value && this.focused ? this.controller.exampleText : '';\n }\n\n private get decorationsVisible(): boolean {\n return !!this.value || this.focused;\n }\n\n private get focused(): boolean {\n return this.textfield.computedFocused && !this.textfield.readOnly;\n }\n\n private get computedPostfix(): string {\n return this.textfield.postfix && (this.filler || this.value)\n ? ` ${this.textfield.postfix}`\n : this.textfield.postfix;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {MutationObserverModule} from '@ng-web-apis/mutation-observer';\nimport {\n TuiAutofilledModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiInputModeModule,\n TuiPreventDefaultModule,\n} from '@taiga-ui/cdk';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiTooltipModule} from '@taiga-ui/core/components/tooltip';\nimport {TuiWrapperModule} from '@taiga-ui/core/components/wrapper';\nimport {TuiBorderModule} from '@taiga-ui/core/directives/border';\nimport {TuiDescribedByModule} from '@taiga-ui/core/directives/described-by';\nimport {TuiMaskAccessorModule} from '@taiga-ui/core/directives/mask-accessor';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiPrimitiveTextfieldComponent} from './primitive-textfield.component';\nimport {TuiValueDecorationComponent} from './value-decoration/value-decoration.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiMaskAccessorModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiInputModeModule,\n PolymorpheusModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiTooltipModule,\n TuiAutofilledModule,\n TuiDescribedByModule,\n TuiPreventDefaultModule,\n TuiBorderModule,\n MutationObserverModule,\n ],\n declarations: [TuiPrimitiveTextfieldComponent, TuiValueDecorationComponent],\n exports: [TuiPrimitiveTextfieldComponent],\n})\nexport class TuiPrimitiveTextfieldModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TuiTextfieldController","TUI_TEXTFIELD_WATCHED_CONTROLLER"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-primitive-textfield.js","sources":["ng://@taiga-ui/core/components/primitive-textfield/primitive-textfield.providers.ts","ng://@taiga-ui/core/components/primitive-textfield/primitive-textfield.component.ts","ng://@taiga-ui/core/components/primitive-textfield/value-decoration/value-decoration.component.ts","ng://@taiga-ui/core/components/primitive-textfield/primitive-textfield.module.ts","ng://@taiga-ui/core/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.ts"],"sourcesContent":["import {forwardRef} from '@angular/core';\nimport {TUI_FOCUSABLE_ITEM_ACCESSOR} from '@taiga-ui/cdk';\nimport {HINT_CONTROLLER_PROVIDER} from '@taiga-ui/core/directives/hint-controller';\nimport {TEXTFIELD_CONTROLLER_PROVIDER} from '@taiga-ui/core/directives/textfield-controller';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\n\nimport {TuiPrimitiveTextfieldComponent} from './primitive-textfield.component';\n\nexport const TUI_PRIMITIVE_TEXTFIELD_PROVIDERS = [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiPrimitiveTextfieldComponent),\n },\n TEXTFIELD_CONTROLLER_PROVIDER,\n HINT_CONTROLLER_PROVIDER,\n MODE_PROVIDER,\n];\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n QueryList,\n ViewChild,\n} from '@angular/core';\nimport {\n AbstractTuiInteractive,\n isNativeFocused,\n setNativeFocused,\n TuiCreditCardAutofillName,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n TUI_HINT_WATCHED_CONTROLLER,\n TuiHintControllerDirective,\n} from '@taiga-ui/core/directives/hint-controller';\nimport {\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiTextfieldController,\n} from '@taiga-ui/core/directives/textfield-controller';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TUI_MODE, TUI_TEXTFIELD_APPEARANCE} from '@taiga-ui/core/tokens';\nimport {\n TuiBrightness,\n TuiHorizontalDirection,\n TuiSizeL,\n TuiSizeS,\n} from '@taiga-ui/core/types';\nimport {getBorder} from '@taiga-ui/core/utils/miscellaneous';\nimport {PolymorpheusContent, PolymorpheusOutletComponent} from '@tinkoff/ng-polymorpheus';\nimport {fromEvent, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_PRIMITIVE_TEXTFIELD_PROVIDERS} from './primitive-textfield.providers';\n\nconst ICON_PADDING = 1.75;\nconst ICON_PADDING_S = 1.5;\n\n@Component({\n selector: 'tui-primitive-textfield',\n templateUrl: './primitive-textfield.template.html',\n styleUrls: ['./primitive-textfield.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_PRIMITIVE_TEXTFIELD_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiPrimitiveTextfieldComponent\n extends AbstractTuiInteractive\n implements TuiFocusableElementAccessor\n{\n @Input()\n @tuiDefaultProp()\n editable = true;\n\n @Input()\n @tuiDefaultProp()\n filler = '';\n\n @Input()\n @tuiDefaultProp()\n iconAlign: TuiHorizontalDirection = 'right';\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiDefaultProp()\n iconContent: PolymorpheusContent | null = null;\n\n @Input()\n @HostBinding('class._readonly')\n @tuiDefaultProp()\n readOnly = false;\n\n @Input()\n @tuiDefaultProp()\n invalid = false;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n @tuiDefaultProp()\n prefix = '';\n\n @Input()\n @tuiDefaultProp()\n postfix = '';\n\n @Input()\n @tuiDefaultProp()\n value = '';\n\n @Output()\n readonly valueChange = new EventEmitter<string>();\n\n @Output()\n readonly autofilledChange = new EventEmitter<boolean>();\n\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<HTMLInputElement>;\n\n @ContentChildren(PolymorpheusOutletComponent)\n readonly content?: QueryList<unknown>;\n\n private autofilled = false;\n\n constructor(\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TEXTFIELD_APPEARANCE) readonly appearance: string,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n @Inject(TUI_HINT_WATCHED_CONTROLLER)\n readonly hintController: TuiHintControllerDirective,\n ) {\n super();\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.computedDisabled || !this.focusableElement\n ? null\n : this.focusableElement.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n @HostBinding('attr.data-tui-host-size')\n get size(): TuiSizeS | TuiSizeL {\n return this.controller.size;\n }\n\n @HostBinding('class._label-outside')\n get labelOutside(): boolean {\n return this.controller.labelOutside;\n }\n\n @HostBinding('class._invalid')\n get computedInvalid(): boolean {\n return !this.readOnly && !this.disabled && this.invalid;\n }\n\n get inputHidden(): boolean {\n return !!this.content?.length;\n }\n\n get isContextTable(): boolean {\n return this.appearance === TuiAppearance.Table;\n }\n\n get hasValue(): boolean {\n return !!this.value;\n }\n\n get hasCleaner(): boolean {\n return (\n this.controller.cleaner && this.hasValue && !this.disabled && !this.readOnly\n );\n }\n\n get hasTooltip(): boolean {\n return !!this.hintController?.content && !this.disabled;\n }\n\n get hasCustomContent(): boolean {\n return !!this.controller.customContent;\n }\n\n get hasPlaceholder(): boolean {\n const hasDecor = this.controller.exampleText || this.prefix || this.postfix;\n const showDecor = hasDecor && !this.readOnly && this.computedFocused;\n const placeholderVisible = !this.hasValue && !showDecor;\n\n return this.placeholderRaisable || placeholderVisible;\n }\n\n get placeholderRaised(): boolean {\n return (\n this.placeholderRaisable &&\n ((this.computedFocused && !this.readOnly) || this.hasValue || this.autofilled)\n );\n }\n\n get borderLeft(): number {\n return this.iconAlignLeft ? this.iconPaddingLeft : 0;\n }\n\n get borderRight(): number {\n return getBorder(\n this.iconAlignRight,\n this.hasCleaner,\n this.hasTooltip,\n this.hasCustomContent,\n );\n }\n\n get iconAlignLeft(): boolean {\n return this.hasIcon && this.iconAlign === 'left';\n }\n\n get iconAlignRight(): boolean {\n return this.hasIcon && this.iconAlign === 'right';\n }\n\n // Safari expiration date autofill workaround\n get name(): 'ccexpiryyear' | null {\n return this.controller.autocomplete === TuiCreditCardAutofillName.CcExp\n ? 'ccexpiryyear'\n : null;\n }\n\n @tuiPure\n getIndent$(element: HTMLElement): Observable<number> {\n return fromEvent(element, 'scroll').pipe(map(() => -1 * element.scrollLeft));\n }\n\n clear() {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = '';\n }\n\n this.updateValue('');\n }\n\n onMouseDown(event: MouseEvent) {\n if (\n !this.focusableElement ||\n event.target === this.focusableElement.nativeElement\n ) {\n return;\n }\n\n event.preventDefault();\n setNativeFocused(this.focusableElement.nativeElement);\n }\n\n onModelChange(value: string) {\n this.updateValue(value);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onAutofilled(autofilled: boolean) {\n this.updateAutofilled(autofilled);\n }\n\n private get iconPaddingLeft(): number {\n return this.size === 's' ? ICON_PADDING_S : ICON_PADDING;\n }\n\n private get placeholderRaisable(): boolean {\n return this.size !== 's' && !this.labelOutside;\n }\n\n private get hasIcon(): boolean {\n return !!this.iconContent;\n }\n\n private updateAutofilled(autofilled: boolean) {\n if (this.autofilled === autofilled) {\n return;\n }\n\n this.autofilled = autofilled;\n this.autofilledChange.emit(autofilled);\n }\n\n private updateValue(value: string) {\n this.value = value;\n this.valueChange.emit(value);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n ViewChild,\n} from '@angular/core';\nimport {MutationObserverDirective} from '@ng-web-apis/mutation-observer';\nimport {\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiTextfieldController,\n} from '@taiga-ui/core/directives';\nimport {defer, EMPTY} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nimport {TuiPrimitiveTextfieldComponent} from '../primitive-textfield.component';\n\n@Component({\n selector: 'tui-value-decoration',\n templateUrl: 'value-decoration.template.html',\n styleUrls: ['value-decoration.style.less'],\n // It follows Change Detection of PrimitiveTextfield\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class TuiValueDecorationComponent {\n readonly pre$ = defer(() => this.directive?.waMutationObserver ?? EMPTY).pipe(\n map(() => this.pre?.nativeElement.offsetWidth ?? 0),\n startWith(0),\n distinctUntilChanged(),\n );\n\n @ViewChild('pre', {read: ElementRef, static: true})\n private readonly pre?: ElementRef<HTMLElement>;\n\n @ViewChild(MutationObserverDirective, {static: true})\n private readonly directive?: MutationObserverDirective;\n\n constructor(\n @Inject(TuiPrimitiveTextfieldComponent)\n private readonly textfield: TuiPrimitiveTextfieldComponent,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n private readonly controller: TuiTextfieldController,\n ) {}\n\n get value(): string {\n return this.textfield.value;\n }\n\n get filler(): string {\n return this.focused\n ? this.exampleText || this.textfield.filler.slice(this.value.length)\n : '';\n }\n\n get prefix(): string {\n return this.decorationsVisible ? this.textfield.prefix : '';\n }\n\n get postfix(): string {\n return this.decorationsVisible ? this.computedPostfix : '';\n }\n\n private get exampleText(): string {\n return !this.value && this.focused ? this.controller.exampleText : '';\n }\n\n private get decorationsVisible(): boolean {\n return !!this.value || this.focused;\n }\n\n private get focused(): boolean {\n return this.textfield.computedFocused && !this.textfield.readOnly;\n }\n\n private get computedPostfix(): string {\n return this.textfield.postfix && (this.filler || this.value)\n ? ` ${this.textfield.postfix}`\n : this.textfield.postfix;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {MutationObserverModule} from '@ng-web-apis/mutation-observer';\nimport {\n TuiAutofilledModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiInputModeModule,\n TuiPreventDefaultModule,\n} from '@taiga-ui/cdk';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {TuiTooltipModule} from '@taiga-ui/core/components/tooltip';\nimport {TuiWrapperModule} from '@taiga-ui/core/components/wrapper';\nimport {TuiBorderModule} from '@taiga-ui/core/directives/border';\nimport {TuiDescribedByModule} from '@taiga-ui/core/directives/described-by';\nimport {TuiMaskAccessorModule} from '@taiga-ui/core/directives/mask-accessor';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPrimitiveTextfieldComponent} from './primitive-textfield.component';\nimport {TuiValueDecorationComponent} from './value-decoration/value-decoration.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiMaskAccessorModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiInputModeModule,\n PolymorpheusModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiTooltipModule,\n TuiAutofilledModule,\n TuiDescribedByModule,\n TuiPreventDefaultModule,\n TuiBorderModule,\n MutationObserverModule,\n ],\n declarations: [TuiPrimitiveTextfieldComponent, TuiValueDecorationComponent],\n exports: [TuiPrimitiveTextfieldComponent],\n})\nexport class TuiPrimitiveTextfieldModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TuiTextfieldController","TUI_TEXTFIELD_WATCHED_CONTROLLER"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-root.js","sources":["ng://@taiga-ui/core/components/root/root.component.ts","ng://@taiga-ui/core/components/root/root.module.ts","ng://@taiga-ui/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Optional,\n} from '@angular/core';\nimport {TUI_DIALOGS, TUI_IS_MOBILE, tuiAssert} from '@taiga-ui/cdk';\nimport {VERSION} from '@taiga-ui/core/constants';\nimport {TuiNotificationsHostComponent} from '@taiga-ui/core/modules/notifications';\nimport {TUI_ANIMATIONS_DURATION, TUI_ASSERT_ENABLED} from '@taiga-ui/core/tokens';\nimport {merge, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-root',\n templateUrl: 'root.template.html',\n styleUrls: ['./root.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'data-tui-version': VERSION,\n '[style.--tui-duration]': 'duration + \"ms\"',\n },\n})\nexport class TuiRootComponent {\n readonly scrollbars$ =\n this.dialogs && !this.isMobile\n ? merge(...this.dialogs).pipe(map(({length}) => !length))\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(ElementRef) readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DIALOGS)\n readonly dialogs: readonly Observable<readonly unknown[]>[] | null,\n @Optional()\n @Inject(TuiNotificationsHostComponent)\n readonly notificationsHost: TuiNotificationsHostComponent,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_ASSERT_ENABLED) enabled: boolean,\n ) {\n tuiAssert.enabled = enabled;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiDialogHostModule, TuiDragModule, TuiPortalHostModule} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDragModule,\n TuiPortalHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAcA;IAWa,gBAAgB,GAA7B,MAAa,gBAAgB;IAMzB,YAC8C,QAAgB,EAC7B,UAAmC,EAGvD,OAAyD,EAGzD,iBAAgD,EACjB,QAAiB,EAC7B,OAAgB;QATF,aAAQ,GAAR,QAAQ,CAAQ;QAC7B,eAAU,GAAV,UAAU,CAAyB;QAGvD,YAAO,GAAP,OAAO,CAAkD;QAGzD,sBAAiB,GAAjB,iBAAiB,CAA+B;QACjB,aAAQ,GAAR,QAAQ,CAAS;QAdpD,gBAAW,GAChB,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ;cACxB,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;cACvD,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAczB,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;KAC/B;EACJ;;yCAbQ,MAAM,SAAC,uBAAuB;YACU,UAAU,uBAAlD,MAAM,SAAC,UAAU;4CACjB,QAAQ,YACR,MAAM,SAAC,WAAW;YAIS,6BAA6B,uBAFxD,QAAQ,YACR,MAAM,SAAC,6BAA6B;0CAEpC,MAAM,SAAC,aAAa;0CACpB,MAAM,SAAC,kBAAkB;;AAhBrB,gBAAgB;IAV5B,SAAS,CAAC;QACP,QAAQ,EAAE,UAAU;QACpB,6xBAAiC;QAEjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,IAAI,EAAE;YACF,kBAAkB,EAAE,OAAO;YAC3B,wBAAwB,EAAE,iBAAiB;SAC9C;;KACJ,CAAC;IAQO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;IAC/B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;IAEnB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAErC,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;GAhBtB,gBAAgB,CAoB5B;;ICtBY,aAAa,GAA1B,MAAa,aAAa;EAAG;AAAhB,aAAa;IAdzB,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,aAAa;YACb,mBAAmB;YACnB,oBAAoB;YACpB,kBAAkB;YAClB,mBAAmB;YACnB,uBAAuB;SAC1B;QACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;QAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC9B,CAAC;GACW,aAAa,CAAG;;ACvB7B;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-root.js","sources":["ng://@taiga-ui/core/components/root/root.component.ts","ng://@taiga-ui/core/components/root/root.module.ts","ng://@taiga-ui/core/components/root/taiga-ui-core-components-root.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Optional,\n} from '@angular/core';\nimport {TUI_DIALOGS, TUI_IS_MOBILE, tuiAssert} from '@taiga-ui/cdk';\nimport {VERSION} from '@taiga-ui/core/constants';\nimport {TuiNotificationsHostComponent} from '@taiga-ui/core/modules/notifications';\nimport {TUI_ANIMATIONS_DURATION, TUI_ASSERT_ENABLED} from '@taiga-ui/core/tokens';\nimport {merge, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-root',\n templateUrl: 'root.template.html',\n styleUrls: ['./root.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'data-tui-version': VERSION,\n '[style.--tui-duration]': 'duration + \"ms\"',\n },\n})\nexport class TuiRootComponent {\n readonly scrollbars$ =\n this.dialogs && !this.isMobile\n ? merge(...this.dialogs).pipe(map(({length}) => !length))\n : of(!this.isMobile);\n\n constructor(\n @Inject(TUI_ANIMATIONS_DURATION) readonly duration: number,\n @Inject(ElementRef) readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DIALOGS)\n readonly dialogs: readonly Observable<readonly unknown[]>[] | null,\n @Optional()\n @Inject(TuiNotificationsHostComponent)\n readonly notificationsHost: TuiNotificationsHostComponent,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_ASSERT_ENABLED) enabled: boolean,\n ) {\n tuiAssert.enabled = enabled;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiDialogHostModule, TuiDragModule, TuiPortalHostModule} from '@taiga-ui/cdk';\nimport {TuiHintsHostModule} from '@taiga-ui/core/components/hints-host';\nimport {TuiScrollControlsModule} from '@taiga-ui/core/components/scroll-controls';\nimport {TuiSvgDefsHostModule} from '@taiga-ui/core/internal/svg-defs-host';\nimport {EventPluginsModule} from '@tinkoff/ng-event-plugins';\n\nimport {TuiRootComponent} from './root.component';\n\n@NgModule({\n imports: [\n CommonModule,\n EventPluginsModule,\n TuiDragModule,\n TuiPortalHostModule,\n TuiSvgDefsHostModule,\n TuiHintsHostModule,\n TuiDialogHostModule,\n TuiScrollControlsModule,\n ],\n declarations: [TuiRootComponent],\n exports: [TuiRootComponent],\n})\nexport class TuiRootModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAcA;IAWa,gBAAgB,GAA7B,MAAa,gBAAgB;IAMzB,YAC8C,QAAgB,EAC7B,UAAmC,EAGvD,OAAyD,EAGzD,iBAAgD,EACjB,QAAiB,EAC7B,OAAgB;QATF,aAAQ,GAAR,QAAQ,CAAQ;QAC7B,eAAU,GAAV,UAAU,CAAyB;QAGvD,YAAO,GAAP,OAAO,CAAkD;QAGzD,sBAAiB,GAAjB,iBAAiB,CAA+B;QACjB,aAAQ,GAAR,QAAQ,CAAS;QAdpD,gBAAW,GAChB,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ;cACxB,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;cACvD,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAczB,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;KAC/B;EACJ;;yCAbQ,MAAM,SAAC,uBAAuB;YACU,UAAU,uBAAlD,MAAM,SAAC,UAAU;4CACjB,QAAQ,YACR,MAAM,SAAC,WAAW;YAIS,6BAA6B,uBAFxD,QAAQ,YACR,MAAM,SAAC,6BAA6B;0CAEpC,MAAM,SAAC,aAAa;0CACpB,MAAM,SAAC,kBAAkB;;AAhBrB,gBAAgB;IAV5B,SAAS,CAAC;QACP,QAAQ,EAAE,UAAU;QACpB,6xBAAiC;QAEjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,IAAI,EAAE;YACF,kBAAkB,EAAE,OAAO;YAC3B,wBAAwB,EAAE,iBAAiB;SAC9C;;KACJ,CAAC;IAQO,WAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;IAC/B,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAClB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;IAEnB,WAAA,QAAQ,EAAE,CAAA;IACV,WAAA,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAErC,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,WAAA,MAAM,CAAC,kBAAkB,CAAC,CAAA;GAhBtB,gBAAgB,CAoB5B;;ICrBY,aAAa,GAA1B,MAAa,aAAa;EAAG;AAAhB,aAAa;IAdzB,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,aAAa;YACb,mBAAmB;YACnB,oBAAoB;YACpB,kBAAkB;YAClB,mBAAmB;YACnB,uBAAuB;SAC1B;QACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;QAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC9B,CAAC;GACW,aAAa,CAAG;;ACxB7B;;;;;;"}