@taiga-ui/core 4.65.0 → 5.0.0-canary.8b64ec1

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 (655) hide show
  1. package/README.md +1 -1
  2. package/classes/accessors.d.ts +2 -2
  3. package/classes/driver.d.ts +1 -1
  4. package/components/button/button.directive.d.ts +2 -3
  5. package/components/button/button.options.d.ts +1 -1
  6. package/components/calendar/calendar-sheet.component.d.ts +2 -7
  7. package/components/calendar/calendar-sheet.options.d.ts +1 -3
  8. package/{pipes/calendar-sheet → components/calendar}/calendar-sheet.pipe.d.ts +2 -2
  9. package/components/calendar/calendar-spin.component.d.ts +1 -0
  10. package/components/calendar/calendar-year.component.d.ts +1 -1
  11. package/components/calendar/calendar.options.d.ts +9 -0
  12. package/components/calendar/index.d.ts +3 -0
  13. package/{pipes/order-week-days → components/calendar}/order-week-days.pipe.d.ts +1 -1
  14. package/components/cell/cell.directive.d.ts +9 -0
  15. package/components/cell/cell.options.d.ts +6 -0
  16. package/components/cell/index.d.ts +2 -0
  17. package/components/data-list/data-list.component.d.ts +8 -12
  18. package/components/data-list/data-list.d.ts +3 -4
  19. package/components/data-list/data-list.tokens.d.ts +1 -20
  20. package/components/data-list/index.d.ts +3 -4
  21. package/components/data-list/opt-group.directive.d.ts +2 -2
  22. package/components/data-list/option-content.directive.d.ts +14 -0
  23. package/components/data-list/option-with-value.directive.d.ts +9 -0
  24. package/components/data-list/option.directive.d.ts +19 -0
  25. package/components/error/error.component.d.ts +6 -8
  26. package/components/error/error.d.ts +4 -0
  27. package/components/error/error.directive.d.ts +19 -0
  28. package/components/error/error.pipe.d.ts +10 -0
  29. package/components/error/index.d.ts +3 -0
  30. package/components/expand/expand.component.d.ts +9 -28
  31. package/components/expand/index.d.ts +0 -2
  32. package/components/icon/icon.component.d.ts +6 -11
  33. package/components/index.d.ts +3 -3
  34. package/components/input/index.d.ts +2 -0
  35. package/components/input/input.d.ts +5 -0
  36. package/components/input/input.directive.d.ts +29 -0
  37. package/components/label/label.directive.d.ts +1 -1
  38. package/components/link/index.d.ts +0 -1
  39. package/components/link/link.directive.d.ts +8 -6
  40. package/components/loader/loader.component.d.ts +7 -7
  41. package/components/loader/loader.options.d.ts +1 -3
  42. package/components/notification/index.d.ts +3 -0
  43. package/components/notification/notification.component.d.ts +14 -0
  44. package/components/notification/notification.d.ts +3 -0
  45. package/components/notification/notification.directive.d.ts +7 -12
  46. package/components/notification/notification.options.d.ts +10 -7
  47. package/components/notification/notification.service.d.ts +17 -0
  48. package/components/root/root.component.d.ts +4 -7
  49. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  50. package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
  51. package/components/scrollbar/scrollbar.component.d.ts +1 -5
  52. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  53. package/components/scrollbar/scrollbar.options.d.ts +1 -1
  54. package/components/spin-button/spin-button.component.d.ts +9 -10
  55. package/components/textfield/index.d.ts +1 -4
  56. package/components/textfield/select-like.directive.d.ts +1 -0
  57. package/components/textfield/textfield-content.directive.d.ts +3 -2
  58. package/components/textfield/textfield-icon.d.ts +3 -3
  59. package/components/textfield/textfield-multi/textfield-item.component.d.ts +3 -2
  60. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +9 -15
  61. package/components/textfield/textfield.component.d.ts +20 -35
  62. package/components/textfield/textfield.d.ts +2 -4
  63. package/components/textfield/textfield.options.d.ts +8 -11
  64. package/{directives → components}/title/title.directive.d.ts +2 -3
  65. package/directives/appearance/appearance.directive.d.ts +5 -13
  66. package/directives/appearance/appearance.options.d.ts +1 -2
  67. package/directives/button-x/button-x.directive.d.ts +6 -0
  68. package/directives/button-x/index.d.ts +1 -0
  69. package/directives/date-format/date-format.directive.d.ts +3 -7
  70. package/directives/group/group.directive.d.ts +7 -7
  71. package/directives/group/group.options.d.ts +1 -3
  72. package/directives/icons/icons.bindings.d.ts +5 -0
  73. package/directives/icons/icons.directive.d.ts +8 -16
  74. package/directives/icons/index.d.ts +1 -0
  75. package/directives/index.d.ts +1 -5
  76. package/directives/items-handlers/items-handlers.directive.d.ts +5 -9
  77. package/directives/items-handlers/items-handlers.tokens.d.ts +4 -4
  78. package/directives/number-format/number-format.directive.d.ts +3 -7
  79. package/fesm2022/taiga-ui-core-classes.mjs +9 -11
  80. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-core-components-button.mjs +13 -21
  82. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-core-components-calendar.mjs +144 -47
  84. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-core-components-cell.mjs +45 -0
  86. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -0
  87. package/fesm2022/taiga-ui-core-components-data-list.mjs +113 -284
  88. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-core-components-error.mjs +110 -26
  90. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-core-components-expand.mjs +34 -132
  92. package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-core-components-icon.mjs +22 -40
  94. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  95. package/fesm2022/taiga-ui-core-components-input.mjs +100 -0
  96. package/fesm2022/taiga-ui-core-components-input.mjs.map +1 -0
  97. package/fesm2022/taiga-ui-core-components-label.mjs +13 -18
  98. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  99. package/fesm2022/taiga-ui-core-components-link.mjs +16 -36
  100. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  101. package/fesm2022/taiga-ui-core-components-loader.mjs +20 -40
  102. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-core-components-notification.mjs +107 -66
  104. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-core-components-root.mjs +23 -60
  106. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +73 -87
  108. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-core-components-spin-button.mjs +18 -31
  110. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  111. package/fesm2022/taiga-ui-core-components-textfield.mjs +165 -463
  112. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  113. package/fesm2022/taiga-ui-core-components-title.mjs +37 -0
  114. package/fesm2022/taiga-ui-core-components-title.mjs.map +1 -0
  115. package/fesm2022/taiga-ui-core-components.mjs +3 -3
  116. package/fesm2022/taiga-ui-core-directives-appearance.mjs +32 -69
  117. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-core-directives-button-x.mjs +51 -0
  119. package/fesm2022/taiga-ui-core-directives-button-x.mjs.map +1 -0
  120. package/fesm2022/taiga-ui-core-directives-date-format.mjs +26 -20
  121. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  122. package/fesm2022/taiga-ui-core-directives-group.mjs +25 -40
  123. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  124. package/fesm2022/taiga-ui-core-directives-icons.mjs +35 -45
  125. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  126. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +18 -42
  127. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  128. package/fesm2022/taiga-ui-core-directives-number-format.mjs +32 -20
  129. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-core-directives.mjs +1 -5
  131. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +21 -15
  133. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-core-pipes.mjs +0 -8
  135. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-core-portals-alert.mjs +73 -0
  137. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -0
  138. package/fesm2022/taiga-ui-core-portals-dialog.mjs +159 -0
  139. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -0
  140. package/fesm2022/{taiga-ui-core-directives-dropdown.mjs → taiga-ui-core-portals-dropdown.mjs} +249 -414
  141. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -0
  142. package/fesm2022/taiga-ui-core-portals-hint.mjs +552 -0
  143. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -0
  144. package/fesm2022/taiga-ui-core-portals-modal.mjs +89 -0
  145. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -0
  146. package/fesm2022/taiga-ui-core-portals-popup.mjs +56 -0
  147. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -0
  148. package/fesm2022/taiga-ui-core-portals.mjs +11 -0
  149. package/fesm2022/taiga-ui-core-portals.mjs.map +1 -0
  150. package/fesm2022/taiga-ui-core-services.mjs +17 -81
  151. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  152. package/fesm2022/taiga-ui-core-tokens.mjs +62 -81
  153. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  154. package/fesm2022/taiga-ui-core-utils-dom.mjs.map +1 -1
  155. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -22
  156. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  157. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +55 -19
  158. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  159. package/fesm2022/taiga-ui-core.mjs +1 -1
  160. package/index.d.ts +1 -1
  161. package/package.json +61 -182
  162. package/pipes/format-number/format-number.pipe.d.ts +6 -4
  163. package/pipes/index.d.ts +0 -8
  164. package/portals/alert/alert.directive.d.ts +11 -0
  165. package/portals/alert/alert.service.d.ts +12 -0
  166. package/portals/alert/index.d.ts +2 -0
  167. package/portals/dialog/dialog.component.d.ts +14 -0
  168. package/portals/dialog/dialog.directive.d.ts +8 -0
  169. package/{components → portals}/dialog/dialog.factory.d.ts +1 -1
  170. package/portals/dialog/dialog.options.d.ts +25 -0
  171. package/{components/dialog/dialog-close.service.d.ts → portals/dialog/dialog.providers.d.ts} +2 -0
  172. package/portals/dialog/dialog.service.d.ts +10 -0
  173. package/portals/dialog/index.d.ts +6 -0
  174. package/portals/dropdown/dropdown-close.directive.d.ts +15 -0
  175. package/portals/dropdown/dropdown-content.directive.d.ts +9 -0
  176. package/{directives → portals}/dropdown/dropdown-context.directive.d.ts +0 -1
  177. package/{directives → portals}/dropdown/dropdown-hover.directive.d.ts +5 -10
  178. package/{directives → portals}/dropdown/dropdown-hover.options.d.ts +1 -3
  179. package/{directives → portals}/dropdown/dropdown-manual.directive.d.ts +2 -2
  180. package/portals/dropdown/dropdown-open.directive.d.ts +29 -0
  181. package/{directives → portals}/dropdown/dropdown-options.directive.d.ts +1 -5
  182. package/{directives → portals}/dropdown/dropdown-position-sided.directive.d.ts +3 -3
  183. package/{directives → portals}/dropdown/dropdown-position.directive.d.ts +6 -6
  184. package/{directives → portals}/dropdown/dropdown-selection.directive.d.ts +4 -5
  185. package/{directives → portals}/dropdown/dropdown.bindings.d.ts +0 -1
  186. package/{directives → portals}/dropdown/dropdown.d.ts +2 -3
  187. package/{directives → portals}/dropdown/dropdown.directive.d.ts +6 -8
  188. package/{directives → portals}/dropdown/index.d.ts +2 -4
  189. package/{directives → portals}/hint/hint-describe.directive.d.ts +4 -6
  190. package/{directives → portals}/hint/hint-host.directive.d.ts +2 -2
  191. package/{directives → portals}/hint/hint-hover.directive.d.ts +3 -4
  192. package/{directives → portals}/hint/hint-manual.directive.d.ts +2 -2
  193. package/portals/hint/hint-options.directive.d.ts +17 -0
  194. package/{directives → portals}/hint/hint-overflow.directive.d.ts +2 -2
  195. package/{directives → portals}/hint/hint-position.directive.d.ts +7 -8
  196. package/{directives → portals}/hint/hint-unstyled.component.d.ts +2 -7
  197. package/portals/hint/hint.component.d.ts +29 -0
  198. package/{directives → portals}/hint/hint.d.ts +1 -2
  199. package/portals/hint/hint.directive.d.ts +24 -0
  200. package/{directives → portals}/hint/index.d.ts +0 -2
  201. package/portals/index.d.ts +6 -0
  202. package/portals/modal/index.d.ts +2 -0
  203. package/portals/modal/modal.component.d.ts +17 -0
  204. package/portals/modal/modal.service.d.ts +13 -0
  205. package/portals/popup/popup.directive.d.ts +12 -0
  206. package/{directives → portals}/popup/popup.service.d.ts +1 -1
  207. package/{directives → portals}/popup/popups.component.d.ts +2 -2
  208. package/services/index.d.ts +0 -3
  209. package/styles/components/appearance.less +5 -0
  210. package/styles/components/button.less +10 -22
  211. package/styles/components/icon.less +42 -21
  212. package/styles/components/icons.less +18 -13
  213. package/styles/components/label.less +3 -12
  214. package/styles/components/link.less +8 -27
  215. package/styles/components/notification.less +31 -65
  216. package/styles/components/textfield.less +128 -213
  217. package/styles/components/title.less +8 -8
  218. package/styles/mixins/appearance.less +11 -26
  219. package/styles/mixins/appearance.scss +9 -24
  220. package/styles/mixins/date-picker.less +1 -1
  221. package/styles/mixins/mixins.less +1 -7
  222. package/styles/mixins/mixins.scss +1 -7
  223. package/styles/mixins/picker.less +1 -1
  224. package/styles/mixins/picker.scss +1 -1
  225. package/styles/mixins/slider.less +28 -24
  226. package/styles/mixins/slider.scss +23 -22
  227. package/styles/taiga-ui-local.less +0 -1
  228. package/styles/taiga-ui-local.scss +0 -1
  229. package/styles/taiga-ui-theme.less +0 -1
  230. package/styles/theme/appearance/outline.less +9 -18
  231. package/styles/theme/appearance/primary.less +2 -4
  232. package/styles/theme/appearance/secondary.less +6 -14
  233. package/styles/theme/appearance/status.less +0 -4
  234. package/styles/theme/appearance/table.less +36 -35
  235. package/styles/theme/appearance/textfield.less +27 -28
  236. package/styles/theme/appearance.less +0 -1
  237. package/styles/theme/variables.less +16 -19
  238. package/styles/variables/media.less +13 -18
  239. package/styles/variables/media.scss +13 -13
  240. package/tokens/breakpoint.d.ts +4 -0
  241. package/tokens/common-icons.d.ts +3 -3
  242. package/tokens/date-format.d.ts +2 -3
  243. package/tokens/i18n.d.ts +7 -7
  244. package/tokens/icon-resolver.d.ts +1 -5
  245. package/tokens/icons.d.ts +0 -4
  246. package/tokens/index.d.ts +2 -4
  247. package/tokens/number-format.d.ts +2 -3
  248. package/tokens/validation-errors.d.ts +4 -0
  249. package/types/direction.d.ts +1 -1
  250. package/types/index.d.ts +0 -3
  251. package/types/point.d.ts +1 -1
  252. package/types/size.d.ts +0 -11
  253. package/utils/format/index.d.ts +0 -1
  254. package/utils/miscellaneous/get-duration.d.ts +2 -0
  255. package/utils/miscellaneous/index.d.ts +2 -1
  256. package/utils/miscellaneous/provide-taiga.d.ts +13 -0
  257. package/animations/animations.d.ts +0 -109
  258. package/animations/index.d.ts +0 -1
  259. package/components/alert/alert.component.d.ts +0 -15
  260. package/components/alert/alert.directive.d.ts +0 -7
  261. package/components/alert/alert.interfaces.d.ts +0 -12
  262. package/components/alert/alert.service.d.ts +0 -7
  263. package/components/alert/alert.tokens.d.ts +0 -12
  264. package/components/alert/alerts.component.d.ts +0 -12
  265. package/components/alert/index.d.ts +0 -6
  266. package/components/data-list/data-list.directive.d.ts +0 -7
  267. package/components/data-list/option/option-content.d.ts +0 -16
  268. package/components/data-list/option/option-legacy.component.d.ts +0 -24
  269. package/components/data-list/option/option.directive.d.ts +0 -27
  270. package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
  271. package/components/dialog/dialog.component.d.ts +0 -20
  272. package/components/dialog/dialog.directive.d.ts +0 -7
  273. package/components/dialog/dialog.interfaces.d.ts +0 -34
  274. package/components/dialog/dialog.service.d.ts +0 -7
  275. package/components/dialog/dialog.tokens.d.ts +0 -15
  276. package/components/dialog/dialogs.component.d.ts +0 -8
  277. package/components/dialog/index.d.ts +0 -8
  278. package/components/expand/expand-content.directive.d.ts +0 -8
  279. package/components/expand/expand.d.ts +0 -6
  280. package/components/fullscreen/fullscreen.component.d.ts +0 -14
  281. package/components/fullscreen/index.d.ts +0 -1
  282. package/components/link/link.options.d.ts +0 -12
  283. package/components/textfield/select.directive.d.ts +0 -19
  284. package/components/textfield/textfield-dropdown.directive.d.ts +0 -16
  285. package/components/textfield/textfield.directive.d.ts +0 -38
  286. package/directives/dropdown/dropdown-open-legacy.directive.d.ts +0 -12
  287. package/directives/dropdown/dropdown-open.directive.d.ts +0 -33
  288. package/directives/dropdown/dropdown-portal.directive.d.ts +0 -14
  289. package/directives/dropdown/dropdown.service.d.ts +0 -6
  290. package/directives/dropdown/dropdowns.component.d.ts +0 -9
  291. package/directives/hint/hint-options.directive.d.ts +0 -36
  292. package/directives/hint/hint.component.d.ts +0 -30
  293. package/directives/hint/hint.directive.d.ts +0 -26
  294. package/directives/hint/hint.service.d.ts +0 -13
  295. package/directives/hint/hints.component.d.ts +0 -12
  296. package/directives/popup/popup.directive.d.ts +0 -11
  297. package/directives/surface/index.d.ts +0 -1
  298. package/directives/surface/surface.directive.d.ts +0 -8
  299. package/esm2022/animations/animations.mjs +0 -363
  300. package/esm2022/animations/index.mjs +0 -2
  301. package/esm2022/animations/taiga-ui-core-animations.mjs +0 -5
  302. package/esm2022/classes/accessors.mjs +0 -31
  303. package/esm2022/classes/driver.mjs +0 -36
  304. package/esm2022/classes/index.mjs +0 -4
  305. package/esm2022/classes/taiga-ui-core-classes.mjs +0 -5
  306. package/esm2022/classes/vehicle.mjs +0 -7
  307. package/esm2022/components/alert/alert.component.mjs +0 -43
  308. package/esm2022/components/alert/alert.directive.mjs +0 -21
  309. package/esm2022/components/alert/alert.interfaces.mjs +0 -2
  310. package/esm2022/components/alert/alert.service.mjs +0 -18
  311. package/esm2022/components/alert/alert.tokens.mjs +0 -51
  312. package/esm2022/components/alert/alerts.component.mjs +0 -33
  313. package/esm2022/components/alert/index.mjs +0 -6
  314. package/esm2022/components/alert/taiga-ui-core-components-alert.mjs +0 -5
  315. package/esm2022/components/button/button.directive.mjs +0 -43
  316. package/esm2022/components/button/button.options.mjs +0 -7
  317. package/esm2022/components/button/index.mjs +0 -3
  318. package/esm2022/components/button/taiga-ui-core-components-button.mjs +0 -5
  319. package/esm2022/components/calendar/calendar-sheet.component.mjs +0 -168
  320. package/esm2022/components/calendar/calendar-sheet.options.mjs +0 -12
  321. package/esm2022/components/calendar/calendar-spin.component.mjs +0 -53
  322. package/esm2022/components/calendar/calendar-year.component.mjs +0 -128
  323. package/esm2022/components/calendar/calendar.component.mjs +0 -147
  324. package/esm2022/components/calendar/index.mjs +0 -6
  325. package/esm2022/components/calendar/taiga-ui-core-components-calendar.mjs +0 -5
  326. package/esm2022/components/data-list/data-list.component.mjs +0 -139
  327. package/esm2022/components/data-list/data-list.directive.mjs +0 -19
  328. package/esm2022/components/data-list/data-list.mjs +0 -14
  329. package/esm2022/components/data-list/data-list.tokens.mjs +0 -18
  330. package/esm2022/components/data-list/index.mjs +0 -9
  331. package/esm2022/components/data-list/opt-group.directive.mjs +0 -21
  332. package/esm2022/components/data-list/option/option-content.mjs +0 -36
  333. package/esm2022/components/data-list/option/option-legacy.component.mjs +0 -90
  334. package/esm2022/components/data-list/option/option.directive.mjs +0 -109
  335. package/esm2022/components/data-list/taiga-ui-core-components-data-list.mjs +0 -5
  336. package/esm2022/components/dialog/active-zone-adapter.directive.mjs +0 -37
  337. package/esm2022/components/dialog/dialog-close.service.mjs +0 -41
  338. package/esm2022/components/dialog/dialog.component.mjs +0 -63
  339. package/esm2022/components/dialog/dialog.directive.mjs +0 -21
  340. package/esm2022/components/dialog/dialog.factory.mjs +0 -15
  341. package/esm2022/components/dialog/dialog.interfaces.mjs +0 -2
  342. package/esm2022/components/dialog/dialog.service.mjs +0 -18
  343. package/esm2022/components/dialog/dialog.tokens.mjs +0 -33
  344. package/esm2022/components/dialog/dialogs.component.mjs +0 -31
  345. package/esm2022/components/dialog/index.mjs +0 -8
  346. package/esm2022/components/dialog/taiga-ui-core-components-dialog.mjs +0 -5
  347. package/esm2022/components/error/error.component.mjs +0 -34
  348. package/esm2022/components/error/index.mjs +0 -2
  349. package/esm2022/components/error/taiga-ui-core-components-error.mjs +0 -5
  350. package/esm2022/components/expand/expand-content.directive.mjs +0 -18
  351. package/esm2022/components/expand/expand.component.mjs +0 -124
  352. package/esm2022/components/expand/expand.mjs +0 -7
  353. package/esm2022/components/expand/index.mjs +0 -4
  354. package/esm2022/components/expand/taiga-ui-core-components-expand.mjs +0 -5
  355. package/esm2022/components/fullscreen/fullscreen.component.mjs +0 -71
  356. package/esm2022/components/fullscreen/index.mjs +0 -2
  357. package/esm2022/components/fullscreen/taiga-ui-core-components-fullscreen.mjs +0 -5
  358. package/esm2022/components/icon/icon.component.mjs +0 -44
  359. package/esm2022/components/icon/icon.pipe.mjs +0 -19
  360. package/esm2022/components/icon/index.mjs +0 -3
  361. package/esm2022/components/icon/taiga-ui-core-components-icon.mjs +0 -5
  362. package/esm2022/components/index.mjs +0 -18
  363. package/esm2022/components/label/index.mjs +0 -2
  364. package/esm2022/components/label/label.directive.mjs +0 -41
  365. package/esm2022/components/label/taiga-ui-core-components-label.mjs +0 -5
  366. package/esm2022/components/link/index.mjs +0 -3
  367. package/esm2022/components/link/link.directive.mjs +0 -47
  368. package/esm2022/components/link/link.options.mjs +0 -13
  369. package/esm2022/components/link/taiga-ui-core-components-link.mjs +0 -5
  370. package/esm2022/components/loader/index.mjs +0 -3
  371. package/esm2022/components/loader/loader.component.mjs +0 -46
  372. package/esm2022/components/loader/loader.options.mjs +0 -18
  373. package/esm2022/components/loader/taiga-ui-core-components-loader.mjs +0 -5
  374. package/esm2022/components/notification/index.mjs +0 -3
  375. package/esm2022/components/notification/notification.directive.mjs +0 -81
  376. package/esm2022/components/notification/notification.options.mjs +0 -23
  377. package/esm2022/components/notification/taiga-ui-core-components-notification.mjs +0 -5
  378. package/esm2022/components/root/index.mjs +0 -2
  379. package/esm2022/components/root/root.component.mjs +0 -87
  380. package/esm2022/components/root/taiga-ui-core-components-root.mjs +0 -5
  381. package/esm2022/components/scrollbar/index.mjs +0 -9
  382. package/esm2022/components/scrollbar/scroll-controls.component.mjs +0 -32
  383. package/esm2022/components/scrollbar/scroll-into-view.directive.mjs +0 -43
  384. package/esm2022/components/scrollbar/scroll-ref.directive.mjs +0 -19
  385. package/esm2022/components/scrollbar/scrollable.directive.mjs +0 -26
  386. package/esm2022/components/scrollbar/scrollbar.component.mjs +0 -72
  387. package/esm2022/components/scrollbar/scrollbar.directive.mjs +0 -93
  388. package/esm2022/components/scrollbar/scrollbar.options.mjs +0 -6
  389. package/esm2022/components/scrollbar/scrollbar.service.mjs +0 -46
  390. package/esm2022/components/scrollbar/taiga-ui-core-components-scrollbar.mjs +0 -5
  391. package/esm2022/components/spin-button/index.mjs +0 -2
  392. package/esm2022/components/spin-button/spin-button.component.mjs +0 -51
  393. package/esm2022/components/spin-button/taiga-ui-core-components-spin-button.mjs +0 -5
  394. package/esm2022/components/taiga-ui-core-components.mjs +0 -5
  395. package/esm2022/components/textfield/index.mjs +0 -16
  396. package/esm2022/components/textfield/select-like.directive.mjs +0 -42
  397. package/esm2022/components/textfield/select.directive.mjs +0 -64
  398. package/esm2022/components/textfield/taiga-ui-core-components-textfield.mjs +0 -5
  399. package/esm2022/components/textfield/textfield-accessor.mjs +0 -7
  400. package/esm2022/components/textfield/textfield-auxiliary.mjs +0 -7
  401. package/esm2022/components/textfield/textfield-content.directive.mjs +0 -22
  402. package/esm2022/components/textfield/textfield-dropdown.directive.mjs +0 -43
  403. package/esm2022/components/textfield/textfield-icon.mjs +0 -10
  404. package/esm2022/components/textfield/textfield-multi/textfield-item.component.mjs +0 -34
  405. package/esm2022/components/textfield/textfield-multi/textfield-multi.component.mjs +0 -137
  406. package/esm2022/components/textfield/textfield.component.mjs +0 -183
  407. package/esm2022/components/textfield/textfield.directive.mjs +0 -134
  408. package/esm2022/components/textfield/textfield.mjs +0 -19
  409. package/esm2022/components/textfield/textfield.options.mjs +0 -63
  410. package/esm2022/components/textfield/with-native-picker.directive.mjs +0 -24
  411. package/esm2022/directives/appearance/appearance.bindings.mjs +0 -15
  412. package/esm2022/directives/appearance/appearance.directive.mjs +0 -79
  413. package/esm2022/directives/appearance/appearance.options.mjs +0 -12
  414. package/esm2022/directives/appearance/index.mjs +0 -5
  415. package/esm2022/directives/appearance/taiga-ui-core-directives-appearance.mjs +0 -5
  416. package/esm2022/directives/appearance/with-appearance.mjs +0 -27
  417. package/esm2022/directives/date-format/date-format.directive.mjs +0 -31
  418. package/esm2022/directives/date-format/index.mjs +0 -2
  419. package/esm2022/directives/date-format/taiga-ui-core-directives-date-format.mjs +0 -5
  420. package/esm2022/directives/dropdown/dropdown-context.directive.mjs +0 -76
  421. package/esm2022/directives/dropdown/dropdown-hover.directive.mjs +0 -70
  422. package/esm2022/directives/dropdown/dropdown-hover.options.mjs +0 -17
  423. package/esm2022/directives/dropdown/dropdown-limit-width.mjs +0 -37
  424. package/esm2022/directives/dropdown/dropdown-manual.directive.mjs +0 -27
  425. package/esm2022/directives/dropdown/dropdown-open-legacy.directive.mjs +0 -33
  426. package/esm2022/directives/dropdown/dropdown-open.directive.mjs +0 -169
  427. package/esm2022/directives/dropdown/dropdown-options.directive.mjs +0 -73
  428. package/esm2022/directives/dropdown/dropdown-portal.directive.mjs +0 -34
  429. package/esm2022/directives/dropdown/dropdown-position-sided.directive.mjs +0 -69
  430. package/esm2022/directives/dropdown/dropdown-position.directive.mjs +0 -88
  431. package/esm2022/directives/dropdown/dropdown-selection.directive.mjs +0 -159
  432. package/esm2022/directives/dropdown/dropdown.bindings.mjs +0 -19
  433. package/esm2022/directives/dropdown/dropdown.component.mjs +0 -92
  434. package/esm2022/directives/dropdown/dropdown.directive.mjs +0 -110
  435. package/esm2022/directives/dropdown/dropdown.driver.mjs +0 -32
  436. package/esm2022/directives/dropdown/dropdown.mjs +0 -29
  437. package/esm2022/directives/dropdown/dropdown.providers.mjs +0 -10
  438. package/esm2022/directives/dropdown/dropdown.service.mjs +0 -15
  439. package/esm2022/directives/dropdown/dropdowns.component.mjs +0 -24
  440. package/esm2022/directives/dropdown/index.mjs +0 -22
  441. package/esm2022/directives/dropdown/taiga-ui-core-directives-dropdown.mjs +0 -5
  442. package/esm2022/directives/dropdown/with-dropdown-open.directive.mjs +0 -23
  443. package/esm2022/directives/group/group.directive.mjs +0 -53
  444. package/esm2022/directives/group/group.options.mjs +0 -15
  445. package/esm2022/directives/group/index.mjs +0 -3
  446. package/esm2022/directives/group/taiga-ui-core-directives-group.mjs +0 -5
  447. package/esm2022/directives/hint/hint-describe.directive.mjs +0 -50
  448. package/esm2022/directives/hint/hint-driver.directive.mjs +0 -19
  449. package/esm2022/directives/hint/hint-host.directive.mjs +0 -27
  450. package/esm2022/directives/hint/hint-hover.directive.mjs +0 -59
  451. package/esm2022/directives/hint/hint-manual.directive.mjs +0 -33
  452. package/esm2022/directives/hint/hint-options.directive.mjs +0 -86
  453. package/esm2022/directives/hint/hint-overflow.directive.mjs +0 -38
  454. package/esm2022/directives/hint/hint-pointer.directive.mjs +0 -33
  455. package/esm2022/directives/hint/hint-position.directive.mjs +0 -115
  456. package/esm2022/directives/hint/hint-unstyled.component.mjs +0 -39
  457. package/esm2022/directives/hint/hint.component.mjs +0 -127
  458. package/esm2022/directives/hint/hint.directive.mjs +0 -99
  459. package/esm2022/directives/hint/hint.mjs +0 -27
  460. package/esm2022/directives/hint/hint.providers.mjs +0 -9
  461. package/esm2022/directives/hint/hint.service.mjs +0 -29
  462. package/esm2022/directives/hint/hints.component.mjs +0 -34
  463. package/esm2022/directives/hint/index.mjs +0 -17
  464. package/esm2022/directives/hint/taiga-ui-core-directives-hint.mjs +0 -5
  465. package/esm2022/directives/icons/icons.directive.mjs +0 -66
  466. package/esm2022/directives/icons/index.mjs +0 -3
  467. package/esm2022/directives/icons/taiga-ui-core-directives-icons.mjs +0 -5
  468. package/esm2022/directives/icons/with-icons.mjs +0 -22
  469. package/esm2022/directives/index.mjs +0 -12
  470. package/esm2022/directives/items-handlers/index.mjs +0 -4
  471. package/esm2022/directives/items-handlers/items-handlers.directive.mjs +0 -63
  472. package/esm2022/directives/items-handlers/items-handlers.tokens.mjs +0 -27
  473. package/esm2022/directives/items-handlers/items-handlers.validator.mjs +0 -32
  474. package/esm2022/directives/items-handlers/taiga-ui-core-directives-items-handlers.mjs +0 -5
  475. package/esm2022/directives/number-format/index.mjs +0 -2
  476. package/esm2022/directives/number-format/number-format.directive.mjs +0 -31
  477. package/esm2022/directives/number-format/taiga-ui-core-directives-number-format.mjs +0 -5
  478. package/esm2022/directives/popup/index.mjs +0 -4
  479. package/esm2022/directives/popup/popup.directive.mjs +0 -31
  480. package/esm2022/directives/popup/popup.service.mjs +0 -15
  481. package/esm2022/directives/popup/popups.component.mjs +0 -20
  482. package/esm2022/directives/popup/taiga-ui-core-directives-popup.mjs +0 -5
  483. package/esm2022/directives/surface/index.mjs +0 -2
  484. package/esm2022/directives/surface/surface.directive.mjs +0 -44
  485. package/esm2022/directives/surface/taiga-ui-core-directives-surface.mjs +0 -5
  486. package/esm2022/directives/taiga-ui-core-directives.mjs +0 -5
  487. package/esm2022/directives/title/index.mjs +0 -2
  488. package/esm2022/directives/title/taiga-ui-core-directives-title.mjs +0 -5
  489. package/esm2022/directives/title/title.directive.mjs +0 -37
  490. package/esm2022/index.mjs +0 -9
  491. package/esm2022/pipes/auto-color/auto-color.pipe.mjs +0 -19
  492. package/esm2022/pipes/auto-color/index.mjs +0 -2
  493. package/esm2022/pipes/auto-color/taiga-ui-core-pipes-auto-color.mjs +0 -5
  494. package/esm2022/pipes/calendar-sheet/calendar-sheet.pipe.mjs +0 -54
  495. package/esm2022/pipes/calendar-sheet/index.mjs +0 -2
  496. package/esm2022/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.mjs +0 -5
  497. package/esm2022/pipes/calendar-sheet/utils.mjs +0 -36
  498. package/esm2022/pipes/fallback-src/fallback-src.pipe.mjs +0 -23
  499. package/esm2022/pipes/fallback-src/index.mjs +0 -2
  500. package/esm2022/pipes/fallback-src/taiga-ui-core-pipes-fallback-src.mjs +0 -5
  501. package/esm2022/pipes/flag/flag.pipe.mjs +0 -26
  502. package/esm2022/pipes/flag/index.mjs +0 -2
  503. package/esm2022/pipes/flag/taiga-ui-core-pipes-flag.mjs +0 -5
  504. package/esm2022/pipes/format-date/format-date.pipe.mjs +0 -22
  505. package/esm2022/pipes/format-date/index.mjs +0 -2
  506. package/esm2022/pipes/format-date/taiga-ui-core-pipes-format-date.mjs +0 -5
  507. package/esm2022/pipes/format-number/format-number.pipe.mjs +0 -36
  508. package/esm2022/pipes/format-number/index.mjs +0 -2
  509. package/esm2022/pipes/format-number/taiga-ui-core-pipes-format-number.mjs +0 -5
  510. package/esm2022/pipes/index.mjs +0 -10
  511. package/esm2022/pipes/initials/index.mjs +0 -2
  512. package/esm2022/pipes/initials/initials.pipe.mjs +0 -23
  513. package/esm2022/pipes/initials/taiga-ui-core-pipes-initials.mjs +0 -5
  514. package/esm2022/pipes/month/index.mjs +0 -2
  515. package/esm2022/pipes/month/month.pipe.mjs +0 -23
  516. package/esm2022/pipes/month/taiga-ui-core-pipes-month.mjs +0 -5
  517. package/esm2022/pipes/order-week-days/index.mjs +0 -2
  518. package/esm2022/pipes/order-week-days/order-week-days.pipe.mjs +0 -30
  519. package/esm2022/pipes/order-week-days/taiga-ui-core-pipes-order-week-days.mjs +0 -5
  520. package/esm2022/pipes/taiga-ui-core-pipes.mjs +0 -5
  521. package/esm2022/services/breakpoint.service.mjs +0 -31
  522. package/esm2022/services/dark-theme.service.mjs +0 -24
  523. package/esm2022/services/format-date.service.mjs +0 -24
  524. package/esm2022/services/index.mjs +0 -6
  525. package/esm2022/services/position.service.mjs +0 -26
  526. package/esm2022/services/taiga-ui-core-services.mjs +0 -5
  527. package/esm2022/services/visual-viewport.service.mjs +0 -29
  528. package/esm2022/taiga-ui-core.mjs +0 -5
  529. package/esm2022/tokens/animations-speed.mjs +0 -9
  530. package/esm2022/tokens/assets-path.mjs +0 -11
  531. package/esm2022/tokens/auxiliary.mjs +0 -9
  532. package/esm2022/tokens/common-icons.mjs +0 -18
  533. package/esm2022/tokens/dark-mode.mjs +0 -43
  534. package/esm2022/tokens/date-format.mjs +0 -20
  535. package/esm2022/tokens/day-type-handler.mjs +0 -8
  536. package/esm2022/tokens/first-day-of-week.mjs +0 -9
  537. package/esm2022/tokens/i18n.mjs +0 -45
  538. package/esm2022/tokens/icon-resolver.mjs +0 -44
  539. package/esm2022/tokens/icon.mjs +0 -8
  540. package/esm2022/tokens/icons.mjs +0 -21
  541. package/esm2022/tokens/index.mjs +0 -21
  542. package/esm2022/tokens/media.mjs +0 -12
  543. package/esm2022/tokens/number-format.mjs +0 -24
  544. package/esm2022/tokens/reduced-motion.mjs +0 -7
  545. package/esm2022/tokens/scroll-ref.mjs +0 -6
  546. package/esm2022/tokens/selection-stream.mjs +0 -14
  547. package/esm2022/tokens/spin-icons.mjs +0 -8
  548. package/esm2022/tokens/taiga-ui-core-tokens.mjs +0 -5
  549. package/esm2022/tokens/theme.mjs +0 -5
  550. package/esm2022/tokens/viewport.mjs +0 -35
  551. package/esm2022/types/direction.mjs +0 -2
  552. package/esm2022/types/index.mjs +0 -2
  553. package/esm2022/types/interactive-state.mjs +0 -2
  554. package/esm2022/types/orientation.mjs +0 -2
  555. package/esm2022/types/point.mjs +0 -2
  556. package/esm2022/types/portal-item.mjs +0 -2
  557. package/esm2022/types/range-state.mjs +0 -2
  558. package/esm2022/types/size.mjs +0 -13
  559. package/esm2022/types/taiga-ui-core-types.mjs +0 -5
  560. package/esm2022/types/value-content-context.mjs +0 -2
  561. package/esm2022/utils/dom/check-fixed-position.mjs +0 -9
  562. package/esm2022/utils/dom/get-viewport.mjs +0 -24
  563. package/esm2022/utils/dom/get-word-range.mjs +0 -51
  564. package/esm2022/utils/dom/index.mjs +0 -4
  565. package/esm2022/utils/dom/taiga-ui-core-utils-dom.mjs +0 -5
  566. package/esm2022/utils/format/format-number.mjs +0 -47
  567. package/esm2022/utils/format/get-fractional-part-padded.mjs +0 -16
  568. package/esm2022/utils/format/index.mjs +0 -5
  569. package/esm2022/utils/format/number-to-string-without-exp.mjs +0 -18
  570. package/esm2022/utils/format/string-hash-to-hsl.mjs +0 -21
  571. package/esm2022/utils/format/taiga-ui-core-utils-format.mjs +0 -5
  572. package/esm2022/utils/index.mjs +0 -4
  573. package/esm2022/utils/miscellaneous/font-scaling.mjs +0 -21
  574. package/esm2022/utils/miscellaneous/index.mjs +0 -7
  575. package/esm2022/utils/miscellaneous/is-editing-key.mjs +0 -18
  576. package/esm2022/utils/miscellaneous/is-obscured.mjs +0 -8
  577. package/esm2022/utils/miscellaneous/override-options.mjs +0 -11
  578. package/esm2022/utils/miscellaneous/size-bigger.mjs +0 -19
  579. package/esm2022/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.mjs +0 -5
  580. package/esm2022/utils/miscellaneous/to-animation-options.mjs +0 -16
  581. package/esm2022/utils/taiga-ui-core-utils.mjs +0 -5
  582. package/fesm2022/taiga-ui-core-animations.mjs +0 -370
  583. package/fesm2022/taiga-ui-core-animations.mjs.map +0 -1
  584. package/fesm2022/taiga-ui-core-components-alert.mjs +0 -149
  585. package/fesm2022/taiga-ui-core-components-alert.mjs.map +0 -1
  586. package/fesm2022/taiga-ui-core-components-dialog.mjs +0 -230
  587. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +0 -1
  588. package/fesm2022/taiga-ui-core-components-fullscreen.mjs +0 -77
  589. package/fesm2022/taiga-ui-core-components-fullscreen.mjs.map +0 -1
  590. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +0 -1
  591. package/fesm2022/taiga-ui-core-directives-hint.mjs +0 -713
  592. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +0 -1
  593. package/fesm2022/taiga-ui-core-directives-popup.mjs +0 -63
  594. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +0 -1
  595. package/fesm2022/taiga-ui-core-directives-surface.mjs +0 -50
  596. package/fesm2022/taiga-ui-core-directives-surface.mjs.map +0 -1
  597. package/fesm2022/taiga-ui-core-directives-title.mjs +0 -43
  598. package/fesm2022/taiga-ui-core-directives-title.mjs.map +0 -1
  599. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -25
  600. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +0 -1
  601. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -94
  602. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +0 -1
  603. package/fesm2022/taiga-ui-core-pipes-fallback-src.mjs +0 -29
  604. package/fesm2022/taiga-ui-core-pipes-fallback-src.mjs.map +0 -1
  605. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -32
  606. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +0 -1
  607. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -28
  608. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +0 -1
  609. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -29
  610. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +0 -1
  611. package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -29
  612. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +0 -1
  613. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -36
  614. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +0 -1
  615. package/pipes/auto-color/auto-color.pipe.d.ts +0 -7
  616. package/pipes/auto-color/index.d.ts +0 -1
  617. package/pipes/calendar-sheet/index.d.ts +0 -1
  618. package/pipes/calendar-sheet/utils.d.ts +0 -20
  619. package/pipes/fallback-src/fallback-src.pipe.d.ts +0 -9
  620. package/pipes/fallback-src/index.d.ts +0 -1
  621. package/pipes/flag/flag.pipe.d.ts +0 -14
  622. package/pipes/flag/index.d.ts +0 -1
  623. package/pipes/format-date/format-date.pipe.d.ts +0 -9
  624. package/pipes/format-date/index.d.ts +0 -1
  625. package/pipes/initials/index.d.ts +0 -1
  626. package/pipes/initials/initials.pipe.d.ts +0 -7
  627. package/pipes/month/index.d.ts +0 -1
  628. package/pipes/month/month.pipe.d.ts +0 -10
  629. package/pipes/order-week-days/index.d.ts +0 -1
  630. package/services/breakpoint.service.d.ts +0 -16
  631. package/services/dark-theme.service.d.ts +0 -10
  632. package/services/format-date.service.d.ts +0 -8
  633. package/styles/mixins/wrapper.less +0 -64
  634. package/styles/mixins/wrapper.scss +0 -61
  635. package/styles/theme/appearance/opposite.less +0 -17
  636. package/styles/theme/wrapper.less +0 -211
  637. package/tokens/day-type-handler.d.ts +0 -7
  638. package/tokens/first-day-of-week.d.ts +0 -5
  639. package/tokens/scroll-ref.d.ts +0 -2
  640. package/tokens/spin-icons.d.ts +0 -6
  641. package/types/portal-item.d.ts +0 -9
  642. package/types/range-state.d.ts +0 -4
  643. package/types/value-content-context.d.ts +0 -4
  644. package/utils/format/string-hash-to-hsl.d.ts +0 -6
  645. package/utils/miscellaneous/to-animation-options.d.ts +0 -4
  646. /package/{directives → components}/title/index.d.ts +0 -0
  647. /package/{directives → portals}/dropdown/dropdown-limit-width.d.ts +0 -0
  648. /package/{directives → portals}/dropdown/dropdown.component.d.ts +0 -0
  649. /package/{directives → portals}/dropdown/dropdown.driver.d.ts +0 -0
  650. /package/{directives → portals}/dropdown/dropdown.providers.d.ts +0 -0
  651. /package/{directives → portals}/dropdown/with-dropdown-open.directive.d.ts +0 -0
  652. /package/{directives → portals}/hint/hint-driver.directive.d.ts +0 -0
  653. /package/{directives → portals}/hint/hint-pointer.directive.d.ts +0 -0
  654. /package/{directives → portals}/hint/hint.providers.d.ts +0 -0
  655. /package/{directives → portals}/popup/index.d.ts +0 -0
