@taiga-ui/core 3.17.0 → 3.18.0-dev.main-6071534

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 (311) hide show
  1. package/bundles/taiga-ui-core-abstract.umd.js +11 -19
  2. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-alert.umd.js +14 -23
  4. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-button.umd.js +11 -20
  6. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-calendar.umd.js +11 -20
  8. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-data-list.umd.js +20 -29
  10. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-dialog.umd.js +203 -190
  12. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-error.umd.js +11 -20
  14. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-expand.umd.js +14 -23
  16. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-group.umd.js +14 -23
  18. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-hints-host.umd.js +7 -7
  20. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +14 -23
  21. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  22. package/bundles/taiga-ui-core-components-label.umd.js +11 -20
  23. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-link.umd.js +11 -20
  25. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-loader.umd.js +11 -20
  27. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-notification.umd.js +13 -22
  29. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +11 -20
  31. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +11 -20
  33. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +11 -20
  35. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  36. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +21 -30
  37. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  38. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +11 -20
  39. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-root.umd.js +11 -20
  41. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +17 -26
  43. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  44. package/bundles/taiga-ui-core-components-scrollbar.umd.js +17 -26
  45. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-svg.umd.js +109 -38
  47. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-theme-night.umd.js +11 -20
  49. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  50. package/bundles/taiga-ui-core-components-tooltip.umd.js +39 -30
  51. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  52. package/bundles/taiga-ui-core-directives-dropdown.umd.js +83 -72
  53. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  54. package/bundles/taiga-ui-core-directives-hint.umd.js +95 -100
  55. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +7 -7
  57. package/bundles/taiga-ui-core-directives-mode.umd.js +11 -20
  58. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  59. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +11 -20
  60. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  61. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +35 -44
  62. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  63. package/bundles/taiga-ui-core-directives-wrapper.umd.js +7 -7
  64. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +11 -20
  65. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  66. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +7 -7
  67. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +7 -7
  68. package/bundles/taiga-ui-core-pipes-format-date.umd.js +7 -7
  69. package/bundles/taiga-ui-core-pipes-format-number.umd.js +7 -7
  70. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +7 -7
  71. package/bundles/taiga-ui-core-pipes-month.umd.js +7 -7
  72. package/bundles/taiga-ui-core-pipes-order-week-days.umd.js +11 -20
  73. package/bundles/taiga-ui-core-pipes-order-week-days.umd.js.map +1 -1
  74. package/bundles/taiga-ui-core-services.umd.js +22 -31
  75. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  76. package/bundles/taiga-ui-core-tokens.umd.js +43 -14
  77. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  78. package/bundles/taiga-ui-core-utils-format.umd.js +4 -13
  79. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  80. package/bundles/taiga-ui-core-utils-mask.umd.js +4 -13
  81. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  82. package/components/dialog/dialog-close.service.d.ts +15 -0
  83. package/components/dialog/dialog.component.d.ts +5 -4
  84. package/components/dialog/dialog.tokens.d.ts +2 -0
  85. package/components/dialog/index.d.ts +1 -1
  86. package/components/notification/notification.component.d.ts +2 -2
  87. package/components/svg/deprecated-icons.d.ts +1 -0
  88. package/components/svg/index.d.ts +2 -0
  89. package/components/svg/svg-options.d.ts +14 -0
  90. package/components/svg/svg.component.d.ts +5 -7
  91. package/components/tooltip/tooltip.component.d.ts +2 -2
  92. package/components/tooltip/tooltip.module.d.ts +5 -4
  93. package/directives/dropdown/dropdown-hover-options.directive.d.ts +9 -0
  94. package/directives/dropdown/dropdown-hover.directive.d.ts +3 -1
  95. package/directives/dropdown/dropdown-position-sided.directive.d.ts +2 -2
  96. package/directives/dropdown/dropdown-position.directive.d.ts +2 -2
  97. package/directives/dropdown/index.d.ts +1 -0
  98. package/directives/hint/hint-hover.directive.d.ts +4 -2
  99. package/directives/hint/hint-position.directive.d.ts +2 -2
  100. package/esm2015/abstract/abstract-driver.directive.js +3 -3
  101. package/esm2015/abstract/abstract-textfield-host.js +3 -3
  102. package/esm2015/abstract/rect-accessor.js +2 -1
  103. package/esm2015/components/alert/alert.component.js +3 -3
  104. package/esm2015/components/alert/alert.module.js +4 -4
  105. package/esm2015/components/alert/alert.service.js +3 -3
  106. package/esm2015/components/button/button.component.js +3 -3
  107. package/esm2015/components/button/button.module.js +4 -4
  108. package/esm2015/components/calendar/calendar.component.js +3 -3
  109. package/esm2015/components/calendar/calendar.module.js +4 -4
  110. package/esm2015/components/data-list/data-list.component.js +3 -3
  111. package/esm2015/components/data-list/data-list.directive.js +3 -3
  112. package/esm2015/components/data-list/data-list.module.js +4 -4
  113. package/esm2015/components/data-list/opt-group.directive.js +3 -3
  114. package/esm2015/components/data-list/option/option.component.js +3 -3
  115. package/esm2015/components/dialog/dialog-close.service.js +51 -0
  116. package/esm2015/components/dialog/dialog.component.js +27 -11
  117. package/esm2015/components/dialog/dialog.directive.js +3 -3
  118. package/esm2015/components/dialog/dialog.module.js +4 -4
  119. package/esm2015/components/dialog/dialog.service.js +3 -3
  120. package/esm2015/components/dialog/dialog.tokens.js +5 -1
  121. package/esm2015/components/dialog/index.js +2 -2
  122. package/esm2015/components/error/error.component.js +3 -3
  123. package/esm2015/components/error/error.module.js +4 -4
  124. package/esm2015/components/expand/expand-content.directive.js +3 -3
  125. package/esm2015/components/expand/expand.component.js +3 -3
  126. package/esm2015/components/expand/expand.module.js +4 -4
  127. package/esm2015/components/group/group-styles.component.js +3 -3
  128. package/esm2015/components/group/group.directive.js +3 -3
  129. package/esm2015/components/group/group.module.js +4 -4
  130. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  131. package/esm2015/components/hints-host/hints-host.module.js +4 -4
  132. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +3 -3
  133. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +3 -3
  134. package/esm2015/components/hosted-dropdown/hosted-dropdown.module.js +4 -4
  135. package/esm2015/components/label/label.component.js +3 -3
  136. package/esm2015/components/label/label.module.js +4 -4
  137. package/esm2015/components/link/link.component.js +3 -3
  138. package/esm2015/components/link/link.module.js +4 -4
  139. package/esm2015/components/loader/loader.component.js +3 -3
  140. package/esm2015/components/loader/loader.module.js +4 -4
  141. package/esm2015/components/notification/notification.component.js +6 -6
  142. package/esm2015/components/notification/notification.module.js +4 -4
  143. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  144. package/esm2015/components/primitive-calendar/primitive-calendar.module.js +4 -4
  145. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +3 -3
  146. package/esm2015/components/primitive-checkbox/primitive-checkbox.module.js +4 -4
  147. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  148. package/esm2015/components/primitive-spin-button/primitive-spin-button.module.js +4 -4
  149. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +5 -5
  150. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +3 -3
  151. package/esm2015/components/primitive-textfield/primitive-textfield.module.js +4 -4
  152. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +3 -3
  153. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +3 -3
  154. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  155. package/esm2015/components/primitive-year-picker/primitive-year-picker.module.js +4 -4
  156. package/esm2015/components/root/root.component.js +3 -3
  157. package/esm2015/components/root/root.module.js +4 -4
  158. package/esm2015/components/scroll-controls/scroll-controls.component.js +3 -3
  159. package/esm2015/components/scroll-controls/scroll-controls.module.js +4 -4
  160. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +3 -3
  161. package/esm2015/components/scroll-controls/scrollbar.directive.js +3 -3
  162. package/esm2015/components/scrollbar/scroll-ref.directive.js +3 -3
  163. package/esm2015/components/scrollbar/scrollable.directive.js +3 -3
  164. package/esm2015/components/scrollbar/scrollbar.component.js +3 -3
  165. package/esm2015/components/scrollbar/scrollbar.module.js +4 -4
  166. package/esm2015/components/svg/deprecated-icons.js +59 -0
  167. package/esm2015/components/svg/index.js +3 -1
  168. package/esm2015/components/svg/svg-options.js +29 -0
  169. package/esm2015/components/svg/svg.component.js +14 -19
  170. package/esm2015/components/svg/svg.module.js +4 -4
  171. package/esm2015/components/theme-night/theme-night.component.js +3 -3
  172. package/esm2015/components/theme-night/theme-night.module.js +4 -4
  173. package/esm2015/components/tooltip/tooltip.component.js +15 -15
  174. package/esm2015/components/tooltip/tooltip.module.js +23 -6
  175. package/esm2015/directives/dropdown/dropdown-context.directive.js +3 -3
  176. package/esm2015/directives/dropdown/dropdown-driver.directive.js +3 -3
  177. package/esm2015/directives/dropdown/dropdown-host.directive.js +3 -3
  178. package/esm2015/directives/dropdown/dropdown-hover-options.directive.js +14 -0
  179. package/esm2015/directives/dropdown/dropdown-hover.directive.js +12 -7
  180. package/esm2015/directives/dropdown/dropdown-manual.directive.js +3 -3
  181. package/esm2015/directives/dropdown/dropdown-options.directive.js +3 -3
  182. package/esm2015/directives/dropdown/dropdown-position-sided.directive.js +14 -14
  183. package/esm2015/directives/dropdown/dropdown-position.directive.js +13 -13
  184. package/esm2015/directives/dropdown/dropdown-selection.directive.js +3 -3
  185. package/esm2015/directives/dropdown/dropdown.component.js +3 -3
  186. package/esm2015/directives/dropdown/dropdown.directive.js +3 -3
  187. package/esm2015/directives/dropdown/dropdown.module.js +4 -4
  188. package/esm2015/directives/dropdown/index.js +2 -1
  189. package/esm2015/directives/hint/hint-describe.directive.js +3 -3
  190. package/esm2015/directives/hint/hint-driver.directive.js +3 -3
  191. package/esm2015/directives/hint/hint-host.directive.js +3 -3
  192. package/esm2015/directives/hint/hint-hover.directive.js +14 -11
  193. package/esm2015/directives/hint/hint-manual.directive.js +3 -3
  194. package/esm2015/directives/hint/hint-options.directive.js +5 -5
  195. package/esm2015/directives/hint/hint-pointer.directive.js +3 -3
  196. package/esm2015/directives/hint/hint-position.directive.js +14 -13
  197. package/esm2015/directives/hint/hint.component.js +6 -5
  198. package/esm2015/directives/hint/hint.directive.js +3 -3
  199. package/esm2015/directives/hint/hint.module.js +4 -4
  200. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +3 -3
  201. package/esm2015/directives/mask-accessor/mask-accessor.module.js +4 -4
  202. package/esm2015/directives/mode/mode.directive.js +3 -3
  203. package/esm2015/directives/mode/mode.module.js +4 -4
  204. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +3 -3
  205. package/esm2015/directives/scroll-into-view/scroll-into-view.module.js +4 -4
  206. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +3 -3
  207. package/esm2015/directives/textfield-controller/textfield-controller.module.js +4 -4
  208. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +3 -3
  209. package/esm2015/directives/textfield-controller/textfield-filler.directive.js +3 -3
  210. package/esm2015/directives/textfield-controller/textfield-icon-left.directive.js +3 -3
  211. package/esm2015/directives/textfield-controller/textfield-icon.directive.js +3 -3
  212. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +3 -3
  213. package/esm2015/directives/textfield-controller/textfield-postfix.directive.js +3 -3
  214. package/esm2015/directives/textfield-controller/textfield-prefix.directive.js +3 -3
  215. package/esm2015/directives/textfield-controller/textfield-size.directive.js +3 -3
  216. package/esm2015/directives/wrapper/wrapper.directive.js +3 -3
  217. package/esm2015/directives/wrapper/wrapper.module.js +4 -4
  218. package/esm2015/interfaces/dialog-options.js +1 -1
  219. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +3 -3
  220. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.module.js +4 -4
  221. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +3 -3
  222. package/esm2015/internal/svg-defs-host/svg-defs-host.module.js +4 -4
  223. package/esm2015/pipes/calendar-sheet/calendar-sheet.module.js +4 -4
  224. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +3 -3
  225. package/esm2015/pipes/format-date/format-date.module.js +4 -4
  226. package/esm2015/pipes/format-date/format-date.pipe.js +3 -3
  227. package/esm2015/pipes/format-number/format-number.module.js +4 -4
  228. package/esm2015/pipes/format-number/format-number.pipe.js +3 -3
  229. package/esm2015/pipes/format-phone/format-phone.module.js +4 -4
  230. package/esm2015/pipes/format-phone/format-phone.pipe.js +3 -3
  231. package/esm2015/pipes/month/month.module.js +4 -4
  232. package/esm2015/pipes/month/month.pipe.js +3 -3
  233. package/esm2015/pipes/order-week-days/order-week-days.module.js +4 -4
  234. package/esm2015/pipes/order-week-days/order-week-days.pipe.js +3 -3
  235. package/esm2015/services/format-date.service.js +3 -3
  236. package/esm2015/services/hint.service.js +3 -3
  237. package/esm2015/services/night-theme.service.js +3 -3
  238. package/esm2015/services/position.service.js +3 -3
  239. package/esm2015/services/router-link-active.service.js +3 -3
  240. package/esm2015/services/svg.service.js +3 -3
  241. package/esm2015/tokens/icon-place.js +5 -2
  242. package/esm2015/tokens/icons-path.js +4 -1
  243. package/esm2015/tokens/index.js +2 -1
  244. package/esm2015/tokens/svg-content-processor.js +4 -1
  245. package/esm2015/tokens/svg-src-processor.js +4 -1
  246. package/esm2015/tokens/viewport.js +26 -0
  247. package/fesm2015/taiga-ui-core-abstract.js +7 -6
  248. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  249. package/fesm2015/taiga-ui-core-components-alert.js +10 -10
  250. package/fesm2015/taiga-ui-core-components-button.js +7 -7
  251. package/fesm2015/taiga-ui-core-components-calendar.js +7 -7
  252. package/fesm2015/taiga-ui-core-components-data-list.js +16 -16
  253. package/fesm2015/taiga-ui-core-components-dialog.js +96 -80
  254. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  255. package/fesm2015/taiga-ui-core-components-error.js +7 -7
  256. package/fesm2015/taiga-ui-core-components-expand.js +10 -10
  257. package/fesm2015/taiga-ui-core-components-group.js +10 -10
  258. package/fesm2015/taiga-ui-core-components-hints-host.js +7 -7
  259. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +10 -10
  260. package/fesm2015/taiga-ui-core-components-label.js +7 -7
  261. package/fesm2015/taiga-ui-core-components-link.js +7 -7
  262. package/fesm2015/taiga-ui-core-components-loader.js +7 -7
  263. package/fesm2015/taiga-ui-core-components-notification.js +9 -9
  264. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  265. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +7 -7
  266. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +7 -7
  267. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +7 -7
  268. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +17 -17
  269. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  270. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +7 -7
  271. package/fesm2015/taiga-ui-core-components-root.js +7 -7
  272. package/fesm2015/taiga-ui-core-components-scroll-controls.js +13 -13
  273. package/fesm2015/taiga-ui-core-components-scrollbar.js +13 -13
  274. package/fesm2015/taiga-ui-core-components-svg.js +103 -26
  275. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  276. package/fesm2015/taiga-ui-core-components-theme-night.js +7 -7
  277. package/fesm2015/taiga-ui-core-components-tooltip.js +36 -19
  278. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  279. package/fesm2015/taiga-ui-core-directives-dropdown.js +76 -59
  280. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  281. package/fesm2015/taiga-ui-core-directives-hint.js +61 -58
  282. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  283. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +7 -7
  284. package/fesm2015/taiga-ui-core-directives-mode.js +7 -7
  285. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +7 -7
  286. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +31 -31
  287. package/fesm2015/taiga-ui-core-directives-wrapper.js +7 -7
  288. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +7 -7
  289. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +7 -7
  290. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +7 -7
  291. package/fesm2015/taiga-ui-core-pipes-format-date.js +7 -7
  292. package/fesm2015/taiga-ui-core-pipes-format-number.js +7 -7
  293. package/fesm2015/taiga-ui-core-pipes-format-phone.js +7 -7
  294. package/fesm2015/taiga-ui-core-pipes-month.js +7 -7
  295. package/fesm2015/taiga-ui-core-pipes-order-week-days.js +7 -7
  296. package/fesm2015/taiga-ui-core-services.js +18 -18
  297. package/fesm2015/taiga-ui-core-tokens.js +38 -2
  298. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  299. package/interfaces/dialog-options.d.ts +4 -3
  300. package/package.json +4 -4
  301. package/styles/mixins/textfield.less +4 -22
  302. package/styles/mixins/textfield.scss +3 -22
  303. package/styles/theme/wrapper/icon.less +17 -27
  304. package/tokens/icon-place.d.ts +3 -0
  305. package/tokens/icons-path.d.ts +3 -0
  306. package/tokens/index.d.ts +1 -0
  307. package/tokens/svg-content-processor.d.ts +3 -0
  308. package/tokens/svg-src-processor.d.ts +3 -0
  309. package/tokens/viewport.d.ts +4 -0
  310. package/components/dialog/dialog.providers.d.ts +0 -5
  311. package/esm2015/components/dialog/dialog.providers.js +0 -51
