@taiga-ui/legacy 4.0.0-rc.1

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 (632) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +22 -0
  3. package/classes/abstract-native-select.d.ts +17 -0
  4. package/classes/abstract-textfield-host.d.ts +19 -0
  5. package/classes/control.d.ts +58 -0
  6. package/classes/index.d.ts +8 -0
  7. package/classes/interactive.d.ts +35 -0
  8. package/classes/multiple-control.d.ts +8 -0
  9. package/classes/named-day.d.ts +8 -0
  10. package/classes/nullable-control.d.ts +7 -0
  11. package/classes/stringifiable-item.d.ts +10 -0
  12. package/components/arrow/arrow.component.d.ts +16 -0
  13. package/components/arrow/arrow.options.d.ts +13 -0
  14. package/components/arrow/arrow.providers.d.ts +14 -0
  15. package/components/arrow/index.d.ts +3 -0
  16. package/components/combo-box/combo-box-strict.directive.d.ts +8 -0
  17. package/components/combo-box/combo-box.component.d.ts +47 -0
  18. package/components/combo-box/combo-box.directive.d.ts +9 -0
  19. package/components/combo-box/combo-box.module.d.ts +16 -0
  20. package/components/combo-box/index.d.ts +4 -0
  21. package/components/index.d.ts +31 -0
  22. package/components/input/index.d.ts +3 -0
  23. package/components/input/input.component.d.ts +27 -0
  24. package/components/input/input.directive.d.ts +8 -0
  25. package/components/input/input.module.d.ts +11 -0
  26. package/components/input-copy/index.d.ts +4 -0
  27. package/components/input-copy/input-copy.component.d.ts +30 -0
  28. package/components/input-copy/input-copy.directive.d.ts +8 -0
  29. package/components/input-copy/input-copy.module.d.ts +15 -0
  30. package/components/input-copy/input-copy.options.d.ts +14 -0
  31. package/components/input-date/index.d.ts +3 -0
  32. package/components/input-date/input-date.component.d.ts +61 -0
  33. package/components/input-date/input-date.directive.d.ts +15 -0
  34. package/components/input-date/input-date.module.d.ts +20 -0
  35. package/components/input-date/native-date/native-date.component.d.ts +11 -0
  36. package/components/input-date-multi/index.d.ts +2 -0
  37. package/components/input-date-multi/input-date-multi.component.d.ts +66 -0
  38. package/components/input-date-multi/input-date-multi.module.d.ts +20 -0
  39. package/components/input-date-range/index.d.ts +3 -0
  40. package/components/input-date-range/input-date-range.component.d.ts +63 -0
  41. package/components/input-date-range/input-date-range.directive.d.ts +12 -0
  42. package/components/input-date-range/input-date-range.module.d.ts +18 -0
  43. package/components/input-date-time/index.d.ts +3 -0
  44. package/components/input-date-time/input-date-time.component.d.ts +77 -0
  45. package/components/input-date-time/input-date-time.directive.d.ts +13 -0
  46. package/components/input-date-time/input-date-time.module.d.ts +19 -0
  47. package/components/input-date-time/native-date-time/native-date-time.directive.d.ts +9 -0
  48. package/components/input-month/index.d.ts +3 -0
  49. package/components/input-month/input-month.component.d.ts +41 -0
  50. package/components/input-month/input-month.directive.d.ts +15 -0
  51. package/components/input-month/input-month.module.d.ts +15 -0
  52. package/components/input-month-range/index.d.ts +3 -0
  53. package/components/input-month-range/input-month-range.component.d.ts +35 -0
  54. package/components/input-month-range/input-month-range.directive.d.ts +15 -0
  55. package/components/input-month-range/input-month-range.module.d.ts +14 -0
  56. package/components/input-number/index.d.ts +4 -0
  57. package/components/input-number/input-number.component.d.ts +56 -0
  58. package/components/input-number/input-number.directive.d.ts +12 -0
  59. package/components/input-number/input-number.module.d.ts +14 -0
  60. package/components/input-number/input-number.options.d.ts +17 -0
  61. package/components/input-password/index.d.ts +4 -0
  62. package/components/input-password/input-password.component.d.ts +30 -0
  63. package/components/input-password/input-password.directive.d.ts +12 -0
  64. package/components/input-password/input-password.module.d.ts +16 -0
  65. package/components/input-password/input-password.options.d.ts +13 -0
  66. package/components/input-phone/index.d.ts +4 -0
  67. package/components/input-phone/input-phone.component.d.ts +48 -0
  68. package/components/input-phone/input-phone.directive.d.ts +13 -0
  69. package/components/input-phone/input-phone.module.d.ts +12 -0
  70. package/components/input-phone/input-phone.options.d.ts +12 -0
  71. package/components/input-phone/utils/complete-phone-insertion-preprocessor.d.ts +9 -0
  72. package/components/input-phone/utils/create-phone-mask-expression.d.ts +7 -0
  73. package/components/input-phone/utils/index.d.ts +2 -0
  74. package/components/input-phone-international/index.d.ts +3 -0
  75. package/components/input-phone-international/input-phone-international.component.d.ts +38 -0
  76. package/components/input-phone-international/input-phone-international.options.d.ts +12 -0
  77. package/components/input-phone-international/utils/extract-value-from-event.d.ts +1 -0
  78. package/components/input-range/index.d.ts +2 -0
  79. package/components/input-range/input-range.component.d.ts +52 -0
  80. package/components/input-range/input-range.module.d.ts +15 -0
  81. package/components/input-slider/index.d.ts +2 -0
  82. package/components/input-slider/input-slider.component.d.ts +38 -0
  83. package/components/input-slider/input-slider.module.d.ts +14 -0
  84. package/components/input-tag/index.d.ts +3 -0
  85. package/components/input-tag/input-tag.component.d.ts +94 -0
  86. package/components/input-tag/input-tag.module.d.ts +18 -0
  87. package/components/input-tag/input-tag.options.d.ts +13 -0
  88. package/components/input-time/index.d.ts +4 -0
  89. package/components/input-time/input-time.component.d.ts +60 -0
  90. package/components/input-time/input-time.directive.d.ts +13 -0
  91. package/components/input-time/input-time.module.d.ts +19 -0
  92. package/components/input-time/input-time.options.d.ts +20 -0
  93. package/components/input-time/native-time/native-time.component.d.ts +12 -0
  94. package/components/input-year/index.d.ts +3 -0
  95. package/components/input-year/input-year.component.d.ts +32 -0
  96. package/components/input-year/input-year.directive.d.ts +10 -0
  97. package/components/input-year/input-year.module.d.ts +14 -0
  98. package/components/island/index.d.ts +1 -0
  99. package/components/island/island.directive.d.ts +16 -0
  100. package/components/multi-select/hide-selected.pipe.d.ts +11 -0
  101. package/components/multi-select/index.d.ts +10 -0
  102. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +23 -0
  103. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +8 -0
  104. package/components/multi-select/multi-select.component.d.ts +65 -0
  105. package/components/multi-select/multi-select.directive.d.ts +14 -0
  106. package/components/multi-select/multi-select.module.d.ts +27 -0
  107. package/components/multi-select/multi-select.options.d.ts +13 -0
  108. package/components/multi-select/native-multi-select/native-multi-select-group.component.d.ts +9 -0
  109. package/components/multi-select/native-multi-select/native-multi-select.component.d.ts +8 -0
  110. package/components/multi-select/native-multi-select/native-multi-select.d.ts +11 -0
  111. package/components/multi-select-option/index.d.ts +2 -0
  112. package/components/multi-select-option/multi-select-option.component.d.ts +9 -0
  113. package/components/multi-select-option/multi-select-option.module.d.ts +9 -0
  114. package/components/primitive-textfield/index.d.ts +7 -0
  115. package/components/primitive-textfield/primitive-textfield-options.d.ts +22 -0
  116. package/components/primitive-textfield/primitive-textfield-types.d.ts +11 -0
  117. package/components/primitive-textfield/primitive-textfield.component.d.ts +68 -0
  118. package/components/primitive-textfield/primitive-textfield.directive.d.ts +10 -0
  119. package/components/primitive-textfield/primitive-textfield.module.d.ts +17 -0
  120. package/components/primitive-textfield/textfield/textfield.component.d.ts +13 -0
  121. package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +22 -0
  122. package/components/select/index.d.ts +6 -0
  123. package/components/select/native-select/native-select-group.component.d.ts +13 -0
  124. package/components/select/native-select/native-select.component.d.ts +12 -0
  125. package/components/select/select.component.d.ts +40 -0
  126. package/components/select/select.directive.d.ts +12 -0
  127. package/components/select/select.module.d.ts +20 -0
  128. package/components/select/select.options.d.ts +12 -0
  129. package/components/select-option/index.d.ts +2 -0
  130. package/components/select-option/select-option.component.d.ts +27 -0
  131. package/components/select-option/select-option.module.d.ts +10 -0
  132. package/components/sheet/components/sheet/sheet.component.d.ts +31 -0
  133. package/components/sheet/components/sheet/sheet.providers.d.ts +2 -0
  134. package/components/sheet/components/sheet-bar/sheet-bar.component.d.ts +10 -0
  135. package/components/sheet/components/sheet-heading/sheet-heading.component.d.ts +14 -0
  136. package/components/sheet/components/sheets-host/sheets-host.component.d.ts +15 -0
  137. package/components/sheet/directives/sheet-close/sheet-close.directive.d.ts +14 -0
  138. package/components/sheet/directives/sheet-stop/sheet-stop.directive.d.ts +6 -0
  139. package/components/sheet/directives/sheet-top/sheet-top.directive.d.ts +14 -0
  140. package/components/sheet/directives/sheet-wrapper/sheet-wrapper.directive.d.ts +17 -0
  141. package/components/sheet/index.d.ts +14 -0
  142. package/components/sheet/sheet-options.d.ts +24 -0
  143. package/components/sheet/sheet-tokens.d.ts +15 -0
  144. package/components/sheet/sheet.d.ts +19 -0
  145. package/components/sheet/sheet.directive.d.ts +16 -0
  146. package/components/sheet/sheet.module.d.ts +23 -0
  147. package/components/sheet/sheet.service.d.ts +16 -0
  148. package/components/svg/content-processor.d.ts +16 -0
  149. package/components/svg/deprecated-icons.d.ts +1 -0
  150. package/components/svg/index.d.ts +5 -0
  151. package/components/svg/svg-options.d.ts +22 -0
  152. package/components/svg/svg.component.d.ts +43 -0
  153. package/components/svg/svg.service.d.ts +21 -0
  154. package/components/table-bar/index.d.ts +5 -0
  155. package/components/table-bar/table-bar.component.d.ts +13 -0
  156. package/components/table-bar/table-bar.directive.d.ts +7 -0
  157. package/components/table-bar/table-bar.options.d.ts +14 -0
  158. package/components/table-bar/table-bars-host.component.d.ts +6 -0
  159. package/components/table-bar/table-bars.service.d.ts +10 -0
  160. package/components/tag/index.d.ts +3 -0
  161. package/components/tag/tag.component.d.ts +40 -0
  162. package/components/tag/tag.module.d.ts +12 -0
  163. package/components/tag/tag.options.d.ts +15 -0
  164. package/components/textarea/index.d.ts +3 -0
  165. package/components/textarea/textarea.component.d.ts +50 -0
  166. package/components/textarea/textarea.directive.d.ts +8 -0
  167. package/components/textarea/textarea.module.d.ts +17 -0
  168. package/components/tooltip/index.d.ts +2 -0
  169. package/components/tooltip/tooltip.component.d.ts +12 -0
  170. package/components/tooltip/tooltip.module.d.ts +12 -0
  171. package/directives/index.d.ts +5 -0
  172. package/directives/legacy-dropdown-open-monitor/index.d.ts +1 -0
  173. package/directives/legacy-dropdown-open-monitor/legacy-dropdown-open-monitor.d.ts +9 -0
  174. package/directives/textfield-controller/index.d.ts +14 -0
  175. package/directives/textfield-controller/textfield-appearance.directive.d.ts +8 -0
  176. package/directives/textfield-controller/textfield-cleaner.directive.d.ts +8 -0
  177. package/directives/textfield-controller/textfield-controller.module.d.ts +17 -0
  178. package/directives/textfield-controller/textfield-controller.provider.d.ts +5 -0
  179. package/directives/textfield-controller/textfield-custom-content.directive.d.ts +9 -0
  180. package/directives/textfield-controller/textfield-filler.directive.d.ts +8 -0
  181. package/directives/textfield-controller/textfield-icon-left.directive.d.ts +11 -0
  182. package/directives/textfield-controller/textfield-icon.directive.d.ts +11 -0
  183. package/directives/textfield-controller/textfield-label-outside.directive.d.ts +8 -0
  184. package/directives/textfield-controller/textfield-postfix.directive.d.ts +8 -0
  185. package/directives/textfield-controller/textfield-prefix.directive.d.ts +8 -0
  186. package/directives/textfield-controller/textfield-size.directive.d.ts +9 -0
  187. package/directives/textfield-controller/textfield.controller.d.ts +41 -0
  188. package/directives/textfield-controller/textfield.options.d.ts +15 -0
  189. package/directives/unfinished-validator/index.d.ts +2 -0
  190. package/directives/unfinished-validator/unfinished-validator.directive.d.ts +8 -0
  191. package/directives/unfinished-validator/unfinished.validator.d.ts +4 -0
  192. package/directives/value-accessor/index.d.ts +3 -0
  193. package/directives/value-accessor/value-accessor.directive.d.ts +5 -0
  194. package/directives/value-accessor/value-accessor.module.d.ts +7 -0
  195. package/directives/value-accessor/value-accessor.provider.d.ts +2 -0
  196. package/directives/wrapper/README.md +19 -0
  197. package/directives/wrapper/index.d.ts +2 -0
  198. package/directives/wrapper/wrapper.directive.d.ts +21 -0
  199. package/directives/wrapper/wrapper.module.d.ts +10 -0
  200. package/esm2022/classes/abstract-native-select.mjs +37 -0
  201. package/esm2022/classes/abstract-textfield-host.mjs +37 -0
  202. package/esm2022/classes/control.mjs +175 -0
  203. package/esm2022/classes/index.mjs +9 -0
  204. package/esm2022/classes/interactive.mjs +85 -0
  205. package/esm2022/classes/multiple-control.mjs +18 -0
  206. package/esm2022/classes/named-day.mjs +11 -0
  207. package/esm2022/classes/nullable-control.mjs +15 -0
  208. package/esm2022/classes/stringifiable-item.mjs +13 -0
  209. package/esm2022/classes/taiga-ui-legacy-classes.mjs +5 -0
  210. package/esm2022/components/arrow/arrow.component.mjs +42 -0
  211. package/esm2022/components/arrow/arrow.options.mjs +14 -0
  212. package/esm2022/components/arrow/arrow.providers.mjs +14 -0
  213. package/esm2022/components/arrow/index.mjs +4 -0
  214. package/esm2022/components/arrow/taiga-ui-legacy-components-arrow.mjs +5 -0
  215. package/esm2022/components/combo-box/combo-box-strict.directive.mjs +29 -0
  216. package/esm2022/components/combo-box/combo-box.component.mjs +176 -0
  217. package/esm2022/components/combo-box/combo-box.directive.mjs +23 -0
  218. package/esm2022/components/combo-box/combo-box.module.mjs +67 -0
  219. package/esm2022/components/combo-box/index.mjs +5 -0
  220. package/esm2022/components/combo-box/taiga-ui-legacy-components-combo-box.mjs +5 -0
  221. package/esm2022/components/index.mjs +32 -0
  222. package/esm2022/components/input/index.mjs +4 -0
  223. package/esm2022/components/input/input.component.mjs +89 -0
  224. package/esm2022/components/input/input.directive.mjs +20 -0
  225. package/esm2022/components/input/input.module.mjs +30 -0
  226. package/esm2022/components/input/taiga-ui-legacy-components-input.mjs +5 -0
  227. package/esm2022/components/input-copy/index.mjs +5 -0
  228. package/esm2022/components/input-copy/input-copy.component.mjs +103 -0
  229. package/esm2022/components/input-copy/input-copy.directive.mjs +20 -0
  230. package/esm2022/components/input-copy/input-copy.module.mjs +52 -0
  231. package/esm2022/components/input-copy/input-copy.options.mjs +12 -0
  232. package/esm2022/components/input-copy/taiga-ui-legacy-components-input-copy.mjs +5 -0
  233. package/esm2022/components/input-date/index.mjs +4 -0
  234. package/esm2022/components/input-date/input-date.component.mjs +217 -0
  235. package/esm2022/components/input-date/input-date.directive.mjs +38 -0
  236. package/esm2022/components/input-date/input-date.module.mjs +71 -0
  237. package/esm2022/components/input-date/native-date/native-date.component.mjs +48 -0
  238. package/esm2022/components/input-date/taiga-ui-legacy-components-input-date.mjs +5 -0
  239. package/esm2022/components/input-date-multi/index.mjs +3 -0
  240. package/esm2022/components/input-date-multi/input-date-multi.component.mjs +212 -0
  241. package/esm2022/components/input-date-multi/input-date-multi.module.mjs +67 -0
  242. package/esm2022/components/input-date-multi/taiga-ui-legacy-components-input-date-multi.mjs +5 -0
  243. package/esm2022/components/input-date-range/index.mjs +4 -0
  244. package/esm2022/components/input-date-range/input-date-range.component.mjs +243 -0
  245. package/esm2022/components/input-date-range/input-date-range.directive.mjs +31 -0
  246. package/esm2022/components/input-date-range/input-date-range.module.mjs +67 -0
  247. package/esm2022/components/input-date-range/taiga-ui-legacy-components-input-date-range.mjs +5 -0
  248. package/esm2022/components/input-date-time/index.mjs +4 -0
  249. package/esm2022/components/input-date-time/input-date-time.component.mjs +302 -0
  250. package/esm2022/components/input-date-time/input-date-time.directive.mjs +32 -0
  251. package/esm2022/components/input-date-time/input-date-time.module.mjs +74 -0
  252. package/esm2022/components/input-date-time/native-date-time/native-date-time.directive.mjs +44 -0
  253. package/esm2022/components/input-date-time/taiga-ui-legacy-components-input-date-time.mjs +5 -0
  254. package/esm2022/components/input-month/index.mjs +4 -0
  255. package/esm2022/components/input-month/input-month.component.mjs +132 -0
  256. package/esm2022/components/input-month/input-month.directive.mjs +41 -0
  257. package/esm2022/components/input-month/input-month.module.mjs +53 -0
  258. package/esm2022/components/input-month/taiga-ui-legacy-components-input-month.mjs +5 -0
  259. package/esm2022/components/input-month-range/index.mjs +4 -0
  260. package/esm2022/components/input-month-range/input-month-range.component.mjs +120 -0
  261. package/esm2022/components/input-month-range/input-month-range.directive.mjs +47 -0
  262. package/esm2022/components/input-month-range/input-month-range.module.mjs +49 -0
  263. package/esm2022/components/input-month-range/taiga-ui-legacy-components-input-month-range.mjs +5 -0
  264. package/esm2022/components/input-number/index.mjs +5 -0
  265. package/esm2022/components/input-number/input-number.component.mjs +257 -0
  266. package/esm2022/components/input-number/input-number.directive.mjs +33 -0
  267. package/esm2022/components/input-number/input-number.module.mjs +44 -0
  268. package/esm2022/components/input-number/input-number.options.mjs +19 -0
  269. package/esm2022/components/input-number/taiga-ui-legacy-components-input-number.mjs +5 -0
  270. package/esm2022/components/input-password/index.mjs +5 -0
  271. package/esm2022/components/input-password/input-password.component.mjs +78 -0
  272. package/esm2022/components/input-password/input-password.directive.mjs +30 -0
  273. package/esm2022/components/input-password/input-password.module.mjs +56 -0
  274. package/esm2022/components/input-password/input-password.options.mjs +12 -0
  275. package/esm2022/components/input-password/taiga-ui-legacy-components-input-password.mjs +5 -0
  276. package/esm2022/components/input-phone/index.mjs +5 -0
  277. package/esm2022/components/input-phone/input-phone.component.mjs +217 -0
  278. package/esm2022/components/input-phone/input-phone.directive.mjs +33 -0
  279. package/esm2022/components/input-phone/input-phone.module.mjs +44 -0
  280. package/esm2022/components/input-phone/input-phone.options.mjs +14 -0
  281. package/esm2022/components/input-phone/taiga-ui-legacy-components-input-phone.mjs +5 -0
  282. package/esm2022/components/input-phone/utils/complete-phone-insertion-preprocessor.mjs +41 -0
  283. package/esm2022/components/input-phone/utils/create-phone-mask-expression.mjs +17 -0
  284. package/esm2022/components/input-phone/utils/index.mjs +3 -0
  285. package/esm2022/components/input-phone-international/index.mjs +4 -0
  286. package/esm2022/components/input-phone-international/input-phone-international.component.mjs +181 -0
  287. package/esm2022/components/input-phone-international/input-phone-international.options.mjs +13 -0
  288. package/esm2022/components/input-phone-international/taiga-ui-legacy-components-input-phone-international.mjs +5 -0
  289. package/esm2022/components/input-phone-international/utils/extract-value-from-event.mjs +7 -0
  290. package/esm2022/components/input-range/index.mjs +3 -0
  291. package/esm2022/components/input-range/input-range.component.mjs +203 -0
  292. package/esm2022/components/input-range/input-range.module.mjs +51 -0
  293. package/esm2022/components/input-range/taiga-ui-legacy-components-input-range.mjs +5 -0
  294. package/esm2022/components/input-slider/index.mjs +3 -0
  295. package/esm2022/components/input-slider/input-slider.component.mjs +150 -0
  296. package/esm2022/components/input-slider/input-slider.module.mjs +44 -0
  297. package/esm2022/components/input-slider/taiga-ui-legacy-components-input-slider.mjs +5 -0
  298. package/esm2022/components/input-tag/index.mjs +4 -0
  299. package/esm2022/components/input-tag/input-tag.component.mjs +415 -0
  300. package/esm2022/components/input-tag/input-tag.module.mjs +63 -0
  301. package/esm2022/components/input-tag/input-tag.options.mjs +14 -0
  302. package/esm2022/components/input-tag/taiga-ui-legacy-components-input-tag.mjs +5 -0
  303. package/esm2022/components/input-time/index.mjs +5 -0
  304. package/esm2022/components/input-time/input-time.component.mjs +275 -0
  305. package/esm2022/components/input-time/input-time.directive.mjs +35 -0
  306. package/esm2022/components/input-time/input-time.module.mjs +67 -0
  307. package/esm2022/components/input-time/input-time.options.mjs +22 -0
  308. package/esm2022/components/input-time/native-time/native-time.component.mjs +67 -0
  309. package/esm2022/components/input-time/taiga-ui-legacy-components-input-time.mjs +5 -0
  310. package/esm2022/components/input-year/index.mjs +4 -0
  311. package/esm2022/components/input-year/input-year.component.mjs +107 -0
  312. package/esm2022/components/input-year/input-year.directive.mjs +27 -0
  313. package/esm2022/components/input-year/input-year.module.mjs +49 -0
  314. package/esm2022/components/input-year/taiga-ui-legacy-components-input-year.mjs +5 -0
  315. package/esm2022/components/island/index.mjs +2 -0
  316. package/esm2022/components/island/island.directive.mjs +74 -0
  317. package/esm2022/components/island/taiga-ui-legacy-components-island.mjs +5 -0
  318. package/esm2022/components/multi-select/hide-selected.pipe.mjs +43 -0
  319. package/esm2022/components/multi-select/index.mjs +11 -0
  320. package/esm2022/components/multi-select/multi-select-group/multi-select-group.component.mjs +99 -0
  321. package/esm2022/components/multi-select/multi-select-group/multi-select-group.directive.mjs +65 -0
  322. package/esm2022/components/multi-select/multi-select.component.mjs +204 -0
  323. package/esm2022/components/multi-select/multi-select.directive.mjs +31 -0
  324. package/esm2022/components/multi-select/multi-select.module.mjs +111 -0
  325. package/esm2022/components/multi-select/multi-select.options.mjs +13 -0
  326. package/esm2022/components/multi-select/native-multi-select/native-multi-select-group.component.mjs +60 -0
  327. package/esm2022/components/multi-select/native-multi-select/native-multi-select.component.mjs +56 -0
  328. package/esm2022/components/multi-select/native-multi-select/native-multi-select.mjs +19 -0
  329. package/esm2022/components/multi-select/taiga-ui-legacy-components-multi-select.mjs +5 -0
  330. package/esm2022/components/multi-select-option/index.mjs +3 -0
  331. package/esm2022/components/multi-select-option/multi-select-option.component.mjs +25 -0
  332. package/esm2022/components/multi-select-option/multi-select-option.module.mjs +20 -0
  333. package/esm2022/components/multi-select-option/taiga-ui-legacy-components-multi-select-option.mjs +5 -0
  334. package/esm2022/components/primitive-textfield/index.mjs +8 -0
  335. package/esm2022/components/primitive-textfield/primitive-textfield-options.mjs +17 -0
  336. package/esm2022/components/primitive-textfield/primitive-textfield-types.mjs +2 -0
  337. package/esm2022/components/primitive-textfield/primitive-textfield.component.mjs +247 -0
  338. package/esm2022/components/primitive-textfield/primitive-textfield.directive.mjs +28 -0
  339. package/esm2022/components/primitive-textfield/primitive-textfield.module.mjs +62 -0
  340. package/esm2022/components/primitive-textfield/taiga-ui-legacy-components-primitive-textfield.mjs +5 -0
  341. package/esm2022/components/primitive-textfield/textfield/textfield.component.mjs +39 -0
  342. package/esm2022/components/primitive-textfield/value-decoration/value-decoration.component.mjs +71 -0
  343. package/esm2022/components/select/index.mjs +7 -0
  344. package/esm2022/components/select/native-select/native-select-group.component.mjs +60 -0
  345. package/esm2022/components/select/native-select/native-select.component.mjs +56 -0
  346. package/esm2022/components/select/select.component.mjs +116 -0
  347. package/esm2022/components/select/select.directive.mjs +29 -0
  348. package/esm2022/components/select/select.module.mjs +83 -0
  349. package/esm2022/components/select/select.options.mjs +12 -0
  350. package/esm2022/components/select/taiga-ui-legacy-components-select.mjs +5 -0
  351. package/esm2022/components/select-option/index.mjs +3 -0
  352. package/esm2022/components/select-option/select-option.component.mjs +65 -0
  353. package/esm2022/components/select-option/select-option.module.mjs +21 -0
  354. package/esm2022/components/select-option/taiga-ui-legacy-components-select-option.mjs +5 -0
  355. package/esm2022/components/sheet/components/sheet/sheet.component.mjs +118 -0
  356. package/esm2022/components/sheet/components/sheet/sheet.providers.mjs +42 -0
  357. package/esm2022/components/sheet/components/sheet-bar/sheet-bar.component.mjs +27 -0
  358. package/esm2022/components/sheet/components/sheet-heading/sheet-heading.component.mjs +31 -0
  359. package/esm2022/components/sheet/components/sheets-host/sheets-host.component.mjs +46 -0
  360. package/esm2022/components/sheet/directives/sheet-close/sheet-close.directive.mjs +38 -0
  361. package/esm2022/components/sheet/directives/sheet-stop/sheet-stop.directive.mjs +37 -0
  362. package/esm2022/components/sheet/directives/sheet-top/sheet-top.directive.mjs +51 -0
  363. package/esm2022/components/sheet/directives/sheet-wrapper/sheet-wrapper.directive.mjs +76 -0
  364. package/esm2022/components/sheet/index.mjs +15 -0
  365. package/esm2022/components/sheet/sheet-options.mjs +21 -0
  366. package/esm2022/components/sheet/sheet-tokens.mjs +14 -0
  367. package/esm2022/components/sheet/sheet.directive.mjs +38 -0
  368. package/esm2022/components/sheet/sheet.mjs +2 -0
  369. package/esm2022/components/sheet/sheet.module.mjs +74 -0
  370. package/esm2022/components/sheet/sheet.service.mjs +51 -0
  371. package/esm2022/components/sheet/taiga-ui-legacy-components-sheet.mjs +5 -0
  372. package/esm2022/components/svg/content-processor.mjs +38 -0
  373. package/esm2022/components/svg/deprecated-icons.mjs +59 -0
  374. package/esm2022/components/svg/index.mjs +6 -0
  375. package/esm2022/components/svg/svg-options.mjs +60 -0
  376. package/esm2022/components/svg/svg.component.mjs +147 -0
  377. package/esm2022/components/svg/svg.service.mjs +64 -0
  378. package/esm2022/components/svg/taiga-ui-legacy-components-svg.mjs +5 -0
  379. package/esm2022/components/table-bar/index.mjs +6 -0
  380. package/esm2022/components/table-bar/table-bar.component.mjs +33 -0
  381. package/esm2022/components/table-bar/table-bar.directive.mjs +21 -0
  382. package/esm2022/components/table-bar/table-bar.options.mjs +16 -0
  383. package/esm2022/components/table-bar/table-bars-host.component.mjs +35 -0
  384. package/esm2022/components/table-bar/table-bars.service.mjs +21 -0
  385. package/esm2022/components/table-bar/taiga-ui-legacy-components-table-bar.mjs +5 -0
  386. package/esm2022/components/tag/index.mjs +4 -0
  387. package/esm2022/components/tag/tag.component.mjs +171 -0
  388. package/esm2022/components/tag/tag.module.mjs +38 -0
  389. package/esm2022/components/tag/tag.options.mjs +15 -0
  390. package/esm2022/components/tag/taiga-ui-legacy-components-tag.mjs +5 -0
  391. package/esm2022/components/taiga-ui-legacy-components.mjs +5 -0
  392. package/esm2022/components/textarea/index.mjs +4 -0
  393. package/esm2022/components/textarea/taiga-ui-legacy-components-textarea.mjs +5 -0
  394. package/esm2022/components/textarea/textarea.component.mjs +189 -0
  395. package/esm2022/components/textarea/textarea.directive.mjs +20 -0
  396. package/esm2022/components/textarea/textarea.module.mjs +64 -0
  397. package/esm2022/components/tooltip/index.mjs +3 -0
  398. package/esm2022/components/tooltip/taiga-ui-legacy-components-tooltip.mjs +5 -0
  399. package/esm2022/components/tooltip/tooltip.component.mjs +47 -0
  400. package/esm2022/components/tooltip/tooltip.module.mjs +24 -0
  401. package/esm2022/directives/index.mjs +6 -0
  402. package/esm2022/directives/legacy-dropdown-open-monitor/index.mjs +2 -0
  403. package/esm2022/directives/legacy-dropdown-open-monitor/legacy-dropdown-open-monitor.mjs +40 -0
  404. package/esm2022/directives/legacy-dropdown-open-monitor/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs +5 -0
  405. package/esm2022/directives/taiga-ui-legacy-directives.mjs +5 -0
  406. package/esm2022/directives/textfield-controller/index.mjs +15 -0
  407. package/esm2022/directives/textfield-controller/taiga-ui-legacy-directives-textfield-controller.mjs +5 -0
  408. package/esm2022/directives/textfield-controller/textfield-appearance.directive.mjs +32 -0
  409. package/esm2022/directives/textfield-controller/textfield-cleaner.directive.mjs +25 -0
  410. package/esm2022/directives/textfield-controller/textfield-controller.module.mjs +72 -0
  411. package/esm2022/directives/textfield-controller/textfield-controller.provider.mjs +44 -0
  412. package/esm2022/directives/textfield-controller/textfield-custom-content.directive.mjs +25 -0
  413. package/esm2022/directives/textfield-controller/textfield-filler.directive.mjs +25 -0
  414. package/esm2022/directives/textfield-controller/textfield-icon-left.directive.mjs +21 -0
  415. package/esm2022/directives/textfield-controller/textfield-icon.directive.mjs +21 -0
  416. package/esm2022/directives/textfield-controller/textfield-label-outside.directive.mjs +29 -0
  417. package/esm2022/directives/textfield-controller/textfield-postfix.directive.mjs +25 -0
  418. package/esm2022/directives/textfield-controller/textfield-prefix.directive.mjs +25 -0
  419. package/esm2022/directives/textfield-controller/textfield-size.directive.mjs +25 -0
  420. package/esm2022/directives/textfield-controller/textfield.controller.mjs +48 -0
  421. package/esm2022/directives/textfield-controller/textfield.options.mjs +14 -0
  422. package/esm2022/directives/unfinished-validator/index.mjs +3 -0
  423. package/esm2022/directives/unfinished-validator/taiga-ui-legacy-directives-unfinished-validator.mjs +5 -0
  424. package/esm2022/directives/unfinished-validator/unfinished-validator.directive.mjs +25 -0
  425. package/esm2022/directives/unfinished-validator/unfinished.validator.mjs +15 -0
  426. package/esm2022/directives/value-accessor/index.mjs +4 -0
  427. package/esm2022/directives/value-accessor/taiga-ui-legacy-directives-value-accessor.mjs +5 -0
  428. package/esm2022/directives/value-accessor/value-accessor.directive.mjs +16 -0
  429. package/esm2022/directives/value-accessor/value-accessor.module.mjs +17 -0
  430. package/esm2022/directives/value-accessor/value-accessor.provider.mjs +10 -0
  431. package/esm2022/directives/wrapper/index.mjs +3 -0
  432. package/esm2022/directives/wrapper/taiga-ui-legacy-directives-wrapper.mjs +5 -0
  433. package/esm2022/directives/wrapper/wrapper.directive.mjs +85 -0
  434. package/esm2022/directives/wrapper/wrapper.module.mjs +20 -0
  435. package/esm2022/index.mjs +7 -0
  436. package/esm2022/pipes/format-phone/format-phone.pipe.mjs +50 -0
  437. package/esm2022/pipes/format-phone/index.mjs +2 -0
  438. package/esm2022/pipes/format-phone/taiga-ui-legacy-pipes-format-phone.mjs +5 -0
  439. package/esm2022/pipes/index.mjs +4 -0
  440. package/esm2022/pipes/iso-to-country-code/index.mjs +2 -0
  441. package/esm2022/pipes/iso-to-country-code/iso-to-country-code.pipe.mjs +43 -0
  442. package/esm2022/pipes/iso-to-country-code/taiga-ui-legacy-pipes-iso-to-country-code.mjs +5 -0
  443. package/esm2022/pipes/taiga-ui-legacy-pipes.mjs +5 -0
  444. package/esm2022/pipes/to-country-code/index.mjs +2 -0
  445. package/esm2022/pipes/to-country-code/taiga-ui-legacy-pipes-to-country-code.mjs +5 -0
  446. package/esm2022/pipes/to-country-code/to-country-code.pipe.mjs +73 -0
  447. package/esm2022/taiga-ui-legacy.mjs +5 -0
  448. package/esm2022/tokens/countries-masks.mjs +254 -0
  449. package/esm2022/tokens/focusable-item-accessor.mjs +14 -0
  450. package/esm2022/tokens/fonts-ready.mjs +7 -0
  451. package/esm2022/tokens/icons.mjs +7 -0
  452. package/esm2022/tokens/index.mjs +15 -0
  453. package/esm2022/tokens/is-apple.mjs +9 -0
  454. package/esm2022/tokens/is-chromium.mjs +8 -0
  455. package/esm2022/tokens/is-firefox.mjs +9 -0
  456. package/esm2022/tokens/is-stackblitz.mjs +5 -0
  457. package/esm2022/tokens/month-formatter.mjs +17 -0
  458. package/esm2022/tokens/sanitizer.mjs +6 -0
  459. package/esm2022/tokens/taiga-ui-legacy-tokens.mjs +5 -0
  460. package/esm2022/tokens/textfield-appearance.mjs +7 -0
  461. package/esm2022/tokens/textfield-host.mjs +10 -0
  462. package/esm2022/tokens/touch-supported.mjs +5 -0
  463. package/esm2022/tokens/value-accessor.mjs +7 -0
  464. package/esm2022/utils/date-mode-maskito-adapter.mjs +6 -0
  465. package/esm2022/utils/format-phone.mjs +59 -0
  466. package/esm2022/utils/get-border.mjs +20 -0
  467. package/esm2022/utils/get-max-allowed-phone-length.mjs +25 -0
  468. package/esm2022/utils/get-safe-area-size.mjs +17 -0
  469. package/esm2022/utils/icons-path-factory.mjs +14 -0
  470. package/esm2022/utils/index.mjs +14 -0
  471. package/esm2022/utils/is-apple.mjs +6 -0
  472. package/esm2022/utils/is-presumed-html-string.mjs +6 -0
  473. package/esm2022/utils/iso-to-country-code.mjs +15 -0
  474. package/esm2022/utils/not-kz-region.mjs +23 -0
  475. package/esm2022/utils/process-icon.mjs +32 -0
  476. package/esm2022/utils/specific-dropdown-controllers.mjs +6 -0
  477. package/esm2022/utils/status.mjs +2 -0
  478. package/esm2022/utils/taiga-ui-legacy-utils.mjs +5 -0
  479. package/fesm2022/taiga-ui-legacy-classes.mjs +377 -0
  480. package/fesm2022/taiga-ui-legacy-classes.mjs.map +1 -0
  481. package/fesm2022/taiga-ui-legacy-components-arrow.mjs +73 -0
  482. package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +1 -0
  483. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +280 -0
  484. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +1 -0
  485. package/fesm2022/taiga-ui-legacy-components-input-copy.mjs +177 -0
  486. package/fesm2022/taiga-ui-legacy-components-input-copy.mjs.map +1 -0
  487. package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs +277 -0
  488. package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs.map +1 -0
  489. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +334 -0
  490. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +1 -0
  491. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +438 -0
  492. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +1 -0
  493. package/fesm2022/taiga-ui-legacy-components-input-date.mjs +358 -0
  494. package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +1 -0
  495. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +209 -0
  496. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +1 -0
  497. package/fesm2022/taiga-ui-legacy-components-input-month.mjs +219 -0
  498. package/fesm2022/taiga-ui-legacy-components-input-month.mjs.map +1 -0
  499. package/fesm2022/taiga-ui-legacy-components-input-number.mjs +344 -0
  500. package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +1 -0
  501. package/fesm2022/taiga-ui-legacy-components-input-password.mjs +167 -0
  502. package/fesm2022/taiga-ui-legacy-components-input-password.mjs.map +1 -0
  503. package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs +204 -0
  504. package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs.map +1 -0
  505. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +355 -0
  506. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +1 -0
  507. package/fesm2022/taiga-ui-legacy-components-input-range.mjs +253 -0
  508. package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +1 -0
  509. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +192 -0
  510. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +1 -0
  511. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +488 -0
  512. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +1 -0
  513. package/fesm2022/taiga-ui-legacy-components-input-time.mjs +447 -0
  514. package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +1 -0
  515. package/fesm2022/taiga-ui-legacy-components-input-year.mjs +176 -0
  516. package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +1 -0
  517. package/fesm2022/taiga-ui-legacy-components-input.mjs +132 -0
  518. package/fesm2022/taiga-ui-legacy-components-input.mjs.map +1 -0
  519. package/fesm2022/taiga-ui-legacy-components-island.mjs +80 -0
  520. package/fesm2022/taiga-ui-legacy-components-island.mjs.map +1 -0
  521. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs +47 -0
  522. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs.map +1 -0
  523. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +628 -0
  524. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +1 -0
  525. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +443 -0
  526. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +1 -0
  527. package/fesm2022/taiga-ui-legacy-components-select-option.mjs +88 -0
  528. package/fesm2022/taiga-ui-legacy-components-select-option.mjs.map +1 -0
  529. package/fesm2022/taiga-ui-legacy-components-select.mjs +323 -0
  530. package/fesm2022/taiga-ui-legacy-components-select.mjs.map +1 -0
  531. package/fesm2022/taiga-ui-legacy-components-sheet.mjs +561 -0
  532. package/fesm2022/taiga-ui-legacy-components-sheet.mjs.map +1 -0
  533. package/fesm2022/taiga-ui-legacy-components-svg.mjs +356 -0
  534. package/fesm2022/taiga-ui-legacy-components-svg.mjs.map +1 -0
  535. package/fesm2022/taiga-ui-legacy-components-table-bar.mjs +115 -0
  536. package/fesm2022/taiga-ui-legacy-components-table-bar.mjs.map +1 -0
  537. package/fesm2022/taiga-ui-legacy-components-tag.mjs +225 -0
  538. package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +1 -0
  539. package/fesm2022/taiga-ui-legacy-components-textarea.mjs +267 -0
  540. package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +1 -0
  541. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +71 -0
  542. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +1 -0
  543. package/fesm2022/taiga-ui-legacy-components.mjs +36 -0
  544. package/fesm2022/taiga-ui-legacy-components.mjs.map +1 -0
  545. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs +46 -0
  546. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs.map +1 -0
  547. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs +365 -0
  548. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs.map +1 -0
  549. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs +44 -0
  550. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs.map +1 -0
  551. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs +43 -0
  552. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs.map +1 -0
  553. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +107 -0
  554. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +1 -0
  555. package/fesm2022/taiga-ui-legacy-directives.mjs +10 -0
  556. package/fesm2022/taiga-ui-legacy-directives.mjs.map +1 -0
  557. package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs +56 -0
  558. package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs.map +1 -0
  559. package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs +49 -0
  560. package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs.map +1 -0
  561. package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs +79 -0
  562. package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs.map +1 -0
  563. package/fesm2022/taiga-ui-legacy-pipes.mjs +8 -0
  564. package/fesm2022/taiga-ui-legacy-pipes.mjs.map +1 -0
  565. package/fesm2022/taiga-ui-legacy-tokens.mjs +348 -0
  566. package/fesm2022/taiga-ui-legacy-tokens.mjs.map +1 -0
  567. package/fesm2022/taiga-ui-legacy-utils.mjs +235 -0
  568. package/fesm2022/taiga-ui-legacy-utils.mjs.map +1 -0
  569. package/fesm2022/taiga-ui-legacy.mjs +11 -0
  570. package/fesm2022/taiga-ui-legacy.mjs.map +1 -0
  571. package/index.d.ts +6 -0
  572. package/package.json +303 -0
  573. package/pipes/format-phone/format-phone.pipe.d.ts +34 -0
  574. package/pipes/format-phone/index.d.ts +1 -0
  575. package/pipes/index.d.ts +3 -0
  576. package/pipes/iso-to-country-code/index.d.ts +1 -0
  577. package/pipes/iso-to-country-code/iso-to-country-code.pipe.d.ts +29 -0
  578. package/pipes/to-country-code/index.d.ts +1 -0
  579. package/pipes/to-country-code/to-country-code.pipe.d.ts +37 -0
  580. package/styles/mixins/mixins.less +252 -0
  581. package/styles/mixins/mixins.scss +230 -0
  582. package/styles/mixins/textfield.less +315 -0
  583. package/styles/mixins/textfield.scss +306 -0
  584. package/styles/mixins/wrapper.less +65 -0
  585. package/styles/mixins/wrapper.scss +59 -0
  586. package/styles/taiga-ui-local.less +4 -0
  587. package/styles/taiga-ui-local.scss +4 -0
  588. package/styles/taiga-ui-theme.less +15 -0
  589. package/styles/wrapper/accent.less +28 -0
  590. package/styles/wrapper/base.less +44 -0
  591. package/styles/wrapper/floating.less +19 -0
  592. package/styles/wrapper/glass.less +31 -0
  593. package/styles/wrapper/icon.less +53 -0
  594. package/styles/wrapper/mono.less +23 -0
  595. package/styles/wrapper/none.less +5 -0
  596. package/styles/wrapper/opposite.less +33 -0
  597. package/styles/wrapper/outline.less +52 -0
  598. package/styles/wrapper/primary.less +32 -0
  599. package/styles/wrapper/secondary-destructive.less +16 -0
  600. package/styles/wrapper/secondary.less +47 -0
  601. package/styles/wrapper/table.less +82 -0
  602. package/styles/wrapper/textfield.less +80 -0
  603. package/styles/wrapper/whiteblock.less +47 -0
  604. package/tokens/countries-masks.d.ts +7 -0
  605. package/tokens/focusable-item-accessor.d.ts +22 -0
  606. package/tokens/fonts-ready.d.ts +3 -0
  607. package/tokens/icons.d.ts +5 -0
  608. package/tokens/index.d.ts +14 -0
  609. package/tokens/is-apple.d.ts +4 -0
  610. package/tokens/is-chromium.d.ts +4 -0
  611. package/tokens/is-firefox.d.ts +4 -0
  612. package/tokens/is-stackblitz.d.ts +1 -0
  613. package/tokens/month-formatter.d.ts +10 -0
  614. package/tokens/sanitizer.d.ts +6 -0
  615. package/tokens/textfield-appearance.d.ts +5 -0
  616. package/tokens/textfield-host.d.ts +17 -0
  617. package/tokens/touch-supported.d.ts +1 -0
  618. package/tokens/value-accessor.d.ts +7 -0
  619. package/utils/date-mode-maskito-adapter.d.ts +3 -0
  620. package/utils/format-phone.d.ts +29 -0
  621. package/utils/get-border.d.ts +2 -0
  622. package/utils/get-max-allowed-phone-length.d.ts +23 -0
  623. package/utils/get-safe-area-size.d.ts +6 -0
  624. package/utils/icons-path-factory.d.ts +4 -0
  625. package/utils/index.d.ts +13 -0
  626. package/utils/is-apple.d.ts +1 -0
  627. package/utils/is-presumed-html-string.d.ts +1 -0
  628. package/utils/iso-to-country-code.d.ts +12 -0
  629. package/utils/not-kz-region.d.ts +19 -0
  630. package/utils/process-icon.d.ts +1 -0
  631. package/utils/specific-dropdown-controllers.d.ts +1 -0
  632. package/utils/status.d.ts +1 -0
