@taiga-ui/legacy 4.52.0-canary.e10b718 → 4.52.0-canary.e53e79e

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 (331) hide show
  1. package/README.md +1 -1
  2. package/components/dialog/dialog.component.d.ts +19 -0
  3. package/components/dialog/dialog.directive.d.ts +8 -0
  4. package/components/dialog/dialog.factory.d.ts +16 -0
  5. package/components/dialog/dialog.interfaces.d.ts +30 -0
  6. package/components/dialog/dialog.service.d.ts +10 -0
  7. package/components/dialog/dialog.tokens.d.ts +6 -0
  8. package/components/dialog/index.d.ts +6 -0
  9. package/components/index.d.ts +3 -26
  10. package/components/mobile-dialog/index.d.ts +3 -0
  11. package/components/mobile-dialog/mobile-dialog.component.d.ts +10 -0
  12. package/components/mobile-dialog/mobile-dialog.options.d.ts +10 -0
  13. package/components/mobile-dialog/mobile-dialog.service.d.ts +14 -0
  14. package/components/pdf-viewer/index.d.ts +4 -0
  15. package/components/pdf-viewer/pdf-viewer.component.d.ts +12 -0
  16. package/components/pdf-viewer/pdf-viewer.directive.d.ts +8 -0
  17. package/components/pdf-viewer/pdf-viewer.options.d.ts +11 -0
  18. package/components/pdf-viewer/pdf-viewer.service.d.ts +17 -0
  19. package/fesm2022/taiga-ui-legacy-components-dialog.mjs +136 -0
  20. package/fesm2022/taiga-ui-legacy-components-dialog.mjs.map +1 -0
  21. package/fesm2022/taiga-ui-legacy-components-mobile-dialog.mjs +62 -0
  22. package/fesm2022/taiga-ui-legacy-components-mobile-dialog.mjs.map +1 -0
  23. package/fesm2022/taiga-ui-legacy-components-pdf-viewer.mjs +88 -0
  24. package/fesm2022/taiga-ui-legacy-components-pdf-viewer.mjs.map +1 -0
  25. package/fesm2022/taiga-ui-legacy-components.mjs +3 -26
  26. package/fesm2022/taiga-ui-legacy-components.mjs.map +1 -1
  27. package/fesm2022/taiga-ui-legacy.mjs +0 -6
  28. package/fesm2022/taiga-ui-legacy.mjs.map +1 -1
  29. package/index.d.ts +0 -6
  30. package/package.json +22 -165
  31. package/classes/abstract-native-select.d.ts +0 -22
  32. package/classes/abstract-textfield-host.d.ts +0 -19
  33. package/classes/control.d.ts +0 -60
  34. package/classes/controller.d.ts +0 -9
  35. package/classes/index.d.ts +0 -9
  36. package/classes/interactive.d.ts +0 -34
  37. package/classes/multiple-control.d.ts +0 -11
  38. package/classes/named-day.d.ts +0 -11
  39. package/classes/nullable-control.d.ts +0 -10
  40. package/classes/stringifiable-item.d.ts +0 -11
  41. package/components/arrow/arrow.component.d.ts +0 -17
  42. package/components/arrow/arrow.options.d.ts +0 -19
  43. package/components/arrow/arrow.providers.d.ts +0 -23
  44. package/components/arrow/index.d.ts +0 -3
  45. package/components/color-selector/color-edit/color-edit.component.d.ts +0 -18
  46. package/components/color-selector/color-edit/color-edit.module.d.ts +0 -21
  47. package/components/color-selector/color-picker/color-picker.component.d.ts +0 -22
  48. package/components/color-selector/color-picker/color-picker.module.d.ts +0 -14
  49. package/components/color-selector/color-selector.component.d.ts +0 -47
  50. package/components/color-selector/color-selector.module.d.ts +0 -23
  51. package/components/color-selector/color-selector.options.d.ts +0 -25
  52. package/components/color-selector/flat-picker/flat-picker.component.d.ts +0 -12
  53. package/components/color-selector/flat-picker/flat-picker.module.d.ts +0 -12
  54. package/components/color-selector/index.d.ts +0 -16
  55. package/components/color-selector/linear-multi-picker/linear-multi-picker.component.d.ts +0 -17
  56. package/components/color-selector/linear-multi-picker/linear-multi-picker.module.d.ts +0 -12
  57. package/components/color-selector/linear-picker/linear-picker.component.d.ts +0 -10
  58. package/components/color-selector/linear-picker/linear-picker.module.d.ts +0 -12
  59. package/components/color-selector/palette/palette.component.d.ts +0 -10
  60. package/components/color-selector/palette/palette.module.d.ts +0 -13
  61. package/components/color-selector/services/picker.service.d.ts +0 -15
  62. package/components/combo-box/combo-box-strict.directive.d.ts +0 -12
  63. package/components/combo-box/combo-box.component.d.ts +0 -52
  64. package/components/combo-box/combo-box.directive.d.ts +0 -13
  65. package/components/combo-box/combo-box.module.d.ts +0 -20
  66. package/components/combo-box/index.d.ts +0 -4
  67. package/components/input/index.d.ts +0 -3
  68. package/components/input/input.component.d.ts +0 -32
  69. package/components/input/input.directive.d.ts +0 -12
  70. package/components/input/input.module.d.ts +0 -16
  71. package/components/input-color/index.d.ts +0 -2
  72. package/components/input-color/input-color.component.d.ts +0 -30
  73. package/components/input-color/input-color.module.d.ts +0 -17
  74. package/components/input-date/index.d.ts +0 -3
  75. package/components/input-date/input-date.component.d.ts +0 -62
  76. package/components/input-date/input-date.directive.d.ts +0 -19
  77. package/components/input-date/input-date.module.d.ts +0 -24
  78. package/components/input-date/native-date/native-date.component.d.ts +0 -15
  79. package/components/input-date-range/index.d.ts +0 -3
  80. package/components/input-date-range/input-date-range.component.d.ts +0 -67
  81. package/components/input-date-range/input-date-range.directive.d.ts +0 -16
  82. package/components/input-date-range/input-date-range.module.d.ts +0 -22
  83. package/components/input-date-time/index.d.ts +0 -3
  84. package/components/input-date-time/input-date-time.component.d.ts +0 -87
  85. package/components/input-date-time/input-date-time.directive.d.ts +0 -17
  86. package/components/input-date-time/input-date-time.module.d.ts +0 -23
  87. package/components/input-date-time/native-date-time/native-date-time.directive.d.ts +0 -13
  88. package/components/input-month-range/index.d.ts +0 -3
  89. package/components/input-month-range/input-month-range.component.d.ts +0 -38
  90. package/components/input-month-range/input-month-range.directive.d.ts +0 -23
  91. package/components/input-month-range/input-month-range.module.d.ts +0 -18
  92. package/components/input-number/index.d.ts +0 -4
  93. package/components/input-number/input-number.component.d.ts +0 -63
  94. package/components/input-number/input-number.directive.d.ts +0 -16
  95. package/components/input-number/input-number.module.d.ts +0 -18
  96. package/components/input-number/input-number.options.d.ts +0 -29
  97. package/components/input-phone/index.d.ts +0 -4
  98. package/components/input-phone/input-phone.component.d.ts +0 -52
  99. package/components/input-phone/input-phone.directive.d.ts +0 -16
  100. package/components/input-phone/input-phone.module.d.ts +0 -15
  101. package/components/input-phone/input-phone.options.d.ts +0 -22
  102. package/components/input-phone/utils/complete-phone-insertion-preprocessor.d.ts +0 -9
  103. package/components/input-phone/utils/create-phone-mask-expression.d.ts +0 -7
  104. package/components/input-phone/utils/index.d.ts +0 -2
  105. package/components/input-phone-international/index.d.ts +0 -3
  106. package/components/input-phone-international/input-phone-international.component.d.ts +0 -43
  107. package/components/input-phone-international/input-phone-international.options.d.ts +0 -25
  108. package/components/input-phone-international/utils/extract-value-from-event.d.ts +0 -4
  109. package/components/input-range/index.d.ts +0 -2
  110. package/components/input-range/input-range.component.d.ts +0 -56
  111. package/components/input-range/input-range.module.d.ts +0 -19
  112. package/components/input-slider/index.d.ts +0 -2
  113. package/components/input-slider/input-slider.component.d.ts +0 -42
  114. package/components/input-slider/input-slider.module.d.ts +0 -18
  115. package/components/input-tag/index.d.ts +0 -3
  116. package/components/input-tag/input-tag.component.d.ts +0 -103
  117. package/components/input-tag/input-tag.module.d.ts +0 -22
  118. package/components/input-tag/input-tag.options.d.ts +0 -27
  119. package/components/input-time/index.d.ts +0 -4
  120. package/components/input-time/input-time.component.d.ts +0 -62
  121. package/components/input-time/input-time.directive.d.ts +0 -17
  122. package/components/input-time/input-time.module.d.ts +0 -23
  123. package/components/input-time/input-time.options.d.ts +0 -42
  124. package/components/input-time/native-time/native-time.component.d.ts +0 -12
  125. package/components/input-year/index.d.ts +0 -3
  126. package/components/input-year/input-year.component.d.ts +0 -36
  127. package/components/input-year/input-year.directive.d.ts +0 -14
  128. package/components/input-year/input-year.module.d.ts +0 -18
  129. package/components/multi-select/hide-selected.pipe.d.ts +0 -11
  130. package/components/multi-select/index.d.ts +0 -10
  131. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +0 -23
  132. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +0 -8
  133. package/components/multi-select/multi-select.component.d.ts +0 -71
  134. package/components/multi-select/multi-select.directive.d.ts +0 -14
  135. package/components/multi-select/multi-select.module.d.ts +0 -31
  136. package/components/multi-select/multi-select.options.d.ts +0 -14
  137. package/components/multi-select/native-multi-select/native-multi-select-group.component.d.ts +0 -9
  138. package/components/multi-select/native-multi-select/native-multi-select.component.d.ts +0 -8
  139. package/components/multi-select/native-multi-select/native-multi-select.d.ts +0 -11
  140. package/components/multi-select-option/index.d.ts +0 -2
  141. package/components/multi-select-option/multi-select-option.component.d.ts +0 -9
  142. package/components/multi-select-option/multi-select-option.module.d.ts +0 -9
  143. package/components/primitive-textfield/index.d.ts +0 -7
  144. package/components/primitive-textfield/primitive-textfield-options.d.ts +0 -21
  145. package/components/primitive-textfield/primitive-textfield-types.d.ts +0 -11
  146. package/components/primitive-textfield/primitive-textfield.component.d.ts +0 -73
  147. package/components/primitive-textfield/primitive-textfield.directive.d.ts +0 -14
  148. package/components/primitive-textfield/primitive-textfield.module.d.ts +0 -21
  149. package/components/primitive-textfield/textfield/textfield.component.d.ts +0 -13
  150. package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +0 -22
  151. package/components/select/index.d.ts +0 -6
  152. package/components/select/native-select/native-select-group.component.d.ts +0 -17
  153. package/components/select/native-select/native-select.component.d.ts +0 -16
  154. package/components/select/select.component.d.ts +0 -45
  155. package/components/select/select.directive.d.ts +0 -16
  156. package/components/select/select.module.d.ts +0 -24
  157. package/components/select/select.options.d.ts +0 -25
  158. package/components/select-option/index.d.ts +0 -2
  159. package/components/select-option/select-option.component.d.ts +0 -27
  160. package/components/select-option/select-option.module.d.ts +0 -10
  161. package/components/svg/content-processor.d.ts +0 -19
  162. package/components/svg/deprecated-icons.d.ts +0 -5
  163. package/components/svg/index.d.ts +0 -5
  164. package/components/svg/svg-options.d.ts +0 -50
  165. package/components/svg/svg.component.d.ts +0 -50
  166. package/components/svg/svg.service.d.ts +0 -21
  167. package/components/tag/index.d.ts +0 -3
  168. package/components/tag/tag.component.d.ts +0 -44
  169. package/components/tag/tag.module.d.ts +0 -16
  170. package/components/tag/tag.options.d.ts +0 -27
  171. package/components/textarea/index.d.ts +0 -3
  172. package/components/textarea/textarea.component.d.ts +0 -54
  173. package/components/textarea/textarea.directive.d.ts +0 -12
  174. package/components/textarea/textarea.module.d.ts +0 -21
  175. package/components/tooltip/index.d.ts +0 -2
  176. package/components/tooltip/tooltip.component.d.ts +0 -12
  177. package/components/tooltip/tooltip.module.d.ts +0 -13
  178. package/directives/index.d.ts +0 -5
  179. package/directives/legacy-dropdown-open-monitor/index.d.ts +0 -1
  180. package/directives/legacy-dropdown-open-monitor/legacy-dropdown-open-monitor.d.ts +0 -11
  181. package/directives/textfield-controller/index.d.ts +0 -14
  182. package/directives/textfield-controller/textfield-appearance.directive.d.ts +0 -9
  183. package/directives/textfield-controller/textfield-cleaner.directive.d.ts +0 -9
  184. package/directives/textfield-controller/textfield-controller.module.d.ts +0 -17
  185. package/directives/textfield-controller/textfield-controller.provider.d.ts +0 -4
  186. package/directives/textfield-controller/textfield-custom-content.directive.d.ts +0 -10
  187. package/directives/textfield-controller/textfield-filler.directive.d.ts +0 -9
  188. package/directives/textfield-controller/textfield-icon-left.directive.d.ts +0 -12
  189. package/directives/textfield-controller/textfield-icon.directive.d.ts +0 -12
  190. package/directives/textfield-controller/textfield-label-outside.directive.d.ts +0 -9
  191. package/directives/textfield-controller/textfield-postfix.directive.d.ts +0 -9
  192. package/directives/textfield-controller/textfield-prefix.directive.d.ts +0 -9
  193. package/directives/textfield-controller/textfield-size.directive.d.ts +0 -10
  194. package/directives/textfield-controller/textfield.controller.d.ts +0 -41
  195. package/directives/textfield-controller/textfield.options.d.ts +0 -19
  196. package/directives/unfinished-validator/index.d.ts +0 -2
  197. package/directives/unfinished-validator/unfinished-validator.directive.d.ts +0 -10
  198. package/directives/unfinished-validator/unfinished.validator.d.ts +0 -4
  199. package/directives/value-accessor/index.d.ts +0 -3
  200. package/directives/value-accessor/value-accessor.directive.d.ts +0 -5
  201. package/directives/value-accessor/value-accessor.module.d.ts +0 -7
  202. package/directives/value-accessor/value-accessor.provider.d.ts +0 -2
  203. package/directives/wrapper/README.md +0 -19
  204. package/directives/wrapper/index.d.ts +0 -2
  205. package/directives/wrapper/wrapper.directive.d.ts +0 -22
  206. package/directives/wrapper/wrapper.module.d.ts +0 -10
  207. package/fesm2022/taiga-ui-legacy-classes.mjs +0 -415
  208. package/fesm2022/taiga-ui-legacy-classes.mjs.map +0 -1
  209. package/fesm2022/taiga-ui-legacy-components-arrow.mjs +0 -85
  210. package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +0 -1
  211. package/fesm2022/taiga-ui-legacy-components-color-selector.mjs +0 -726
  212. package/fesm2022/taiga-ui-legacy-components-color-selector.mjs.map +0 -1
  213. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +0 -300
  214. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +0 -1
  215. package/fesm2022/taiga-ui-legacy-components-input-color.mjs +0 -127
  216. package/fesm2022/taiga-ui-legacy-components-input-color.mjs.map +0 -1
  217. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +0 -356
  218. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +0 -1
  219. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +0 -465
  220. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +0 -1
  221. package/fesm2022/taiga-ui-legacy-components-input-date.mjs +0 -372
  222. package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +0 -1
  223. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +0 -221
  224. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +0 -1
  225. package/fesm2022/taiga-ui-legacy-components-input-number.mjs +0 -390
  226. package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +0 -1
  227. package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs +0 -215
  228. package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs.map +0 -1
  229. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +0 -373
  230. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +0 -1
  231. package/fesm2022/taiga-ui-legacy-components-input-range.mjs +0 -261
  232. package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +0 -1
  233. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +0 -199
  234. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +0 -1
  235. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +0 -524
  236. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +0 -1
  237. package/fesm2022/taiga-ui-legacy-components-input-time.mjs +0 -430
  238. package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +0 -1
  239. package/fesm2022/taiga-ui-legacy-components-input-year.mjs +0 -188
  240. package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +0 -1
  241. package/fesm2022/taiga-ui-legacy-components-input.mjs +0 -156
  242. package/fesm2022/taiga-ui-legacy-components-input.mjs.map +0 -1
  243. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs +0 -47
  244. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs.map +0 -1
  245. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +0 -690
  246. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +0 -1
  247. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +0 -454
  248. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +0 -1
  249. package/fesm2022/taiga-ui-legacy-components-select-option.mjs +0 -88
  250. package/fesm2022/taiga-ui-legacy-components-select-option.mjs.map +0 -1
  251. package/fesm2022/taiga-ui-legacy-components-select.mjs +0 -354
  252. package/fesm2022/taiga-ui-legacy-components-select.mjs.map +0 -1
  253. package/fesm2022/taiga-ui-legacy-components-svg.mjs +0 -387
  254. package/fesm2022/taiga-ui-legacy-components-svg.mjs.map +0 -1
  255. package/fesm2022/taiga-ui-legacy-components-tag.mjs +0 -225
  256. package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +0 -1
  257. package/fesm2022/taiga-ui-legacy-components-textarea.mjs +0 -262
  258. package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +0 -1
  259. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +0 -53
  260. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +0 -1
  261. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs +0 -50
  262. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs.map +0 -1
  263. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs +0 -401
  264. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs.map +0 -1
  265. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs +0 -50
  266. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs.map +0 -1
  267. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs +0 -44
  268. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs.map +0 -1
  269. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +0 -99
  270. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +0 -1
  271. package/fesm2022/taiga-ui-legacy-directives.mjs +0 -10
  272. package/fesm2022/taiga-ui-legacy-directives.mjs.map +0 -1
  273. package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs +0 -59
  274. package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs.map +0 -1
  275. package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs +0 -50
  276. package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs.map +0 -1
  277. package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs +0 -80
  278. package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs.map +0 -1
  279. package/fesm2022/taiga-ui-legacy-pipes.mjs +0 -8
  280. package/fesm2022/taiga-ui-legacy-pipes.mjs.map +0 -1
  281. package/fesm2022/taiga-ui-legacy-services.mjs +0 -42
  282. package/fesm2022/taiga-ui-legacy-services.mjs.map +0 -1
  283. package/fesm2022/taiga-ui-legacy-tokens.mjs +0 -384
  284. package/fesm2022/taiga-ui-legacy-tokens.mjs.map +0 -1
  285. package/fesm2022/taiga-ui-legacy-utils.mjs +0 -268
  286. package/fesm2022/taiga-ui-legacy-utils.mjs.map +0 -1
  287. package/pipes/format-phone/format-phone.pipe.d.ts +0 -37
  288. package/pipes/format-phone/index.d.ts +0 -1
  289. package/pipes/index.d.ts +0 -3
  290. package/pipes/iso-to-country-code/index.d.ts +0 -1
  291. package/pipes/iso-to-country-code/iso-to-country-code.pipe.d.ts +0 -30
  292. package/pipes/to-country-code/index.d.ts +0 -1
  293. package/pipes/to-country-code/to-country-code.pipe.d.ts +0 -38
  294. package/services/index.d.ts +0 -1
  295. package/services/static-request.service.d.ts +0 -11
  296. package/styles/mixins/mixins.less +0 -239
  297. package/styles/mixins/mixins.scss +0 -224
  298. package/styles/mixins/textfield.less +0 -324
  299. package/styles/mixins/textfield.scss +0 -308
  300. package/styles/taiga-ui-local.less +0 -3
  301. package/styles/taiga-ui-local.scss +0 -3
  302. package/tokens/countries-masks.d.ts +0 -9
  303. package/tokens/focusable-item-accessor.d.ts +0 -25
  304. package/tokens/fonts-ready.d.ts +0 -6
  305. package/tokens/icons.d.ts +0 -6
  306. package/tokens/index.d.ts +0 -14
  307. package/tokens/is-apple.d.ts +0 -6
  308. package/tokens/is-chromium.d.ts +0 -6
  309. package/tokens/is-firefox.d.ts +0 -6
  310. package/tokens/is-stackblitz.d.ts +0 -5
  311. package/tokens/month-formatter.d.ts +0 -10
  312. package/tokens/sanitizer.d.ts +0 -6
  313. package/tokens/textfield-appearance.d.ts +0 -7
  314. package/tokens/textfield-host.d.ts +0 -23
  315. package/tokens/touch-supported.d.ts +0 -5
  316. package/tokens/value-accessor.d.ts +0 -7
  317. package/utils/capitalize-first-letter.d.ts +0 -4
  318. package/utils/date-mode-maskito-adapter.d.ts +0 -6
  319. package/utils/format-phone.d.ts +0 -30
  320. package/utils/get-border.d.ts +0 -5
  321. package/utils/get-max-allowed-phone-length.d.ts +0 -24
  322. package/utils/get-safe-area-size.d.ts +0 -7
  323. package/utils/icons-path-factory.d.ts +0 -13
  324. package/utils/index.d.ts +0 -14
  325. package/utils/is-apple.d.ts +0 -5
  326. package/utils/is-presumed-html-string.d.ts +0 -4
  327. package/utils/iso-to-country-code.d.ts +0 -13
  328. package/utils/not-kz-region.d.ts +0 -20
  329. package/utils/process-icon.d.ts +0 -4
  330. package/utils/specific-dropdown-controllers.d.ts +0 -4
  331. package/utils/status.d.ts +0 -4