@@ -1,137 +0,0 @@
1
- import { AsyncPipe, NgForOf, NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, inject, Input, signal, TemplateRef, ViewEncapsulation, } from '@angular/core';
3
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
- import { WaResizeObserver } from '@ng-web-apis/resize-observer';
5
- import { TuiItem } from '@taiga-ui/cdk/directives/item';
6
- import { tuiZonefree } from '@taiga-ui/cdk/observables';
7
- import { tuiIsElement } from '@taiga-ui/cdk/utils/dom';
8
- import { tuiArrayToggle, tuiProvide, tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
9
- import { TuiButton, tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
10
- import { tuiAsDataListHost, TuiWithOptionContent, } from '@taiga-ui/core/components/data-list';
11
- import { TuiScrollControls } from '@taiga-ui/core/components/scrollbar';
12
- import { TUI_ITEMS_HANDLERS, TuiWithAppearance, TuiWithItemsHandlers, } from '@taiga-ui/core/directives';
13
- import { TuiDropdownDirective, TuiDropdownFixed, TuiWithDropdownOpen, } from '@taiga-ui/core/directives/dropdown';
14
- import { TuiWithIcons } from '@taiga-ui/core/directives/icons';
15
- import { TUI_SCROLL_REF } from '@taiga-ui/core/tokens';
16
- import { PolymorpheusComponent, PolymorpheusOutlet, } from '@taiga-ui/polymorpheus';
17
- import { filter, fromEvent } from 'rxjs';
18
- import { TuiTextfieldBaseComponent, TuiTextfieldComponent } from '../textfield.component';
19
- import { TuiWithTextfieldDropdown } from '../textfield-dropdown.directive';
20
- import { TuiTextfieldItemComponent, } from './textfield-item.component';
21
- import * as i0 from "@angular/core";
22
- import * as i1 from "@taiga-ui/core/directives/dropdown";
23
- import * as i2 from "../textfield-dropdown.directive";
24
- import * as i3 from "@taiga-ui/core/directives/icons";
25
- import * as i4 from "@taiga-ui/core/directives";
26
- import * as i5 from "@taiga-ui/core/components/data-list";
27
- class TuiTextfieldMultiComponent extends TuiTextfieldBaseComponent {
28
- constructor() {
29
- super(...arguments);
30
- this.height = signal(null);
31
- this.handlers = inject(TUI_ITEMS_HANDLERS);
32
- this.component = new PolymorpheusComponent(TuiTextfieldItemComponent);
33
- this.sub = fromEvent(this.el, 'scroll')
34
- .pipe(filter(() => this.rows === 1), tuiZonefree(), takeUntilDestroyed())
35
- .subscribe(() => {
36
- this.el.style.setProperty('--t-scroll', tuiPx(-1 * this.el.scrollLeft));
37
- });
38
- this.rows = 100;
39
- }
40
- handleOption(option) {
41
- this.accessor?.setValue(tuiArrayToggle(this.control?.value ?? [], option, this.handlers.identityMatcher()));
42
- }
43
- get placeholder() {
44
- const placeholder = this.input?.nativeElement.matches('input')
45
- ? this.input.nativeElement.placeholder
46
- : this.computedFiller();
47
- const value = this.computedFiller() || this.value();
48
- const longer = value.length > placeholder.length ? value : placeholder;
49
- return this.focused() ? longer : '';
50
- }
51
- onItems({ target }) {
52
- const height = this.rows > 1 && this.control?.value?.length
53
- ? (target.querySelector('tui-textfield-item')?.clientHeight ?? 0)
54
- : null;
55
- if (height !== 0) {
56
- this.height.set(height);
57
- }
58
- }
59
- onLeft(event) {
60
- if (this.value() || !tuiIsElement(event.currentTarget)) {
61
- return;
62
- }
63
- event.preventDefault();
64
- event.currentTarget.previousElementSibling?.firstElementChild?.focus();
65
- }
66
- onClick(target) {
67
- if (target === this.el ||
68
- !this.cva?.interactive() ||
69
- (!this.el.matches('[tuiChevron]') &&
70
- !this.el.querySelector('select, [tuiInputDateMulti]')) ||
71
- target.matches('input:read-only,input[inputmode="none"]')) {
72
- return;
73
- }
74
- this.open.update((open) => !open);
75
- try {
76
- this.input?.nativeElement.showPicker?.();
77
- }
78
- catch {
79
- // Empty catch block - silently ignore showPicker errors
80
- }
81
- }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldMultiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldMultiComponent, isStandalone: true, selector: "tui-textfield[multi]", inputs: { rows: "rows" }, host: { listeners: { "click.prevent": "onClick($event.target)", "tuiActiveZoneChange": "!$event && (el.scrollTo({left: 0}) || cva?.onTouched())", "pointerdown.self.prevent": "onIconClick()", "scroll.capture.zoneless": "onScroll($event.target)" }, properties: { "attr.data-state": "control?.disabled ? \"disabled\" : null", "class._empty": "!control?.value?.length", "style.--t-item-height.px": "height()", "style.--t-rows": "rows", "attr.data-size": "options.size()", "class._with-label": "hasLabel", "class._with-template": "content && control?.value != null", "class._disabled": "input?.nativeElement?.disabled" }, classAttribute: "tui-interactive" }, providers: [
84
- tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
85
- tuiAsDataListHost(TuiTextfieldMultiComponent),
86
- tuiProvide(TuiTextfieldComponent, TuiTextfieldMultiComponent),
87
- tuiProvide(TUI_SCROLL_REF, ElementRef),
88
- ], queries: [{ propertyName: "item", first: true, predicate: TuiItem, descendants: true, read: TemplateRef }], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownFixed }, { directive: i1.TuiDropdownDirective }, { directive: i1.TuiWithDropdownOpen }, { directive: i2.TuiWithTextfieldDropdown }, { directive: i3.TuiWithIcons }, { directive: i4.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }, { directive: i4.TuiWithAppearance }], ngImport: i0, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<tui-scroll-controls\n *ngIf=\"rows > 1\"\n class=\"t-scrollbar\"\n/>\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows === 1\"\n (click)=\"input?.nativeElement?.focus()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n <ng-template\n *ngFor=\"let item of control?.value; let index = index\"\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index}}\"\n />\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue([])\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}tui-textfield[multi][multi]{flex-wrap:nowrap;overflow:scroll;align-items:stretch;cursor:text;gap:0;max-block-size:calc(var(--t-vertical) * 2 + var(--t-item-height) * var(--t-rows));overscroll-behavior:none;scroll-behavior:var(--tui-scroll-behavior)}tui-textfield[multi][multi]:before,tui-textfield[multi][multi]:after{position:sticky;top:0;left:0;inset-inline-start:0;block-size:var(--t-height)}tui-textfield[multi][multi][tuiChevron]:after{top:.375rem;block-size:calc(var(--t-height) - .75rem)}tui-textfield[multi][multi]>.t-scrollbar{transform:translate(calc(var(--t-padding) * var(--tui-inline)));margin-inline-start:calc(-1 * var(--t-start));margin-inline-end:calc(1px - 100% + var(--t-start))}tui-textfield[multi][multi]>.t-scrollbar .t-bar_horizontal{display:none}tui-textfield[multi][multi]>.t-items{position:sticky;left:var(--t-start);display:flex;inset-inline-start:var(--t-start);min-inline-size:0;min-block-size:-webkit-fit-content;min-block-size:-moz-fit-content;min-block-size:fit-content;flex:1;align-items:center;flex-wrap:wrap;padding:var(--t-vertical) 0;transition-duration:inherit}tui-textfield[multi][multi]>.t-items:after{content:\"\";min-inline-size:1px;min-block-size:1px}tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 0 0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem));flex-wrap:nowrap}[dir=rtl] tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem) 0 0)}tui-textfield[multi][multi]>.t-items_horizontal>.t-input{padding-inline-end:calc(var(--t-side) + var(--t-end) + var(--t-padding))}tui-textfield[multi][multi]>.t-items:not(tui-textfield[multi][multi]>.t-items_horizontal){--t-scroll: 0}tui-textfield[multi][multi]>.t-items>label[tuiLabel]{position:absolute;top:0;inline-size:100%}tui-textfield[multi][multi]>.t-items>.t-input{position:relative;display:flex;align-items:center;flex:1;block-size:1.25em;max-block-size:1.25rem;max-inline-size:100%;pointer-events:none;transform:translate(var(--t-scroll))}tui-textfield[multi][multi]>.t-items>.t-input input{position:absolute;left:0;inset-inline-start:0;inline-size:100%;padding:0}tui-textfield[multi][multi]>.t-items>.t-input .t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;padding-inline-end:.125rem;min-block-size:var(--t-item-height, 1em)}tui-textfield[multi][multi]>.t-items>.t-input .t-filler{position:absolute;left:0;inset-inline-start:0;color:var(--tui-text-tertiary);pointer-events:none}tui-textfield[multi][multi]>.t-items>.t-input .t-filler_hidden{display:none}tui-textfield[multi][multi]>.t-content{position:sticky;top:0;left:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));inset-inline-start:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));margin:0;gap:.25rem}tui-textfield[multi][multi]>.t-content .t-clear{display:flex}tui-textfield[multi][multi][data-mode~=invalid]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-negative)}tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-primary)!important}tui-textfield[multi][multi][data-mode~=readonly]>.t-content .t-clear,tui-textfield[multi][multi]._disabled>.t-content .t-clear,tui-textfield[multi][multi]._empty>.t-content .t-clear{display:none}tui-textfield[multi][multi]>.t-items input:not(:focus)::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items input::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items label~.t-input input::placeholder{opacity:0}tui-textfield[multi][multi]._empty>.t-items input::placeholder,tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly]):not(:focus-within)>.t-items input::placeholder{opacity:1}tui-textfield[multi][multi]:not(._empty)>.t-items [tuiLabel],tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items [tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield[multi][multi][data-state=disabled],tui-textfield[multi][multi][data-mode~=readonly]{pointer-events:none}tui-textfield[multi][multi][data-state=disabled] select,tui-textfield[multi][multi][data-mode~=readonly] select{display:none}tui-textfield[multi][multi][data-size=l]{--t-vertical: .625rem;--t-offset: calc(1rem - var(--t-end) / 4.5)}tui-textfield[multi][multi][data-size=l]:before{margin-inline-end:.75rem}tui-textfield[multi][multi][data-size=l]:after{left:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));inset-inline-start:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding));margin-inline-start:-.75rem}tui-textfield[multi][multi][data-size=l]._with-label{--t-vertical: 1.125rem}tui-textfield[multi][multi][data-size=l]._with-label>.t-items{padding:1.75rem 0 .5rem}tui-textfield[multi][multi][data-size=m]{--t-vertical: .5rem;--t-offset: calc(.75rem + var(--t-end) / 14)}tui-textfield[multi][multi][data-size=m]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=m]:after{left:calc(100% - var(--t-end) - .25rem);inset-inline-start:calc(100% - var(--t-end) - .25rem);margin-inline-start:-.125rem;border-width:.625rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi][data-size=m]._with-label{--t-vertical: .875rem}tui-textfield[multi][multi][data-size=m]._with-label>.t-items{padding:1.375rem 0 .375rem}tui-textfield[multi][multi][data-size=m]>.t-content{transform:translate(.125rem)}tui-textfield[multi][multi][data-size=s]{--t-vertical: .125rem;--t-offset: calc(.625rem + var(--t-end) / 10)}tui-textfield[multi][multi][data-size=s]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=s]:after{left:calc(100% - var(--t-end) - .125rem);inset-inline-start:calc(100% - var(--t-end) - .125rem);border-width:.5rem;margin-inline-end:calc(-1 * var(--t-padding))}tui-textfield[multi][multi][data-size=s]>.t-content{gap:0;transform:translate(calc(.375rem - var(--t-end) / 10))}tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input::placeholder,tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][data-focus=true] input::placeholder,tui-textfield[multi][multi][data-focus=true] input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input::placeholder,tui-textfield[multi][multi][tuiWrapper]._focused input::placeholder,tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input._empty,tui-textfield[multi][multi][tuiWrapper]._focused input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi] tui-textfield-item{transform:translate(var(--t-scroll))}tui-textfield[multi][multi] input::placeholder{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}tui-textfield[multi][multi] select{opacity:0;padding:0;pointer-events:none}tui-textfield[multi][multi]._empty>.t-items select~.t-filler{display:block}tui-textfield[multi][multi]._empty:not([data-focus=true])>.t-items select~.t-filler{color:var(--tui-text-secondary)}tui-textfield[multi][multi]:has([tuiSelectLike]){cursor:pointer}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
89
- }
90
- export { TuiTextfieldMultiComponent };
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldMultiComponent, decorators: [{
92
- type: Component,
93
- args: [{ standalone: true, selector: 'tui-textfield[multi]', imports: [
94
- AsyncPipe,
95
- NgForOf,
96
- NgIf,
97
- PolymorpheusOutlet,
98
- TuiButton,
99
- TuiScrollControls,
100
- WaResizeObserver,
101
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
102
- tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
103
- tuiAsDataListHost(TuiTextfieldMultiComponent),
104
- tuiProvide(TuiTextfieldComponent, TuiTextfieldMultiComponent),
105
- tuiProvide(TUI_SCROLL_REF, ElementRef),
106
- ], hostDirectives: [
107
- TuiDropdownFixed,
108
- TuiDropdownDirective,
109
- TuiWithDropdownOpen,
110
- TuiWithTextfieldDropdown,
111
- TuiWithIcons,
112
- TuiWithItemsHandlers,
113
- TuiWithOptionContent,
114
- TuiWithAppearance,
115
- ], host: {
116
- class: 'tui-interactive',
117
- '[attr.data-state]': 'control?.disabled ? "disabled" : null',
118
- '[class._empty]': '!control?.value?.length',
119
- '[style.--t-item-height.px]': 'height()',
120
- '[style.--t-rows]': 'rows',
121
- '(click.prevent)': 'onClick($event.target)',
122
- '(tuiActiveZoneChange)': '!$event && (el.scrollTo({left: 0}) || cva?.onTouched())',
123
- // TODO: Remove in v5
124
- '[attr.data-size]': 'options.size()',
125
- '[class._with-label]': 'hasLabel',
126
- '[class._with-template]': 'content && control?.value != null',
127
- '[class._disabled]': 'input?.nativeElement?.disabled',
128
- '(pointerdown.self.prevent)': 'onIconClick()',
129
- '(scroll.capture.zoneless)': 'onScroll($event.target)',
130
- }, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<tui-scroll-controls\n *ngIf=\"rows > 1\"\n class=\"t-scrollbar\"\n/>\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows === 1\"\n (click)=\"input?.nativeElement?.focus()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n <ng-template\n *ngFor=\"let item of control?.value; let index = index\"\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index}}\"\n />\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue([])\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}tui-textfield[multi][multi]{flex-wrap:nowrap;overflow:scroll;align-items:stretch;cursor:text;gap:0;max-block-size:calc(var(--t-vertical) * 2 + var(--t-item-height) * var(--t-rows));overscroll-behavior:none;scroll-behavior:var(--tui-scroll-behavior)}tui-textfield[multi][multi]:before,tui-textfield[multi][multi]:after{position:sticky;top:0;left:0;inset-inline-start:0;block-size:var(--t-height)}tui-textfield[multi][multi][tuiChevron]:after{top:.375rem;block-size:calc(var(--t-height) - .75rem)}tui-textfield[multi][multi]>.t-scrollbar{transform:translate(calc(var(--t-padding) * var(--tui-inline)));margin-inline-start:calc(-1 * var(--t-start));margin-inline-end:calc(1px - 100% + var(--t-start))}tui-textfield[multi][multi]>.t-scrollbar .t-bar_horizontal{display:none}tui-textfield[multi][multi]>.t-items{position:sticky;left:var(--t-start);display:flex;inset-inline-start:var(--t-start);min-inline-size:0;min-block-size:-webkit-fit-content;min-block-size:-moz-fit-content;min-block-size:fit-content;flex:1;align-items:center;flex-wrap:wrap;padding:var(--t-vertical) 0;transition-duration:inherit}tui-textfield[multi][multi]>.t-items:after{content:\"\";min-inline-size:1px;min-block-size:1px}tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 0 0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem));flex-wrap:nowrap}[dir=rtl] tui-textfield[multi][multi]>.t-items_horizontal{clip-path:inset(0 calc(var(--t-start) / 2 - var(--t-padding) - .25rem) 0 0)}tui-textfield[multi][multi]>.t-items_horizontal>.t-input{padding-inline-end:calc(var(--t-side) + var(--t-end) + var(--t-padding))}tui-textfield[multi][multi]>.t-items:not(tui-textfield[multi][multi]>.t-items_horizontal){--t-scroll: 0}tui-textfield[multi][multi]>.t-items>label[tuiLabel]{position:absolute;top:0;inline-size:100%}tui-textfield[multi][multi]>.t-items>.t-input{position:relative;display:flex;align-items:center;flex:1;block-size:1.25em;max-block-size:1.25rem;max-inline-size:100%;pointer-events:none;transform:translate(var(--t-scroll))}tui-textfield[multi][multi]>.t-items>.t-input input{position:absolute;left:0;inset-inline-start:0;inline-size:100%;padding:0}tui-textfield[multi][multi]>.t-items>.t-input .t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;padding-inline-end:.125rem;min-block-size:var(--t-item-height, 1em)}tui-textfield[multi][multi]>.t-items>.t-input .t-filler{position:absolute;left:0;inset-inline-start:0;color:var(--tui-text-tertiary);pointer-events:none}tui-textfield[multi][multi]>.t-items>.t-input .t-filler_hidden{display:none}tui-textfield[multi][multi]>.t-content{position:sticky;top:0;left:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));inset-inline-start:calc(100% - var(--t-side) - var(--t-end) + var(--t-padding) - var(--t-offset));margin:0;gap:.25rem}tui-textfield[multi][multi]>.t-content .t-clear{display:flex}tui-textfield[multi][multi][data-mode~=invalid]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-negative)}tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items>[tuiLabel]{color:var(--tui-text-primary)!important}tui-textfield[multi][multi][data-mode~=readonly]>.t-content .t-clear,tui-textfield[multi][multi]._disabled>.t-content .t-clear,tui-textfield[multi][multi]._empty>.t-content .t-clear{display:none}tui-textfield[multi][multi]>.t-items input:not(:focus)::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items input::placeholder,tui-textfield[multi][multi][data-mode~=readonly]>.t-items label~.t-input input::placeholder{opacity:0}tui-textfield[multi][multi]._empty>.t-items input::placeholder,tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly]):not(:focus-within)>.t-items input::placeholder{opacity:1}tui-textfield[multi][multi]:not(._empty)>.t-items [tuiLabel],tui-textfield[multi][multi][data-focus=true]:not([data-mode~=readonly])>.t-items [tuiLabel]{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield[multi][multi][data-state=disabled],tui-textfield[multi][multi][data-mode~=readonly]{pointer-events:none}tui-textfield[multi][multi][data-state=disabled] select,tui-textfield[multi][multi][data-mode~=readonly] select{display:none}tui-textfield[multi][multi][data-size=l]{--t-vertical: .625rem;--t-offset: calc(1rem - var(--t-end) / 4.5)}tui-textfield[multi][multi][data-size=l]:before{margin-inline-end:.75rem}tui-textfield[multi][multi][data-size=l]:after{left:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));inset-inline-start:calc(100% - var(--t-end) - .375rem + .25 * (1em - 1rem));margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding));margin-inline-start:-.75rem}tui-textfield[multi][multi][data-size=l]._with-label{--t-vertical: 1.125rem}tui-textfield[multi][multi][data-size=l]._with-label>.t-items{padding:1.75rem 0 .5rem}tui-textfield[multi][multi][data-size=m]{--t-vertical: .5rem;--t-offset: calc(.75rem + var(--t-end) / 14)}tui-textfield[multi][multi][data-size=m]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=m]:after{left:calc(100% - var(--t-end) - .25rem);inset-inline-start:calc(100% - var(--t-end) - .25rem);margin-inline-start:-.125rem;border-width:.625rem;margin-inline-end:calc(.5 * (1.5rem - 1em) - var(--t-padding))}tui-textfield[multi][multi][data-size=m]._with-label{--t-vertical: .875rem}tui-textfield[multi][multi][data-size=m]._with-label>.t-items{padding:1.375rem 0 .375rem}tui-textfield[multi][multi][data-size=m]>.t-content{transform:translate(.125rem)}tui-textfield[multi][multi][data-size=s]{--t-vertical: .125rem;--t-offset: calc(.625rem + var(--t-end) / 10)}tui-textfield[multi][multi][data-size=s]:before{left:-.125rem;inset-inline-start:-.125rem;margin-inline-end:.375rem}tui-textfield[multi][multi][data-size=s]:after{left:calc(100% - var(--t-end) - .125rem);inset-inline-start:calc(100% - var(--t-end) - .125rem);border-width:.5rem;margin-inline-end:calc(-1 * var(--t-padding))}tui-textfield[multi][multi][data-size=s]>.t-content{gap:0;transform:translate(calc(.375rem - var(--t-end) / 10))}tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input::placeholder,tui-textfield[multi][multi]:focus-visible:not([data-focus=false]) input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][data-focus=true] input::placeholder,tui-textfield[multi][multi][data-focus=true] input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input::placeholder,tui-textfield[multi][multi][tuiWrapper]._focused input::placeholder,tui-textfield[multi][multi][tuiWrapper]:not(._focused):has(:focus-visible) input._empty,tui-textfield[multi][multi][tuiWrapper]._focused input._empty{color:var(--tui-text-tertiary)}tui-textfield[multi][multi] tui-textfield-item{transform:translate(var(--t-scroll))}tui-textfield[multi][multi] input::placeholder{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}tui-textfield[multi][multi] select{opacity:0;padding:0;pointer-events:none}tui-textfield[multi][multi]._empty>.t-items select~.t-filler{display:block}tui-textfield[multi][multi]._empty:not([data-focus=true])>.t-items select~.t-filler{color:var(--tui-text-secondary)}tui-textfield[multi][multi]:has([tuiSelectLike]){cursor:pointer}\n"] }]
131
- }], propDecorators: { item: [{
132
- type: ContentChild,
133
- args: [TuiItem, { read: TemplateRef, descendants: true }]
134
- }], rows: [{
135
- type: Input
136
- }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLW11bHRpLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLW11bHRpL3RleHRmaWVsZC1tdWx0aS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkL3RleHRmaWVsZC1tdWx0aS90ZXh0ZmllbGQtbXVsdGkudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUV0RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDcEYsT0FBTyxFQUFDLFNBQVMsRUFBRSx3QkFBd0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JGLE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsb0JBQW9CLEdBQ3ZCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxF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QkFDM0MsNEJBQTRCLEVBQUUsVUFBVTt3QkFDeEMsa0JBQWtCLEVBQUUsTUFBTTt3QkFDMUIsaUJBQWlCLEVBQUUsd0JBQXdCO3dCQUMzQyx1QkFBdUIsRUFDbkIseURBQXlEO3dCQUM3RCxxQkFBcUI7d0JBQ3JCLGtCQUFrQixFQUFFLGdCQUFnQjt3QkFDcEMscUJBQXFCLEVBQUUsVUFBVTt3QkFDakMsd0JBQXdCLEVBQUUsbUNBQW1DO3dCQUM3RCxtQkFBbUIsRUFBRSxnQ0FBZ0M7d0JBQ3JELDRCQUE0QixFQUFFLGVBQWU7d0JBQzdDLDJCQUEyQixFQUFFLHlCQUF5QjtxQkFDekQ7OEJBbUJlLElBQUk7c0JBRG5CLFlBQVk7dUJBQUMsT0FBTyxFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFDO2dCQUl0RCxJQUFJO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdGb3JPZiwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBzaWduYWwsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7V2FSZXNpemVPYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL3Jlc2l6ZS1vYnNlcnZlcic7XG5pbXBvcnQge1R1aUl0ZW19IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9pdGVtJztcbmltcG9ydCB7dHVpWm9uZWZyZWV9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0eXBlIFR1aUNvbnRleHR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJc0VsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7dHVpQXJyYXlUb2dnbGUsIHR1aVByb3ZpZGUsIHR1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlCdXR0b24sIHR1aUJ1dHRvbk9wdGlvbnNQcm92aWRlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc0RhdGFMaXN0SG9zdCxcbiAgICBUdWlXaXRoT3B0aW9uQ29udGVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlTY3JvbGxDb250cm9sc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXInO1xuaW1wb3J0IHtcbiAgICBUVUlfSVRFTVNfSEFORExFUlMsXG4gICAgVHVpV2l0aEFwcGVhcmFuY2UsXG4gICAgVHVpV2l0aEl0ZW1zSGFuZGxlcnMsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtcbiAgICBUdWlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICBUdWlEcm9wZG93bkZpeGVkLFxuICAgIFR1aVdpdGhEcm9wZG93bk9wZW4sXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHtUdWlXaXRoSWNvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaWNvbnMnO1xuaW1wb3J0IHtUVUlfU0NST0xMX1JFRn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7XG4gICAgUG9seW1vcnBoZXVzQ29tcG9uZW50LFxuICAgIHR5cGUgUG9seW1vcnBoZXVzQ29udGVudCxcbiAgICBQb2x5bW9ycGhldXNPdXRsZXQsXG59IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtmaWx0ZXIsIGZyb21FdmVudH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVGV4dGZpZWxkQmFzZUNvbXBvbmVudCwgVHVpVGV4dGZpZWxkQ29tcG9uZW50fSBmcm9tICcuLi90ZXh0ZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7VHVpV2l0aFRleHRmaWVsZERyb3Bkb3dufSBmcm9tICcuLi90ZXh0ZmllbGQtZHJvcGRvd24uZGlyZWN0aXZlJztcbmltcG9ydCB7XG4gICAgdHlwZSBUdWlUZXh0ZmllbGRJdGVtLFxuICAgIFR1aVRleHRmaWVsZEl0ZW1Db21wb25lbnQsXG59IGZyb20gJy4vdGV4dGZpZWxkLWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS10ZXh0ZmllbGRbbXVsdGldJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgTmdGb3JPZixcbiAgICAgICAgTmdJZixcbiAgICAgICAgUG9seW1vcnBoZXVzT3V0bGV0LFxuICAgICAgICBUdWlCdXR0b24sXG4gICAgICAgIFR1aVNjcm9sbENvbnRyb2xzLFxuICAgICAgICBXYVJlc2l6ZU9ic2VydmVyLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHRmaWVsZC1tdWx0aS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90ZXh0ZmllbGQtbXVsdGkuc3R5bGUubGVzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUJ1dHRvbk9wdGlvbnNQcm92aWRlcih7c2l6ZTogJ3hzJywgYXBwZWFyYW5jZTogJ2ljb24nfSksXG4gICAgICAgIHR1aUFzRGF0YUxpc3RIb3N0KFR1aVRleHRmaWVsZE11bHRpQ29tcG9uZW50KSxcbiAgICAgICAgdHVpUHJvdmlkZShUdWlUZXh0ZmllbGRDb21wb25lbnQsIFR1aVRleHRmaWVsZE11bHRpQ29tcG9uZW50KSxcbiAgICAgICAgdHVpUHJvdmlkZShUVUlfU0NST0xMX1JFRiwgRWxlbWVudFJlZiksXG4gICAgXSxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICBUdWlEcm9wZG93bkZpeGVkLFxuICAgICAgICBUdWlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVHVpV2l0aERyb3Bkb3duT3BlbixcbiAgICAgICAgVHVpV2l0aFRleHRmaWVsZERyb3Bkb3duLFxuICAgICAgICBUdWlXaXRoSWNvbnMsXG4gICAgICAgIFR1aVdpdGhJdGVtc0hhbmRsZXJzLFxuICAgICAgICBUdWlXaXRoT3B0aW9uQ29udGVudCxcbiAgICAgICAgVHVpV2l0aEFwcGVhcmFuY2UsXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndHVpLWludGVyYWN0aXZlJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ2NvbnRyb2w/LmRpc2FibGVkID8gXCJkaXNhYmxlZFwiIDogbnVsbCcsXG4gICAgICAgICdbY2xhc3MuX2VtcHR5XSc6ICchY29udHJvbD8udmFsdWU/Lmxlbmd0aCcsXG4gICAgICAgICdbc3R5bGUuLS10LWl0ZW0taGVpZ2h0LnB4XSc6ICdoZWlnaHQoKScsXG4gICAgICAgICdbc3R5bGUuLS10LXJvd3NdJzogJ3Jvd3MnLFxuICAgICAgICAnKGNsaWNrLnByZXZlbnQpJzogJ29uQ2xpY2soJGV2ZW50LnRhcmdldCknLFxuICAgICAgICAnKHR1aUFjdGl2ZVpvbmVDaGFuZ2UpJzpcbiAgICAgICAgICAgICchJGV2ZW50ICYmIChlbC5zY3JvbGxUbyh7bGVmdDogMH0pIHx8IGN2YT8ub25Ub3VjaGVkKCkpJyxcbiAgICAgICAgLy8gVE9ETzogUmVtb3ZlIGluIHY1XG4gICAgICAgICdbYXR0ci5kYXRhLXNpemVdJzogJ29wdGlvbnMuc2l6ZSgpJyxcbiAgICAgICAgJ1tjbGFzcy5fd2l0aC1sYWJlbF0nOiAnaGFzTGFiZWwnLFxuICAgICAgICAnW2NsYXNzLl93aXRoLXRlbXBsYXRlXSc6ICdjb250ZW50ICYmIGNvbnRyb2w/LnZhbHVlICE9IG51bGwnLFxuICAgICAgICAnW2NsYXNzLl9kaXNhYmxlZF0nOiAnaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQ/LmRpc2FibGVkJyxcbiAgICAgICAgJyhwb2ludGVyZG93bi5zZWxmLnByZXZlbnQpJzogJ29uSWNvbkNsaWNrKCknLFxuICAgICAgICAnKHNjcm9sbC5jYXB0dXJlLnpvbmVsZXNzKSc6ICdvblNjcm9sbCgkZXZlbnQudGFyZ2V0KScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkTXVsdGlDb21wb25lbnQ8VD4gZXh0ZW5kcyBUdWlUZXh0ZmllbGRCYXNlQ29tcG9uZW50PFQ+IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGVpZ2h0ID0gc2lnbmFsPG51bWJlciB8IG51bGw+KG51bGwpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBoYW5kbGVycyA9IGluamVjdChUVUlfSVRFTVNfSEFORExFUlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb21wb25lbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxUdWlUZXh0ZmllbGRJdGVtPFQ+Pj4gPVxuICAgICAgICBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFR1aVRleHRmaWVsZEl0ZW1Db21wb25lbnQpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN1YiA9IGZyb21FdmVudCh0aGlzLmVsLCAnc2Nyb2xsJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKCkgPT4gdGhpcy5yb3dzID09PSAxKSxcbiAgICAgICAgICAgIHR1aVpvbmVmcmVlKCksXG4gICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZWwuc3R5bGUuc2V0UHJvcGVydHkoJy0tdC1zY3JvbGwnLCB0dWlQeCgtMSAqIHRoaXMuZWwuc2Nyb2xsTGVmdCkpO1xuICAgICAgICB9KTtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpSXRlbSwge3JlYWQ6IFRlbXBsYXRlUmVmLCBkZXNjZW5kYW50czogdHJ1ZX0pXG4gICAgcHVibGljIHJlYWRvbmx5IGl0ZW0/OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHJvd3MgPSAxMDA7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgaGFuZGxlT3B0aW9uKG9wdGlvbjogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFjY2Vzc29yPy5zZXRWYWx1ZShcbiAgICAgICAgICAgIHR1aUFycmF5VG9nZ2xlKFxuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbD8udmFsdWUgPz8gW10sXG4gICAgICAgICAgICAgICAgb3B0aW9uLFxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlcnMuaWRlbnRpdHlNYXRjaGVyKCksXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgcGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgcGxhY2Vob2xkZXIgPSB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50Lm1hdGNoZXMoJ2lucHV0JylcbiAgICAgICAgICAgID8gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnBsYWNlaG9sZGVyXG4gICAgICAgICAgICA6IHRoaXMuY29tcHV0ZWRGaWxsZXIoKTtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmNvbXB1dGVkRmlsbGVyKCkgfHwgdGhpcy52YWx1ZSgpO1xuICAgICAgICBjb25zdCBsb25nZXIgPSB2YWx1ZS5sZW5ndGggPiBwbGFjZWhvbGRlci5sZW5ndGggPyB2YWx1ZSA6IHBsYWNlaG9sZGVyO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmZvY3VzZWQoKSA/IGxvbmdlciA6ICcnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkl0ZW1zKHt0YXJnZXR9OiBSZXNpemVPYnNlcnZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhlaWdodCA9XG4gICAgICAgICAgICB0aGlzLnJvd3MgPiAxICYmIHRoaXMuY29udHJvbD8udmFsdWU/Lmxlbmd0aFxuICAgICAgICAgICAgICAgID8gKHRhcmdldC5xdWVyeVNlbGVjdG9yKCd0dWktdGV4dGZpZWxkLWl0ZW0nKT8uY2xpZW50SGVpZ2h0ID8/IDApXG4gICAgICAgICAgICAgICAgOiBudWxsO1xuXG4gICAgICAgIGlmIChoZWlnaHQgIT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuaGVpZ2h0LnNldChoZWlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uTGVmdChldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlKCkgfHwgIXR1aUlzRWxlbWVudChldmVudC5jdXJyZW50VGFyZ2V0KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nPy5maXJzdEVsZW1lbnRDaGlsZD8uZm9jdXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DbGljayh0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRhcmdldCA9PT0gdGhpcy5lbCB8fFxuICAgICAgICAgICAgIXRoaXMuY3ZhPy5pbnRlcmFjdGl2ZSgpIHx8XG4gICAgICAgICAgICAoIXRoaXMuZWwubWF0Y2hlcygnW3R1aUNoZXZyb25dJykgJiZcbiAgICAgICAgICAgICAgICAhdGhpcy5lbC5xdWVyeVNlbGVjdG9yKCdzZWxlY3QsIFt0dWlJbnB1dERhdGVNdWx0aV0nKSkgfHxcbiAgICAgICAgICAgIHRhcmdldC5tYXRjaGVzKCdpbnB1dDpyZWFkLW9ubHksaW5wdXRbaW5wdXRtb2RlPVwibm9uZVwiXScpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuLnVwZGF0ZSgob3BlbikgPT4gIW9wZW4pO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LnNob3dQaWNrZXI/LigpO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIC8vIEVtcHR5IGNhdGNoIGJsb2NrIC0gc2lsZW50bHkgaWdub3JlIHNob3dQaWNrZXIgZXJyb3JzXG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29udHJvbD8uY29udHJvbD8udmFsdWVDaGFuZ2VzIHwgYXN5bmNcIiAvPlxuPHR1aS1zY3JvbGwtY29udHJvbHNcbiAgICAqbmdJZj1cInJvd3MgPiAxXCJcbiAgICBjbGFzcz1cInQtc2Nyb2xsYmFyXCJcbi8+XG5cbjxkaXZcbiAgICBjbGFzcz1cInQtaXRlbXNcIlxuICAgIFtjbGFzcy50LWl0ZW1zX2hvcml6b250YWxdPVwicm93cyA9PT0gMVwiXG4gICAgKGNsaWNrKT1cImlucHV0Py5uYXRpdmVFbGVtZW50Py5mb2N1cygpXCJcbiAgICAocG9pbnRlcmRvd24uc2VsZi56b25lbGVzcy5wcmV2ZW50KT1cIigwKVwiXG4gICAgKHdhUmVzaXplT2JzZXJ2ZXIpPVwiJGV2ZW50WzBdICYmIG9uSXRlbXMoJGV2ZW50WzBdKVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwibGFiZWxcIiAvPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250cm9sPy52YWx1ZTsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICBbcG9seW1vcnBoZXVzT3V0bGV0XT1cImNvbXBvbmVudFwiXG4gICAgICAgIFtwb2x5bW9ycGhldXNPdXRsZXRDb250ZXh0XT1cInskaW1wbGljaXQ6IHtpdGVtLCBpbmRleH19XCJcbiAgICAvPlxuICAgIDxzcGFuXG4gICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgIChrZXlkb3duLmFycm93TGVmdCk9XCJvbkxlZnQoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJpbnB1dFwiIC8+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNlbGVjdFwiIC8+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidC1naG9zdFwiPnt7IHBsYWNlaG9sZGVyIH19PC9zcGFuPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICBkaXNhYmxlZFxuICAgICAgICAgICAgY2xhc3M9XCJ0LWZpbGxlclwiXG4gICAgICAgICAgICBbY2xhc3MudC1maWxsZXJfaGlkZGVuXT1cIiFzaG93RmlsbGVyKClcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImNvbXB1dGVkRmlsbGVyKClcIlxuICAgICAgICAvPlxuICAgIDwvc3Bhbj5cbjwvZGl2PlxuXG48c3BhblxuICAgIGNsYXNzPVwidC1jb250ZW50XCJcbiAgICAoY2xpY2suc3RvcCk9XCJpbnB1dD8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKVwiXG4gICAgKHBvaW50ZXJkb3duLnpvbmVsZXNzLnByZXZlbnQpPVwiKDApXCJcbiAgICAod2FSZXNpemVPYnNlcnZlcik9XCIkZXZlbnRbMF0gJiYgb25SZXNpemUoJGV2ZW50WzBdKVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwib3B0aW9ucy5jbGVhbmVyKClcIlxuICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgIHNpemU9XCJ4c1wiXG4gICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInQtY2xlYXJcIlxuICAgICAgICBbaWNvblN0YXJ0XT1cImljb25zLmNsb3NlXCJcbiAgICAgICAgKGNsaWNrKT1cImFjY2Vzc29yPy5zZXRWYWx1ZShbXSlcIlxuICAgID5cbiAgICAgICAge3sgY2xlYXIoKSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxuZy1jb250YWluZXIgI3ZjciAvPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aS1pY29uXCIgLz5cbjwvc3Bhbj5cblxuPHNwYW5cbiAgICAqbmdJZj1cImNvbnRyb2w/LnZhbHVlICE9IG51bGxcIlxuICAgIGNsYXNzPVwidC10ZW1wbGF0ZVwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBjb250cm9sPy52YWx1ZX1cIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9zcGFuPlxuIl19
@@ -1,183 +0,0 @@
1
- import { AsyncPipe, NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, computed, ContentChild, ContentChildren, Directive, ElementRef, forwardRef, inject, Input, signal, ViewChild, ViewContainerRef, ViewEncapsulation, } from '@angular/core';
3
- import { toSignal } from '@angular/core/rxjs-interop';
4
- import { NgControl } from '@angular/forms';
5
- import { WaResizeObserver } from '@ng-web-apis/resize-observer';
6
- import { TuiControl } from '@taiga-ui/cdk/classes';
7
- import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
8
- import { TuiTransitioned } from '@taiga-ui/cdk/directives/transitioned';
9
- import { tuiQueryListChanges } from '@taiga-ui/cdk/observables';
10
- import { tuiInjectId } from '@taiga-ui/cdk/services';
11
- import { tuiInjectElement, tuiValue } from '@taiga-ui/cdk/utils/dom';
12
- import { tuiFocusedIn } from '@taiga-ui/cdk/utils/focus';
13
- import { tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
14
- import { TuiButton, tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
15
- import { tuiAsDataListHost, TuiWithOptionContent, } from '@taiga-ui/core/components/data-list';
16
- import { TuiLabel } from '@taiga-ui/core/components/label';
17
- import { TuiDropdownDirective, TuiDropdownFixed, TuiDropdownOpen, tuiDropdownOpen, TuiWithDropdownOpen, } from '@taiga-ui/core/directives/dropdown';
18
- import { TuiWithIcons } from '@taiga-ui/core/directives/icons';
19
- import { TuiWithItemsHandlers } from '@taiga-ui/core/directives/items-handlers';
20
- import { TUI_AUXILIARY, TUI_CLEAR_WORD, TUI_COMMON_ICONS } from '@taiga-ui/core/tokens';
21
- import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
22
- import { ReplaySubject, startWith, switchMap, take } from 'rxjs';
23
- import { TuiTextfieldBase } from './textfield.directive';
24
- import { TUI_TEXTFIELD_OPTIONS } from './textfield.options';
25
- import { TUI_TEXTFIELD_ACCESSOR } from './textfield-accessor';
26
- import { TuiWithTextfieldDropdown } from './textfield-dropdown.directive';
27
- import * as i0 from "@angular/core";
28
- import * as i1 from "@taiga-ui/core/directives/dropdown";
29
- import * as i2 from "@taiga-ui/cdk/directives/transitioned";
30
- import * as i3 from "@taiga-ui/core/directives/icons";
31
- import * as i4 from "@taiga-ui/core/directives/items-handlers";
32
- import * as i5 from "@taiga-ui/core/components/data-list";
33
- import * as i6 from "./textfield-dropdown.directive";
34
- // TODO: Remove base class in v5
35
- class TuiTextfieldBaseComponent {
36
- constructor() {
37
- // TODO: refactor to signal inputs after Angular update
38
- this.filler = signal('');
39
- this.autoId = tuiInjectId();
40
- this.focusedIn = tuiFocusedIn(tuiInjectElement());
41
- this.contentReady$ = new ReplaySubject(1);
42
- this.inputQuery = signal(undefined);
43
- this.auxiliaryQuery = EMPTY_QUERY;
44
- this.open = tuiDropdownOpen();
45
- this.dropdown = inject(TuiDropdownDirective);
46
- this.dropdownOpen = inject(TuiDropdownOpen);
47
- this.icons = inject(TUI_COMMON_ICONS);
48
- this.clear = toSignal(inject(TUI_CLEAR_WORD));
49
- this.computedFiller = computed((value = this.value()) => {
50
- const filler = value + this.filler().slice(value.length);
51
- return filler.length > value.length ? filler : '';
52
- });
53
- this.showFiller = computed(() => this.focused() &&
54
- !!this.computedFiller() &&
55
- (!!this.value() || !this.input?.nativeElement.placeholder));
56
- this.focused = computed(() => this.open() || this.focusedIn());
57
- this.options = inject(TUI_TEXTFIELD_OPTIONS);
58
- this.el = tuiInjectElement();
59
- this.value = tuiValue(this.inputQuery);
60
- // TODO: Refactor to signal queries when Angular is updated
61
- this.auxiliaries = toSignal(this.contentReady$.pipe(take(1), switchMap(() => tuiQueryListChanges(this.auxiliaryQuery)), startWith([])), { requireSync: true });
62
- }
63
- set fillerSetter(filler) {
64
- this.filler.set(filler);
65
- }
66
- get id() {
67
- return this.input?.nativeElement.id || this.autoId;
68
- }
69
- get size() {
70
- return this.options.size();
71
- }
72
- ngAfterContentChecked() {
73
- this.contentReady$.next(true);
74
- this.inputQuery.set(this._input);
75
- }
76
- handleOption(option) {
77
- this.accessor?.setValue(option);
78
- this.open.set(false);
79
- }
80
- get hasLabel() {
81
- return Boolean(this.label?.nativeElement?.childNodes.length);
82
- }
83
- onResize({ contentRect }) {
84
- this.el.style.setProperty('--t-side', tuiPx(contentRect.width));
85
- }
86
- // Click on ::before,::after pseudo-elements ([iconStart] / [iconEnd])
87
- onIconClick() {
88
- this.input?.nativeElement.focus();
89
- if (!this.dropdownOpen.tuiDropdownEnabled ||
90
- this.input?.nativeElement.matches('input:read-only,textarea:read-only')) {
91
- return;
92
- }
93
- this.open.update((open) => !open);
94
- try {
95
- this.input?.nativeElement.showPicker?.();
96
- }
97
- catch {
98
- // Empty catch block - silently ignore showPicker errors
99
- }
100
- }
101
- onScroll(element) {
102
- if (this.input?.nativeElement === element) {
103
- this.ghost?.nativeElement.scrollTo({
104
- left: this.input.nativeElement.scrollLeft,
105
- });
106
- }
107
- }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
109
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldBaseComponent, inputs: { content: "content", fillerSetter: ["filler", "fillerSetter"] }, queries: [{ propertyName: "label", first: true, predicate: i0.forwardRef(function () { return TuiLabel; }), descendants: true, read: ElementRef }, { propertyName: "_input", first: true, predicate: i0.forwardRef(function () { return TuiTextfieldBase; }), descendants: true, read: ElementRef }, { propertyName: "accessor", first: true, predicate: TUI_TEXTFIELD_ACCESSOR, descendants: true }, { propertyName: "control", first: true, predicate: NgControl, descendants: true }, { propertyName: "cva", first: true, predicate: TuiControl, descendants: true }, { propertyName: "input", first: true, predicate: i0.forwardRef(function () { return TuiTextfieldBase; }), descendants: true, read: ElementRef, static: true }, { propertyName: "auxiliaryQuery", predicate: TUI_AUXILIARY, descendants: true }], viewQueries: [{ propertyName: "ghost", first: true, predicate: ["ghost"], descendants: true }, { propertyName: "vcr", first: true, predicate: ["vcr"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0 }); }
110
- }
111
- export { TuiTextfieldBaseComponent };
112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBaseComponent, decorators: [{
113
- type: Directive
114
- }], propDecorators: { ghost: [{
115
- type: ViewChild,
116
- args: ['ghost']
117
- }], label: [{
118
- type: ContentChild,
119
- args: [forwardRef(() => TuiLabel), { read: ElementRef }]
120
- }], auxiliaryQuery: [{
121
- type: ContentChildren,
122
- args: [TUI_AUXILIARY, { descendants: true }]
123
- }], _input: [{
124
- type: ContentChild,
125
- args: [forwardRef(() => TuiTextfieldBase), { read: ElementRef }]
126
- }], vcr: [{
127
- type: ViewChild,
128
- args: ['vcr', { read: ViewContainerRef, static: true }]
129
- }], accessor: [{
130
- type: ContentChild,
131
- args: [TUI_TEXTFIELD_ACCESSOR, { descendants: true }]
132
- }], control: [{
133
- type: ContentChild,
134
- args: [NgControl]
135
- }], cva: [{
136
- type: ContentChild,
137
- args: [TuiControl]
138
- }], input: [{
139
- type: ContentChild,
140
- args: [forwardRef(() => TuiTextfieldBase), {
141
- read: ElementRef,
142
- static: true,
143
- }]
144
- }], content: [{
145
- type: Input
146
- }], fillerSetter: [{
147
- type: Input,
148
- args: ['filler']
149
- }] } });
150
- class TuiTextfieldComponent extends TuiTextfieldBaseComponent {
151
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
152
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldComponent, isStandalone: true, selector: "tui-textfield:not([multi])", host: { listeners: { "click.self.prevent": "0", "pointerdown.self.prevent": "onIconClick()", "scroll.capture.zoneless": "onScroll($event.target)", "tuiActiveZoneChange": "!$event && cva?.onTouched()" }, properties: { "attr.data-size": "options.size()", "class._with-label": "hasLabel", "class._with-template": "content && control?.value != null", "class._disabled": "input?.nativeElement?.disabled" } }, providers: [
153
- tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
154
- tuiAsDataListHost(TuiTextfieldComponent),
155
- ], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownDirective }, { directive: i1.TuiDropdownFixed }, { directive: i2.TuiTransitioned }, { directive: i1.TuiWithDropdownOpen }, { directive: i3.TuiWithIcons }, { directive: i4.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }, { directive: i6.TuiWithTextfieldDropdown }], ngImport: i0, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n (pointerdown.zoneless.prevent)=\"input?.nativeElement?.focus()\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
156
- }
157
- export { TuiTextfieldComponent };
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldComponent, decorators: [{
159
- type: Component,
160
- args: [{ standalone: true, selector: 'tui-textfield:not([multi])', imports: [AsyncPipe, NgIf, PolymorpheusOutlet, TuiButton, WaResizeObserver], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
161
- tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
162
- tuiAsDataListHost(TuiTextfieldComponent),
163
- ], hostDirectives: [
164
- TuiDropdownDirective,
165
- TuiDropdownFixed,
166
- TuiTransitioned,
167
- TuiWithDropdownOpen,
168
- TuiWithIcons,
169
- TuiWithItemsHandlers,
170
- TuiWithOptionContent,
171
- TuiWithTextfieldDropdown,
172
- ], host: {
173
- '[attr.data-size]': 'options.size()',
174
- '[class._with-label]': 'hasLabel',
175
- '[class._with-template]': 'content && control?.value != null',
176
- '[class._disabled]': 'input?.nativeElement?.disabled',
177
- '(click.self.prevent)': '0',
178
- '(pointerdown.self.prevent)': 'onIconClick()',
179
- '(scroll.capture.zoneless)': 'onScroll($event.target)',
180
- '(tuiActiveZoneChange)': '!$event && cva?.onTouched()',
181
- }, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n (pointerdown.zoneless.prevent)=\"input?.nativeElement?.focus()\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.25rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.25rem}tui-textfield[data-size=s]:before{margin-inline-end:.5rem;margin-inline-start:-.125rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-.125rem - var(--t-padding));margin-inline-start:calc(.625rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.375rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-tertiary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"] }]
182
- }] });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUFDLFlB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QUFxQjttR0FBckIscUJBQXFCLDZkQXpCbkI7WUFDUCx3QkFBd0IsQ0FBQyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBQyxDQUFDO1lBQzFELGlCQUFpQixDQUFDLHFCQUFxQixDQUFDO1NBQzNDLHFYQ3JOTCx3c0NBNENBLHMzZkRpS2MsU0FBUyw4Q0FBRSxJQUFJLDZGQUFFLGtCQUFrQiw4SEFBRSxTQUFTLG9JQUFFLGdCQUFnQjs7U0E4QmpFLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQWpDakMsU0FBUztpQ0FDTSxJQUFJLFlBQ04sNEJBQTRCLFdBQzdCLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsaUJBRzVELGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Asd0JBQXdCLENBQUMsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUMsQ0FBQzt3QkFDMUQsaUJBQWlCLHVCQUF1QjtxQkFDM0Msa0JBQ2U7d0JBQ1osb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQix3QkFBd0I7cUJBQzNCLFFBQ0s7d0JBQ0Ysa0JBQWtCLEVBQUUsZ0JBQWdCO3dCQUNwQyxxQkFBcUIsRUFBRSxVQUFVO3dCQUNqQyx3QkFBd0IsRUFBRSxtQ0FBbUM7d0JBQzdELG1CQUFtQixFQUFFLGdDQUFnQzt3QkFDckQsc0JBQXNCLEVBQUUsR0FBRzt3QkFDM0IsNEJBQTRCLEVBQUUsZUFBZTt3QkFDN0MsMkJBQTJCLEVBQUUseUJBQXlCO3dCQUN0RCx1QkFBdUIsRUFBRSw2QkFBNkI7cUJBQ3pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIHR5cGUgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgY29tcHV0ZWQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICB0eXBlIFF1ZXJ5TGlzdCxcbiAgICBzaWduYWwsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7V2FSZXNpemVPYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL3Jlc2l6ZS1vYnNlcnZlcic7XG5pbXBvcnQge1R1aUNvbnRyb2x9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge0VNUFRZX1FVRVJZfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aVRyYW5zaXRpb25lZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3RyYW5zaXRpb25lZCc7XG5pbXBvcnQge3R1aVF1ZXJ5TGlzdENoYW5nZXN9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RJZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge3R5cGUgVHVpQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnQsIHR1aVZhbHVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUZvY3VzZWRJbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cyc7XG5pbXBvcnQge3R1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlCdXR0b24sIHR1aUJ1dHRvbk9wdGlvbnNQcm92aWRlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc0RhdGFMaXN0SG9zdCxcbiAgICB0eXBlIFR1aURhdGFMaXN0SG9zdCxcbiAgICBUdWlXaXRoT3B0aW9uQ29udGVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlMYWJlbH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9sYWJlbCc7XG5pbXBvcnQge1xuICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIFR1aURyb3Bkb3duRml4ZWQsXG4gICAgVHVpRHJvcGRvd25PcGVuLFxuICAgIHR1aURyb3Bkb3duT3BlbixcbiAgICBUdWlXaXRoRHJvcGRvd25PcGVuLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7VHVpV2l0aEljb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2ljb25zJztcbmltcG9ydCB7VHVpV2l0aEl0ZW1zSGFuZGxlcnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaXRlbXMtaGFuZGxlcnMnO1xuaW1wb3J0IHtUVUlfQVVYSUxJQVJZLCBUVUlfQ0xFQVJfV09SRCwgVFVJX0NPTU1PTl9JQ09OU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7dHlwZSBUdWlTaXplTCwgdHlwZSBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHt0eXBlIFBvbHltb3JwaGV1c0NvbnRlbnQsIFBvbHltb3JwaGV1c091dGxldH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge1JlcGxheVN1YmplY3QsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlUZXh0ZmllbGRCYXNlfSBmcm9tICcuL3RleHRmaWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUVUlfVEVYVEZJRUxEX09QVElPTlN9IGZyb20gJy4vdGV4dGZpZWxkLm9wdGlvbnMnO1xuaW1wb3J0IHtUVUlfVEVYVEZJRUxEX0FDQ0VTU09SLCB0eXBlIFR1aVRleHRmaWVsZEFjY2Vzc29yfSBmcm9tICcuL3RleHRmaWVsZC1hY2Nlc3Nvcic7XG5pbXBvcnQge1R1aVdpdGhUZXh0ZmllbGREcm9wZG93bn0gZnJvbSAnLi90ZXh0ZmllbGQtZHJvcGRvd24uZGlyZWN0aXZlJztcblxuLy8gVE9ETzogUmVtb3ZlIGJhc2UgY2xhc3MgaW4gdjVcbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFR1aVRleHRmaWVsZEJhc2VDb21wb25lbnQ8VD5cbiAgICBpbXBsZW1lbnRzIFR1aURhdGFMaXN0SG9zdDxUPiwgQWZ0ZXJDb250ZW50Q2hlY2tlZFxue1xuICAgIC8vIFRPRE86IHJlZmFjdG9yIHRvIHNpZ25hbCBpbnB1dHMgYWZ0ZXIgQW5ndWxhciB1cGRhdGVcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbGxlciA9IHNpZ25hbCgnJyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvSWQgPSB0dWlJbmplY3RJZCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9jdXNlZEluID0gdHVpRm9jdXNlZEluKHR1aUluamVjdEVsZW1lbnQoKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250ZW50UmVhZHkkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dFF1ZXJ5ID0gc2lnbmFsPEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQ+KFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2dob3N0JylcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZ2hvc3Q/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlMYWJlbCksIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGFiZWw/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oVFVJX0FVWElMSUFSWSwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXV4aWxpYXJ5UXVlcnk6IFF1ZXJ5TGlzdDxvYmplY3Q+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICAvLyBUT0RPOiBBZGRlZCBqdXN0IHRvIGF2b2lkIGJyZWFraW5nIGFueXRoaW5nIHVudGlsIHdlIHJlZmFjdG9yIHRvIHNpZ25hbCBxdWVyaWVzXG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IFR1aVRleHRmaWVsZEJhc2UpLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgIHByb3RlY3RlZCByZWFkb25seSBfaW5wdXQ/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wZW4gPSB0dWlEcm9wZG93bk9wZW4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZHJvcGRvd24gPSBpbmplY3QoVHVpRHJvcGRvd25EaXJlY3RpdmUpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93bk9wZW4gPSBpbmplY3QoVHVpRHJvcGRvd25PcGVuKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29ucyA9IGluamVjdChUVUlfQ09NTU9OX0lDT05TKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xlYXIgPSB0b1NpZ25hbChpbmplY3QoVFVJX0NMRUFSX1dPUkQpKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjb21wdXRlZEZpbGxlciA9IGNvbXB1dGVkKCh2YWx1ZSA9IHRoaXMudmFsdWUoKSkgPT4ge1xuICAgICAgICBjb25zdCBmaWxsZXIgPSB2YWx1ZSArIHRoaXMuZmlsbGVyKCkuc2xpY2UodmFsdWUubGVuZ3RoKTtcblxuICAgICAgICByZXR1cm4gZmlsbGVyLmxlbmd0aCA+IHZhbHVlLmxlbmd0aCA/IGZpbGxlciA6ICcnO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNob3dGaWxsZXIgPSBjb21wdXRlZDxib29sZWFuPihcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAgIHRoaXMuZm9jdXNlZCgpICYmXG4gICAgICAgICAgICAhIXRoaXMuY29tcHV0ZWRGaWxsZXIoKSAmJlxuICAgICAgICAgICAgKCEhdGhpcy52YWx1ZSgpIHx8ICF0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LnBsYWNlaG9sZGVyKSxcbiAgICApO1xuXG4gICAgQFZpZXdDaGlsZCgndmNyJywge3JlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZX0pXG4gICAgcHVibGljIHJlYWRvbmx5IHZjcj86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBAQ29udGVudENoaWxkKFRVSV9URVhURklFTERfQUNDRVNTT1IsIHtkZXNjZW5kYW50czogdHJ1ZX0pXG4gICAgcHVibGljIHJlYWRvbmx5IGFjY2Vzc29yPzogVHVpVGV4dGZpZWxkQWNjZXNzb3I8VD47XG5cbiAgICBAQ29udGVudENoaWxkKE5nQ29udHJvbClcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29udHJvbD86IE5nQ29udHJvbDtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpQ29udHJvbClcbiAgICBwdWJsaWMgcmVhZG9ubHkgY3ZhPzogVHVpQ29udHJvbDx1bmtub3duPjtcblxuICAgIC8vIFRPRE86IFJlcGxhY2Ugd2l0aCBzaWduYWwgcXVlcnkgd2hlbiBBbmd1bGFyIGlzIHVwZGF0ZWQgdjVcbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gVHVpVGV4dGZpZWxkQmFzZSksIHtcbiAgICAgICAgcmVhZDogRWxlbWVudFJlZixcbiAgICAgICAgc3RhdGljOiB0cnVlLFxuICAgIH0pXG4gICAgcHVibGljIHJlYWRvbmx5IGlucHV0PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxUPj47XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9jdXNlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMub3BlbigpIHx8IHRoaXMuZm9jdXNlZEluKCkpO1xuICAgIHB1YmxpYyByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9URVhURklFTERfT1BUSU9OUyk7XG4gICAgcHVibGljIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZSA9IHR1aVZhbHVlKHRoaXMuaW5wdXRRdWVyeSk7XG5cbiAgICAvLyBUT0RPOiBSZWZhY3RvciB0byBzaWduYWwgcXVlcmllcyB3aGVuIEFuZ3VsYXIgaXMgdXBkYXRlZFxuICAgIHB1YmxpYyByZWFkb25seSBhdXhpbGlhcmllcyA9IHRvU2lnbmFsPHJlYWRvbmx5IG9iamVjdFtdPihcbiAgICAgICAgdGhpcy5jb250ZW50UmVhZHkkLnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHR1aVF1ZXJ5TGlzdENoYW5nZXModGhpcy5hdXhpbGlhcnlRdWVyeSkpLFxuICAgICAgICAgICAgc3RhcnRXaXRoKFtdKSxcbiAgICAgICAgKSxcbiAgICAgICAge3JlcXVpcmVTeW5jOiB0cnVlfSxcbiAgICApO1xuXG4gICAgQElucHV0KCdmaWxsZXInKVxuICAgIHB1YmxpYyBzZXQgZmlsbGVyU2V0dGVyKGZpbGxlcjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZmlsbGVyLnNldChmaWxsZXIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuaWQgfHwgdGhpcy5hdXRvSWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzaXplKCk6IFR1aVNpemVMIHwgVHVpU2l6ZVMge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLnNpemUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRlbnRSZWFkeSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5pbnB1dFF1ZXJ5LnNldCh0aGlzLl9pbnB1dCk7XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZU9wdGlvbihvcHRpb246IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY2Nlc3Nvcj8uc2V0VmFsdWUob3B0aW9uKTtcbiAgICAgICAgdGhpcy5vcGVuLnNldChmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBoYXNMYWJlbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5sYWJlbD8ubmF0aXZlRWxlbWVudD8uY2hpbGROb2Rlcy5sZW5ndGgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblJlc2l6ZSh7Y29udGVudFJlY3R9OiBSZXNpemVPYnNlcnZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWwuc3R5bGUuc2V0UHJvcGVydHkoJy0tdC1zaWRlJywgdHVpUHgoY29udGVudFJlY3Qud2lkdGgpKTtcbiAgICB9XG5cbiAgICAvLyBDbGljayBvbiA6OmJlZm9yZSw6OmFmdGVyIHBzZXVkby1lbGVtZW50cyAoW2ljb25TdGFydF0gLyBbaWNvbkVuZF0pXG4gICAgcHJvdGVjdGVkIG9uSWNvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuZHJvcGRvd25PcGVuLnR1aURyb3Bkb3duRW5hYmxlZCB8fFxuICAgICAgICAgICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5tYXRjaGVzKCdpbnB1dDpyZWFkLW9ubHksdGV4dGFyZWE6cmVhZC1vbmx5JylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wZW4udXBkYXRlKChvcGVuKSA9PiAhb3Blbik7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuc2hvd1BpY2tlcj8uKCk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgLy8gRW1wdHkgY2F0Y2ggYmxvY2sgLSBzaWxlbnRseSBpZ25vcmUgc2hvd1BpY2tlciBlcnJvcnNcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNjcm9sbChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudCA9PT0gZWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5naG9zdD8ubmF0aXZlRWxlbWVudC5zY3JvbGxUbyh7XG4gICAgICAgICAgICAgICAgbGVmdDogdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS10ZXh0ZmllbGQ6bm90KFttdWx0aV0pJyxcbiAgICBpbXBvcnRzOiBbQXN5bmNQaXBlLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUJ1dHRvbiwgV2FSZXNpemVPYnNlcnZlcl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHRmaWVsZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZXM6IFsnQGltcG9ydCBcIkB0YWlnYS11aS9jb3JlL3N0eWxlcy9jb21wb25lbnRzL3RleHRmaWVsZC5sZXNzXCI7J10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQnV0dG9uT3B0aW9uc1Byb3ZpZGVyKHtzaXplOiAneHMnLCBhcHBlYXJhbmNlOiAnaWNvbid9KSxcbiAgICAgICAgdHVpQXNEYXRhTGlzdEhvc3QoVHVpVGV4dGZpZWxkQ29tcG9uZW50KSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICAgICBUdWlEcm9wZG93bkZpeGVkLFxuICAgICAgICBUdWlUcmFuc2l0aW9uZWQsXG4gICAgICAgIFR1aVdpdGhEcm9wZG93bk9wZW4sXG4gICAgICAgIFR1aVdpdGhJY29ucyxcbiAgICAgICAgVHVpV2l0aEl0ZW1zSGFuZGxlcnMsXG4gICAgICAgIFR1aVdpdGhPcHRpb25Db250ZW50LFxuICAgICAgICBUdWlXaXRoVGV4dGZpZWxkRHJvcGRvd24sXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kYXRhLXNpemVdJzogJ29wdGlvbnMuc2l6ZSgpJyxcbiAgICAgICAgJ1tjbGFzcy5fd2l0aC1sYWJlbF0nOiAnaGFzTGFiZWwnLFxuICAgICAgICAnW2NsYXNzLl93aXRoLXRlbXBsYXRlXSc6ICdjb250ZW50ICYmIGNvbnRyb2w/LnZhbHVlICE9IG51bGwnLFxuICAgICAgICAnW2NsYXNzLl9kaXNhYmxlZF0nOiAnaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQ/LmRpc2FibGVkJyxcbiAgICAgICAgJyhjbGljay5zZWxmLnByZXZlbnQpJzogJzAnLFxuICAgICAgICAnKHBvaW50ZXJkb3duLnNlbGYucHJldmVudCknOiAnb25JY29uQ2xpY2soKScsXG4gICAgICAgICcoc2Nyb2xsLmNhcHR1cmUuem9uZWxlc3MpJzogJ29uU2Nyb2xsKCRldmVudC50YXJnZXQpJyxcbiAgICAgICAgJyh0dWlBY3RpdmVab25lQ2hhbmdlKSc6ICchJGV2ZW50ICYmIGN2YT8ub25Ub3VjaGVkKCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVRleHRmaWVsZENvbXBvbmVudDxUPiBleHRlbmRzIFR1aVRleHRmaWVsZEJhc2VDb21wb25lbnQ8VD4ge31cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjb250cm9sPy5jb250cm9sPy52YWx1ZUNoYW5nZXMgfCBhc3luY1wiIC8+XG48bmctY29udGVudCBzZWxlY3Q9XCJpbnB1dFwiIC8+XG48bmctY29udGVudCBzZWxlY3Q9XCJzZWxlY3RcIiAvPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwidGV4dGFyZWFcIiAvPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwibGFiZWxcIiAvPlxuPHNwYW5cbiAgICBjbGFzcz1cInQtY29udGVudFwiXG4gICAgKHBvaW50ZXJkb3duKT1cImlucHV0Py5uYXRpdmVFbGVtZW50Py5mb2N1cygpXCJcbiAgICAod2FSZXNpemVPYnNlcnZlcik9XCIkZXZlbnRbMF0gJiYgb25SZXNpemUoJGV2ZW50WzBdKVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwib3B0aW9ucy5jbGVhbmVyKClcIlxuICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgIHNpemU9XCJ4c1wiXG4gICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInQtY2xlYXJcIlxuICAgICAgICBbaWNvblN0YXJ0XT1cImljb25zLmNsb3NlXCJcbiAgICAgICAgKGNsaWNrKT1cImFjY2Vzc29yPy5zZXRWYWx1ZShudWxsKVwiXG4gICAgICAgIChwb2ludGVyZG93bi56b25lbGVzcy5wcmV2ZW50KT1cImlucHV0Py5uYXRpdmVFbGVtZW50Py5mb2N1cygpXCJcbiAgICA+XG4gICAgICAgIHt7IGNsZWFyKCkgfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8bmctY29udGFpbmVyICN2Y3IgLz5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWktaWNvblwiIC8+XG48L3NwYW4+XG48c3BhblxuICAgICpuZ0lmPVwiY29udHJvbD8udmFsdWUgIT0gbnVsbFwiXG4gICAgY2xhc3M9XCJ0LXRlbXBsYXRlXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGNvbnRyb2w/LnZhbHVlfVwiPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9uZy1jb250YWluZXI+XG48L3NwYW4+XG48aW5wdXRcbiAgICAqbmdJZj1cInNob3dGaWxsZXIoKVwiXG4gICAgI2dob3N0XG4gICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICBkaXNhYmxlZFxuICAgIGNsYXNzPVwidC1maWxsZXJcIlxuICAgIFt2YWx1ZV09XCJjb21wdXRlZEZpbGxlcigpXCJcbi8+XG4iXX0=