@@ -0,0 +1,65 @@
1
+ import { Directive, forwardRef, Optional } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
3
+ import { EMPTY_FUNCTION } from '@taiga-ui/cdk/constants';
4
+ import { tuiArrayToggle } from '@taiga-ui/cdk/utils/miscellaneous';
5
+ import { TUI_DATA_LIST_HOST, tuiAsOptionContent, } from '@taiga-ui/core/components/data-list';
6
+ import { TuiMultiSelectOptionComponent } from '@taiga-ui/legacy/components/multi-select-option';
7
+ import { PolymorpheusComponent } from '@taiga-ui/polymorpheus';
8
+ import { TuiMultiSelectComponent } from '../multi-select.component';
9
+ import * as i0 from "@angular/core";
10
+ export const TUI_MULTI_SELECT_OPTION = new PolymorpheusComponent(TuiMultiSelectOptionComponent);
11
+ class TuiMultiSelectGroupDirective {
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiMultiSelectGroupDirective, selector: "[tuiMultiSelectGroup]", providers: [
14
+ tuiAsOptionContent(TUI_MULTI_SELECT_OPTION),
15
+ {
16
+ provide: TUI_DATA_LIST_HOST,
17
+ deps: [
18
+ NgControl,
19
+ [new Optional(), forwardRef(() => TuiMultiSelectComponent)],
20
+ ],
21
+ useFactory: (control, host) => host || {
22
+ handleOption: option => control.control?.setValue(tuiArrayToggle(control.value || [], option)),
23
+ },
24
+ },
25
+ {
26
+ provide: NG_VALUE_ACCESSOR,
27
+ multi: true,
28
+ useValue: {
29
+ writeValue: EMPTY_FUNCTION,
30
+ registerOnChange: EMPTY_FUNCTION,
31
+ registerOnTouched: EMPTY_FUNCTION,
32
+ },
33
+ },
34
+ ], ngImport: i0 }); }
35
+ }
36
+ export { TuiMultiSelectGroupDirective };
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectGroupDirective, decorators: [{
38
+ type: Directive,
39
+ args: [{
40
+ selector: '[tuiMultiSelectGroup]',
41
+ providers: [
42
+ tuiAsOptionContent(TUI_MULTI_SELECT_OPTION),
43
+ {
44
+ provide: TUI_DATA_LIST_HOST,
45
+ deps: [
46
+ NgControl,
47
+ [new Optional(), forwardRef(() => TuiMultiSelectComponent)],
48
+ ],
49
+ useFactory: (control, host) => host || {
50
+ handleOption: option => control.control?.setValue(tuiArrayToggle(control.value || [], option)),
51
+ },
52
+ },
53
+ {
54
+ provide: NG_VALUE_ACCESSOR,
55
+ multi: true,
56
+ useValue: {
57
+ writeValue: EMPTY_FUNCTION,
58
+ registerOnChange: EMPTY_FUNCTION,
59
+ registerOnTouched: EMPTY_FUNCTION,
60
+ },
61
+ },
62
+ ],
63
+ }]
64
+ }] });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWdyb3VwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jb21wb25lbnRzL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QtZ3JvdXAvbXVsdGktc2VsZWN0LWdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFakUsT0FBTyxFQUNILGtCQUFrQixFQUNsQixrQkFBa0IsR0FDckIsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUM5RixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUU3RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQzs7QUFFbEUsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxxQkFBcUIsQ0FDNUQsNkJBQTZCLENBQ2hDLENBQUM7QUFFRixNQWdDYSw0QkFBNEI7K0dBQTVCLDRCQUE0QjttR0FBNUIsNEJBQTRCLGdEQTlCMUI7WUFDUCxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQztZQUMzQztnQkFDSSxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixJQUFJLEVBQUU7b0JBQ0YsU0FBUztvQkFDVCxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUM7aUJBQzlEO2dCQUNELFVBQVUsRUFBRSxDQUNSLE9BQWtCLEVBQ2xCLElBQStCLEVBQ2IsRUFBRSxDQUNwQixJQUFJLElBQUk7b0JBQ0osWUFBWSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQ25CLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUNyQixjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQzlDO2lCQUNSO2FBQ1I7WUFDRDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixLQUFLLEVBQUUsSUFBSTtnQkFDWCxRQUFRLEVBQUU7b0JBQ04sVUFBVSxFQUFFLGNBQWM7b0JBQzFCLGdCQUFnQixFQUFFLGNBQWM7b0JBQ2hDLGlCQUFpQixFQUFFLGNBQWM7aUJBQ3BDO2FBQ0o7U0FDSjs7U0FFUSw0QkFBNEI7NEZBQTVCLDRCQUE0QjtrQkFoQ3hDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsU0FBUyxFQUFFO3dCQUNQLGtCQUFrQixDQUFDLHVCQUF1QixDQUFDO3dCQUMzQzs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixJQUFJLEVBQUU7Z0NBQ0YsU0FBUztnQ0FDVCxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUM7NkJBQzlEOzRCQUNELFVBQVUsRUFBRSxDQUNSLE9BQWtCLEVBQ2xCLElBQStCLEVBQ2IsRUFBRSxDQUNwQixJQUFJLElBQUk7Z0NBQ0osWUFBWSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQ25CLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUNyQixjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQzlDOzZCQUNSO3lCQUNSO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFFBQVEsRUFBRTtnQ0FDTixVQUFVLEVBQUUsY0FBYztnQ0FDMUIsZ0JBQWdCLEVBQUUsY0FBYztnQ0FDaEMsaUJBQWlCLEVBQUUsY0FBYzs2QkFDcEM7eUJBQ0o7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOR19WQUxVRV9BQ0NFU1NPUiwgTmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0VNUFRZX0ZVTkNUSU9OfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge3R1aUFycmF5VG9nZ2xlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHR5cGUge1R1aURhdGFMaXN0SG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtcbiAgICBUVUlfREFUQV9MSVNUX0hPU1QsXG4gICAgdHVpQXNPcHRpb25Db250ZW50LFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5pbXBvcnQge1R1aU11bHRpU2VsZWN0T3B0aW9uQ29tcG9uZW50fSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2NvbXBvbmVudHMvbXVsdGktc2VsZWN0LW9wdGlvbic7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpTXVsdGlTZWxlY3RDb21wb25lbnR9IGZyb20gJy4uL211bHRpLXNlbGVjdC5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgVFVJX01VTFRJX1NFTEVDVF9PUFRJT04gPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFxuICAgIFR1aU11bHRpU2VsZWN0T3B0aW9uQ29tcG9uZW50LFxuKTtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpTXVsdGlTZWxlY3RHcm91cF0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc09wdGlvbkNvbnRlbnQoVFVJX01VTFRJX1NFTEVDVF9PUFRJT04pLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfREFUQV9MSVNUX0hPU1QsXG4gICAgICAgICAgICBkZXBzOiBbXG4gICAgICAgICAgICAgICAgTmdDb250cm9sLFxuICAgICAgICAgICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgZm9yd2FyZFJlZigoKSA9PiBUdWlNdWx0aVNlbGVjdENvbXBvbmVudCldLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IDxUPihcbiAgICAgICAgICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgICAgICAgICAgICAgaG9zdDogVHVpRGF0YUxpc3RIb3N0PFQ+IHwgbnVsbCxcbiAgICAgICAgICAgICk6IFR1aURhdGFMaXN0SG9zdDxUPiA9PlxuICAgICAgICAgICAgICAgIGhvc3QgfHwge1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcHRpb246IG9wdGlvbiA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbC5jb250cm9sPy5zZXRWYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlBcnJheVRvZ2dsZShjb250cm9sLnZhbHVlIHx8IFtdLCBvcHRpb24pLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgICAgICB3cml0ZVZhbHVlOiBFTVBUWV9GVU5DVElPTixcbiAgICAgICAgICAgICAgICByZWdpc3Rlck9uQ2hhbmdlOiBFTVBUWV9GVU5DVElPTixcbiAgICAgICAgICAgICAgICByZWdpc3Rlck9uVG91Y2hlZDogRU1QVFlfRlVOQ1RJT04sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aU11bHRpU2VsZWN0R3JvdXBEaXJlY3RpdmUge31cbiJdfQ==
@@ -0,0 +1,204 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, HostBinding, inject, Input, Output, TemplateRef, ViewChild, } from '@angular/core';
3
+ import { EMPTY_ARRAY, TUI_TRUE_HANDLER } from '@taiga-ui/cdk/constants';
4
+ import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
5
+ import { tuiIsNativeFocused } from '@taiga-ui/cdk/utils/focus';
6
+ import { tuiArrayToggle, tuiIsString, tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
7
+ import { TUI_DATA_LIST_ACCESSOR, tuiAsDataListHost, TuiDataListDirective, } from '@taiga-ui/core/components/data-list';
8
+ import { TuiDropdownOpen } from '@taiga-ui/core/directives/dropdown';
9
+ import { TUI_ITEMS_HANDLERS } from '@taiga-ui/kit/tokens';
10
+ import { AbstractTuiMultipleControl, tuiAsControl, TuiStringifiableItem, } from '@taiga-ui/legacy/classes';
11
+ import { TUI_ARROW_MODE } from '@taiga-ui/legacy/components/arrow';
12
+ import { TuiInputTagComponent } from '@taiga-ui/legacy/components/input-tag';
13
+ import { TEXTFIELD_CONTROLLER_PROVIDER, TUI_TEXTFIELD_WATCHED_CONTROLLER, } from '@taiga-ui/legacy/directives';
14
+ import { tuiAsFocusableItemAccessor } from '@taiga-ui/legacy/tokens';
15
+ import { FIXED_DROPDOWN_CONTROLLER_PROVIDER } from '@taiga-ui/legacy/utils';
16
+ import { TUI_MULTI_SELECT_OPTIONS } from './multi-select.options';
17
+ import { AbstractTuiNativeMultiSelect } from './native-multi-select/native-multi-select';
18
+ import * as i0 from "@angular/core";
19
+ import * as i1 from "@angular/common";
20
+ import * as i2 from "@angular/forms";
21
+ import * as i3 from "@taiga-ui/polymorpheus";
22
+ import * as i4 from "@taiga-ui/legacy/directives";
23
+ import * as i5 from "@taiga-ui/legacy/components/input-tag";
24
+ import * as i6 from "@taiga-ui/core/directives/dropdown";
25
+ import * as i7 from "@taiga-ui/cdk/pipes/mapper";
26
+ class TuiMultiSelectComponent extends AbstractTuiMultipleControl {
27
+ constructor() {
28
+ super(...arguments);
29
+ this.arrowMode = inject(TUI_ARROW_MODE);
30
+ this.itemsHandlers = inject(TUI_ITEMS_HANDLERS);
31
+ this.options = inject(TUI_MULTI_SELECT_OPTIONS);
32
+ this.open = false;
33
+ this.controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);
34
+ this.isMobile = inject(TUI_IS_MOBILE);
35
+ this.stringify = this.itemsHandlers.stringify;
36
+ this.identityMatcher = this.itemsHandlers.identityMatcher;
37
+ this.search = '';
38
+ this.placeholder = '';
39
+ this.editable = true;
40
+ this.disabledItemHandler = this.itemsHandlers.disabledItemHandler;
41
+ this.valueContent = this.options.valueContent;
42
+ this.tagValidator = TUI_TRUE_HANDLER;
43
+ this.rows = this.options.rows;
44
+ this.searchChange = new EventEmitter();
45
+ this.valueMapper = (value, stringify, group) => group
46
+ ? EMPTY_ARRAY
47
+ : value.map(item => new TuiStringifiableItem(item, stringify));
48
+ this.disabledItemHandlerWrapper = handler => stringifiable => tuiIsString(stringifiable) || handler(stringifiable.item);
49
+ }
50
+ get size() {
51
+ return this.controller.size;
52
+ }
53
+ get nativeFocusableElement() {
54
+ return this.input?.nativeFocusableElement ?? null;
55
+ }
56
+ get focused() {
57
+ return !!this.input?.focused || !!this.dropdown?.focused;
58
+ }
59
+ onValueChange(value) {
60
+ this.value = value;
61
+ }
62
+ onSearch(search) {
63
+ // Clearing sets the empty value, the dropdown should not be opened on clear.
64
+ if (search !== '') {
65
+ this.open = true;
66
+ }
67
+ this.updateSearch(search);
68
+ }
69
+ setDisabledState() {
70
+ super.setDisabledState();
71
+ this.open = false;
72
+ }
73
+ handleOption(option) {
74
+ const { value, identityMatcher } = this;
75
+ const index = value.findIndex(item => identityMatcher(item, option));
76
+ this.value =
77
+ index === -1 ? [...value, option] : value.filter((_, i) => i !== index);
78
+ this.updateSearch(null);
79
+ }
80
+ get arrow() {
81
+ return this.interactive ? this.arrowMode.interactive : this.arrowMode.disabled;
82
+ }
83
+ get nativeDropdownMode() {
84
+ return !!this.nativeSelect && this.isMobile && !this.editable;
85
+ }
86
+ get computedValue() {
87
+ return this.computedGroup ? EMPTY_ARRAY : this.value;
88
+ }
89
+ // @bad TODO: think of a better way
90
+ get searchOrSpace() {
91
+ return this.computedGroup ? ' ' : this.searchString;
92
+ }
93
+ get searchString() {
94
+ return this.search === null ? '' : this.search;
95
+ }
96
+ get computedGroup() {
97
+ return (!!this.valueContent &&
98
+ this.value.length > 0 &&
99
+ (!this.focused || !this.editable));
100
+ }
101
+ getStringifier(stringify) {
102
+ return ({ $implicit }) => stringify($implicit);
103
+ }
104
+ onSpace(event) {
105
+ if (!this.editable) {
106
+ event.preventDefault();
107
+ }
108
+ if (!this.readOnly) {
109
+ this.open = true;
110
+ }
111
+ }
112
+ onEnter(event) {
113
+ const { value } = this;
114
+ const options = this.accessor ? this.accessor.getOptions() : [];
115
+ if (options.length !== 1) {
116
+ return;
117
+ }
118
+ event.preventDefault();
119
+ this.value = tuiArrayToggle(value, options[0]);
120
+ this.updateSearch(null);
121
+ }
122
+ onClick({ nativeFocusableElement }) {
123
+ if (this.interactive &&
124
+ nativeFocusableElement &&
125
+ tuiIsNativeFocused(nativeFocusableElement)) {
126
+ this.open = !this.open;
127
+ }
128
+ }
129
+ onInput(value) {
130
+ this.value = value.map(({ item }) => item);
131
+ }
132
+ onActiveZone(active) {
133
+ this.updateFocused(active);
134
+ }
135
+ updateSearch(search) {
136
+ if (this.search === search) {
137
+ return;
138
+ }
139
+ this.search = search;
140
+ this.searchChange.emit(search);
141
+ }
142
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
143
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiMultiSelectComponent, selector: "tui-multi-select", inputs: { stringify: "stringify", identityMatcher: "identityMatcher", search: "search", placeholder: "placeholder", editable: "editable", disabledItemHandler: "disabledItemHandler", valueContent: "valueContent", tagValidator: "tagValidator", rows: "rows" }, outputs: { searchChange: "searchChange" }, host: { properties: { "class._expandable": "rows > 1", "class._editable": "this.editable", "attr.data-size": "this.size" } }, providers: [
144
+ tuiAsFocusableItemAccessor(TuiMultiSelectComponent),
145
+ tuiAsControl(TuiMultiSelectComponent),
146
+ tuiAsDataListHost(TuiMultiSelectComponent),
147
+ TEXTFIELD_CONTROLLER_PROVIDER,
148
+ ], 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, 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 [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"false\"\n [inputHidden]=\"!editable\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"computedValue | tuiMapper: valueMapper : stringify\"\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 (ngModelChange)=\"onInput($event)\"\n (searchChange)=\"onSearch($event)\"\n >\n <ng-content />\n <ng-template #select>\n <ng-content\n *ngIf=\"isMobile\"\n select=\"select\"\n />\n </ng-template>\n\n <ng-container\n *ngTemplateOutlet=\"select\"\n ngProjectAs=\"select\"\n />\n\n <div\n *ngIf=\"computedGroup\"\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 </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.silent)=\"(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{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}.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: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: i4.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { kind: "component", type: i5.TuiInputTagComponent, selector: "tui-input-tag", inputs: ["separator", "search", "editable", "tagValidator", "rows", "inputHidden", "uniqueTags", "maxLength", "placeholder", "removable", "pseudoOpen", "disabledItemHandler", "pseudoFocused"], outputs: ["searchChange"] }, { kind: "directive", type: i6.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i6.TuiDropdownOpen, selector: "[tuiDropdownOpen],[tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i4.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { kind: "directive", type: i4.TuiLegacyDropdownOpenMonitorDirective, selector: "[tuiDropdownOpenMonitor]" }, { kind: "pipe", type: i7.TuiMapperPipe, name: "tuiMapper" }], viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
149
+ }
150
+ __decorate([
151
+ tuiPure
152
+ ], TuiMultiSelectComponent.prototype, "getStringifier", null);
153
+ export { TuiMultiSelectComponent };
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectComponent, decorators: [{
155
+ type: Component,
156
+ args: [{ selector: 'tui-multi-select', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
157
+ tuiAsFocusableItemAccessor(TuiMultiSelectComponent),
158
+ tuiAsControl(TuiMultiSelectComponent),
159
+ tuiAsDataListHost(TuiMultiSelectComponent),
160
+ TEXTFIELD_CONTROLLER_PROVIDER,
161
+ ], viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], host: { '[class._expandable]': 'rows > 1' }, 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 [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"false\"\n [inputHidden]=\"!editable\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"computedValue | tuiMapper: valueMapper : stringify\"\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 (ngModelChange)=\"onInput($event)\"\n (searchChange)=\"onSearch($event)\"\n >\n <ng-content />\n <ng-template #select>\n <ng-content\n *ngIf=\"isMobile\"\n select=\"select\"\n />\n </ng-template>\n\n <ng-container\n *ngTemplateOutlet=\"select\"\n ngProjectAs=\"select\"\n />\n\n <div\n *ngIf=\"computedGroup\"\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 </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.silent)=\"(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{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}.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"] }]
162
+ }], propDecorators: { accessor: [{
163
+ type: ContentChild,
164
+ args: [TUI_DATA_LIST_ACCESSOR]
165
+ }], nativeSelect: [{
166
+ type: ContentChild,
167
+ args: [AbstractTuiNativeMultiSelect, { static: true }]
168
+ }], dropdown: [{
169
+ type: ViewChild,
170
+ args: [TuiDropdownOpen]
171
+ }], input: [{
172
+ type: ViewChild,
173
+ args: [TuiInputTagComponent]
174
+ }], datalist: [{
175
+ type: ContentChild,
176
+ args: [TuiDataListDirective, { read: TemplateRef }]
177
+ }], stringify: [{
178
+ type: Input
179
+ }], identityMatcher: [{
180
+ type: Input
181
+ }], search: [{
182
+ type: Input
183
+ }], placeholder: [{
184
+ type: Input
185
+ }], editable: [{
186
+ type: Input
187
+ }, {
188
+ type: HostBinding,
189
+ args: ['class._editable']
190
+ }], disabledItemHandler: [{
191
+ type: Input
192
+ }], valueContent: [{
193
+ type: Input
194
+ }], tagValidator: [{
195
+ type: Input
196
+ }], rows: [{
197
+ type: Input
198
+ }], searchChange: [{
199
+ type: Output
200
+ }], size: [{
201
+ type: HostBinding,
202
+ args: ['attr.data-size']
203
+ }], getStringifier: [] } });
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jb21wb25lbnRzL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGVnYWN5L2NvbXBvbmVudHMvbXVsdGktc2VsZWN0L211bHRpLXNlbGVjdC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFPbkQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFLdkYsT0FBTyxFQUNILHNCQUFzQixFQUN0QixpQkFBaUIsRUFDakIsb0JBQW9CLEdBQ3ZCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBR25FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsWUFBWSxFQUNaLG9CQUFvQixHQUN2QixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRSxPQUFPLEVBQUMsb0JBQW9C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SUFEVCxPQUFPOzZEQUtQO1NBeklRLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQWRuQyxTQUFTOytCQUNJLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQLDBCQUEwQix5QkFBeUI7d0JBQ25ELFlBQVkseUJBQXlCO3dCQUNyQyxpQkFBaUIseUJBQXlCO3dCQUMxQyw2QkFBNkI7cUJBQ2hDLGlCQUNjLENBQUMsa0NBQWtDLENBQUMsUUFDN0MsRUFBQyxxQkFBcUIsRUFBRSxVQUFVLEVBQUM7OEJBT3hCLFFBQVE7c0JBRHhCLFlBQVk7dUJBQUMsc0JBQTZCO2dCQUkxQixZQUFZO3NCQUQ1QixZQUFZO3VCQUFDLDRCQUE0QixFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFJekMsUUFBUTtzQkFEeEIsU0FBUzt1QkFBQyxlQUFlO2dCQUlULEtBQUs7c0JBRHJCLFNBQVM7dUJBQUMsb0JBQW9CO2dCQVFaLFFBQVE7c0JBRDFCLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFDO2dCQVFoRCxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFLQyxNQUFNO3NCQURaLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSztnQkFLQyxRQUFRO3NCQUZkLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUl2QixtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBS0MsWUFBWTtzQkFEbEIsS0FBSztnQkFLQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJVSxZQUFZO3NCQUQzQixNQUFNO2dCQUlJLElBQUk7c0JBRGQsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBd0VuQixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VNUFRZX0FSUkFZLCBUVUlfVFJVRV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQgdHlwZSB7VHVpQWN0aXZlWm9uZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2FjdGl2ZS16b25lJztcbmltcG9ydCB7VFVJX0lTX01PQklMRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHR5cGUge1xuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aUNvbnRleHQsXG4gICAgVHVpTWFwcGVyLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJc05hdGl2ZUZvY3VzZWR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZm9jdXMnO1xuaW1wb3J0IHt0dWlBcnJheVRvZ2dsZSwgdHVpSXNTdHJpbmcsIHR1aVB1cmV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQgdHlwZSB7XG4gICAgVHVpRGF0YUxpc3RBY2Nlc3NvcixcbiAgICBUdWlEYXRhTGlzdEhvc3QsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7XG4gICAgVFVJX0RBVEFfTElTVF9BQ0NFU1NPUixcbiAgICB0dWlBc0RhdGFMaXN0SG9zdCxcbiAgICBUdWlEYXRhTGlzdERpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlEcm9wZG93bk9wZW59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHR5cGUge1R1aVNpemVMLCBUdWlTaXplTSwgVHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB0eXBlIHtUdWlJdGVtc0hhbmRsZXJzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge1RVSV9JVEVNU19IQU5ETEVSU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aU11bHRpcGxlQ29udHJvbCxcbiAgICB0dWlBc0NvbnRyb2wsXG4gICAgVHVpU3RyaW5naWZpYWJsZUl0ZW0sXG59IGZyb20gJ0B0YWlnYS11aS9sZWdhY3kvY2xhc3Nlcyc7XG5pbXBvcnQge1RVSV9BUlJPV19NT0RFfSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2NvbXBvbmVudHMvYXJyb3cnO1xuaW1wb3J0IHtUdWlJbnB1dFRhZ0NvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS9jb21wb25lbnRzL2lucHV0LXRhZyc7XG5pbXBvcnQge1xuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxufSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHR5cGUge1R1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS90b2tlbnMnO1xuaW1wb3J0IHt0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS90b2tlbnMnO1xuaW1wb3J0IHtGSVhFRF9EUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L3V0aWxzJztcbmltcG9ydCB0eXBlIHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHR5cGUge1R1aU11bHRpU2VsZWN0T3B0aW9uc30gZnJvbSAnLi9tdWx0aS1zZWxlY3Qub3B0aW9ucyc7XG5pbXBvcnQge1RVSV9NVUxUSV9TRUxFQ1RfT1BUSU9OU30gZnJvbSAnLi9tdWx0aS1zZWxlY3Qub3B0aW9ucyc7XG5pbXBvcnQge0Fic3RyYWN0VHVpTmF0aXZlTXVsdGlTZWxlY3R9IGZyb20gJy4vbmF0aXZlLW11bHRpLXNlbGVjdC9uYXRpdmUtbXVsdGktc2VsZWN0JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktbXVsdGktc2VsZWN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbXVsdGktc2VsZWN0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL211bHRpLXNlbGVjdC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yKFR1aU11bHRpU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgICAgdHVpQXNDb250cm9sKFR1aU11bHRpU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgICAgdHVpQXNEYXRhTGlzdEhvc3QoVHVpTXVsdGlTZWxlY3RDb21wb25lbnQpLFxuICAgICAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBdLFxuICAgIHZpZXdQcm92aWRlcnM6IFtGSVhFRF9EUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSXSxcbiAgICBob3N0OiB7J1tjbGFzcy5fZXhwYW5kYWJsZV0nOiAncm93cyA+IDEnfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTXVsdGlTZWxlY3RDb21wb25lbnQ8VD5cbiAgICBleHRlbmRzIEFic3RyYWN0VHVpTXVsdGlwbGVDb250cm9sPFQ+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsIFR1aURhdGFMaXN0SG9zdDxUPlxue1xuICAgIEBDb250ZW50Q2hpbGQoVFVJX0RBVEFfTElTVF9BQ0NFU1NPUiBhcyBhbnkpXG4gICAgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3Nvcj86IFR1aURhdGFMaXN0QWNjZXNzb3I8VD47XG5cbiAgICBAQ29udGVudENoaWxkKEFic3RyYWN0VHVpTmF0aXZlTXVsdGlTZWxlY3QsIHtzdGF0aWM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmF0aXZlU2VsZWN0PzogQWJzdHJhY3RUdWlOYXRpdmVNdWx0aVNlbGVjdDxUPjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpRHJvcGRvd25PcGVuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd24/OiBUdWlEcm9wZG93bk9wZW47XG5cbiAgICBAVmlld0NoaWxkKFR1aUlucHV0VGFnQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXQ/OiBUdWlJbnB1dFRhZ0NvbXBvbmVudDtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXJyb3dNb2RlID0gaW5qZWN0KFRVSV9BUlJPV19NT0RFKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1zSGFuZGxlcnMgPSBpbmplY3Q8VHVpSXRlbXNIYW5kbGVyczxUPj4oVFVJX0lURU1TX0hBTkRMRVJTKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3Q8VHVpTXVsdGlTZWxlY3RPcHRpb25zPFQ+PihUVUlfTVVMVElfU0VMRUNUX09QVElPTlMpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGF0YWxpc3Q6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxUdWlBY3RpdmVab25lPj47XG5cbiAgICBwcm90ZWN0ZWQgb3BlbiA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250cm9sbGVyID0gaW5qZWN0KFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNNb2JpbGU6IGJvb2xlYW4gPSBpbmplY3QoVFVJX0lTX01PQklMRSk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzdHJpbmdpZnk6IFR1aUl0ZW1zSGFuZGxlcnM8VD5bJ3N0cmluZ2lmeSddID0gdGhpcy5pdGVtc0hhbmRsZXJzLnN0cmluZ2lmeTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkZW50aXR5TWF0Y2hlcjogVHVpSXRlbXNIYW5kbGVyczxUPlsnaWRlbnRpdHlNYXRjaGVyJ10gPVxuICAgICAgICB0aGlzLml0ZW1zSGFuZGxlcnMuaWRlbnRpdHlNYXRjaGVyO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2VhcmNoOiBzdHJpbmcgfCBudWxsID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBwbGFjZWhvbGRlciA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9lZGl0YWJsZScpXG4gICAgcHVibGljIGVkaXRhYmxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUl0ZW1zSGFuZGxlcnM8VD5bJ2Rpc2FibGVkSXRlbUhhbmRsZXInXSA9XG4gICAgICAgIHRoaXMuaXRlbXNIYW5kbGVycy5kaXNhYmxlZEl0ZW1IYW5kbGVyO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmFsdWVDb250ZW50OiBUdWlNdWx0aVNlbGVjdE9wdGlvbnM8VD5bJ3ZhbHVlQ29udGVudCddID1cbiAgICAgICAgdGhpcy5vcHRpb25zLnZhbHVlQ29udGVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRhZ1ZhbGlkYXRvcjogVHVpQm9vbGVhbkhhbmRsZXI8VD4gPSBUVUlfVFJVRV9IQU5ETEVSO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm93czogVHVpTXVsdGlTZWxlY3RPcHRpb25zPFQ+Wydyb3dzJ10gPSB0aGlzLm9wdGlvbnMucm93cztcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBzZWFyY2hDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBwdWJsaWMgZ2V0IHNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuc2l6ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dD8ubmF0aXZlRm9jdXNhYmxlRWxlbWVudCA/PyBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5pbnB1dD8uZm9jdXNlZCB8fCAhIXRoaXMuZHJvcGRvd24/LmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHJlYWRvbmx5IFRbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIG9uU2VhcmNoKHNlYXJjaDogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICAvLyBDbGVhcmluZyBzZXRzIHRoZSBlbXB0eSB2YWx1ZSwgdGhlIGRyb3Bkb3duIHNob3VsZCBub3QgYmUgb3BlbmVkIG9uIGNsZWFyLlxuICAgICAgICBpZiAoc2VhcmNoICE9PSAnJykge1xuICAgICAgICAgICAgdGhpcy5vcGVuID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKHNlYXJjaCk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZU9wdGlvbihvcHRpb246IFQpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBpZGVudGl0eU1hdGNoZXJ9ID0gdGhpcztcbiAgICAgICAgY29uc3QgaW5kZXggPSB2YWx1ZS5maW5kSW5kZXgoaXRlbSA9PiBpZGVudGl0eU1hdGNoZXIoaXRlbSwgb3B0aW9uKSk7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9XG4gICAgICAgICAgICBpbmRleCA9PT0gLTEgPyBbLi4udmFsdWUsIG9wdGlvbl0gOiB2YWx1ZS5maWx0ZXIoKF8sIGkpID0+IGkgIT09IGluZGV4KTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWFyY2gobnVsbCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBhcnJvdygpOiBQb2x5bW9ycGhldXNDb250ZW50PFxuICAgICAgICBUdWlDb250ZXh0PFR1aVNpemVMIHwgVHVpU2l6ZU0gfCBUdWlTaXplUz5cbiAgICA+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJhY3RpdmUgPyB0aGlzLmFycm93TW9kZS5pbnRlcmFjdGl2ZSA6IHRoaXMuYXJyb3dNb2RlLmRpc2FibGVkO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgbmF0aXZlRHJvcGRvd25Nb2RlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLm5hdGl2ZVNlbGVjdCAmJiB0aGlzLmlzTW9iaWxlICYmICF0aGlzLmVkaXRhYmxlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgY29tcHV0ZWRWYWx1ZSgpOiByZWFkb25seSBUW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlZEdyb3VwID8gRU1QVFlfQVJSQVkgOiB0aGlzLnZhbHVlO1xuICAgIH1cblxuICAgIC8vIEBiYWQgVE9ETzogdGhpbmsgb2YgYSBiZXR0ZXIgd2F5XG4gICAgcHJvdGVjdGVkIGdldCBzZWFyY2hPclNwYWNlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkR3JvdXAgPyAnICcgOiB0aGlzLnNlYXJjaFN0cmluZztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IHNlYXJjaFN0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2ggPT09IG51bGwgPyAnJyA6IHRoaXMuc2VhcmNoO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgY29tcHV0ZWRHcm91cCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdGhpcy52YWx1ZUNvbnRlbnQgJiZcbiAgICAgICAgICAgIHRoaXMudmFsdWUubGVuZ3RoID4gMCAmJlxuICAgICAgICAgICAgKCF0aGlzLmZvY3VzZWQgfHwgIXRoaXMuZWRpdGFibGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcm90ZWN0ZWQgZ2V0U3RyaW5naWZpZXIoXG4gICAgICAgIHN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxUPixcbiAgICApOiBUdWlTdHJpbmdIYW5kbGVyPFR1aUNvbnRleHQ8VD4+IHtcbiAgICAgICAgcmV0dXJuICh7JGltcGxpY2l0fSkgPT4gc3RyaW5naWZ5KCRpbXBsaWNpdCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHZhbHVlTWFwcGVyOiBUdWlNYXBwZXI8XG4gICAgICAgIFtyZWFkb25seSBUW10sIFR1aVN0cmluZ0hhbmRsZXI8VD4sIGJvb2xlYW4/XSxcbiAgICAgICAgUmVhZG9ubHlBcnJheTxUdWlTdHJpbmdpZmlhYmxlSXRlbTxUPj5cbiAgICA+ID0gKHZhbHVlLCBzdHJpbmdpZnksIGdyb3VwKSA9PlxuICAgICAgICBncm91cFxuICAgICAgICAgICAgPyBFTVBUWV9BUlJBWVxuICAgICAgICAgICAgOiB2YWx1ZS5tYXAoaXRlbSA9PiBuZXcgVHVpU3RyaW5naWZpYWJsZUl0ZW0oaXRlbSwgc3RyaW5naWZ5KSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGlzYWJsZWRJdGVtSGFuZGxlcldyYXBwZXI6IFR1aU1hcHBlcjxcbiAgICAgICAgW1R1aUJvb2xlYW5IYW5kbGVyPFQ+XSxcbiAgICAgICAgVHVpQm9vbGVhbkhhbmRsZXI8VHVpU3RyaW5naWZpYWJsZUl0ZW08VD4gfCBzdHJpbmc+XG4gICAgPiA9IGhhbmRsZXIgPT4gc3RyaW5naWZpYWJsZSA9PlxuICAgICAgICB0dWlJc1N0cmluZyhzdHJpbmdpZmlhYmxlKSB8fCBoYW5kbGVyKHN0cmluZ2lmaWFibGUuaXRlbSk7XG5cbiAgICBwcm90ZWN0ZWQgb25TcGFjZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmVkaXRhYmxlKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRW50ZXIoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSB0aGlzO1xuICAgICAgICBjb25zdCBvcHRpb25zID0gdGhpcy5hY2Nlc3NvciA/IHRoaXMuYWNjZXNzb3IuZ2V0T3B0aW9ucygpIDogW107XG5cbiAgICAgICAgaWYgKG9wdGlvbnMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnZhbHVlID0gdHVpQXJyYXlUb2dnbGUodmFsdWUsIG9wdGlvbnNbMF0pO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChudWxsKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DbGljayh7bmF0aXZlRm9jdXNhYmxlRWxlbWVudH06IFR1aUlucHV0VGFnQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuaW50ZXJhY3RpdmUgJiZcbiAgICAgICAgICAgIG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgJiZcbiAgICAgICAgICAgIHR1aUlzTmF0aXZlRm9jdXNlZChuYXRpdmVGb2N1c2FibGVFbGVtZW50KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMub3BlbiA9ICF0aGlzLm9wZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25JbnB1dCh2YWx1ZTogUmVhZG9ubHlBcnJheTxUdWlTdHJpbmdpZmlhYmxlSXRlbTxUPj4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlLm1hcCgoe2l0ZW19KSA9PiBpdGVtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25BY3RpdmVab25lKGFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVNlYXJjaChzZWFyY2g6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc2VhcmNoID09PSBzZWFyY2gpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoID0gc2VhcmNoO1xuICAgICAgICB0aGlzLnNlYXJjaENoYW5nZS5lbWl0KHNlYXJjaCk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIHR1aURyb3Bkb3duT3Blbk1vbml0b3JcbiAgICBjbGFzcz1cInQtaG9zdGVkXCJcbiAgICBbdHVpRHJvcGRvd25dPVwiZGF0YWxpc3QgfHwgJydcIlxuICAgIFt0dWlEcm9wZG93bkVuYWJsZWRdPVwiaW50ZXJhY3RpdmUgJiYgIW5hdGl2ZURyb3Bkb3duTW9kZVwiXG4gICAgWyh0dWlEcm9wZG93bk9wZW4pXT1cIm9wZW5cIlxuICAgICh0dWlBY3RpdmVab25lQ2hhbmdlKT1cIm9uQWN0aXZlWm9uZSgkZXZlbnQpXCJcbj5cbiAgICA8dHVpLWlucHV0LXRhZ1xuICAgICAgICAjaW5wdXRUYWdcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1tdWx0aS1zZWxlY3RfX2lucHV0XCJcbiAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2Rpc2FibGVkSXRlbUhhbmRsZXJdPVwiZGlzYWJsZWRJdGVtSGFuZGxlciB8IHR1aU1hcHBlcjogZGlzYWJsZWRJdGVtSGFuZGxlcldyYXBwZXJcIlxuICAgICAgICBbZWRpdGFibGVdPVwiZmFsc2VcIlxuICAgICAgICBbaW5wdXRIaWRkZW5dPVwiIWVkaXRhYmxlXCJcbiAgICAgICAgW25hdGl2ZUlkXT1cIm5hdGl2ZUlkXCJcbiAgICAgICAgW25nTW9kZWxdPVwiY29tcHV0ZWRWYWx1ZSB8IHR1aU1hcHBlcjogdmFsdWVNYXBwZXIgOiBzdHJpbmdpZnlcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICBbcHNldWRvRm9jdXNdPVwiY29tcHV0ZWRGb2N1c2VkXCJcbiAgICAgICAgW3BzZXVkb0hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICAgICAgW3BzZXVkb0ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICAgICAgW3BzZXVkb09wZW5dPVwib3BlblwiXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgICAgIFtyZW1vdmFibGVdPVwiIW5hdGl2ZURyb3Bkb3duTW9kZVwiXG4gICAgICAgIFtyb3dzXT1cInJvd3NcIlxuICAgICAgICBbc2VhcmNoXT1cInNlYXJjaE9yU3BhY2VcIlxuICAgICAgICBbdGFnVmFsaWRhdG9yXT1cInRhZ1ZhbGlkYXRvciB8IHR1aU1hcHBlcjogZGlzYWJsZWRJdGVtSGFuZGxlcldyYXBwZXJcIlxuICAgICAgICBbdHVpVGV4dGZpZWxkSWNvbl09XCJhcnJvdyA/IGljb24gOiAnJ1wiXG4gICAgICAgIChjbGljay5wcmV2ZW50KT1cIm9uQ2xpY2soaW5wdXRUYWcpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlcigkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uc3BhY2UpPVwib25TcGFjZSgkZXZlbnQpXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKHNlYXJjaENoYW5nZSk9XCJvblNlYXJjaCgkZXZlbnQpXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjc2VsZWN0PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnRcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzTW9iaWxlXCJcbiAgICAgICAgICAgICAgICBzZWxlY3Q9XCJzZWxlY3RcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInNlbGVjdFwiXG4gICAgICAgICAgICBuZ1Byb2plY3RBcz1cInNlbGVjdFwiXG4gICAgICAgIC8+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nSWY9XCJjb21wdXRlZEdyb3VwXCJcbiAgICAgICAgICAgIG5nUHJvamVjdEFzPVwidHVpQ29udGVudFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY29udGVudFwiXG4gICAgICAgICAgICBbY2xhc3MudC1jb250ZW50X2Z1bGxzaXplXT1cImlucHV0VGFnLmxhYmVsT3V0c2lkZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cInZhbHVlQ29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiB2YWx1ZX1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1wcmltaXRpdmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC90dWktaW5wdXQtdGFnPlxuXG4gICAgPG5nLXRlbXBsYXRlICNpY29uPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLW11bHRpLXNlbGVjdF9fYXJyb3dcIlxuICAgICAgICAgICAgdHVpV3JhcHBlclxuICAgICAgICAgICAgY2xhc3M9XCJ0LWFycm93XCJcbiAgICAgICAgICAgIFtjbGFzcy50LWFycm93X25hdGl2ZS1kcm9wZG93bl09XCJuYXRpdmVEcm9wZG93bk1vZGVcIlxuICAgICAgICAgICAgKG1vdXNlZG93bi5wcmV2ZW50LnNpbGVudCk9XCIoMClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJhcnJvdyBhcyB0ZXh0XCI+XG4gICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { Directive } from '@angular/core';
2
+ import { AbstractTuiTextfieldHost } from '@taiga-ui/legacy/classes';
3
+ import { tuiAsTextfieldHost } from '@taiga-ui/legacy/tokens';
4
+ import * as i0 from "@angular/core";
5
+ class TuiMultiSelectDirective extends AbstractTuiTextfieldHost {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.disableItemHandler = item => this.host.disabledItemHandler(item);
9
+ }
10
+ get readOnly() {
11
+ return true;
12
+ }
13
+ get stringify() {
14
+ return this.host.stringify;
15
+ }
16
+ onValueChange() { }
17
+ onSelectionChange(value) {
18
+ this.host.onValueChange(value);
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
21
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiMultiSelectDirective, selector: "tui-multi-select", providers: [tuiAsTextfieldHost(TuiMultiSelectDirective)], usesInheritance: true, ngImport: i0 }); }
22
+ }
23
+ export { TuiMultiSelectDirective };
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectDirective, decorators: [{
25
+ type: Directive,
26
+ args: [{
27
+ selector: 'tui-multi-select',
28
+ providers: [tuiAsTextfieldHost(TuiMultiSelectDirective)],
29
+ }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jb21wb25lbnRzL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUJBQXlCLENBQUM7O0FBSTNELE1BSWEsdUJBQW9DLFNBQVEsd0JBRXhEO0lBTkQ7O1FBZVcsdUJBQWtCLEdBQXlCLElBQUksQ0FBQyxFQUFFLENBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7S0FPM0M7SUFoQkcsSUFBb0IsUUFBUTtRQUN4QixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDL0IsQ0FBQztJQUtNLGFBQWEsS0FBVSxDQUFDO0lBRXhCLGlCQUFpQixDQUFDLEtBQVU7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzsrR0FsQlEsdUJBQXVCO21HQUF2Qix1QkFBdUIsMkNBRnJCLENBQUMsa0JBQWtCLENBQUMsdUJBQXVCLENBQUMsQ0FBQzs7U0FFL0MsdUJBQXVCOzRGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsU0FBUyxFQUFFLENBQUMsa0JBQWtCLHlCQUF5QixDQUFDO2lCQUMzRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHtUdWlCb29sZWFuSGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQgdHlwZSB7VHVpSXRlbXNIYW5kbGVyc30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3R9IGZyb20gJ0B0YWlnYS11aS9sZWdhY3kvY2xhc3Nlcyc7XG5pbXBvcnQge3R1aUFzVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS90b2tlbnMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpTXVsdGlTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAndHVpLW11bHRpLXNlbGVjdCcsXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNUZXh0ZmllbGRIb3N0KFR1aU11bHRpU2VsZWN0RGlyZWN0aXZlKV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aU11bHRpU2VsZWN0RGlyZWN0aXZlPFQgPSBzdHJpbmc+IGV4dGVuZHMgQWJzdHJhY3RUdWlUZXh0ZmllbGRIb3N0PFxuICAgIFR1aU11bHRpU2VsZWN0Q29tcG9uZW50PFQ+XG4+IHtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IHJlYWRPbmx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHN0cmluZ2lmeSgpOiBUdWlJdGVtc0hhbmRsZXJzPFQ+WydzdHJpbmdpZnknXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhvc3Quc3RyaW5naWZ5O1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNhYmxlSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFQ+ID0gaXRlbSA9PlxuICAgICAgICB0aGlzLmhvc3QuZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKTtcblxuICAgIHB1YmxpYyBvblZhbHVlQ2hhbmdlKCk6IHZvaWQge31cblxuICAgIHB1YmxpYyBvblNlbGVjdGlvbkNoYW5nZSh2YWx1ZTogVFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaG9zdC5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,111 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { TuiLet } from '@taiga-ui/cdk/directives/let';
5
+ import { TuiMapperPipe } from '@taiga-ui/cdk/pipes/mapper';
6
+ import { TuiDataList } from '@taiga-ui/core/components/data-list';
7
+ import { TuiLink } from '@taiga-ui/core/components/link';
8
+ import { TuiDropdown } from '@taiga-ui/core/directives/dropdown';
9
+ import { TuiDataListWrapper } from '@taiga-ui/kit/components/data-list-wrapper';
10
+ import { TuiStringifyContentPipe } from '@taiga-ui/kit/pipes/stringify-content';
11
+ import { TuiArrowComponent } from '@taiga-ui/legacy/components/arrow';
12
+ import { TuiInputTagModule } from '@taiga-ui/legacy/components/input-tag';
13
+ import { TuiMultiSelectOptionModule } from '@taiga-ui/legacy/components/multi-select-option';
14
+ import { TuiLegacyDropdownOpenMonitorDirective, TuiTextfieldControllerModule, TuiWrapperModule, } from '@taiga-ui/legacy/directives';
15
+ import { PolymorpheusOutlet, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
16
+ import { TuiHideSelectedPipe } from './hide-selected.pipe';
17
+ import { TuiMultiSelectComponent } from './multi-select.component';
18
+ import { TuiMultiSelectDirective } from './multi-select.directive';
19
+ import { TuiMultiSelectGroupComponent } from './multi-select-group/multi-select-group.component';
20
+ import { TuiMultiSelectGroupDirective } from './multi-select-group/multi-select-group.directive';
21
+ import { TuiNativeMultiSelectComponent } from './native-multi-select/native-multi-select.component';
22
+ import { TuiNativeMultiSelectGroupComponent } from './native-multi-select/native-multi-select-group.component';
23
+ import * as i0 from "@angular/core";
24
+ import * as i1 from "@taiga-ui/core/directives/dropdown";
25
+ import * as i2 from "@taiga-ui/core/components/data-list";
26
+ import * as i3 from "@taiga-ui/kit/components/data-list-wrapper";
27
+ class TuiMultiSelectModule {
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
29
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectModule, declarations: [TuiMultiSelectComponent,
30
+ TuiMultiSelectGroupComponent,
31
+ TuiMultiSelectGroupDirective,
32
+ TuiHideSelectedPipe,
33
+ TuiNativeMultiSelectComponent,
34
+ TuiNativeMultiSelectGroupComponent,
35
+ TuiMultiSelectDirective], imports: [CommonModule,
36
+ FormsModule,
37
+ PolymorpheusOutlet,
38
+ PolymorpheusTemplate,
39
+ TuiWrapperModule,
40
+ TuiArrowComponent,
41
+ TuiLet,
42
+ TuiMapperPipe,
43
+ TuiInputTagModule,
44
+ TuiMultiSelectOptionModule,
45
+ TuiMapperPipe,
46
+ TuiLink,
47
+ TuiTextfieldControllerModule,
48
+ TuiStringifyContentPipe,
49
+ TuiLegacyDropdownOpenMonitorDirective, i1.TuiDropdownOptionsDirective, i1.TuiDropdownDriverDirective, i1.TuiDropdownDirective, i1.TuiDropdownComponent, i1.TuiDropdownOpen, i1.TuiDropdownPortal, i1.TuiDropdownManual, i1.TuiDropdownHover, i1.TuiDropdownContext, i1.TuiDropdownPosition, i1.TuiDropdownPositionSided, i1.TuiDropdownSelection, i2.TuiDataListComponent, i2.TuiDataListDirective, i2.TuiOption, i2.TuiOptGroup, i3.TuiDataListWrapperComponent, i3.TuiDataListGroupWrapperComponent, i2.TuiDataListDirective], exports: [TuiMultiSelectComponent,
50
+ TuiMultiSelectGroupComponent,
51
+ TuiMultiSelectGroupDirective,
52
+ TuiHideSelectedPipe,
53
+ TuiMultiSelectDirective,
54
+ TuiNativeMultiSelectComponent,
55
+ TuiNativeMultiSelectGroupComponent, i1.TuiDropdownOptionsDirective, i1.TuiDropdownDriverDirective, i1.TuiDropdownDirective, i1.TuiDropdownComponent, i1.TuiDropdownOpen, i1.TuiDropdownPortal, i1.TuiDropdownManual, i1.TuiDropdownHover, i1.TuiDropdownContext, i1.TuiDropdownPosition, i1.TuiDropdownPositionSided, i1.TuiDropdownSelection, i2.TuiDataListComponent, i2.TuiDataListDirective, i2.TuiOption, i2.TuiOptGroup, i3.TuiDataListWrapperComponent, i3.TuiDataListGroupWrapperComponent, i2.TuiDataListDirective] }); }
56
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectModule, imports: [CommonModule,
57
+ FormsModule,
58
+ TuiWrapperModule,
59
+ TuiArrowComponent,
60
+ TuiInputTagModule,
61
+ TuiMultiSelectOptionModule,
62
+ TuiTextfieldControllerModule, i1.TuiDropdownComponent, i2.TuiDataListComponent, i2.TuiOption, i3.TuiDataListWrapperComponent, i3.TuiDataListGroupWrapperComponent] }); }
63
+ }
64
+ export { TuiMultiSelectModule };
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiMultiSelectModule, decorators: [{
66
+ type: NgModule,
67
+ args: [{
68
+ imports: [
69
+ CommonModule,
70
+ FormsModule,
71
+ PolymorpheusOutlet,
72
+ PolymorpheusTemplate,
73
+ TuiWrapperModule,
74
+ TuiArrowComponent,
75
+ TuiLet,
76
+ TuiMapperPipe,
77
+ TuiInputTagModule,
78
+ TuiMultiSelectOptionModule,
79
+ TuiMapperPipe,
80
+ TuiLink,
81
+ TuiTextfieldControllerModule,
82
+ TuiStringifyContentPipe,
83
+ TuiLegacyDropdownOpenMonitorDirective,
84
+ ...TuiDropdown,
85
+ ...TuiDataList,
86
+ ...TuiDataListWrapper,
87
+ ],
88
+ declarations: [
89
+ TuiMultiSelectComponent,
90
+ TuiMultiSelectGroupComponent,
91
+ TuiMultiSelectGroupDirective,
92
+ TuiHideSelectedPipe,
93
+ TuiNativeMultiSelectComponent,
94
+ TuiNativeMultiSelectGroupComponent,
95
+ TuiMultiSelectDirective,
96
+ ],
97
+ exports: [
98
+ TuiMultiSelectComponent,
99
+ TuiMultiSelectGroupComponent,
100
+ TuiMultiSelectGroupDirective,
101
+ TuiHideSelectedPipe,
102
+ TuiMultiSelectDirective,
103
+ TuiNativeMultiSelectComponent,
104
+ TuiNativeMultiSelectGroupComponent,
105
+ ...TuiDropdown,
106
+ ...TuiDataList,
107
+ ...TuiDataListWrapper,
108
+ ],
109
+ }]
110
+ }] });
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jb21wb25lbnRzL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNoRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFDSCxxQ0FBcUMsRUFDckMsNEJBQTRCLEVBQzVCLGdCQUFnQixHQUNuQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRWhGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLDJEQUEyRCxDQUFDOzs7OztBQUU3RyxNQTJDYSxvQkFBb0I7K0dBQXBCLG9CQUFvQjtnSEFBcEIsb0JBQW9CLGlCQXJCekIsdUJBQXVCO1lBQ3ZCLDRCQUE0QjtZQUM1Qiw0QkFBNEI7WUFDNUIsbUJBQW1CO1lBQ25CLDZCQUE2QjtZQUM3QixrQ0FBa0M7WUFDbEMsdUJBQXVCLGFBMUJ2QixZQUFZO1lBQ1osV0FBVztZQUNYLGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQixNQUFNO1lBQ04sYUFBYTtZQUNiLGlCQUFpQjtZQUNqQiwwQkFBMEI7WUFDMUIsYUFBYTtZQUNiLE9BQU87WUFDUCw0QkFBNEI7WUFDNUIsdUJBQXVCO1lBQ3ZCLHFDQUFxQyxzZUFlckMsdUJBQXVCO1lBQ3ZCLDRCQUE0QjtZQUM1Qiw0QkFBNEI7WUFDNUIsbUJBQW1CO1lBQ25CLHVCQUF1QjtZQUN2Qiw2QkFBNkI7WUFDN0Isa0NBQWtDO2dIQU03QixvQkFBb0IsWUF6Q3pCLFlBQVk7WUFDWixXQUFXO1lBR1gsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUdqQixpQkFBaUI7WUFDakIsMEJBQTBCO1lBRzFCLDRCQUE0Qjs7U0E2QnZCLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQTNDaEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsTUFBTTt3QkFDTixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsMEJBQTBCO3dCQUMxQixhQUFhO3dCQUNiLE9BQU87d0JBQ1AsNEJBQTRCO3dCQUM1Qix1QkFBdUI7d0JBQ3ZCLHFDQUFxQzt3QkFDckMsR0FBRyxXQUFXO3dCQUNkLEdBQUcsV0FBVzt3QkFDZCxHQUFHLGtCQUFrQjtxQkFDeEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLHVCQUF1Qjt3QkFDdkIsNEJBQTRCO3dCQUM1Qiw0QkFBNEI7d0JBQzVCLG1CQUFtQjt3QkFDbkIsNkJBQTZCO3dCQUM3QixrQ0FBa0M7d0JBQ2xDLHVCQUF1QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLHVCQUF1Qjt3QkFDdkIsNEJBQTRCO3dCQUM1Qiw0QkFBNEI7d0JBQzVCLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2Qiw2QkFBNkI7d0JBQzdCLGtDQUFrQzt3QkFDbEMsR0FBRyxXQUFXO3dCQUNkLEdBQUcsV0FBVzt3QkFDZCxHQUFHLGtCQUFrQjtxQkFDeEI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUdWlMZXR9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9sZXQnO1xuaW1wb3J0IHtUdWlNYXBwZXJQaXBlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3BpcGVzL21hcHBlcic7XG5pbXBvcnQge1R1aURhdGFMaXN0fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5pbXBvcnQge1R1aUxpbmt9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvbGluayc7XG5pbXBvcnQge1R1aURyb3Bkb3dufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7VHVpRGF0YUxpc3RXcmFwcGVyfSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXInO1xuaW1wb3J0IHtUdWlTdHJpbmdpZnlDb250ZW50UGlwZX0gZnJvbSAnQHRhaWdhLXVpL2tpdC9waXBlcy9zdHJpbmdpZnktY29udGVudCc7XG5pbXBvcnQge1R1aUFycm93Q29tcG9uZW50fSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2NvbXBvbmVudHMvYXJyb3cnO1xuaW1wb3J0IHtUdWlJbnB1dFRhZ01vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS9jb21wb25lbnRzL2lucHV0LXRhZyc7XG5pbXBvcnQge1R1aU11bHRpU2VsZWN0T3B0aW9uTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2NvbXBvbmVudHMvbXVsdGktc2VsZWN0LW9wdGlvbic7XG5pbXBvcnQge1xuICAgIFR1aUxlZ2FjeURyb3Bkb3duT3Blbk1vbml0b3JEaXJlY3RpdmUsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICBUdWlXcmFwcGVyTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXQsIFBvbHltb3JwaGV1c1RlbXBsYXRlfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlIaWRlU2VsZWN0ZWRQaXBlfSBmcm9tICcuL2hpZGUtc2VsZWN0ZWQucGlwZSc7XG5pbXBvcnQge1R1aU11bHRpU2VsZWN0Q29tcG9uZW50fSBmcm9tICcuL211bHRpLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlNdWx0aVNlbGVjdERpcmVjdGl2ZX0gZnJvbSAnLi9tdWx0aS1zZWxlY3QuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudH0gZnJvbSAnLi9tdWx0aS1zZWxlY3QtZ3JvdXAvbXVsdGktc2VsZWN0LWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aU11bHRpU2VsZWN0R3JvdXBEaXJlY3RpdmV9IGZyb20gJy4vbXVsdGktc2VsZWN0LWdyb3VwL211bHRpLXNlbGVjdC1ncm91cC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlOYXRpdmVNdWx0aVNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi9uYXRpdmUtbXVsdGktc2VsZWN0L25hdGl2ZS1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7VHVpTmF0aXZlTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudH0gZnJvbSAnLi9uYXRpdmUtbXVsdGktc2VsZWN0L25hdGl2ZS1tdWx0aS1zZWxlY3QtZ3JvdXAuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c091dGxldCxcbiAgICAgICAgUG9seW1vcnBoZXVzVGVtcGxhdGUsXG4gICAgICAgIFR1aVdyYXBwZXJNb2R1bGUsXG4gICAgICAgIFR1aUFycm93Q29tcG9uZW50LFxuICAgICAgICBUdWlMZXQsXG4gICAgICAgIFR1aU1hcHBlclBpcGUsXG4gICAgICAgIFR1aUlucHV0VGFnTW9kdWxlLFxuICAgICAgICBUdWlNdWx0aVNlbGVjdE9wdGlvbk1vZHVsZSxcbiAgICAgICAgVHVpTWFwcGVyUGlwZSxcbiAgICAgICAgVHVpTGluayxcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICAgICAgVHVpU3RyaW5naWZ5Q29udGVudFBpcGUsXG4gICAgICAgIFR1aUxlZ2FjeURyb3Bkb3duT3Blbk1vbml0b3JEaXJlY3RpdmUsXG4gICAgICAgIC4uLlR1aURyb3Bkb3duLFxuICAgICAgICAuLi5UdWlEYXRhTGlzdCxcbiAgICAgICAgLi4uVHVpRGF0YUxpc3RXcmFwcGVyLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFR1aU11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgICAgICBUdWlNdWx0aVNlbGVjdEdyb3VwQ29tcG9uZW50LFxuICAgICAgICBUdWlNdWx0aVNlbGVjdEdyb3VwRGlyZWN0aXZlLFxuICAgICAgICBUdWlIaWRlU2VsZWN0ZWRQaXBlLFxuICAgICAgICBUdWlOYXRpdmVNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICAgICAgVHVpTmF0aXZlTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudCxcbiAgICAgICAgVHVpTXVsdGlTZWxlY3REaXJlY3RpdmUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFR1aU11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgICAgICBUdWlNdWx0aVNlbGVjdEdyb3VwQ29tcG9uZW50LFxuICAgICAgICBUdWlNdWx0aVNlbGVjdEdyb3VwRGlyZWN0aXZlLFxuICAgICAgICBUdWlIaWRlU2VsZWN0ZWRQaXBlLFxuICAgICAgICBUdWlNdWx0aVNlbGVjdERpcmVjdGl2ZSxcbiAgICAgICAgVHVpTmF0aXZlTXVsdGlTZWxlY3RDb21wb25lbnQsXG4gICAgICAgIFR1aU5hdGl2ZU11bHRpU2VsZWN0R3JvdXBDb21wb25lbnQsXG4gICAgICAgIC4uLlR1aURyb3Bkb3duLFxuICAgICAgICAuLi5UdWlEYXRhTGlzdCxcbiAgICAgICAgLi4uVHVpRGF0YUxpc3RXcmFwcGVyLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aU11bHRpU2VsZWN0TW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,13 @@
1
+ import { tuiCreateToken, tuiProvideOptions } from '@taiga-ui/cdk/utils/miscellaneous';
2
+ export const TUI_MULTI_SELECT_DEFAULT_OPTIONS = {
3
+ rows: Infinity,
4
+ valueContent: '',
5
+ };
6
+ /**
7
+ * Default parameters for MultiSelect component
8
+ */
9
+ export const TUI_MULTI_SELECT_OPTIONS = tuiCreateToken(TUI_MULTI_SELECT_DEFAULT_OPTIONS);
10
+ export function tuiMultiSelectOptionsProvider(options) {
11
+ return tuiProvideOptions(TUI_MULTI_SELECT_OPTIONS, options, TUI_MULTI_SELECT_DEFAULT_OPTIONS);
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0Lm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9sZWdhY3kvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvbXVsdGktc2VsZWN0Lm9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBUXBGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFtQztJQUM1RSxJQUFJLEVBQUUsUUFBUTtJQUNkLFlBQVksRUFBRSxFQUFFO0NBQ25CLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLGNBQWMsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0FBRXpGLE1BQU0sVUFBVSw2QkFBNkIsQ0FDekMsT0FBMEM7SUFFMUMsT0FBTyxpQkFBaUIsQ0FDcEIsd0JBQXdCLEVBQ3hCLE9BQU8sRUFDUCxnQ0FBZ0MsQ0FDbkMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7UHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUge1R1aUNvbnRleHR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlDcmVhdGVUb2tlbiwgdHVpUHJvdmlkZU9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpTXVsdGlTZWxlY3RPcHRpb25zPFQ+IHtcbiAgICByZWFkb25seSByb3dzOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgdmFsdWVDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHQ8cmVhZG9ubHkgVFtdPj47XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfTVVMVElfU0VMRUNUX0RFRkFVTFRfT1BUSU9OUzogVHVpTXVsdGlTZWxlY3RPcHRpb25zPHVua25vd24+ID0ge1xuICAgIHJvd3M6IEluZmluaXR5LFxuICAgIHZhbHVlQ29udGVudDogJycsXG59O1xuXG4vKipcbiAqIERlZmF1bHQgcGFyYW1ldGVycyBmb3IgTXVsdGlTZWxlY3QgY29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfTVVMVElfU0VMRUNUX09QVElPTlMgPSB0dWlDcmVhdGVUb2tlbihUVUlfTVVMVElfU0VMRUNUX0RFRkFVTFRfT1BUSU9OUyk7XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlNdWx0aVNlbGVjdE9wdGlvbnNQcm92aWRlcjxUPihcbiAgICBvcHRpb25zOiBQYXJ0aWFsPFR1aU11bHRpU2VsZWN0T3B0aW9uczxUPj4sXG4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHR1aVByb3ZpZGVPcHRpb25zKFxuICAgICAgICBUVUlfTVVMVElfU0VMRUNUX09QVElPTlMsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIFRVSV9NVUxUSV9TRUxFQ1RfREVGQVVMVF9PUFRJT05TLFxuICAgICk7XG59XG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { ChangeDetectionStrategy, Component, Input, TemplateRef } from '@angular/core';
2
+ import { tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
3
+ import { tuiAsDataList } from '@taiga-ui/core/components/data-list';
4
+ import { AbstractTuiNativeMultiSelect } from './native-multi-select';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@angular/forms";
8
+ import * as i3 from "@taiga-ui/core/components/data-list";
9
+ import * as i4 from "@taiga-ui/kit/components/data-list-wrapper";
10
+ import * as i5 from "../multi-select-group/multi-select-group.directive";
11
+ import * as i6 from "@taiga-ui/cdk/pipes/mapper";
12
+ import * as i7 from "@taiga-ui/kit/pipes/stringify-content";
13
+ class TuiNativeMultiSelectGroupComponent extends AbstractTuiNativeMultiSelect {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.items = [];
17
+ this.labels = [];
18
+ }
19
+ onValueChange(selectedOptions) {
20
+ const selected = Array.from(selectedOptions).map(option => option.index);
21
+ const flatItems = this.items?.reduce((acc, val) => acc.concat(val), []) || [];
22
+ const value = flatItems.filter((_, index) => selected.includes(index));
23
+ this.host.onSelectionChange(value);
24
+ }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiNativeMultiSelectGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
26
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiNativeMultiSelectGroupComponent, selector: "select[multiple][tuiSelect][labels]", inputs: { items: "items", labels: "labels" }, host: { listeners: { "change": "onValueChange($event.target.selectedOptions)", "click.stop.silent": "0", "mousedown.stop.silent": "0" }, properties: { "attr.aria-invalid": "host.invalid", "disabled": "host.disabled || control.readOnly", "tabIndex": "host.focusable ? 0 : -1" } }, providers: [
27
+ tuiAsDataList(TuiNativeMultiSelectGroupComponent),
28
+ tuiProvide(AbstractTuiNativeMultiSelect, TuiNativeMultiSelectGroupComponent),
29
+ {
30
+ provide: TemplateRef,
31
+ deps: [TuiNativeMultiSelectGroupComponent],
32
+ useFactory: ({ datalist }) => datalist,
33
+ },
34
+ ], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"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<optgroup\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n>\n <option\n *ngFor=\"let option of group\"\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</optgroup>\n", styles: [":host{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { kind: "component", type: i4.TuiDataListGroupWrapperComponent, selector: "tui-data-list-wrapper[labels]", inputs: ["items", "labels"] }, { kind: "directive", type: i5.TuiMultiSelectGroupDirective, selector: "[tuiMultiSelectGroup]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TuiMapperPipe, name: "tuiMapper" }, { kind: "pipe", type: i7.TuiStringifyContentPipe, name: "tuiStringifyContent" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
35
+ }
36
+ export { TuiNativeMultiSelectGroupComponent };
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiNativeMultiSelectGroupComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: 'select[multiple][tuiSelect][labels]', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
40
+ tuiAsDataList(TuiNativeMultiSelectGroupComponent),
41
+ tuiProvide(AbstractTuiNativeMultiSelect, TuiNativeMultiSelectGroupComponent),
42
+ {
43
+ provide: TemplateRef,
44
+ deps: [TuiNativeMultiSelectGroupComponent],
45
+ useFactory: ({ datalist }) => datalist,
46
+ },
47
+ ], host: {
48
+ '[attr.aria-invalid]': 'host.invalid',
49
+ '[disabled]': 'host.disabled || control.readOnly',
50
+ '[tabIndex]': 'host.focusable ? 0 : -1',
51
+ '(change)': 'onValueChange($event.target.selectedOptions)',
52
+ '(click.stop.silent)': '0',
53
+ '(mousedown.stop.silent)': '0',
54
+ }, template: "<ng-container *ngIf=\"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<optgroup\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n>\n <option\n *ngFor=\"let option of group\"\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</optgroup>\n", styles: [":host{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0}\n"] }]
55
+ }], propDecorators: { items: [{
56
+ type: Input
57
+ }], labels: [{
58
+ type: Input
59
+ }] } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLW11bHRpLXNlbGVjdC1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9sZWdhY3kvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvbmF0aXZlLW11bHRpLXNlbGVjdC9uYXRpdmUtbXVsdGktc2VsZWN0LWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jb21wb25lbnRzL211bHRpLXNlbGVjdC9uYXRpdmUtbXVsdGktc2VsZWN0L25hdGl2ZS1tdWx0aS1zZWxlY3QtZ3JvdXAudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzdELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVsRSxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7O0FBRW5FLE1Bd0JhLGtDQUVYLFNBQVEsNEJBQStCO0lBMUJ6Qzs7UUE0QlcsVUFBSyxHQUEwQixFQUFFLENBQUM7UUFHbEMsV0FBTSxHQUFzQixFQUFFLENBQUM7S0FTekM7SUFQYSxhQUFhLENBQUMsZUFBcUQ7UUFDekUsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekUsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5RSxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRXZFLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0FmUSxrQ0FBa0M7bUdBQWxDLGtDQUFrQyxvWUFuQmhDO1lBQ1AsYUFBYSxDQUFDLGtDQUFrQyxDQUFDO1lBQ2pELFVBQVUsQ0FBQyw0QkFBNEIsRUFBRSxrQ0FBa0MsQ0FBQztZQUM1RTtnQkFDSSxPQUFPLEVBQUUsV0FBVztnQkFDcEIsSUFBSSxFQUFFLENBQUMsa0NBQWtDLENBQUM7Z0JBQzFDLFVBQVUsRUFBRSxDQUFDLEVBQUMsUUFBUSxFQUE4QyxFQUFFLEVBQUUsQ0FDcEUsUUFBUTthQUNmO1NBQ0osaURDcEJMLDR2QkF1QkE7O1NET2Esa0NBQWtDOzRGQUFsQyxrQ0FBa0M7a0JBeEI5QyxTQUFTOytCQUNJLHFDQUFxQyxtQkFHOUIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUCxhQUFhLG9DQUFvQzt3QkFDakQsVUFBVSxDQUFDLDRCQUE0QixxQ0FBcUM7d0JBQzVFOzRCQUNJLE9BQU8sRUFBRSxXQUFXOzRCQUNwQixJQUFJLEVBQUUsb0NBQW9DOzRCQUMxQyxVQUFVLEVBQUUsQ0FBQyxFQUFDLFFBQVEsRUFBOEMsRUFBRSxFQUFFLENBQ3BFLFFBQVE7eUJBQ2Y7cUJBQ0osUUFDSzt3QkFDRixxQkFBcUIsRUFBRSxjQUFjO3dCQUNyQyxZQUFZLEVBQUUsbUNBQW1DO3dCQUNqRCxZQUFZLEVBQUUseUJBQXlCO3dCQUN2QyxVQUFVLEVBQUUsOENBQThDO3dCQUMxRCxxQkFBcUIsRUFBRSxHQUFHO3dCQUMxQix5QkFBeUIsRUFBRSxHQUFHO3FCQUNqQzs4QkFNTSxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0dWlQcm92aWRlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHt0dWlBc0RhdGFMaXN0fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlOYXRpdmVNdWx0aVNlbGVjdH0gZnJvbSAnLi9uYXRpdmUtbXVsdGktc2VsZWN0JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzZWxlY3RbbXVsdGlwbGVdW3R1aVNlbGVjdF1bbGFiZWxzXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL25hdGl2ZS1tdWx0aS1zZWxlY3QtZ3JvdXAudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbmF0aXZlLW11bHRpLXNlbGVjdC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzRGF0YUxpc3QoVHVpTmF0aXZlTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudCksXG4gICAgICAgIHR1aVByb3ZpZGUoQWJzdHJhY3RUdWlOYXRpdmVNdWx0aVNlbGVjdCwgVHVpTmF0aXZlTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudCksXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRlbXBsYXRlUmVmLFxuICAgICAgICAgICAgZGVwczogW1R1aU5hdGl2ZU11bHRpU2VsZWN0R3JvdXBDb21wb25lbnRdLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKHtkYXRhbGlzdH06IFR1aU5hdGl2ZU11bHRpU2VsZWN0R3JvdXBDb21wb25lbnQ8dW5rbm93bj4pID0+XG4gICAgICAgICAgICAgICAgZGF0YWxpc3QsXG4gICAgICAgIH0sXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5hcmlhLWludmFsaWRdJzogJ2hvc3QuaW52YWxpZCcsXG4gICAgICAgICdbZGlzYWJsZWRdJzogJ2hvc3QuZGlzYWJsZWQgfHwgY29udHJvbC5yZWFkT25seScsXG4gICAgICAgICdbdGFiSW5kZXhdJzogJ2hvc3QuZm9jdXNhYmxlID8gMCA6IC0xJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ29uVmFsdWVDaGFuZ2UoJGV2ZW50LnRhcmdldC5zZWxlY3RlZE9wdGlvbnMpJyxcbiAgICAgICAgJyhjbGljay5zdG9wLnNpbGVudCknOiAnMCcsXG4gICAgICAgICcobW91c2Vkb3duLnN0b3Auc2lsZW50KSc6ICcwJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlOYXRpdmVNdWx0aVNlbGVjdEdyb3VwQ29tcG9uZW50PFxuICAgIFQsXG4+IGV4dGVuZHMgQWJzdHJhY3RUdWlOYXRpdmVNdWx0aVNlbGVjdDxUPiB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaXRlbXM6IHJlYWRvbmx5IFRbXVtdIHwgbnVsbCA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbGFiZWxzOiByZWFkb25seSBzdHJpbmdbXSA9IFtdO1xuXG4gICAgcHJvdGVjdGVkIG9uVmFsdWVDaGFuZ2Uoc2VsZWN0ZWRPcHRpb25zOiBIVE1MU2VsZWN0RWxlbWVudFsnc2VsZWN0ZWRPcHRpb25zJ10pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBBcnJheS5mcm9tKHNlbGVjdGVkT3B0aW9ucykubWFwKG9wdGlvbiA9PiBvcHRpb24uaW5kZXgpO1xuICAgICAgICBjb25zdCBmbGF0SXRlbXMgPSB0aGlzLml0ZW1zPy5yZWR1Y2UoKGFjYywgdmFsKSA9PiBhY2MuY29uY2F0KHZhbCksIFtdKSB8fCBbXTtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBmbGF0SXRlbXMuZmlsdGVyKChfLCBpbmRleCkgPT4gc2VsZWN0ZWQuaW5jbHVkZXMoaW5kZXgpKTtcblxuICAgICAgICB0aGlzLmhvc3Qub25TZWxlY3Rpb25DaGFuZ2UodmFsdWUpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjb250cm9sLmNvbnRyb2w/LnZhbHVlQ2hhbmdlcyB8IGFzeW5jXCIgLz5cblxuPHR1aS1kYXRhLWxpc3Qtd3JhcHBlclxuICAgICp0dWlEYXRhTGlzdFxuICAgIHR1aU11bHRpU2VsZWN0R3JvdXBcbiAgICBbZGlzYWJsZWRJdGVtSGFuZGxlcl09XCJkaXNhYmxlZEl0ZW1IYW5kbGVyIHx8IGhvc3QuZGlzYWJsZUl0ZW1IYW5kbGVyXCJcbiAgICBbaXRlbUNvbnRlbnRdPVwic3RyaW5naWZ5IHwgdHVpU3RyaW5naWZ5Q29udGVudFwiXG4gICAgW2l0ZW1zXT1cIml0ZW1zXCJcbiAgICBbbGFiZWxzXT1cImxhYmVsc1wiXG4vPlxuPG9wdGdyb3VwXG4gICAgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGl0ZW1zOyBsZXQgaW5kZXggPSBpbmRleFwiXG4gICAgW2xhYmVsXT1cImxhYmVsc1tpbmRleF1cIlxuPlxuICAgIDxvcHRpb25cbiAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBncm91cFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZEl0ZW1IYW5kbGVyID8gZGlzYWJsZWRJdGVtSGFuZGxlcihvcHRpb24pIDogaG9zdC5kaXNhYmxlSXRlbUhhbmRsZXIob3B0aW9uKVwiXG4gICAgICAgIFtzZWxlY3RlZF09XCJvcHRpb24gfCB0dWlNYXBwZXI6IHNlbGVjdGVkTWFwcGVyIDogY29udHJvbC52YWx1ZVwiXG4gICAgICAgIFt2YWx1ZV09XCJzdHJpbmdpZnkob3B0aW9uKVwiXG4gICAgPlxuICAgICAgICB7eyBzdHJpbmdpZnkob3B0aW9uKSB9fVxuICAgIDwvb3B0aW9uPlxuPC9vcHRncm91cD5cbiJdfQ==