@@ -1,690 +0,0 @@
1
- import { __decorate } from 'tslib';
2
- import * as i0 from '@angular/core';
3
- import { InjectionToken, Directive, inject, EventEmitter, TemplateRef, Output, Input, ContentChild, ViewChild, ChangeDetectionStrategy, Component, Pipe, ContentChildren, NgModule } from '@angular/core';
4
- import { tuiProvideOptions, tuiIsString, tuiArrayToggle, tuiPure, tuiIsPresent, tuiGetOriginalArrayFromQueryList, tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
5
- import { tuiIsFlat } from '@taiga-ui/kit/utils';
6
- import { TUI_TRUE_HANDLER, EMPTY_ARRAY, EMPTY_QUERY, TUI_DEFAULT_IDENTITY_MATCHER, EMPTY_FUNCTION } from '@taiga-ui/cdk/constants';
7
- import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
8
- import { tuiGetClipboardDataText } from '@taiga-ui/cdk/utils/dom';
9
- import { tuiIsNativeFocused } from '@taiga-ui/cdk/utils/focus';
10
- import * as i2$1 from '@taiga-ui/core/components/data-list';
11
- import { TUI_DATA_LIST_ACCESSOR, TuiDataListDirective, tuiAsDataListHost, TUI_DATA_LIST_HOST, TuiOption, tuiAsOptionContent, tuiAsDataList, TuiDataList } from '@taiga-ui/core/components/data-list';
12
- import * as i1$1 from '@taiga-ui/core/directives/dropdown';
13
- import { TuiDropdownOpen, TuiDropdownFixed, TuiDropdown } from '@taiga-ui/core/directives/dropdown';
14
- import { TUI_ITEMS_HANDLERS, TUI_MULTI_SELECT_TEXTS } from '@taiga-ui/kit/tokens';
15
- import { AbstractTuiNativeSelect, AbstractTuiMultipleControl, TuiStringifiableItem, tuiAsControl, AbstractTuiTextfieldHost, AbstractTuiControl } from '@taiga-ui/legacy/classes';
16
- import { TUI_ARROW_MODE, TuiArrowComponent } from '@taiga-ui/legacy/components/arrow';
17
- import * as i6 from '@taiga-ui/legacy/components/input-tag';
18
- import { TUI_INPUT_TAG_OPTIONS, TuiInputTagComponent, TuiInputTagModule } from '@taiga-ui/legacy/components/input-tag';
19
- import * as i5$1 from '@taiga-ui/legacy/directives';
20
- import { TUI_TEXTFIELD_WATCHED_CONTROLLER, TEXTFIELD_CONTROLLER_PROVIDER, TuiWrapperModule, TuiTextfieldControllerModule, TuiLegacyDropdownOpenMonitorDirective } from '@taiga-ui/legacy/directives';
21
- import { tuiAsFocusableItemAccessor, tuiAsTextfieldHost } from '@taiga-ui/legacy/tokens';
22
- import * as i5 from '@angular/common';
23
- import { CommonModule } from '@angular/common';
24
- import * as i1 from '@angular/forms';
25
- import { NgControl, NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
26
- import * as i4 from '@taiga-ui/polymorpheus';
27
- import { PolymorpheusComponent, PolymorpheusOutlet, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
28
- import * as i6$1 from '@taiga-ui/cdk/pipes/mapper';
29
- import { TuiMapperPipe } from '@taiga-ui/cdk/pipes/mapper';
30
- import * as i1$2 from '@taiga-ui/cdk/directives/let';
31
- import { TuiLet } from '@taiga-ui/cdk/directives/let';
32
- import * as i2 from '@taiga-ui/core/components/link';
33
- import { TuiLink } from '@taiga-ui/core/components/link';
34
- import * as i3 from '@taiga-ui/kit/components/data-list-wrapper';
35
- import { TuiDataListWrapper } from '@taiga-ui/kit/components/data-list-wrapper';
36
- import * as i7 from '@taiga-ui/kit/pipes/stringify-content';
37
- import { TuiStringifyContentPipe } from '@taiga-ui/kit/pipes/stringify-content';
38
- import { TuiMultiSelectOptionComponent, TuiMultiSelectOptionModule } from '@taiga-ui/legacy/components/multi-select-option';
39
- import { tuiQueryListChanges, tuiControlValue } from '@taiga-ui/cdk/observables';
40
- import { map, combineLatest } from 'rxjs';
41
-
42
- const TUI_MULTI_SELECT_DEFAULT_OPTIONS = {
43
- rows: Infinity,
44
- valueContent: '',
45
- };
46
- /**
47
- * @deprecated: drop in v5.0
48
- * Default parameters for MultiSelect component
49
- */
50
- const TUI_MULTI_SELECT_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_MULTI_SELECT_OPTIONS' : '', {
51
- factory: () => TUI_MULTI_SELECT_DEFAULT_OPTIONS,
52
- });
53
- function tuiMultiSelectOptionsProvider(options) {
54
- return tuiProvideOptions(TUI_MULTI_SELECT_OPTIONS, options, TUI_MULTI_SELECT_DEFAULT_OPTIONS);
55
- }
56
-
57
- class AbstractTuiNativeMultiSelect extends AbstractTuiNativeSelect {
58
- constructor() {
59
- super(...arguments);
60
- this.selectedMapper = (option, value) => value.includes(option);
61
- }
62
- get stringify() {
63
- return this.host.stringify;
64
- }
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: AbstractTuiNativeMultiSelect, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
66
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: AbstractTuiNativeMultiSelect, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
67
- }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: AbstractTuiNativeMultiSelect, decorators: [{
69
- type: Directive
70
- }] });
71
-
72
- class TuiMultiSelectComponent extends AbstractTuiMultipleControl {
73
- constructor() {
74
- super(...arguments);
75
- this.arrowMode = inject(TUI_ARROW_MODE);
76
- this.itemsHandlers = inject(TUI_ITEMS_HANDLERS);
77
- this.options = inject(TUI_MULTI_SELECT_OPTIONS);
78
- this.inputTagOptions = inject(TUI_INPUT_TAG_OPTIONS);
79
- this.open = false;
80
- this.controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);
81
- this.isMobile = inject(TUI_IS_MOBILE);
82
- this.stringify = this.itemsHandlers.stringify;
83
- this.identityMatcher = this.itemsHandlers.identityMatcher;
84
- this.search = '';
85
- this.placeholder = '';
86
- this.editable = true;
87
- this.disabledItemHandler = this.itemsHandlers.disabledItemHandler;
88
- this.valueContent = this.options.valueContent;
89
- this.tagValidator = TUI_TRUE_HANDLER;
90
- this.rows = this.options.rows;
91
- this.autoColor = false;
92
- this.searchChange = new EventEmitter();
93
- this.valueMapper = (value, stringify, group) => group
94
- ? EMPTY_ARRAY
95
- : value.map((item) => new TuiStringifiableItem(item, stringify));
96
- this.disabledItemHandlerWrapper = (handler) => (stringifiable) => tuiIsString(stringifiable) || handler(stringifiable.item);
97
- }
98
- get size() {
99
- return this.controller.size;
100
- }
101
- get nativeFocusableElement() {
102
- return this.input?.nativeFocusableElement ?? null;
103
- }
104
- get focused() {
105
- return !!this.input?.focused || !!this.dropdown?.tuiDropdownOpen;
106
- }
107
- onValueChange(value) {
108
- this.value = value;
109
- }
110
- onSearch(search) {
111
- // Clearing sets the empty value, the dropdown should not be opened on clear.
112
- if (search !== '') {
113
- this.open = true;
114
- }
115
- this.updateSearch(search);
116
- }
117
- setDisabledState() {
118
- super.setDisabledState();
119
- this.open = false;
120
- }
121
- handleOption(option) {
122
- const { value, identityMatcher } = this;
123
- const index = value.findIndex((item) => identityMatcher(item, option));
124
- this.value =
125
- index === -1 ? [...value, option] : value.filter((_, i) => i !== index);
126
- this.updateSearch(null);
127
- }
128
- get arrow() {
129
- return this.interactive ? this.arrowMode.interactive : this.arrowMode.disabled;
130
- }
131
- get nativeDropdownMode() {
132
- return !!this.nativeSelect && this.isMobile && !this.editable;
133
- }
134
- get computedValue() {
135
- return this.computedGroup ? EMPTY_ARRAY : this.value;
136
- }
137
- // @bad TODO: think of a better way
138
- get searchOrSpace() {
139
- return this.computedGroup ? ' ' : this.searchString;
140
- }
141
- get searchString() {
142
- return this.search === null ? '' : this.search;
143
- }
144
- get computedGroup() {
145
- return (!!this.valueContent &&
146
- this.value.length > 0 &&
147
- (!this.focused || !this.editable));
148
- }
149
- getStringifier(stringify) {
150
- return ({ $implicit }) => stringify($implicit);
151
- }
152
- onSpace(event) {
153
- if (!this.editable) {
154
- event.preventDefault();
155
- }
156
- if (!this.readOnly) {
157
- this.open = true;
158
- }
159
- }
160
- onEnter(event) {
161
- const { value } = this;
162
- const options = this.accessor ? this.accessor.getOptions() : [];
163
- if (options.length !== 1) {
164
- return;
165
- }
166
- event.preventDefault();
167
- this.value = options[0] ? tuiArrayToggle(value, options[0]) : value;
168
- this.updateSearch(null);
169
- }
170
- onKeyDown(event) {
171
- if (event.key === this.inputTagOptions.separator) {
172
- this.onEnter(event);
173
- }
174
- }
175
- onPaste(event) {
176
- const pasted = tuiGetClipboardDataText(event);
177
- const tags = pasted
178
- .split(this.inputTagOptions.separator)
179
- .map((tag) => tag.trim());
180
- const options = this.accessor?.getOptions() ?? [];
181
- const separator = tuiIsString(this.inputTagOptions.separator)
182
- ? this.inputTagOptions.separator
183
- : ',';
184
- const matches = options?.filter((option) => tags.includes(this.stringify(option))) ?? [];
185
- const matchingStrings = matches.map((v) => String(v));
186
- const invalid = tags.filter((value) => !matchingStrings.includes(value));
187
- this.value = this.filterValue([...this.value, ...matches]);
188
- this.updateSearch(invalid.length ? invalid.join(separator) : null);
189
- }
190
- onClick({ nativeFocusableElement }) {
191
- if (this.interactive &&
192
- nativeFocusableElement &&
193
- tuiIsNativeFocused(nativeFocusableElement)) {
194
- this.open = !this.open;
195
- }
196
- }
197
- onInput(value) {
198
- this.value = value.map(({ item }) => item);
199
- }
200
- onActiveZone(active) {
201
- this.updateFocused(active);
202
- }
203
- filterValue(value) {
204
- const seen = new Set();
205
- return value
206
- .reverse()
207
- .filter((item) => item && !seen.has(item) && seen.add(item))
208
- .reverse();
209
- }
210
- updateSearch(search) {
211
- if (this.search === search) {
212
- return;
213
- }
214
- this.search = search;
215
- this.searchChange.emit(search);
216
- }
217
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
218
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiMultiSelectComponent, isStandalone: false, selector: "tui-multi-select", inputs: { stringify: "stringify", identityMatcher: "identityMatcher", search: "search", placeholder: "placeholder", editable: "editable", disabledItemHandler: "disabledItemHandler", valueContent: "valueContent", tagValidator: "tagValidator", rows: "rows", autoColor: "autoColor" }, outputs: { searchChange: "searchChange" }, host: { properties: { "attr.data-size": "size", "class._editable": "editable", "class._expandable": "rows > 1" } }, providers: [
219
- tuiAsFocusableItemAccessor(TuiMultiSelectComponent),
220
- tuiAsControl(TuiMultiSelectComponent),
221
- tuiAsDataListHost(TuiMultiSelectComponent),
222
- TEXTFIELD_CONTROLLER_PROVIDER,
223
- ], queries: [{ propertyName: "accessor", first: true, predicate: TUI_DATA_LIST_ACCESSOR, descendants: true }, { propertyName: "nativeSelect", first: true, predicate: AbstractTuiNativeMultiSelect, descendants: true, static: true }, { propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: TuiDropdownOpen, descendants: true }, { propertyName: "input", first: true, predicate: TuiInputTagComponent, descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1$1.TuiDropdownFixed }], ngImport: i0, template: "<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"datalist || ''\"\n [tuiDropdownEnabled]=\"interactive && !nativeDropdownMode\"\n [(tuiDropdownOpen)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-input-tag\n #inputTag\n automation-id=\"tui-multi-select__input\"\n class=\"t-input\"\n [autoColor]=\"autoColor\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"false\"\n [inputHidden]=\"!editable\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"computedValue | tuiMapper: valueMapper : stringify\"\n [ngModelOptions]=\"{standalone: true}\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoOpen]=\"open\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [search]=\"searchOrSpace\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldIcon]=\"arrow ? icon : ''\"\n (click.prevent)=\"onClick(inputTag)\"\n (keydown.enter)=\"onEnter($event)\"\n (keydown.space)=\"onSpace($event)\"\n (keydown)=\"onKeyDown($event)\"\n (ngModelChange)=\"onInput($event)\"\n (paste.capture.stop.prevent)=\"onPaste($event)\"\n (searchChange)=\"onSearch($event)\"\n >\n <ng-content />\n <ng-template #select>\n @if (isMobile) {\n <ng-content select=\"select\" />\n }\n </ng-template>\n\n <ng-container\n *ngTemplateOutlet=\"select\"\n ngProjectAs=\"select\"\n />\n\n @if (computedGroup) {\n <div\n ngProjectAs=\"tuiContent\"\n class=\"t-content\"\n [class.t-content_fullsize]=\"inputTag.labelOutside\"\n >\n <span\n *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\"\n class=\"t-primitive\"\n >\n {{ text }}\n </span>\n </div>\n }\n </tui-input-tag>\n\n <ng-template #icon>\n <div\n appearance=\"icon\"\n automation-id=\"tui-multi-select__arrow\"\n tuiWrapper\n class=\"t-arrow\"\n [class.t-arrow_native-dropdown]=\"nativeDropdownMode\"\n (mousedown.prevent.zoneless)=\"(0)\"\n >\n <ng-container *polymorpheusOutlet=\"arrow as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n</div>\n", styles: [":host{position:relative;display:block;border-radius:var(--tui-radius-m)}:host._disabled,:host :host-context(*:disabled){pointer-events:none}.t-hosted{display:block;border-radius:inherit}.t-input{border-radius:inherit}:host:not(._editable):not(._readonly) .t-input{cursor:pointer}.t-content{display:flex;align-items:center;pointer-events:none;box-sizing:border-box;margin:.0625rem 0}.t-primitive{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-arrow{pointer-events:auto;cursor:pointer}.t-arrow_native-dropdown{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: i5$1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { kind: "component", type: i6.TuiInputTagComponent, selector: "tui-input-tag", inputs: ["separator", "search", "editable", "tagValidator", "rows", "inputHidden", "uniqueTags", "autoColor", "maxLength", "placeholder", "removable", "disabledItemHandler", "pseudoFocused", "pseudoOpen"], outputs: ["searchChange"] }, { kind: "directive", type: i1$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i1$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i5$1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { kind: "directive", type: i5$1.TuiLegacyDropdownOpenMonitorDirective, selector: "[tuiDropdownOpenMonitor]" }, { kind: "pipe", type: i6$1.TuiMapperPipe, name: "tuiMapper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
224
- }
225
- __decorate([
226
- tuiPure
227
- ], TuiMultiSelectComponent.prototype, "getStringifier", null);
228
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectComponent, decorators: [{
229
- type: Component,
230
- args: [{ standalone: false, selector: 'tui-multi-select', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
231
- tuiAsFocusableItemAccessor(TuiMultiSelectComponent),
232
- tuiAsControl(TuiMultiSelectComponent),
233
- tuiAsDataListHost(TuiMultiSelectComponent),
234
- TEXTFIELD_CONTROLLER_PROVIDER,
235
- ], hostDirectives: [TuiDropdownFixed], host: {
236
- '[attr.data-size]': 'size',
237
- '[class._editable]': 'editable',
238
- '[class._expandable]': 'rows > 1',
239
- }, template: "<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"datalist || ''\"\n [tuiDropdownEnabled]=\"interactive && !nativeDropdownMode\"\n [(tuiDropdownOpen)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-input-tag\n #inputTag\n automation-id=\"tui-multi-select__input\"\n class=\"t-input\"\n [autoColor]=\"autoColor\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"false\"\n [inputHidden]=\"!editable\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"computedValue | tuiMapper: valueMapper : stringify\"\n [ngModelOptions]=\"{standalone: true}\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoOpen]=\"open\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [search]=\"searchOrSpace\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldIcon]=\"arrow ? icon : ''\"\n (click.prevent)=\"onClick(inputTag)\"\n (keydown.enter)=\"onEnter($event)\"\n (keydown.space)=\"onSpace($event)\"\n (keydown)=\"onKeyDown($event)\"\n (ngModelChange)=\"onInput($event)\"\n (paste.capture.stop.prevent)=\"onPaste($event)\"\n (searchChange)=\"onSearch($event)\"\n >\n <ng-content />\n <ng-template #select>\n @if (isMobile) {\n <ng-content select=\"select\" />\n }\n </ng-template>\n\n <ng-container\n *ngTemplateOutlet=\"select\"\n ngProjectAs=\"select\"\n />\n\n @if (computedGroup) {\n <div\n ngProjectAs=\"tuiContent\"\n class=\"t-content\"\n [class.t-content_fullsize]=\"inputTag.labelOutside\"\n >\n <span\n *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\"\n class=\"t-primitive\"\n >\n {{ text }}\n </span>\n </div>\n }\n </tui-input-tag>\n\n <ng-template #icon>\n <div\n appearance=\"icon\"\n automation-id=\"tui-multi-select__arrow\"\n tuiWrapper\n class=\"t-arrow\"\n [class.t-arrow_native-dropdown]=\"nativeDropdownMode\"\n (mousedown.prevent.zoneless)=\"(0)\"\n >\n <ng-container *polymorpheusOutlet=\"arrow as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n</div>\n", styles: [":host{position:relative;display:block;border-radius:var(--tui-radius-m)}:host._disabled,:host :host-context(*:disabled){pointer-events:none}.t-hosted{display:block;border-radius:inherit}.t-input{border-radius:inherit}:host:not(._editable):not(._readonly) .t-input{cursor:pointer}.t-content{display:flex;align-items:center;pointer-events:none;box-sizing:border-box;margin:.0625rem 0}.t-primitive{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-arrow{pointer-events:auto;cursor:pointer}.t-arrow_native-dropdown{pointer-events:none}\n"] }]
240
- }], propDecorators: { accessor: [{
241
- type: ContentChild,
242
- args: [TUI_DATA_LIST_ACCESSOR]
243
- }], nativeSelect: [{
244
- type: ContentChild,
245
- args: [AbstractTuiNativeMultiSelect, { static: true }]
246
- }], dropdown: [{
247
- type: ViewChild,
248
- args: [TuiDropdownOpen]
249
- }], input: [{
250
- type: ViewChild,
251
- args: [TuiInputTagComponent]
252
- }], datalist: [{
253
- type: ContentChild,
254
- args: [TuiDataListDirective, { read: TemplateRef }]
255
- }], stringify: [{
256
- type: Input
257
- }], identityMatcher: [{
258
- type: Input
259
- }], search: [{
260
- type: Input
261
- }], placeholder: [{
262
- type: Input
263
- }], editable: [{
264
- type: Input
265
- }], disabledItemHandler: [{
266
- type: Input
267
- }], valueContent: [{
268
- type: Input
269
- }], tagValidator: [{
270
- type: Input
271
- }], rows: [{
272
- type: Input
273
- }], autoColor: [{
274
- type: Input
275
- }], searchChange: [{
276
- type: Output
277
- }], getStringifier: [] } });
278
-
279
- class TuiHideSelectedPipe {
280
- constructor() {
281
- this.component = inject(TuiMultiSelectComponent);
282
- }
283
- transform(items) {
284
- const { value, identityMatcher } = this.component;
285
- if (!items) {
286
- return null;
287
- }
288
- return tuiIsFlat(items)
289
- ? this.filter(items, value, identityMatcher)
290
- : this.filter2d(items, value, identityMatcher);
291
- }
292
- filter2d(items, value, matcher) {
293
- return items.map((subItems) => this.filter(subItems, value, matcher));
294
- }
295
- filter(items, value, matcher) {
296
- return items.filter((item) => value.every((selected) => !matcher(selected, item)));
297
- }
298
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHideSelectedPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
299
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiHideSelectedPipe, isStandalone: false, name: "tuiHideSelected", pure: false }); }
300
- }
301
- __decorate([
302
- tuiPure
303
- ], TuiHideSelectedPipe.prototype, "filter2d", null);
304
- __decorate([
305
- tuiPure
306
- ], TuiHideSelectedPipe.prototype, "filter", null);
307
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHideSelectedPipe, decorators: [{
308
- type: Pipe,
309
- args: [{
310
- standalone: false,
311
- name: 'tuiHideSelected',
312
- pure: false,
313
- }]
314
- }], propDecorators: { filter2d: [], filter: [] } });
315
-
316
- class TuiMultiSelectDirective extends AbstractTuiTextfieldHost {
317
- constructor() {
318
- super(...arguments);
319
- this.disableItemHandler = (item) => this.host.disabledItemHandler(item);
320
- }
321
- get readOnly() {
322
- return true;
323
- }
324
- get stringify() {
325
- return this.host.stringify;
326
- }
327
- onValueChange() { }
328
- onSelectionChange(value) {
329
- this.host.onValueChange(value);
330
- }
331
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
332
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiMultiSelectDirective, isStandalone: false, selector: "tui-multi-select", providers: [tuiAsTextfieldHost(TuiMultiSelectDirective)], usesInheritance: true, ngImport: i0 }); }
333
- }
334
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectDirective, decorators: [{
335
- type: Directive,
336
- args: [{
337
- standalone: false,
338
- selector: 'tui-multi-select',
339
- providers: [tuiAsTextfieldHost(TuiMultiSelectDirective)],
340
- }]
341
- }] });
342
-
343
- class TuiMultiSelectGroupComponent {
344
- constructor() {
345
- this.options = EMPTY_QUERY;
346
- this.host = inject(TUI_DATA_LIST_HOST);
347
- this.control = inject(NgControl);
348
- this.multiSelectTexts$ = inject(TUI_MULTI_SELECT_TEXTS);
349
- this.label = '';
350
- }
351
- get empty$() {
352
- return tuiQueryListChanges(this.options).pipe(map(({ length }) => !length));
353
- }
354
- get disabled$() {
355
- return tuiQueryListChanges(this.options).pipe(map((items) => items.every(({ disabled }) => disabled)));
356
- }
357
- get value$() {
358
- return combineLatest([this.items$, this.valueChanges$]).pipe(map(([items, current]) => {
359
- let result = false;
360
- for (let i = 0; i < items.length; i++) {
361
- const selected = current.some((selected) => this.matcher(selected, items[i]));
362
- if ((!selected && result) || (selected && !result && i)) {
363
- return null;
364
- }
365
- result = selected;
366
- }
367
- return result;
368
- }));
369
- }
370
- onClick(checked) {
371
- if (!this.control.control) {
372
- return;
373
- }
374
- const controlValue = this.control.value || [];
375
- const { values } = this;
376
- const filtered = controlValue.filter((current) => values.every((item) => !this.matcher(current, item)));
377
- this.control.control.setValue(checked ? filtered : [...filtered, ...values]);
378
- }
379
- get items$() {
380
- return tuiQueryListChanges(this.options).pipe(map((options) => options.map(({ value }) => value).filter(tuiIsPresent)));
381
- }
382
- get valueChanges$() {
383
- return tuiControlValue(this.control).pipe(map((value) => value || []));
384
- }
385
- get values() {
386
- return this.filter(tuiGetOriginalArrayFromQueryList(this.options));
387
- }
388
- get matcher() {
389
- return this.host.identityMatcher || TUI_DEFAULT_IDENTITY_MATCHER;
390
- }
391
- filter(items) {
392
- return items.map(({ value }) => value).filter(tuiIsPresent);
393
- }
394
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
395
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiMultiSelectGroupComponent, isStandalone: false, selector: "tui-opt-group[tuiMultiSelectGroup]", inputs: { label: "label" }, host: { properties: { "class._label": "label" } }, queries: [{ propertyName: "options", predicate: TuiOption }], ngImport: i0, template: "<span\n *tuiLet=\"value$ | async as value\"\n class=\"t-wrapper\"\n>\n <span class=\"t-label\">{{ label }}</span>\n @if (label && !(empty$ | async)) {\n <button\n tuiLink\n type=\"button\"\n class=\"t-button\"\n [disabled]=\"!!(disabled$ | async)\"\n (click)=\"onClick(value)\"\n >\n {{ (multiSelectTexts$ | async)?.[value ? 'none' : 'all'] }}\n </button>\n }\n</span>\n<ng-content />\n", styles: [":host._label:before{display:none}:host:not(:first-of-type) .t-label:not(:empty){padding-block-start:1.25rem}:host:not(:first-of-type) .t-button{margin-block-start:1.25rem}.t-wrapper{display:flex;align-items:flex-start}.t-label:not(:empty){flex:1;padding:.75rem 1rem .25rem .625rem}.t-button{margin:.75rem 1rem 0 auto;font-weight:400}\n"], dependencies: [{ kind: "directive", type: i1$2.TuiLet, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "directive", type: i2.TuiLink, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
396
- }
397
- __decorate([
398
- tuiPure
399
- ], TuiMultiSelectGroupComponent.prototype, "empty$", null);
400
- __decorate([
401
- tuiPure
402
- ], TuiMultiSelectGroupComponent.prototype, "disabled$", null);
403
- __decorate([
404
- tuiPure
405
- ], TuiMultiSelectGroupComponent.prototype, "value$", null);
406
- __decorate([
407
- tuiPure
408
- ], TuiMultiSelectGroupComponent.prototype, "items$", null);
409
- __decorate([
410
- tuiPure
411
- ], TuiMultiSelectGroupComponent.prototype, "valueChanges$", null);
412
- __decorate([
413
- tuiPure
414
- ], TuiMultiSelectGroupComponent.prototype, "filter", null);
415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectGroupComponent, decorators: [{
416
- type: Component,
417
- args: [{ standalone: false, selector: 'tui-opt-group[tuiMultiSelectGroup]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
418
- '[class._label]': 'label',
419
- }, template: "<span\n *tuiLet=\"value$ | async as value\"\n class=\"t-wrapper\"\n>\n <span class=\"t-label\">{{ label }}</span>\n @if (label && !(empty$ | async)) {\n <button\n tuiLink\n type=\"button\"\n class=\"t-button\"\n [disabled]=\"!!(disabled$ | async)\"\n (click)=\"onClick(value)\"\n >\n {{ (multiSelectTexts$ | async)?.[value ? 'none' : 'all'] }}\n </button>\n }\n</span>\n<ng-content />\n", styles: [":host._label:before{display:none}:host:not(:first-of-type) .t-label:not(:empty){padding-block-start:1.25rem}:host:not(:first-of-type) .t-button{margin-block-start:1.25rem}.t-wrapper{display:flex;align-items:flex-start}.t-label:not(:empty){flex:1;padding:.75rem 1rem .25rem .625rem}.t-button{margin:.75rem 1rem 0 auto;font-weight:400}\n"] }]
420
- }], propDecorators: { options: [{
421
- type: ContentChildren,
422
- args: [TuiOption]
423
- }], label: [{
424
- type: Input
425
- }], empty$: [], disabled$: [], value$: [], items$: [], valueChanges$: [], filter: [] } });
426
-
427
- const TUI_MULTI_SELECT_OPTION = new PolymorpheusComponent(TuiMultiSelectOptionComponent);
428
- class TuiMultiSelectGroupDirective {
429
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
430
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiMultiSelectGroupDirective, isStandalone: false, selector: "[tuiMultiSelectGroup]", providers: [
431
- tuiAsOptionContent(TUI_MULTI_SELECT_OPTION),
432
- {
433
- provide: TUI_DATA_LIST_HOST,
434
- useFactory: () => {
435
- const multiSelect = inject(TuiMultiSelectComponent, { optional: true });
436
- const ngControl = inject(NgControl);
437
- const host = inject(AbstractTuiControl, { optional: true });
438
- const { identityMatcher, stringify } = inject(TUI_ITEMS_HANDLERS, { optional: true }) ?? {};
439
- return (multiSelect || {
440
- stringify,
441
- identityMatcher,
442
- handleOption: (option) => {
443
- const value = host?.value ?? ngControl.control?.value ?? [];
444
- const result = tuiArrayToggle(value, option, identityMatcher);
445
- if (host) {
446
- host.value = result;
447
- }
448
- else {
449
- ngControl.control?.setValue(result);
450
- }
451
- },
452
- });
453
- },
454
- },
455
- {
456
- provide: NG_VALUE_ACCESSOR,
457
- multi: true,
458
- useValue: {
459
- writeValue: EMPTY_FUNCTION,
460
- registerOnChange: EMPTY_FUNCTION,
461
- registerOnTouched: EMPTY_FUNCTION,
462
- },
463
- },
464
- ], ngImport: i0 }); }
465
- }
466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectGroupDirective, decorators: [{
467
- type: Directive,
468
- args: [{
469
- standalone: false,
470
- selector: '[tuiMultiSelectGroup]',
471
- providers: [
472
- tuiAsOptionContent(TUI_MULTI_SELECT_OPTION),
473
- {
474
- provide: TUI_DATA_LIST_HOST,
475
- useFactory: () => {
476
- const multiSelect = inject(TuiMultiSelectComponent, { optional: true });
477
- const ngControl = inject(NgControl);
478
- const host = inject(AbstractTuiControl, { optional: true });
479
- const { identityMatcher, stringify } = inject(TUI_ITEMS_HANDLERS, { optional: true }) ?? {};
480
- return (multiSelect || {
481
- stringify,
482
- identityMatcher,
483
- handleOption: (option) => {
484
- const value = host?.value ?? ngControl.control?.value ?? [];
485
- const result = tuiArrayToggle(value, option, identityMatcher);
486
- if (host) {
487
- host.value = result;
488
- }
489
- else {
490
- ngControl.control?.setValue(result);
491
- }
492
- },
493
- });
494
- },
495
- },
496
- {
497
- provide: NG_VALUE_ACCESSOR,
498
- multi: true,
499
- useValue: {
500
- writeValue: EMPTY_FUNCTION,
501
- registerOnChange: EMPTY_FUNCTION,
502
- registerOnTouched: EMPTY_FUNCTION,
503
- },
504
- },
505
- ],
506
- }]
507
- }] });
508
-
509
- class TuiNativeMultiSelectComponent extends AbstractTuiNativeMultiSelect {
510
- constructor() {
511
- super(...arguments);
512
- this.items = [];
513
- }
514
- onValueChange(selectedOptions) {
515
- const selected = Array.from(selectedOptions).map((option) => option.index);
516
- const value = this.items?.filter((_, index) => selected.includes(index)) || [];
517
- this.host.onSelectionChange(value);
518
- }
519
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiNativeMultiSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
520
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiNativeMultiSelectComponent, isStandalone: false, selector: "select[multiple][tuiSelect]:not([labels])", inputs: { items: "items" }, host: { listeners: { "change": "onValueChange($event.target.selectedOptions)", "click.stop.zoneless": "0", "mousedown.stop.zoneless": "0" }, properties: { "attr.aria-invalid": "host.invalid", "disabled": "host.disabled || control.readOnly", "tabIndex": "host.focusable ? 0 : -1" } }, providers: [
521
- tuiAsDataList(TuiNativeMultiSelectComponent),
522
- tuiProvide(AbstractTuiNativeMultiSelect, TuiNativeMultiSelectComponent),
523
- {
524
- provide: TemplateRef,
525
- deps: [TuiNativeMultiSelectComponent],
526
- useFactory: ({ datalist }) => datalist,
527
- },
528
- ], usesInheritance: true, ngImport: i0, template: "@if (control.control?.valueChanges | async) {}\n\n<tui-data-list-wrapper\n *tuiDataList\n tuiMultiSelectGroup\n [disabledItemHandler]=\"disabledItemHandler || host.disableItemHandler\"\n [itemContent]=\"stringify | tuiStringifyContent\"\n [items]=\"items\"\n/>\n@for (option of items; track option) {\n <option\n [disabled]=\"disabledItemHandler ? disabledItemHandler(option) : host.disableItemHandler(option)\"\n [selected]=\"option | tuiMapper: selectedMapper : control.value\"\n [value]=\"stringify(option)\"\n >\n {{ stringify(option) }}\n </option>\n}\n", styles: [":host{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2$1.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { kind: "component", type: i3.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels]), tui-data-list-wrapper:not([labels])[new]", inputs: ["items", "disabledItemHandler", "emptyContent", "size", "itemContent"], outputs: ["itemClick"] }, { kind: "directive", type: TuiMultiSelectGroupDirective, selector: "[tuiMultiSelectGroup]" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6$1.TuiMapperPipe, name: "tuiMapper" }, { kind: "pipe", type: i7.TuiStringifyContentPipe, name: "tuiStringifyContent" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
529
- }
530
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiNativeMultiSelectComponent, decorators: [{
531
- type: Component,
532
- args: [{ standalone: false, selector: 'select[multiple][tuiSelect]:not([labels])', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
533
- tuiAsDataList(TuiNativeMultiSelectComponent),
534
- tuiProvide(AbstractTuiNativeMultiSelect, TuiNativeMultiSelectComponent),
535
- {
536
- provide: TemplateRef,
537
- deps: [TuiNativeMultiSelectComponent],
538
- useFactory: ({ datalist }) => datalist,
539
- },
540
- ], host: {
541
- '[attr.aria-invalid]': 'host.invalid',
542
- '[disabled]': 'host.disabled || control.readOnly',
543
- '[tabIndex]': 'host.focusable ? 0 : -1',
544
- '(change)': 'onValueChange($event.target.selectedOptions)',
545
- '(click.stop.zoneless)': '0',
546
- '(mousedown.stop.zoneless)': '0',
547
- }, template: "@if (control.control?.valueChanges | async) {}\n\n<tui-data-list-wrapper\n *tuiDataList\n tuiMultiSelectGroup\n [disabledItemHandler]=\"disabledItemHandler || host.disableItemHandler\"\n [itemContent]=\"stringify | tuiStringifyContent\"\n [items]=\"items\"\n/>\n@for (option of items; track option) {\n <option\n [disabled]=\"disabledItemHandler ? disabledItemHandler(option) : host.disableItemHandler(option)\"\n [selected]=\"option | tuiMapper: selectedMapper : control.value\"\n [value]=\"stringify(option)\"\n >\n {{ stringify(option) }}\n </option>\n}\n", styles: [":host{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0}\n"] }]
548
- }], propDecorators: { items: [{
549
- type: Input
550
- }] } });
551
-
552
- class TuiNativeMultiSelectGroupComponent extends AbstractTuiNativeMultiSelect {
553
- constructor() {
554
- super(...arguments);
555
- this.items = [];
556
- this.labels = [];
557
- }
558
- onValueChange(selectedOptions) {
559
- const selected = Array.from(selectedOptions).map((option) => option.index);
560
- const flatItems = this.items?.reduce((acc, val) => acc.concat(val), []) || [];
561
- const value = flatItems.filter((_, index) => selected.includes(index));
562
- this.host.onSelectionChange(value);
563
- }
564
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiNativeMultiSelectGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
565
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiNativeMultiSelectGroupComponent, isStandalone: false, selector: "select[multiple][tuiSelect][labels]", inputs: { items: "items", labels: "labels" }, host: { listeners: { "change": "onValueChange($event.target.selectedOptions)", "click.stop.zoneless": "0", "mousedown.stop.zoneless": "0" }, properties: { "attr.aria-invalid": "host.invalid", "disabled": "host.disabled || control.readOnly", "tabIndex": "host.focusable ? 0 : -1" } }, providers: [
566
- tuiAsDataList(TuiNativeMultiSelectGroupComponent),
567
- tuiProvide(AbstractTuiNativeMultiSelect, TuiNativeMultiSelectGroupComponent),
568
- {
569
- provide: TemplateRef,
570
- deps: [TuiNativeMultiSelectGroupComponent],
571
- useFactory: ({ datalist }) => datalist,
572
- },
573
- ], usesInheritance: true, ngImport: i0, template: "@if (control.control?.valueChanges | async) {}\n\n<tui-data-list-wrapper\n *tuiDataList\n tuiMultiSelectGroup\n [disabledItemHandler]=\"disabledItemHandler || host.disableItemHandler\"\n [itemContent]=\"stringify | tuiStringifyContent\"\n [items]=\"items\"\n [labels]=\"labels\"\n/>\n@for (group of items; track group; let index = $index) {\n <optgroup [label]=\"labels[index]\">\n @for (option of group; track option) {\n <option\n [disabled]=\"disabledItemHandler ? disabledItemHandler(option) : host.disableItemHandler(option)\"\n [selected]=\"option | tuiMapper: selectedMapper : control.value\"\n [value]=\"stringify(option)\"\n >\n {{ stringify(option) }}\n </option>\n }\n </optgroup>\n}\n", styles: [":host{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2$1.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { kind: "component", type: i3.TuiDataListGroupWrapperComponent, selector: "tui-data-list-wrapper[labels]", inputs: ["labels"] }, { kind: "directive", type: TuiMultiSelectGroupDirective, selector: "[tuiMultiSelectGroup]" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6$1.TuiMapperPipe, name: "tuiMapper" }, { kind: "pipe", type: i7.TuiStringifyContentPipe, name: "tuiStringifyContent" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
574
- }
575
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiNativeMultiSelectGroupComponent, decorators: [{
576
- type: Component,
577
- args: [{ standalone: false, selector: 'select[multiple][tuiSelect][labels]', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
578
- tuiAsDataList(TuiNativeMultiSelectGroupComponent),
579
- tuiProvide(AbstractTuiNativeMultiSelect, TuiNativeMultiSelectGroupComponent),
580
- {
581
- provide: TemplateRef,
582
- deps: [TuiNativeMultiSelectGroupComponent],
583
- useFactory: ({ datalist }) => datalist,
584
- },
585
- ], host: {
586
- '[attr.aria-invalid]': 'host.invalid',
587
- '[disabled]': 'host.disabled || control.readOnly',
588
- '[tabIndex]': 'host.focusable ? 0 : -1',
589
- '(change)': 'onValueChange($event.target.selectedOptions)',
590
- '(click.stop.zoneless)': '0',
591
- '(mousedown.stop.zoneless)': '0',
592
- }, template: "@if (control.control?.valueChanges | async) {}\n\n<tui-data-list-wrapper\n *tuiDataList\n tuiMultiSelectGroup\n [disabledItemHandler]=\"disabledItemHandler || host.disableItemHandler\"\n [itemContent]=\"stringify | tuiStringifyContent\"\n [items]=\"items\"\n [labels]=\"labels\"\n/>\n@for (group of items; track group; let index = $index) {\n <optgroup [label]=\"labels[index]\">\n @for (option of group; track option) {\n <option\n [disabled]=\"disabledItemHandler ? disabledItemHandler(option) : host.disableItemHandler(option)\"\n [selected]=\"option | tuiMapper: selectedMapper : control.value\"\n [value]=\"stringify(option)\"\n >\n {{ stringify(option) }}\n </option>\n }\n </optgroup>\n}\n", styles: [":host{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0}\n"] }]
593
- }], propDecorators: { items: [{
594
- type: Input
595
- }], labels: [{
596
- type: Input
597
- }] } });
598
-
599
- /**
600
- * TODO(v5): delete it
601
- * @deprecated use new version of {@link https://taiga-ui.dev/components/input-chip TuiInputChip} (from @taiga-ui/kit) instead
602
- */
603
- class TuiMultiSelectModule {
604
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
605
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectModule, declarations: [TuiMultiSelectComponent,
606
- TuiMultiSelectGroupComponent,
607
- TuiMultiSelectGroupDirective,
608
- TuiHideSelectedPipe,
609
- TuiNativeMultiSelectComponent,
610
- TuiNativeMultiSelectGroupComponent,
611
- TuiMultiSelectDirective], imports: [CommonModule,
612
- FormsModule,
613
- PolymorpheusOutlet,
614
- PolymorpheusTemplate,
615
- TuiWrapperModule,
616
- TuiArrowComponent,
617
- TuiLet,
618
- TuiInputTagModule,
619
- TuiMultiSelectOptionModule,
620
- TuiMapperPipe,
621
- TuiLink,
622
- TuiTextfieldControllerModule,
623
- TuiStringifyContentPipe,
624
- TuiLegacyDropdownOpenMonitorDirective, i1$1.TuiDropdownOptionsDirective, i1$1.TuiDropdownDriverDirective, i1$1.TuiDropdownDirective, i1$1.TuiDropdownComponent, i1$1.TuiDropdownOpen, i1$1.TuiDropdownOpenLegacy, i1$1.TuiDropdownPortal, i1$1.TuiDropdownManual, i1$1.TuiDropdownHover, i1$1.TuiDropdownContext, i1$1.TuiDropdownPosition, i1$1.TuiDropdownPositionSided, i1$1.TuiDropdownSelection, i2$1.TuiDataListComponent, i2$1.TuiDataListDirective, i2$1.TuiOption, i2$1.TuiOptionNew, i2$1.TuiOptionWithValue, i2$1.TuiOptGroup, i3.TuiDataListWrapperComponent, i3.TuiDataListGroupWrapperComponent, i2$1.TuiDataListDirective], exports: [TuiMultiSelectComponent,
625
- TuiMultiSelectGroupComponent,
626
- TuiMultiSelectGroupDirective,
627
- TuiHideSelectedPipe,
628
- TuiMultiSelectDirective,
629
- TuiNativeMultiSelectComponent,
630
- TuiNativeMultiSelectGroupComponent, i1$1.TuiDropdownOptionsDirective, i1$1.TuiDropdownDriverDirective, i1$1.TuiDropdownDirective, i1$1.TuiDropdownComponent, i1$1.TuiDropdownOpen, i1$1.TuiDropdownOpenLegacy, i1$1.TuiDropdownPortal, i1$1.TuiDropdownManual, i1$1.TuiDropdownHover, i1$1.TuiDropdownContext, i1$1.TuiDropdownPosition, i1$1.TuiDropdownPositionSided, i1$1.TuiDropdownSelection, i2$1.TuiDataListComponent, i2$1.TuiDataListDirective, i2$1.TuiOption, i2$1.TuiOptionNew, i2$1.TuiOptionWithValue, i2$1.TuiOptGroup, i3.TuiDataListWrapperComponent, i3.TuiDataListGroupWrapperComponent, i2$1.TuiDataListDirective] }); }
631
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectModule, imports: [CommonModule,
632
- FormsModule,
633
- TuiWrapperModule,
634
- TuiArrowComponent,
635
- TuiInputTagModule,
636
- TuiMultiSelectOptionModule,
637
- TuiTextfieldControllerModule, i1$1.TuiDropdownComponent, i2$1.TuiDataListComponent, i2$1.TuiOption, i3.TuiDataListWrapperComponent, i3.TuiDataListGroupWrapperComponent] }); }
638
- }
639
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiMultiSelectModule, decorators: [{
640
- type: NgModule,
641
- args: [{
642
- imports: [
643
- CommonModule,
644
- FormsModule,
645
- PolymorpheusOutlet,
646
- PolymorpheusTemplate,
647
- TuiWrapperModule,
648
- TuiArrowComponent,
649
- TuiLet,
650
- TuiInputTagModule,
651
- TuiMultiSelectOptionModule,
652
- TuiMapperPipe,
653
- TuiLink,
654
- TuiTextfieldControllerModule,
655
- TuiStringifyContentPipe,
656
- TuiLegacyDropdownOpenMonitorDirective,
657
- ...TuiDropdown,
658
- ...TuiDataList,
659
- ...TuiDataListWrapper,
660
- ],
661
- declarations: [
662
- TuiMultiSelectComponent,
663
- TuiMultiSelectGroupComponent,
664
- TuiMultiSelectGroupDirective,
665
- TuiHideSelectedPipe,
666
- TuiNativeMultiSelectComponent,
667
- TuiNativeMultiSelectGroupComponent,
668
- TuiMultiSelectDirective,
669
- ],
670
- exports: [
671
- TuiMultiSelectComponent,
672
- TuiMultiSelectGroupComponent,
673
- TuiMultiSelectGroupDirective,
674
- TuiHideSelectedPipe,
675
- TuiMultiSelectDirective,
676
- TuiNativeMultiSelectComponent,
677
- TuiNativeMultiSelectGroupComponent,
678
- ...TuiDropdown,
679
- ...TuiDataList,
680
- ...TuiDataListWrapper,
681
- ],
682
- }]
683
- }] });
684
-
685
- /**
686
- * Generated bundle index. Do not edit.
687
- */
688
-
689
- export { AbstractTuiNativeMultiSelect, TUI_MULTI_SELECT_DEFAULT_OPTIONS, TUI_MULTI_SELECT_OPTION, TUI_MULTI_SELECT_OPTIONS, TuiHideSelectedPipe, TuiMultiSelectComponent, TuiMultiSelectDirective, TuiMultiSelectGroupComponent, TuiMultiSelectGroupDirective, TuiMultiSelectModule, TuiNativeMultiSelectComponent, TuiNativeMultiSelectGroupComponent, tuiMultiSelectOptionsProvider };
690
- //# sourceMappingURL=taiga-ui-legacy-components-multi-select.mjs.map