@@ -13,14 +13,14 @@ import { merge, fromEvent } from 'rxjs';
13
13
 
14
14
  class TuiScrollbarWrapperDirective {
15
15
  }
16
- TuiScrollbarWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarWrapperDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17
- TuiScrollbarWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiScrollbarWrapperDirective, selector: "[tuiScrollbarWrapper]", providers: [
16
+ TuiScrollbarWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarWrapperDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17
+ TuiScrollbarWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiScrollbarWrapperDirective, selector: "[tuiScrollbarWrapper]", providers: [
18
18
  {
19
19
  provide: TUI_ELEMENT_REF,
20
20
  useExisting: ElementRef,
21
21
  },
22
22
  ], ngImport: i0 });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarWrapperDirective, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarWrapperDirective, decorators: [{
24
24
  type: Directive,
25
25
  args: [{
26
26
  selector: '[tuiScrollbarWrapper]',
@@ -126,9 +126,9 @@ class TuiScrollbarDirective {
126
126
  return [maxTop * scrolledTop, maxLeft * scrolledLeft];
127
127
  }
128
128
  }
129
- TuiScrollbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarDirective, deps: [{ token: NgZone }, { token: Renderer2 }, { token: TuiDestroyService, self: true }, { token: ANIMATION_FRAME }, { token: TUI_ELEMENT_REF }, { token: TUI_SCROLL_REF, optional: true }, { token: DOCUMENT }, { token: WINDOW }, { token: ElementRef }, { token: ViewportScroller }], target: i0.ɵɵFactoryTarget.Directive });
130
- TuiScrollbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiScrollbarDirective, selector: "[tuiScrollbar]", inputs: { tuiScrollbar: "tuiScrollbar" }, providers: [TuiDestroyService], ngImport: i0 });
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarDirective, decorators: [{
129
+ TuiScrollbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarDirective, deps: [{ token: NgZone }, { token: Renderer2 }, { token: TuiDestroyService, self: true }, { token: ANIMATION_FRAME }, { token: TUI_ELEMENT_REF }, { token: TUI_SCROLL_REF, optional: true }, { token: DOCUMENT }, { token: WINDOW }, { token: ElementRef }, { token: ViewportScroller }], target: i0.ɵɵFactoryTarget.Directive });
130
+ TuiScrollbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiScrollbarDirective, selector: "[tuiScrollbar]", inputs: { tuiScrollbar: "tuiScrollbar" }, providers: [TuiDestroyService], ngImport: i0 });
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarDirective, decorators: [{
132
132
  type: Directive,
133
133
  args: [{
134
134
  selector: '[tuiScrollbar]',
@@ -199,9 +199,9 @@ class TuiScrollControlsComponent {
199
199
  ];
200
200
  }
201
201
  }
202
- TuiScrollControlsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollControlsComponent, deps: [{ token: TUI_ANIMATION_OPTIONS }, { token: NgZone }, { token: DOCUMENT }, { token: TUI_SCROLL_REF, optional: true }, { token: ANIMATION_FRAME }, { token: TUI_MODE }], target: i0.ɵɵFactoryTarget.Component });
203
- TuiScrollControlsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiScrollControlsComponent, selector: "tui-scroll-controls", host: { listeners: { "$.data-mode.attr": "mode$" } }, providers: [MODE_PROVIDER], ngImport: i0, template: "<ng-container *ngIf=\"refresh$ | async as bars\">\n <div\n *ngIf=\"bars[0]\"\n tuiScrollbarWrapper\n class=\"t-bar t-bar_vertical\"\n [@tuiFadeIn]=\"animation\"\n [class.t-bar_has-horizontal]=\"bars[1]\"\n >\n <div\n tuiScrollbar=\"vertical\"\n class=\"t-thumb\"\n ></div>\n </div>\n <div\n *ngIf=\"bars[1]\"\n tuiScrollbarWrapper\n class=\"t-bar t-bar_horizontal\"\n [@tuiFadeIn]=\"animation\"\n [class.t-bar_has-vertical]=\"bars[0]\"\n >\n <div\n tuiScrollbar=\"horizontal\"\n class=\"t-thumb\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;min-width:calc(100% - 1px);min-height:calc(100% - 1px);float:left;margin-right:calc(-100% + 1px);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(-100% + 1px);margin-inline-end:calc(-100% + 1px);pointer-events:none}.t-bar{position:absolute;right:0;bottom:0;pointer-events:auto}.t-bar_vertical{top:0;width:.875rem}.t-bar_horizontal{left:0;height:.875rem}.t-bar_has-horizontal{bottom:.5rem}.t-bar_has-vertical{right:.5rem}.t-thumb{transition-property:all;transition-duration:.15s;transition-timing-function:ease-in-out;position:absolute;border-radius:6.25rem;border:.25rem solid transparent;cursor:pointer;pointer-events:auto;background:var(--tui-text-01);background-clip:content-box;box-sizing:border-box;transition-property:width,height;opacity:.2}.t-thumb:hover{opacity:.24}.t-thumb:active{opacity:.48}:host[data-mode=onDark] .t-thumb{background-color:var(--tui-text-01-night)}.t-bar_vertical .t-thumb{right:0;width:.75rem;min-height:1.25rem}.t-bar_vertical:hover .t-thumb,.t-bar_vertical .t-thumb:active{width:.875rem}.t-bar_horizontal .t-thumb{bottom:0;height:.75rem;min-width:1.25rem}.t-bar_horizontal:hover .t-thumb,.t-bar_horizontal .t-thumb:active{height:.875rem}\n"], directives: [{ type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TuiScrollbarWrapperDirective, selector: "[tuiScrollbarWrapper]" }, { type: TuiScrollbarDirective, selector: "[tuiScrollbar]", inputs: ["tuiScrollbar"] }], pipes: { "async": i1$1.AsyncPipe }, animations: [tuiFadeIn], changeDetection: i0.ChangeDetectionStrategy.OnPush });
204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollControlsComponent, decorators: [{
202
+ TuiScrollControlsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollControlsComponent, deps: [{ token: TUI_ANIMATION_OPTIONS }, { token: NgZone }, { token: DOCUMENT }, { token: TUI_SCROLL_REF, optional: true }, { token: ANIMATION_FRAME }, { token: TUI_MODE }], target: i0.ɵɵFactoryTarget.Component });
203
+ TuiScrollControlsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiScrollControlsComponent, selector: "tui-scroll-controls", host: { listeners: { "$.data-mode.attr": "mode$" } }, providers: [MODE_PROVIDER], ngImport: i0, template: "<ng-container *ngIf=\"refresh$ | async as bars\">\n <div\n *ngIf=\"bars[0]\"\n tuiScrollbarWrapper\n class=\"t-bar t-bar_vertical\"\n [@tuiFadeIn]=\"animation\"\n [class.t-bar_has-horizontal]=\"bars[1]\"\n >\n <div\n tuiScrollbar=\"vertical\"\n class=\"t-thumb\"\n ></div>\n </div>\n <div\n *ngIf=\"bars[1]\"\n tuiScrollbarWrapper\n class=\"t-bar t-bar_horizontal\"\n [@tuiFadeIn]=\"animation\"\n [class.t-bar_has-vertical]=\"bars[0]\"\n >\n <div\n tuiScrollbar=\"horizontal\"\n class=\"t-thumb\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;min-width:calc(100% - 1px);min-height:calc(100% - 1px);float:left;margin-right:calc(-100% + 1px);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(-100% + 1px);margin-inline-end:calc(-100% + 1px);pointer-events:none}.t-bar{position:absolute;right:0;bottom:0;pointer-events:auto}.t-bar_vertical{top:0;width:.875rem}.t-bar_horizontal{left:0;height:.875rem}.t-bar_has-horizontal{bottom:.5rem}.t-bar_has-vertical{right:.5rem}.t-thumb{transition-property:all;transition-duration:.15s;transition-timing-function:ease-in-out;position:absolute;border-radius:6.25rem;border:.25rem solid transparent;cursor:pointer;pointer-events:auto;background:var(--tui-text-01);background-clip:content-box;box-sizing:border-box;transition-property:width,height;opacity:.2}.t-thumb:hover{opacity:.24}.t-thumb:active{opacity:.48}:host[data-mode=onDark] .t-thumb{background-color:var(--tui-text-01-night)}.t-bar_vertical .t-thumb{right:0;width:.75rem;min-height:1.25rem}.t-bar_vertical:hover .t-thumb,.t-bar_vertical .t-thumb:active{width:.875rem}.t-bar_horizontal .t-thumb{bottom:0;height:.75rem;min-width:1.25rem}.t-bar_horizontal:hover .t-thumb,.t-bar_horizontal .t-thumb:active{height:.875rem}\n"], directives: [{ type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TuiScrollbarWrapperDirective, selector: "[tuiScrollbarWrapper]" }, { type: TuiScrollbarDirective, selector: "[tuiScrollbar]", inputs: ["tuiScrollbar"] }], pipes: { "async": i1$1.AsyncPipe }, animations: [tuiFadeIn], changeDetection: i0.ChangeDetectionStrategy.OnPush });
204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollControlsComponent, decorators: [{
205
205
  type: Component,
206
206
  args: [{
207
207
  selector: 'tui-scroll-controls',
@@ -238,12 +238,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
238
238
 
239
239
  class TuiScrollControlsModule {
240
240
  }
241
- TuiScrollControlsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollControlsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
242
- TuiScrollControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollControlsModule, declarations: [TuiScrollbarDirective,
241
+ TuiScrollControlsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollControlsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
242
+ TuiScrollControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollControlsModule, declarations: [TuiScrollbarDirective,
243
243
  TuiScrollbarWrapperDirective,
244
244
  TuiScrollControlsComponent], imports: [CommonModule, TuiLetModule], exports: [TuiScrollControlsComponent] });
245
- TuiScrollControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollControlsModule, imports: [[CommonModule, TuiLetModule]] });
246
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollControlsModule, decorators: [{
245
+ TuiScrollControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollControlsModule, imports: [[CommonModule, TuiLetModule]] });
246
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollControlsModule, decorators: [{
247
247
  type: NgModule,
248
248
  args: [{
249
249
  imports: [CommonModule, TuiLetModule],
@@ -13,14 +13,14 @@ import { CommonModule } from '@angular/common';
13
13
  const SCROLL_REF_SELECTOR = '[tuiScrollRef]';
14
14
  class TuiScrollRefDirective {
15
15
  }
16
- TuiScrollRefDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollRefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17
- TuiScrollRefDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiScrollRefDirective, selector: "[tuiScrollRef]", providers: [
16
+ TuiScrollRefDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollRefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17
+ TuiScrollRefDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiScrollRefDirective, selector: "[tuiScrollRef]", providers: [
18
18
  {
19
19
  provide: TUI_SCROLL_REF,
20
20
  useExisting: ElementRef,
21
21
  },
22
22
  ], ngImport: i0 });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollRefDirective, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollRefDirective, decorators: [{
24
24
  type: Directive,
25
25
  args: [{
26
26
  selector: SCROLL_REF_SELECTOR,
@@ -44,9 +44,9 @@ class TuiScrollableDirective {
44
44
  }));
45
45
  }
46
46
  }
47
- TuiScrollableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollableDirective, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
48
- TuiScrollableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiScrollableDirective, selector: "[tuiScrollable]", ngImport: i0 });
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollableDirective, decorators: [{
47
+ TuiScrollableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollableDirective, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
48
+ TuiScrollableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiScrollableDirective, selector: "[tuiScrollable]", ngImport: i0 });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollableDirective, decorators: [{
50
50
  type: Directive,
51
51
  args: [{
52
52
  selector: '[tuiScrollable]',
@@ -94,8 +94,8 @@ class TuiScrollbarComponent {
94
94
  (_a = nativeElement.scrollTo) === null || _a === void 0 ? void 0 : _a.call(nativeElement, scrollLeft, scrollTop);
95
95
  }
96
96
  }
97
- TuiScrollbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarComponent, deps: [{ token: CSS }, { token: ElementRef }, { token: USER_AGENT }, { token: TUI_IS_IOS }], target: i0.ɵɵFactoryTarget.Component });
98
- TuiScrollbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiScrollbarComponent, selector: "tui-scrollbar", inputs: { hidden: "hidden" }, host: { listeners: { "tui-scrollable.stop": "onScrollable($event.detail)", "tui-scroll-into-view.stop": "scrollIntoView($event.detail)" }, properties: { "class._legacy": "this.showNative" } }, providers: [
97
+ TuiScrollbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarComponent, deps: [{ token: CSS }, { token: ElementRef }, { token: USER_AGENT }, { token: TUI_IS_IOS }], target: i0.ɵɵFactoryTarget.Component });
98
+ TuiScrollbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiScrollbarComponent, selector: "tui-scrollbar", inputs: { hidden: "hidden" }, host: { listeners: { "tui-scrollable.stop": "onScrollable($event.detail)", "tui-scroll-into-view.stop": "scrollIntoView($event.detail)" }, properties: { "class._legacy": "this.showNative" } }, providers: [
99
99
  {
100
100
  provide: TUI_SCROLL_REF,
101
101
  deps: [TuiScrollbarComponent],
@@ -105,7 +105,7 @@ TuiScrollbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
105
105
  __decorate([
106
106
  tuiDefaultProp()
107
107
  ], TuiScrollbarComponent.prototype, "hidden", void 0);
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarComponent, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarComponent, decorators: [{
109
109
  type: Component,
110
110
  args: [{
111
111
  selector: 'tui-scrollbar',
@@ -147,10 +147,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
147
147
 
148
148
  class TuiScrollbarModule {
149
149
  }
150
- TuiScrollbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
151
- TuiScrollbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarModule, declarations: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective], imports: [CommonModule, TuiScrollControlsModule], exports: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective] });
152
- TuiScrollbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarModule, imports: [[CommonModule, TuiScrollControlsModule]] });
153
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarModule, decorators: [{
150
+ TuiScrollbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
151
+ TuiScrollbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarModule, declarations: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective], imports: [CommonModule, TuiScrollControlsModule], exports: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective] });
152
+ TuiScrollbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarModule, imports: [[CommonModule, TuiScrollControlsModule]] });
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarModule, decorators: [{
154
154
  type: NgModule,
155
155
  args: [{
156
156
  imports: [CommonModule, TuiScrollControlsModule],
@@ -2,36 +2,117 @@ import { __decorate } from 'tslib';
2
2
  import * as i2 from '@angular/common';
3
3
  import { DOCUMENT, CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { SecurityContext, ElementRef, Component, ChangeDetectionStrategy, Inject, Optional, Input, NgModule } from '@angular/core';
5
+ import { InjectionToken, inject, SecurityContext, ElementRef, Component, ChangeDetectionStrategy, Inject, Optional, Input, NgModule } from '@angular/core';
6
6
  import * as i4 from '@angular/platform-browser';
7
7
  import { DomSanitizer } from '@angular/platform-browser';
8
8
  import { WINDOW } from '@ng-web-apis/common';
9
9
  import * as i1 from '@taiga-ui/cdk';
10
- import { tuiIsString, tuiGetDocumentOrShadowRoot, tuiAssert, TuiStaticRequestService, tuiRequiredSetter, tuiPure, TuiLetModule } from '@taiga-ui/cdk';
10
+ import { tuiSvgLinearGradientProcessor, tuiIsString, tuiAssert, tuiGetDocumentOrShadowRoot, TuiStaticRequestService, tuiRequiredSetter, tuiPure, TuiLetModule } from '@taiga-ui/cdk';
11
11
  import { TUI_ICON_ERROR } from '@taiga-ui/core/constants';
12
12
  import * as i3 from '@taiga-ui/core/services';
13
13
  import { TuiSvgService } from '@taiga-ui/core/services';
14
- import { TUI_ICONS_PATH, TUI_SANITIZER, TUI_SVG_SRC_PROCESSOR, TUI_SVG_CONTENT_PROCESSOR } from '@taiga-ui/core/tokens';
14
+ import { TUI_ICONS_PATH, TUI_SVG_SRC_PROCESSOR, TUI_SVG_CONTENT_PROCESSOR, TUI_SANITIZER } from '@taiga-ui/core/tokens';
15
15
  import { tuiIsPresumedHTMLString } from '@taiga-ui/core/utils/miscellaneous';
16
- import { ReplaySubject, of } from 'rxjs';
16
+ import { identity, ReplaySubject, of } from 'rxjs';
17
17
  import { switchMap, startWith, catchError, map } from 'rxjs/operators';
18
+ import { tuiIconsPathFactory } from '@taiga-ui/core/utils';
19
+
20
+ const TUI_DEPRECATED_ICONS = {
21
+ tuiIconAttach: `tuiIconPaperclip`,
22
+ tuiIconAttention: `tuiIconAlertCircle`,
23
+ tuiIconBackCircle: `tuiIconArrowLeftCircle`,
24
+ tuiIconCall: `tuiIconPhone`,
25
+ tuiIconCallIn: `tuiIconPhoneIncoming`,
26
+ tuiIconCallOut: `tuiIconPhoneOutgoing`,
27
+ tuiIconCallTransfer: `tuiIconPhoneForwarded`,
28
+ tuiIconCancel: `tuiIconXCircle`,
29
+ tuiIconCancelCircle: `tuiIconSlash`,
30
+ tuiIconCard: `tuiIconCreditCard`,
31
+ tuiIconCards: `tuiIconCreditCard`,
32
+ tuiIconChartBar: `tuiIconBarChart`,
33
+ tuiIconChart: `tuiIconBarChart`,
34
+ tuiIconCheckList: `tuiIconClipboard`,
35
+ tuiIconCloseCircle: `tuiIconXCircle`,
36
+ tuiIconCollapse: `tuiIconMinimize`,
37
+ tuiIconComment: `tuiIconMessageSquare`,
38
+ tuiIconCommentFw: `tuiIconMessageForward`,
39
+ tuiIconCompany: `tuiIconBriefcase`,
40
+ tuiIconDefaultDoc: `tuiIconFile`,
41
+ tuiIconDesktop: `tuiIconMonitor`,
42
+ tuiIconDesktopOff: `tuiIconMonitorOff`,
43
+ tuiIconDislike: `tuiIconThumbsDown`,
44
+ tuiIconDone: `tuiIconCheckCircle`,
45
+ tuiIconDraft: `tuiIconEdit2`,
46
+ tuiIconEyeOpen: `tuiIconEye`,
47
+ tuiIconEyeClosed: `tuiIconEyeOff`,
48
+ tuiIconExpand: `tuiIconMaximize`,
49
+ tuiIconExternal: `tuiIconExternalLink`,
50
+ tuiIconFrame: `tuiIconLayout`,
51
+ tuiIconGeo: `tuiIconMapPin`,
52
+ tuiIconHeartFilled: `tuiIconHeart`,
53
+ tuiIconHide: `tuiIconEyeOff`,
54
+ tuiIconImg: `tuiIconImage`,
55
+ tuiIconInfoCircle: `tuiIconInfo`,
56
+ tuiIconLike: `tuiIconThumbsUp`,
57
+ tuiIconLockOpen: `tuiIconUnlock`,
58
+ tuiIconMobile: `tuiIconSmartphone`,
59
+ tuiIconMoreHor: `tuiIconMoreHorizontal`,
60
+ tuiIconMoreVer: `tuiIconMoreVertical`,
61
+ tuiIconMoreVert: `tuiIconMoreVertical`,
62
+ tuiIconPicture: `tuiIconImage`,
63
+ tuiIconPin: `tuiIconMapPin`,
64
+ tuiIconPrint: `tuiIconPrinter`,
65
+ tuiIconRefresh: `tuiIconRefreshCw`,
66
+ tuiIconRemove: `tuiIconX`,
67
+ tuiIconShow: `tuiIconEye`,
68
+ tuiIconSound: `tuiIconVolume`,
69
+ tuiIconSoundOff: `tuiIconVolumeX`,
70
+ tuiIconStarFilled: `tuiIconStar`,
71
+ tuiIconStop: `tuiIconSquare`,
72
+ tuiIconStructure: `tuiIconGrid`,
73
+ tuiIconTime: `tuiIconClock`,
74
+ tuiIconTooltip: `tuiIconHelpCircle`,
75
+ tuiIconViewList: `tuiIconList`,
76
+ tuiIconWifiOn: `tuiIconWifi`,
77
+ };
78
+
79
+ const TUI_SVG_DEFAULT_OPTIONS = {
80
+ path: tuiIconsPathFactory(`assets/taiga-ui/icons`),
81
+ srcProcessor: identity,
82
+ contentProcessor: tuiSvgLinearGradientProcessor,
83
+ deprecated: src => TUI_DEPRECATED_ICONS[src.replace(`Large`, ``).replace(`Outline`, ``)]
84
+ ? `${src} is deprecated, use ${TUI_DEPRECATED_ICONS[src.replace(`Large`, ``)]}/Large instead`
85
+ : ``,
86
+ };
87
+ const TUI_SVG_OPTIONS = new InjectionToken(`[TUI_SVG_OPTIONS]: SVG component options`, {
88
+ factory: () => ({
89
+ path: inject(TUI_ICONS_PATH),
90
+ deprecated: TUI_SVG_DEFAULT_OPTIONS.deprecated,
91
+ srcProcessor: inject(TUI_SVG_SRC_PROCESSOR),
92
+ contentProcessor: inject(TUI_SVG_CONTENT_PROCESSOR),
93
+ }),
94
+ });
95
+ const tuiSvgOptionsProvider = options => ({
96
+ provide: TUI_SVG_OPTIONS,
97
+ useValue: Object.assign(Object.assign(Object.assign({}, TUI_SVG_DEFAULT_OPTIONS), options), { path: tuiIsString(options.path)
98
+ ? tuiIconsPathFactory(options.path)
99
+ : options.path || TUI_SVG_DEFAULT_OPTIONS.path }),
100
+ });
18
101
 
19
102
  const UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';
20
103
  const MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';
21
104
  const FAILED_EXTERNAL_ICON = 'Failed to load external SVG';
22
105
  // TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent
23
106
  class TuiSvgComponent {
24
- constructor(documentRef, windowRef, iconsPath, tuiSanitizer, svgService, staticRequestService, sanitizer, elementRef, srcProcessor, contentProcessor) {
107
+ constructor(documentRef, windowRef, options, tuiSanitizer, svgService, staticRequestService, sanitizer, elementRef) {
25
108
  this.documentRef = documentRef;
26
109
  this.windowRef = windowRef;
27
- this.iconsPath = iconsPath;
110
+ this.options = options;
28
111
  this.tuiSanitizer = tuiSanitizer;
29
112
  this.svgService = svgService;
30
113
  this.staticRequestService = staticRequestService;
31
114
  this.sanitizer = sanitizer;
32
115
  this.elementRef = elementRef;
33
- this.srcProcessor = srcProcessor;
34
- this.contentProcessor = contentProcessor;
35
116
  this.src$ = new ReplaySubject(1);
36
117
  this.icon = '';
37
118
  this.innerHTML$ = this.src$.pipe(switchMap(() => {
@@ -44,7 +125,9 @@ class TuiSvgComponent {
44
125
  }), startWith(''));
45
126
  }
46
127
  set src(src) {
47
- this.icon = this.srcProcessor(src);
128
+ const deprecated = this.options.deprecated(String(src));
129
+ tuiAssert.assert(!deprecated, deprecated);
130
+ this.icon = this.options.srcProcessor(src);
48
131
  this.src$.next();
49
132
  }
50
133
  get src() {
@@ -54,7 +137,7 @@ class TuiSvgComponent {
54
137
  if (tuiIsString(this.icon)) {
55
138
  return this.icon.includes('.svg#')
56
139
  ? this.icon
57
- : this.resolveName(this.icon, this.iconsPath);
140
+ : this.resolveName(this.icon, this.options.path);
58
141
  }
59
142
  return '';
60
143
  }
@@ -116,7 +199,7 @@ class TuiSvgComponent {
116
199
  return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');
117
200
  }
118
201
  sanitize(src) {
119
- src = this.contentProcessor(src);
202
+ src = this.options.contentProcessor(src);
120
203
  return this.tuiSanitizer && tuiIsString(src)
121
204
  ? this.sanitizer.bypassSecurityTrustHtml(this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '')
122
205
  : src;
@@ -129,15 +212,15 @@ class TuiSvgComponent {
129
212
  }), map(response => this.sanitize(response.replace('<svg', '<svg focusable="false"'))));
130
213
  }
131
214
  }
132
- TuiSvgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiSvgComponent, deps: [{ token: DOCUMENT }, { token: WINDOW }, { token: TUI_ICONS_PATH }, { token: TUI_SANITIZER, optional: true }, { token: TuiSvgService }, { token: TuiStaticRequestService }, { token: DomSanitizer }, { token: ElementRef }, { token: TUI_SVG_SRC_PROCESSOR }, { token: TUI_SVG_CONTENT_PROCESSOR }], target: i0.ɵɵFactoryTarget.Component });
133
- TuiSvgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiSvgComponent, selector: "tui-svg", inputs: { src: "src" }, ngImport: i0, template: "<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n width=\"100%\"\n height=\"100%\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n", styles: [":host{display:inline-block;vertical-align:middle;flex-shrink:0;line-height:0;height:1.5rem;width:1.5rem;fill:currentColor;font-size:1rem}.t-src{display:flex;height:100%;align-items:center;justify-content:center}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
215
+ TuiSvgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgComponent, deps: [{ token: DOCUMENT }, { token: WINDOW }, { token: TUI_SVG_OPTIONS }, { token: TUI_SANITIZER, optional: true }, { token: TuiSvgService }, { token: TuiStaticRequestService }, { token: DomSanitizer }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
216
+ TuiSvgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSvgComponent, selector: "tui-svg", inputs: { src: "src" }, ngImport: i0, template: "<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n width=\"100%\"\n height=\"100%\"\n class=\"t-svg\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n", styles: [":host{display:inline-block;vertical-align:middle;flex-shrink:0;line-height:0;height:1.5rem;width:1.5rem;fill:transparent;stroke:transparent;font-size:1rem}.t-src{display:flex;height:100%;align-items:center;justify-content:center;fill:inherit;stroke:inherit}.t-svg{fill:inherit;stroke:inherit}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
134
217
  __decorate([
135
218
  tuiRequiredSetter()
136
219
  ], TuiSvgComponent.prototype, "src", null);
137
220
  __decorate([
138
221
  tuiPure
139
222
  ], TuiSvgComponent.prototype, "resolveName", null);
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiSvgComponent, decorators: [{
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgComponent, decorators: [{
141
224
  type: Component,
142
225
  args: [{
143
226
  selector: 'tui-svg',
@@ -153,7 +236,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
153
236
  args: [WINDOW]
154
237
  }] }, { type: undefined, decorators: [{
155
238
  type: Inject,
156
- args: [TUI_ICONS_PATH]
239
+ args: [TUI_SVG_OPTIONS]
157
240
  }] }, { type: i0.Sanitizer, decorators: [{
158
241
  type: Optional
159
242
  }, {
@@ -171,22 +254,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
171
254
  }] }, { type: i0.ElementRef, decorators: [{
172
255
  type: Inject,
173
256
  args: [ElementRef]
174
- }] }, { type: undefined, decorators: [{
175
- type: Inject,
176
- args: [TUI_SVG_SRC_PROCESSOR]
177
- }] }, { type: undefined, decorators: [{
178
- type: Inject,
179
- args: [TUI_SVG_CONTENT_PROCESSOR]
180
257
  }] }]; }, propDecorators: { src: [{
181
258
  type: Input
182
259
  }], resolveName: [] } });
183
260
 
184
261
  class TuiSvgModule {
185
262
  }
186
- TuiSvgModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiSvgModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
187
- TuiSvgModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiSvgModule, declarations: [TuiSvgComponent], imports: [CommonModule, TuiLetModule], exports: [TuiSvgComponent] });
188
- TuiSvgModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiSvgModule, imports: [[CommonModule, TuiLetModule]] });
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiSvgModule, decorators: [{
263
+ TuiSvgModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
264
+ TuiSvgModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgModule, declarations: [TuiSvgComponent], imports: [CommonModule, TuiLetModule], exports: [TuiSvgComponent] });
265
+ TuiSvgModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgModule, imports: [[CommonModule, TuiLetModule]] });
266
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgModule, decorators: [{
190
267
  type: NgModule,
191
268
  args: [{
192
269
  imports: [CommonModule, TuiLetModule],
@@ -199,5 +276,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
199
276
  * Generated bundle index. Do not edit.
200
277
  */
201
278
 
202
- export { TuiSvgComponent, TuiSvgModule };
279
+ export { TUI_DEPRECATED_ICONS, TUI_SVG_DEFAULT_OPTIONS, TUI_SVG_OPTIONS, TuiSvgComponent, TuiSvgModule, tuiSvgOptionsProvider };
203
280
  //# sourceMappingURL=taiga-ui-core-components-svg.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-svg.js","sources":["../../../projects/core/components/svg/svg.component.ts","../../../projects/core/components/svg/svg.template.html","../../../projects/core/components/svg/svg.module.ts","../../../projects/core/components/svg/taiga-ui-core-components-svg.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Sanitizer,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n tuiAssert,\n tuiGetDocumentOrShadowRoot,\n TuiInjectionTokenType,\n tuiIsString,\n tuiPure,\n tuiRequiredSetter,\n TuiStaticRequestService,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TUI_ICON_ERROR} from '@taiga-ui/core/constants';\nimport {TuiIconError} from '@taiga-ui/core/interfaces';\nimport {TuiSvgService} from '@taiga-ui/core/services';\nimport {\n TUI_ICONS_PATH,\n TUI_SANITIZER,\n TUI_SVG_CONTENT_PROCESSOR,\n TUI_SVG_SRC_PROCESSOR,\n} from '@taiga-ui/core/tokens';\nimport {tuiIsPresumedHTMLString} from '@taiga-ui/core/utils/miscellaneous';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {catchError, map, startWith, switchMap} from 'rxjs/operators';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent\n@Component({\n selector: 'tui-svg',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private readonly src$ = new ReplaySubject<void>(1);\n private icon: SafeHtml | string = '';\n readonly innerHTML$: Observable<SafeHtml>;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_ICONS_PATH) private readonly iconsPath: TuiStringHandler<string>,\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(TuiSvgService) private readonly svgService: TuiSvgService,\n @Inject(TuiStaticRequestService)\n private readonly staticRequestService: TuiStaticRequestService,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(ElementRef) private readonly elementRef: ElementRef<Element>,\n @Inject(TUI_SVG_SRC_PROCESSOR)\n private readonly srcProcessor: TuiInjectionTokenType<\n typeof TUI_SVG_SRC_PROCESSOR\n >,\n @Inject(TUI_SVG_CONTENT_PROCESSOR)\n private readonly contentProcessor: TuiInjectionTokenType<\n typeof TUI_SVG_CONTENT_PROCESSOR\n >,\n ) {\n this.innerHTML$ = this.src$.pipe(\n switchMap(() => {\n if (tuiIsString(this.icon)) {\n return this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon));\n }\n\n return of(this.icon);\n }),\n startWith(''),\n );\n }\n\n @Input()\n @tuiRequiredSetter()\n set src(src: SafeHtml | string) {\n this.icon = this.srcProcessor(src);\n this.src$.next();\n }\n\n get src(): SafeHtml | string {\n return this.icon;\n }\n\n get use(): string {\n if (tuiIsString(this.icon)) {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.iconsPath);\n }\n\n return '';\n }\n\n get isInnerHTML(): boolean {\n return (\n !tuiIsString(this.icon) ||\n this.isSrc ||\n this.isExternal ||\n (this.isName && this.isShadowDOM)\n );\n }\n\n private get isShadowDOM(): boolean {\n return (\n tuiGetDocumentOrShadowRoot(this.elementRef.nativeElement) !== this.documentRef\n );\n }\n\n private get isUse(): boolean {\n return this.use.includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return this.isUrl || this.isCrossDomain;\n }\n\n private get isUrl(): boolean {\n return tuiIsString(this.icon) && this.icon.endsWith('.svg');\n }\n\n private get isSrc(): boolean {\n return tuiIsString(this.icon) && tuiIsPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, windowRef} = this;\n\n return (\n isUse &&\n use.startsWith('http') &&\n !!windowRef.origin &&\n !use.startsWith(windowRef.origin)\n );\n }\n\n onError(message: string = MISSING_EXTERNAL_ICON): void {\n const {icon} = this;\n const event = new CustomEvent<TuiIconError>(TUI_ICON_ERROR, {\n bubbles: true,\n detail: {\n message,\n icon: icon as string,\n },\n });\n\n tuiAssert.assert(false, message, icon);\n this.elementRef.nativeElement.dispatchEvent(event);\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiStringHandler<string>): string {\n return iconsPath(name);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n // Empty line for innerHTML when icon is shown through USE tag\n return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');\n }\n\n private sanitize(src: SafeHtml | string): SafeHtml | string {\n src = this.contentProcessor(src);\n\n return this.tuiSanitizer && tuiIsString(src)\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map(response =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n width=\"100%\"\n height=\"100%\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiSvgComponent} from './svg.component';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [TuiSvgComponent],\n exports: [TuiSvgComponent],\n})\nexport class TuiSvgModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-svg.js","sources":["../../../projects/core/components/svg/deprecated-icons.ts","../../../projects/core/components/svg/svg-options.ts","../../../projects/core/components/svg/svg.component.ts","../../../projects/core/components/svg/svg.template.html","../../../projects/core/components/svg/svg.module.ts","../../../projects/core/components/svg/taiga-ui-core-components-svg.ts"],"sourcesContent":["export const TUI_DEPRECATED_ICONS: Record<string, string> = {\n tuiIconAttach: `tuiIconPaperclip`,\n tuiIconAttention: `tuiIconAlertCircle`,\n tuiIconBackCircle: `tuiIconArrowLeftCircle`,\n tuiIconCall: `tuiIconPhone`,\n tuiIconCallIn: `tuiIconPhoneIncoming`,\n tuiIconCallOut: `tuiIconPhoneOutgoing`,\n tuiIconCallTransfer: `tuiIconPhoneForwarded`,\n tuiIconCancel: `tuiIconXCircle`,\n tuiIconCancelCircle: `tuiIconSlash`,\n tuiIconCard: `tuiIconCreditCard`,\n tuiIconCards: `tuiIconCreditCard`,\n tuiIconChartBar: `tuiIconBarChart`,\n tuiIconChart: `tuiIconBarChart`,\n tuiIconCheckList: `tuiIconClipboard`,\n tuiIconCloseCircle: `tuiIconXCircle`,\n tuiIconCollapse: `tuiIconMinimize`,\n tuiIconComment: `tuiIconMessageSquare`,\n tuiIconCommentFw: `tuiIconMessageForward`,\n tuiIconCompany: `tuiIconBriefcase`,\n tuiIconDefaultDoc: `tuiIconFile`,\n tuiIconDesktop: `tuiIconMonitor`,\n tuiIconDesktopOff: `tuiIconMonitorOff`,\n tuiIconDislike: `tuiIconThumbsDown`,\n tuiIconDone: `tuiIconCheckCircle`,\n tuiIconDraft: `tuiIconEdit2`,\n tuiIconEyeOpen: `tuiIconEye`,\n tuiIconEyeClosed: `tuiIconEyeOff`,\n tuiIconExpand: `tuiIconMaximize`,\n tuiIconExternal: `tuiIconExternalLink`,\n tuiIconFrame: `tuiIconLayout`,\n tuiIconGeo: `tuiIconMapPin`,\n tuiIconHeartFilled: `tuiIconHeart`,\n tuiIconHide: `tuiIconEyeOff`,\n tuiIconImg: `tuiIconImage`,\n tuiIconInfoCircle: `tuiIconInfo`,\n tuiIconLike: `tuiIconThumbsUp`,\n tuiIconLockOpen: `tuiIconUnlock`,\n tuiIconMobile: `tuiIconSmartphone`,\n tuiIconMoreHor: `tuiIconMoreHorizontal`,\n tuiIconMoreVer: `tuiIconMoreVertical`,\n tuiIconMoreVert: `tuiIconMoreVertical`,\n tuiIconPicture: `tuiIconImage`,\n tuiIconPin: `tuiIconMapPin`,\n tuiIconPrint: `tuiIconPrinter`,\n tuiIconRefresh: `tuiIconRefreshCw`,\n tuiIconRemove: `tuiIconX`,\n tuiIconShow: `tuiIconEye`,\n tuiIconSound: `tuiIconVolume`,\n tuiIconSoundOff: `tuiIconVolumeX`,\n tuiIconStarFilled: `tuiIconStar`,\n tuiIconStop: `tuiIconSquare`,\n tuiIconStructure: `tuiIconGrid`,\n tuiIconTime: `tuiIconClock`,\n tuiIconTooltip: `tuiIconHelpCircle`,\n tuiIconViewList: `tuiIconList`,\n tuiIconWifiOn: `tuiIconWifi`,\n};\n","import {inject, InjectionToken, ValueProvider} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {\n TuiHandler,\n tuiIsString,\n TuiStringHandler,\n tuiSvgLinearGradientProcessor,\n} from '@taiga-ui/cdk';\nimport {\n TUI_ICONS_PATH,\n TUI_SVG_CONTENT_PROCESSOR,\n TUI_SVG_SRC_PROCESSOR,\n} from '@taiga-ui/core/tokens';\nimport {tuiIconsPathFactory} from '@taiga-ui/core/utils';\nimport {identity} from 'rxjs';\n\nimport {TUI_DEPRECATED_ICONS} from './deprecated-icons';\n\nexport interface TuiSvgOptions {\n readonly path: TuiStringHandler<string>;\n readonly deprecated: TuiStringHandler<string>;\n readonly srcProcessor: TuiHandler<SafeHtml | string, SafeHtml | string>;\n readonly contentProcessor: TuiHandler<SafeHtml | string, SafeHtml | string>;\n}\n\nexport const TUI_SVG_DEFAULT_OPTIONS: TuiSvgOptions = {\n path: tuiIconsPathFactory(`assets/taiga-ui/icons`),\n srcProcessor: identity,\n contentProcessor: tuiSvgLinearGradientProcessor,\n deprecated: src =>\n TUI_DEPRECATED_ICONS[src.replace(`Large`, ``).replace(`Outline`, ``)]\n ? `${src} is deprecated, use ${\n TUI_DEPRECATED_ICONS[src.replace(`Large`, ``)]\n }/Large instead`\n : ``,\n};\n\nexport const TUI_SVG_OPTIONS = new InjectionToken<TuiSvgOptions>(\n `[TUI_SVG_OPTIONS]: SVG component options`,\n {\n factory: () => ({\n path: inject(TUI_ICONS_PATH),\n deprecated: TUI_SVG_DEFAULT_OPTIONS.deprecated,\n srcProcessor: inject(TUI_SVG_SRC_PROCESSOR),\n contentProcessor: inject(TUI_SVG_CONTENT_PROCESSOR),\n }),\n },\n);\n\nexport const tuiSvgOptionsProvider: (\n options: Partial<Omit<TuiSvgOptions, 'path'>> & {\n path?: TuiSvgOptions['path'] | string;\n },\n) => ValueProvider = options => ({\n provide: TUI_SVG_OPTIONS,\n useValue: {\n ...TUI_SVG_DEFAULT_OPTIONS,\n ...options,\n path: tuiIsString(options.path)\n ? tuiIconsPathFactory(options.path)\n : options.path || TUI_SVG_DEFAULT_OPTIONS.path,\n },\n});\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Sanitizer,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n tuiAssert,\n tuiGetDocumentOrShadowRoot,\n tuiIsString,\n tuiPure,\n tuiRequiredSetter,\n TuiStaticRequestService,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TUI_ICON_ERROR} from '@taiga-ui/core/constants';\nimport {TuiIconError} from '@taiga-ui/core/interfaces';\nimport {TuiSvgService} from '@taiga-ui/core/services';\nimport {TUI_SANITIZER} from '@taiga-ui/core/tokens';\nimport {tuiIsPresumedHTMLString} from '@taiga-ui/core/utils/miscellaneous';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {catchError, map, startWith, switchMap} from 'rxjs/operators';\n\nimport {TUI_SVG_OPTIONS, TuiSvgOptions} from './svg-options';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent\n@Component({\n selector: 'tui-svg',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private readonly src$ = new ReplaySubject<void>(1);\n private icon: SafeHtml | string = '';\n\n readonly innerHTML$: Observable<SafeHtml>;\n\n constructor(\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_SVG_OPTIONS) private readonly options: TuiSvgOptions,\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(TuiSvgService) private readonly svgService: TuiSvgService,\n @Inject(TuiStaticRequestService)\n private readonly staticRequestService: TuiStaticRequestService,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(ElementRef) private readonly elementRef: ElementRef<Element>,\n ) {\n this.innerHTML$ = this.src$.pipe(\n switchMap(() => {\n if (tuiIsString(this.icon)) {\n return this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon));\n }\n\n return of(this.icon);\n }),\n startWith(''),\n );\n }\n\n @Input()\n @tuiRequiredSetter()\n set src(src: SafeHtml | string) {\n const deprecated = this.options.deprecated(String(src));\n\n tuiAssert.assert(!deprecated, deprecated);\n this.icon = this.options.srcProcessor(src);\n this.src$.next();\n }\n\n get src(): SafeHtml | string {\n return this.icon;\n }\n\n get use(): string {\n if (tuiIsString(this.icon)) {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.options.path);\n }\n\n return '';\n }\n\n get isInnerHTML(): boolean {\n return (\n !tuiIsString(this.icon) ||\n this.isSrc ||\n this.isExternal ||\n (this.isName && this.isShadowDOM)\n );\n }\n\n private get isShadowDOM(): boolean {\n return (\n tuiGetDocumentOrShadowRoot(this.elementRef.nativeElement) !== this.documentRef\n );\n }\n\n private get isUse(): boolean {\n return this.use.includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return this.isUrl || this.isCrossDomain;\n }\n\n private get isUrl(): boolean {\n return tuiIsString(this.icon) && this.icon.endsWith('.svg');\n }\n\n private get isSrc(): boolean {\n return tuiIsString(this.icon) && tuiIsPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, windowRef} = this;\n\n return (\n isUse &&\n use.startsWith('http') &&\n !!windowRef.origin &&\n !use.startsWith(windowRef.origin)\n );\n }\n\n onError(message: string = MISSING_EXTERNAL_ICON): void {\n const {icon} = this;\n const event = new CustomEvent<TuiIconError>(TUI_ICON_ERROR, {\n bubbles: true,\n detail: {\n message,\n icon: icon as string,\n },\n });\n\n tuiAssert.assert(false, message, icon);\n this.elementRef.nativeElement.dispatchEvent(event);\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiStringHandler<string>): string {\n return iconsPath(name);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n // Empty line for innerHTML when icon is shown through USE tag\n return !this.isShadowDOM || !this.isName ? '' : this.sanitize(icon || '');\n }\n\n private sanitize(src: SafeHtml | string): SafeHtml | string {\n src = this.options.contentProcessor(src);\n\n return this.tuiSanitizer && tuiIsString(src)\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map(response =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n width=\"100%\"\n height=\"100%\"\n class=\"t-svg\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiSvgComponent} from './svg.component';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [TuiSvgComponent],\n exports: [TuiSvgComponent],\n})\nexport class TuiSvgModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -4,9 +4,9 @@ import { AbstractTuiThemeSwitcher } from '@taiga-ui/cdk';
4
4
 
5
5
  class TuiThemeNightComponent extends AbstractTuiThemeSwitcher {
6
6
  }
7
- TuiThemeNightComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiThemeNightComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
8
- TuiThemeNightComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiThemeNightComponent, selector: "tui-theme-night", usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: [":root{--tui-base-01: #222;--tui-base-02: #333;--tui-base-03: #808080;--tui-base-04: #959595;--tui-base-05: #b0b0b0;--tui-base-06: #d7d7d7;--tui-base-07: #ededed;--tui-base-08: #f6f6f6;--tui-base-09: #fff;--tui-focus: rgba(51, 51, 51, .64);--tui-secondary: rgba(255, 255, 255, .16);--tui-secondary-hover: rgba(255, 255, 255, .24);--tui-secondary-active: rgba(255, 255, 255, .4);--tui-clear: rgba(255, 255, 255, .16);--tui-clear-disabled: rgba(255, 255, 255, .08);--tui-clear-hover: rgba(255, 255, 255, .24);--tui-clear-active: rgba(255, 255, 255, .4);--tui-error-fill: #ff8c67;--tui-error-bg: rgba(244, 87, 37, .32);--tui-error-bg-hover: rgba(244, 87, 37, .4);--tui-success-fill: #4ac99b;--tui-success-bg: rgba(74, 201, 155, .32);--tui-success-bg-hover: rgba(74, 201, 155, .4);--tui-warning-fill: #ffc700;--tui-warning-bg: rgba(255, 199, 0, .32);--tui-warning-bg-hover: rgba(255, 199, 0, .4);--tui-info-fill: #70b6f6;--tui-info-bg: rgba(112, 182, 246, .32);--tui-info-bg-hover: rgba(112, 182, 246, .4);--tui-neutral-fill: #959ba4;--tui-neutral-bg: rgba(149, 155, 164, .32);--tui-neutral-bg-hover: rgba(149, 155, 164, .48);--tui-text-01: #ffffff;--tui-text-02: rgba(255, 255, 255, .72);--tui-text-03: rgba(255, 255, 255, .6);--tui-link: #6788ff;--tui-link-hover: #526ed3;--tui-positive: #44c596;--tui-positive-hover: #3aa981;--tui-negative: #ff8c67;--tui-negative-hover: #bb593a;--tui-autofill: var(--tui-autofill-night);--tui-elevation-01: #222;--tui-elevation-02: #222}tui-notification{--tui-base-01: #000}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiThemeNightComponent, decorators: [{
7
+ TuiThemeNightComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
8
+ TuiThemeNightComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiThemeNightComponent, selector: "tui-theme-night", usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: [":root{--tui-base-01: #222;--tui-base-02: #333;--tui-base-03: #808080;--tui-base-04: #959595;--tui-base-05: #b0b0b0;--tui-base-06: #d7d7d7;--tui-base-07: #ededed;--tui-base-08: #f6f6f6;--tui-base-09: #fff;--tui-focus: rgba(51, 51, 51, .64);--tui-secondary: rgba(255, 255, 255, .16);--tui-secondary-hover: rgba(255, 255, 255, .24);--tui-secondary-active: rgba(255, 255, 255, .4);--tui-clear: rgba(255, 255, 255, .16);--tui-clear-disabled: rgba(255, 255, 255, .08);--tui-clear-hover: rgba(255, 255, 255, .24);--tui-clear-active: rgba(255, 255, 255, .4);--tui-error-fill: #ff8c67;--tui-error-bg: rgba(244, 87, 37, .32);--tui-error-bg-hover: rgba(244, 87, 37, .4);--tui-success-fill: #4ac99b;--tui-success-bg: rgba(74, 201, 155, .32);--tui-success-bg-hover: rgba(74, 201, 155, .4);--tui-warning-fill: #ffc700;--tui-warning-bg: rgba(255, 199, 0, .32);--tui-warning-bg-hover: rgba(255, 199, 0, .4);--tui-info-fill: #70b6f6;--tui-info-bg: rgba(112, 182, 246, .32);--tui-info-bg-hover: rgba(112, 182, 246, .4);--tui-neutral-fill: #959ba4;--tui-neutral-bg: rgba(149, 155, 164, .32);--tui-neutral-bg-hover: rgba(149, 155, 164, .48);--tui-text-01: #ffffff;--tui-text-02: rgba(255, 255, 255, .72);--tui-text-03: rgba(255, 255, 255, .6);--tui-link: #6788ff;--tui-link-hover: #526ed3;--tui-positive: #44c596;--tui-positive-hover: #3aa981;--tui-negative: #ff8c67;--tui-negative-hover: #bb593a;--tui-autofill: var(--tui-autofill-night);--tui-elevation-01: #222;--tui-elevation-02: #222}tui-notification{--tui-base-01: #000}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{
12
12
  selector: 'tui-theme-night',
@@ -19,10 +19,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
19
19
 
20
20
  class TuiThemeNightModule {
21
21
  }
22
- TuiThemeNightModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiThemeNightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
23
- TuiThemeNightModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiThemeNightModule, declarations: [TuiThemeNightComponent], exports: [TuiThemeNightComponent] });
24
- TuiThemeNightModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiThemeNightModule });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiThemeNightModule, decorators: [{
22
+ TuiThemeNightModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
23
+ TuiThemeNightModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightModule, declarations: [TuiThemeNightComponent], exports: [TuiThemeNightComponent] });
24
+ TuiThemeNightModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightModule });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  declarations: [TuiThemeNightComponent],