primeng 22.1.1 → 22.1.2

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 (850) hide show
  1. package/fesm2022/primeng-accordion.mjs +998 -594
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +266 -174
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +888 -848
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +2534 -1631
  8. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  9. package/fesm2022/primeng-autofocus.mjs +114 -77
  10. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  11. package/fesm2022/primeng-avatar.mjs +330 -189
  12. package/fesm2022/primeng-avatar.mjs.map +1 -1
  13. package/fesm2022/primeng-avatargroup.mjs +178 -95
  14. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  15. package/fesm2022/primeng-badge.mjs +290 -156
  16. package/fesm2022/primeng-badge.mjs.map +1 -1
  17. package/fesm2022/primeng-base.mjs +95 -83
  18. package/fesm2022/primeng-base.mjs.map +1 -1
  19. package/fesm2022/primeng-basecomponent.mjs +528 -478
  20. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  21. package/fesm2022/primeng-baseeditableholder.mjs +131 -74
  22. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  23. package/fesm2022/primeng-baseinput.mjs +214 -99
  24. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  25. package/fesm2022/primeng-basemodelholder.mjs +39 -26
  26. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  27. package/fesm2022/primeng-bind.mjs +156 -97
  28. package/fesm2022/primeng-bind.mjs.map +1 -1
  29. package/fesm2022/primeng-blockui.mjs +360 -225
  30. package/fesm2022/primeng-blockui.mjs.map +1 -1
  31. package/fesm2022/primeng-breadcrumb.mjs +458 -220
  32. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  33. package/fesm2022/primeng-button.mjs +1568 -710
  34. package/fesm2022/primeng-button.mjs.map +1 -1
  35. package/fesm2022/primeng-buttongroup.mjs +125 -73
  36. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  37. package/fesm2022/primeng-card.mjs +389 -178
  38. package/fesm2022/primeng-card.mjs.map +1 -1
  39. package/fesm2022/primeng-carousel.mjs +2393 -1772
  40. package/fesm2022/primeng-carousel.mjs.map +1 -1
  41. package/fesm2022/primeng-cascadeselect.mjs +2373 -1399
  42. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  43. package/fesm2022/primeng-chart.mjs +402 -231
  44. package/fesm2022/primeng-chart.mjs.map +1 -1
  45. package/fesm2022/primeng-checkbox.mjs +650 -351
  46. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  47. package/fesm2022/primeng-chip.mjs +411 -224
  48. package/fesm2022/primeng-chip.mjs.map +1 -1
  49. package/fesm2022/primeng-classnames.mjs +95 -48
  50. package/fesm2022/primeng-classnames.mjs.map +1 -1
  51. package/fesm2022/primeng-colorpicker.mjs +890 -635
  52. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  53. package/fesm2022/primeng-commandmenu.mjs +568 -313
  54. package/fesm2022/primeng-commandmenu.mjs.map +1 -1
  55. package/fesm2022/primeng-compare.mjs +843 -481
  56. package/fesm2022/primeng-compare.mjs.map +1 -1
  57. package/fesm2022/primeng-config.mjs +415 -321
  58. package/fesm2022/primeng-config.mjs.map +1 -1
  59. package/fesm2022/primeng-confirmdialog.mjs +1188 -536
  60. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  61. package/fesm2022/primeng-confirmpopup.mjs +810 -518
  62. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  63. package/fesm2022/primeng-contextmenu.mjs +1862 -1082
  64. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  65. package/fesm2022/primeng-dataview.mjs +1130 -550
  66. package/fesm2022/primeng-dataview.mjs.map +1 -1
  67. package/fesm2022/primeng-datepicker.mjs +3750 -3356
  68. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  69. package/fesm2022/primeng-dialog.mjs +1635 -975
  70. package/fesm2022/primeng-dialog.mjs.map +1 -1
  71. package/fesm2022/primeng-divider.mjs +272 -146
  72. package/fesm2022/primeng-divider.mjs.map +1 -1
  73. package/fesm2022/primeng-dock.mjs +609 -391
  74. package/fesm2022/primeng-dock.mjs.map +1 -1
  75. package/fesm2022/primeng-dom.mjs +599 -767
  76. package/fesm2022/primeng-dom.mjs.map +1 -1
  77. package/fesm2022/primeng-dragdrop.mjs +323 -312
  78. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  79. package/fesm2022/primeng-drawer.mjs +913 -484
  80. package/fesm2022/primeng-drawer.mjs.map +1 -1
  81. package/fesm2022/primeng-dynamicdialog.mjs +828 -917
  82. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  83. package/fesm2022/primeng-editor.mjs +547 -391
  84. package/fesm2022/primeng-editor.mjs.map +1 -1
  85. package/fesm2022/primeng-fieldset.mjs +559 -271
  86. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  87. package/fesm2022/primeng-fileupload.mjs +1836 -1054
  88. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  89. package/fesm2022/primeng-floatlabel.mjs +187 -102
  90. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  91. package/fesm2022/primeng-fluid.mjs +156 -85
  92. package/fesm2022/primeng-fluid.mjs.map +1 -1
  93. package/fesm2022/primeng-focustrap.mjs +150 -112
  94. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  95. package/fesm2022/primeng-galleria.mjs +2589 -1410
  96. package/fesm2022/primeng-galleria.mjs.map +1 -1
  97. package/fesm2022/primeng-gallery.mjs +2768 -1796
  98. package/fesm2022/primeng-gallery.mjs.map +1 -1
  99. package/fesm2022/primeng-iconfield.mjs +192 -93
  100. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  101. package/fesm2022/primeng-icons-angledoubledown.mjs +41 -23
  102. package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
  103. package/fesm2022/primeng-icons-angledoubleleft.mjs +41 -23
  104. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
  105. package/fesm2022/primeng-icons-angledoubleright.mjs +41 -23
  106. package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
  107. package/fesm2022/primeng-icons-angledoubleup.mjs +41 -23
  108. package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
  109. package/fesm2022/primeng-icons-angledown.mjs +41 -23
  110. package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
  111. package/fesm2022/primeng-icons-angleleft.mjs +41 -23
  112. package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
  113. package/fesm2022/primeng-icons-angleright.mjs +41 -23
  114. package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
  115. package/fesm2022/primeng-icons-angleup.mjs +41 -23
  116. package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
  117. package/fesm2022/primeng-icons-arrowdown.mjs +46 -28
  118. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  119. package/fesm2022/primeng-icons-arrowdownleft.mjs +41 -23
  120. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
  121. package/fesm2022/primeng-icons-arrowdownright.mjs +41 -23
  122. package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
  123. package/fesm2022/primeng-icons-arrowleft.mjs +46 -28
  124. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  125. package/fesm2022/primeng-icons-arrowright.mjs +41 -23
  126. package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
  127. package/fesm2022/primeng-icons-arrowup.mjs +46 -28
  128. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  129. package/fesm2022/primeng-icons-ban.mjs +46 -28
  130. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  131. package/fesm2022/primeng-icons-bars.mjs +41 -23
  132. package/fesm2022/primeng-icons-bars.mjs.map +1 -1
  133. package/fesm2022/primeng-icons-baseicon.mjs +111 -67
  134. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  135. package/fesm2022/primeng-icons-blank.mjs +40 -22
  136. package/fesm2022/primeng-icons-blank.mjs.map +1 -1
  137. package/fesm2022/primeng-icons-calendar.mjs +41 -23
  138. package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
  139. package/fesm2022/primeng-icons-caretleft.mjs +41 -23
  140. package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
  141. package/fesm2022/primeng-icons-caretright.mjs +41 -23
  142. package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
  143. package/fesm2022/primeng-icons-check.mjs +41 -23
  144. package/fesm2022/primeng-icons-check.mjs.map +1 -1
  145. package/fesm2022/primeng-icons-chevrondown.mjs +41 -23
  146. package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
  147. package/fesm2022/primeng-icons-chevronleft.mjs +41 -23
  148. package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
  149. package/fesm2022/primeng-icons-chevronright.mjs +41 -23
  150. package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-chevronup.mjs +41 -23
  152. package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
  153. package/fesm2022/primeng-icons-exclamationtriangle.mjs +46 -28
  154. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  155. package/fesm2022/primeng-icons-eye.mjs +41 -23
  156. package/fesm2022/primeng-icons-eye.mjs.map +1 -1
  157. package/fesm2022/primeng-icons-eyeslash.mjs +46 -28
  158. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  159. package/fesm2022/primeng-icons-filter.mjs +46 -28
  160. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  161. package/fesm2022/primeng-icons-filterfill.mjs +41 -23
  162. package/fesm2022/primeng-icons-filterfill.mjs.map +1 -1
  163. package/fesm2022/primeng-icons-filterslash.mjs +46 -28
  164. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-home.mjs +46 -28
  166. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  167. package/fesm2022/primeng-icons-infocircle.mjs +46 -28
  168. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  169. package/fesm2022/primeng-icons-minus.mjs +41 -23
  170. package/fesm2022/primeng-icons-minus.mjs.map +1 -1
  171. package/fesm2022/primeng-icons-pencil.mjs +46 -28
  172. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  173. package/fesm2022/primeng-icons-plus.mjs +46 -28
  174. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  175. package/fesm2022/primeng-icons-refresh.mjs +46 -28
  176. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-search.mjs +46 -28
  178. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  179. package/fesm2022/primeng-icons-searchminus.mjs +46 -28
  180. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  181. package/fesm2022/primeng-icons-searchplus.mjs +46 -28
  182. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  183. package/fesm2022/primeng-icons-sortalt.mjs +46 -28
  184. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  185. package/fesm2022/primeng-icons-sortamountdown.mjs +46 -28
  186. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  187. package/fesm2022/primeng-icons-sortamountupalt.mjs +46 -28
  188. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  189. package/fesm2022/primeng-icons-spinner.mjs +46 -28
  190. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  191. package/fesm2022/primeng-icons-star.mjs +46 -28
  192. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  193. package/fesm2022/primeng-icons-starfill.mjs +46 -28
  194. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  195. package/fesm2022/primeng-icons-thlarge.mjs +46 -28
  196. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  197. package/fesm2022/primeng-icons-times.mjs +41 -23
  198. package/fesm2022/primeng-icons-times.mjs.map +1 -1
  199. package/fesm2022/primeng-icons-timescircle.mjs +46 -28
  200. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  201. package/fesm2022/primeng-icons-trash.mjs +46 -28
  202. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  203. package/fesm2022/primeng-icons-undo.mjs +46 -28
  204. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  205. package/fesm2022/primeng-icons-upload.mjs +46 -28
  206. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  207. package/fesm2022/primeng-icons-windowmaximize.mjs +46 -28
  208. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  209. package/fesm2022/primeng-icons-windowminimize.mjs +46 -28
  210. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  211. package/fesm2022/primeng-icons.mjs +53 -63
  212. package/fesm2022/primeng-iftalabel.mjs +153 -86
  213. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  214. package/fesm2022/primeng-image.mjs +1006 -532
  215. package/fesm2022/primeng-image.mjs.map +1 -1
  216. package/fesm2022/primeng-imagecompare.mjs +325 -165
  217. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  218. package/fesm2022/primeng-inplace.mjs +401 -199
  219. package/fesm2022/primeng-inplace.mjs.map +1 -1
  220. package/fesm2022/primeng-inputcolor.mjs +2631 -2189
  221. package/fesm2022/primeng-inputcolor.mjs.map +1 -1
  222. package/fesm2022/primeng-inputgroup.mjs +159 -91
  223. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  224. package/fesm2022/primeng-inputgroupaddon.mjs +153 -68
  225. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  226. package/fesm2022/primeng-inputicon.mjs +173 -72
  227. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  228. package/fesm2022/primeng-inputmask.mjs +1607 -1387
  229. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  230. package/fesm2022/primeng-inputnumber.mjs +1646 -1305
  231. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  232. package/fesm2022/primeng-inputotp.mjs +571 -376
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputpassword.mjs +179 -96
  235. package/fesm2022/primeng-inputpassword.mjs.map +1 -1
  236. package/fesm2022/primeng-inputtags.mjs +1212 -588
  237. package/fesm2022/primeng-inputtags.mjs.map +1 -1
  238. package/fesm2022/primeng-inputtext.mjs +325 -175
  239. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  240. package/fesm2022/primeng-keyfilter.mjs +268 -244
  241. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  242. package/fesm2022/primeng-knob.mjs +627 -405
  243. package/fesm2022/primeng-knob.mjs.map +1 -1
  244. package/fesm2022/primeng-label.mjs +143 -81
  245. package/fesm2022/primeng-label.mjs.map +1 -1
  246. package/fesm2022/primeng-license.mjs +10 -36
  247. package/fesm2022/primeng-license.mjs.map +1 -1
  248. package/fesm2022/primeng-listbox.mjs +2409 -1608
  249. package/fesm2022/primeng-listbox.mjs.map +1 -1
  250. package/fesm2022/primeng-megamenu.mjs +2006 -1137
  251. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  252. package/fesm2022/primeng-menu.mjs +1437 -848
  253. package/fesm2022/primeng-menu.mjs.map +1 -1
  254. package/fesm2022/primeng-menubar.mjs +1832 -994
  255. package/fesm2022/primeng-menubar.mjs.map +1 -1
  256. package/fesm2022/primeng-message.mjs +474 -239
  257. package/fesm2022/primeng-message.mjs.map +1 -1
  258. package/fesm2022/primeng-metergroup.mjs +663 -331
  259. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  260. package/fesm2022/primeng-motion.mjs +1179 -690
  261. package/fesm2022/primeng-motion.mjs.map +1 -1
  262. package/fesm2022/primeng-multiselect.mjs +3406 -1932
  263. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  264. package/fesm2022/primeng-orderlist.mjs +1308 -664
  265. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  266. package/fesm2022/primeng-organizationchart.mjs +912 -595
  267. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  268. package/fesm2022/primeng-overlay.mjs +929 -624
  269. package/fesm2022/primeng-overlay.mjs.map +1 -1
  270. package/fesm2022/primeng-overlaybadge.mjs +291 -107
  271. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  272. package/fesm2022/primeng-paginator.mjs +959 -503
  273. package/fesm2022/primeng-paginator.mjs.map +1 -1
  274. package/fesm2022/primeng-panel.mjs +668 -343
  275. package/fesm2022/primeng-panel.mjs.map +1 -1
  276. package/fesm2022/primeng-panelmenu.mjs +1842 -998
  277. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  278. package/fesm2022/primeng-passthrough.mjs +8 -16
  279. package/fesm2022/primeng-passthrough.mjs.map +1 -1
  280. package/fesm2022/primeng-password.mjs +1518 -866
  281. package/fesm2022/primeng-password.mjs.map +1 -1
  282. package/fesm2022/primeng-picklist.mjs +2270 -1256
  283. package/fesm2022/primeng-picklist.mjs.map +1 -1
  284. package/fesm2022/primeng-popover.mjs +656 -436
  285. package/fesm2022/primeng-popover.mjs.map +1 -1
  286. package/fesm2022/primeng-progressbar.mjs +346 -168
  287. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  288. package/fesm2022/primeng-progressspinner.mjs +338 -188
  289. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  290. package/fesm2022/primeng-radiobutton.mjs +499 -292
  291. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  292. package/fesm2022/primeng-rating.mjs +583 -352
  293. package/fesm2022/primeng-rating.mjs.map +1 -1
  294. package/fesm2022/primeng-ripple.mjs +194 -184
  295. package/fesm2022/primeng-ripple.mjs.map +1 -1
  296. package/fesm2022/primeng-scrollarea.mjs +1018 -721
  297. package/fesm2022/primeng-scrollarea.mjs.map +1 -1
  298. package/fesm2022/primeng-scroller.mjs +1386 -1083
  299. package/fesm2022/primeng-scroller.mjs.map +1 -1
  300. package/fesm2022/primeng-scrollpanel.mjs +568 -480
  301. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  302. package/fesm2022/primeng-scrolltop.mjs +509 -260
  303. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  304. package/fesm2022/primeng-select.mjs +2948 -1765
  305. package/fesm2022/primeng-select.mjs.map +1 -1
  306. package/fesm2022/primeng-selectbutton.mjs +629 -339
  307. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  308. package/fesm2022/primeng-sidebar.mjs +2561 -1416
  309. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  310. package/fesm2022/primeng-skeleton.mjs +300 -157
  311. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  312. package/fesm2022/primeng-slider.mjs +841 -604
  313. package/fesm2022/primeng-slider.mjs.map +1 -1
  314. package/fesm2022/primeng-speeddial.mjs +1115 -717
  315. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  316. package/fesm2022/primeng-splitbutton.mjs +889 -339
  317. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  318. package/fesm2022/primeng-splitter.mjs +997 -759
  319. package/fesm2022/primeng-splitter.mjs.map +1 -1
  320. package/fesm2022/primeng-stepper.mjs +1355 -641
  321. package/fesm2022/primeng-stepper.mjs.map +1 -1
  322. package/fesm2022/primeng-steps.mjs +397 -304
  323. package/fesm2022/primeng-steps.mjs.map +1 -1
  324. package/fesm2022/primeng-styleclass.mjs +446 -334
  325. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  326. package/fesm2022/primeng-table.mjs +9763 -5870
  327. package/fesm2022/primeng-table.mjs.map +1 -1
  328. package/fesm2022/primeng-tabs.mjs +1357 -831
  329. package/fesm2022/primeng-tabs.mjs.map +1 -1
  330. package/fesm2022/primeng-tag.mjs +305 -151
  331. package/fesm2022/primeng-tag.mjs.map +1 -1
  332. package/fesm2022/primeng-terminal.mjs +368 -216
  333. package/fesm2022/primeng-terminal.mjs.map +1 -1
  334. package/fesm2022/primeng-textarea.mjs +345 -208
  335. package/fesm2022/primeng-textarea.mjs.map +1 -1
  336. package/fesm2022/primeng-tieredmenu.mjs +1917 -1125
  337. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  338. package/fesm2022/primeng-timeline.mjs +304 -165
  339. package/fesm2022/primeng-timeline.mjs.map +1 -1
  340. package/fesm2022/primeng-toast.mjs +1369 -922
  341. package/fesm2022/primeng-toast.mjs.map +1 -1
  342. package/fesm2022/primeng-togglebutton.mjs +563 -309
  343. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  344. package/fesm2022/primeng-toggleswitch.mjs +464 -237
  345. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  346. package/fesm2022/primeng-toolbar.mjs +299 -129
  347. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  348. package/fesm2022/primeng-tooltip.mjs +1018 -778
  349. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  350. package/fesm2022/primeng-tree.mjs +2679 -1875
  351. package/fesm2022/primeng-tree.mjs.map +1 -1
  352. package/fesm2022/primeng-treeselect.mjs +1678 -939
  353. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  354. package/fesm2022/primeng-treetable.mjs +5849 -3754
  355. package/fesm2022/primeng-treetable.mjs.map +1 -1
  356. package/fesm2022/primeng-ts-helpers.mjs +0 -4
  357. package/fesm2022/primeng-types-accordion.mjs +0 -4
  358. package/fesm2022/primeng-types-autocomplete.mjs +0 -4
  359. package/fesm2022/primeng-types-avatar.mjs +0 -4
  360. package/fesm2022/primeng-types-avatargroup.mjs +0 -4
  361. package/fesm2022/primeng-types-badge.mjs +0 -4
  362. package/fesm2022/primeng-types-blockui.mjs +0 -4
  363. package/fesm2022/primeng-types-breadcrumb.mjs +0 -4
  364. package/fesm2022/primeng-types-button.mjs +0 -4
  365. package/fesm2022/primeng-types-card.mjs +0 -4
  366. package/fesm2022/primeng-types-carousel.mjs +0 -4
  367. package/fesm2022/primeng-types-cascadeselect.mjs +0 -4
  368. package/fesm2022/primeng-types-chart.mjs +0 -4
  369. package/fesm2022/primeng-types-checkbox.mjs +0 -4
  370. package/fesm2022/primeng-types-chip.mjs +0 -4
  371. package/fesm2022/primeng-types-colorpicker.mjs +0 -4
  372. package/fesm2022/primeng-types-commandmenu.mjs +0 -4
  373. package/fesm2022/primeng-types-compare.mjs +0 -4
  374. package/fesm2022/primeng-types-confirmdialog.mjs +0 -4
  375. package/fesm2022/primeng-types-confirmpopup.mjs +0 -4
  376. package/fesm2022/primeng-types-contextmenu.mjs +0 -4
  377. package/fesm2022/primeng-types-dataview.mjs +0 -4
  378. package/fesm2022/primeng-types-datepicker.mjs +0 -4
  379. package/fesm2022/primeng-types-dialog.mjs +0 -4
  380. package/fesm2022/primeng-types-divider.mjs +0 -4
  381. package/fesm2022/primeng-types-dock.mjs +0 -4
  382. package/fesm2022/primeng-types-drawer.mjs +0 -4
  383. package/fesm2022/primeng-types-editor.mjs +0 -4
  384. package/fesm2022/primeng-types-fieldset.mjs +0 -4
  385. package/fesm2022/primeng-types-fileupload.mjs +0 -4
  386. package/fesm2022/primeng-types-floatlabel.mjs +0 -4
  387. package/fesm2022/primeng-types-fluid.mjs +0 -4
  388. package/fesm2022/primeng-types-galleria.mjs +0 -4
  389. package/fesm2022/primeng-types-gallery.mjs +0 -4
  390. package/fesm2022/primeng-types-iconfield.mjs +0 -4
  391. package/fesm2022/primeng-types-iftalabel.mjs +0 -4
  392. package/fesm2022/primeng-types-image.mjs +0 -4
  393. package/fesm2022/primeng-types-imagecompare.mjs +0 -4
  394. package/fesm2022/primeng-types-inplace.mjs +0 -4
  395. package/fesm2022/primeng-types-inputcolor.mjs +0 -4
  396. package/fesm2022/primeng-types-inputgroup.mjs +0 -4
  397. package/fesm2022/primeng-types-inputgroupaddon.mjs +0 -4
  398. package/fesm2022/primeng-types-inputicon.mjs +0 -4
  399. package/fesm2022/primeng-types-inputmask.mjs +0 -4
  400. package/fesm2022/primeng-types-inputnumber.mjs +0 -4
  401. package/fesm2022/primeng-types-inputotp.mjs +0 -4
  402. package/fesm2022/primeng-types-inputpassword.mjs +0 -4
  403. package/fesm2022/primeng-types-inputtags.mjs +0 -4
  404. package/fesm2022/primeng-types-inputtext.mjs +0 -4
  405. package/fesm2022/primeng-types-knob.mjs +0 -4
  406. package/fesm2022/primeng-types-label.mjs +0 -4
  407. package/fesm2022/primeng-types-listbox.mjs +0 -4
  408. package/fesm2022/primeng-types-megamenu.mjs +0 -4
  409. package/fesm2022/primeng-types-menu.mjs +0 -4
  410. package/fesm2022/primeng-types-menubar.mjs +0 -4
  411. package/fesm2022/primeng-types-message.mjs +0 -4
  412. package/fesm2022/primeng-types-metergroup.mjs +0 -4
  413. package/fesm2022/primeng-types-motion.mjs +0 -4
  414. package/fesm2022/primeng-types-multiselect.mjs +0 -4
  415. package/fesm2022/primeng-types-orderlist.mjs +0 -4
  416. package/fesm2022/primeng-types-organizationchart.mjs +0 -4
  417. package/fesm2022/primeng-types-overlay.mjs +0 -4
  418. package/fesm2022/primeng-types-overlaybadge.mjs +0 -4
  419. package/fesm2022/primeng-types-paginator.mjs +0 -4
  420. package/fesm2022/primeng-types-panel.mjs +0 -4
  421. package/fesm2022/primeng-types-panelmenu.mjs +0 -4
  422. package/fesm2022/primeng-types-password.mjs +0 -4
  423. package/fesm2022/primeng-types-picklist.mjs +0 -4
  424. package/fesm2022/primeng-types-popover.mjs +0 -4
  425. package/fesm2022/primeng-types-progressbar.mjs +0 -4
  426. package/fesm2022/primeng-types-progressspinner.mjs +0 -4
  427. package/fesm2022/primeng-types-radiobutton.mjs +0 -4
  428. package/fesm2022/primeng-types-rating.mjs +0 -4
  429. package/fesm2022/primeng-types-scrollarea.mjs +0 -4
  430. package/fesm2022/primeng-types-scroller.mjs +0 -4
  431. package/fesm2022/primeng-types-scrollpanel.mjs +0 -4
  432. package/fesm2022/primeng-types-scrolltop.mjs +0 -4
  433. package/fesm2022/primeng-types-select.mjs +0 -4
  434. package/fesm2022/primeng-types-selectbutton.mjs +0 -4
  435. package/fesm2022/primeng-types-shared.mjs +0 -4
  436. package/fesm2022/primeng-types-sidebar.mjs +0 -4
  437. package/fesm2022/primeng-types-skeleton.mjs +0 -4
  438. package/fesm2022/primeng-types-slider.mjs +0 -4
  439. package/fesm2022/primeng-types-speeddial.mjs +0 -4
  440. package/fesm2022/primeng-types-splitbutton.mjs +0 -4
  441. package/fesm2022/primeng-types-splitter.mjs +0 -4
  442. package/fesm2022/primeng-types-stepper.mjs +0 -4
  443. package/fesm2022/primeng-types-table.mjs +0 -4
  444. package/fesm2022/primeng-types-tabs.mjs +0 -4
  445. package/fesm2022/primeng-types-tag.mjs +0 -4
  446. package/fesm2022/primeng-types-terminal.mjs +0 -4
  447. package/fesm2022/primeng-types-textarea.mjs +0 -4
  448. package/fesm2022/primeng-types-tieredmenu.mjs +0 -4
  449. package/fesm2022/primeng-types-timeline.mjs +0 -4
  450. package/fesm2022/primeng-types-toast.mjs +0 -4
  451. package/fesm2022/primeng-types-togglebutton.mjs +0 -4
  452. package/fesm2022/primeng-types-toggleswitch.mjs +0 -4
  453. package/fesm2022/primeng-types-toolbar.mjs +0 -4
  454. package/fesm2022/primeng-types-tooltip.mjs +0 -4
  455. package/fesm2022/primeng-types-tree.mjs +0 -4
  456. package/fesm2022/primeng-types-treeselect.mjs +0 -4
  457. package/fesm2022/primeng-types-treetable.mjs +0 -4
  458. package/fesm2022/primeng-usestyle.mjs +105 -113
  459. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  460. package/fesm2022/primeng-utils.mjs +236 -317
  461. package/fesm2022/primeng-utils.mjs.map +1 -1
  462. package/fesm2022/primeng.mjs +1 -5
  463. package/fesm2022/primeng.mjs.map +1 -1
  464. package/package.json +6 -1
  465. package/types/primeng-accordion.d.ts +289 -219
  466. package/types/primeng-animateonscroll.d.ts +89 -61
  467. package/types/primeng-api.d.ts +1754 -1790
  468. package/types/primeng-autocomplete.d.ts +1053 -754
  469. package/types/primeng-autofocus.d.ts +27 -24
  470. package/types/primeng-avatar.d.ts +152 -114
  471. package/types/primeng-avatargroup.d.ts +45 -40
  472. package/types/primeng-badge.d.ts +104 -78
  473. package/types/primeng-base.d.ts +49 -52
  474. package/types/primeng-basecomponent.d.ts +191 -174
  475. package/types/primeng-baseeditableholder.d.ts +63 -45
  476. package/types/primeng-baseinput.d.ts +122 -74
  477. package/types/primeng-basemodelholder.d.ts +9 -12
  478. package/types/primeng-bind.d.ts +36 -32
  479. package/types/primeng-blockui.d.ts +99 -80
  480. package/types/primeng-breadcrumb.d.ts +159 -133
  481. package/types/primeng-button.d.ts +690 -425
  482. package/types/primeng-buttongroup.d.ts +26 -30
  483. package/types/primeng-card.d.ts +130 -119
  484. package/types/primeng-carousel.d.ts +799 -629
  485. package/types/primeng-cascadeselect.d.ts +753 -562
  486. package/types/primeng-chart.d.ts +158 -112
  487. package/types/primeng-checkbox.d.ts +298 -208
  488. package/types/primeng-chip.d.ts +187 -143
  489. package/types/primeng-classnames.d.ts +23 -21
  490. package/types/primeng-colorpicker.d.ts +324 -269
  491. package/types/primeng-commandmenu.d.ts +213 -165
  492. package/types/primeng-compare.d.ts +267 -189
  493. package/types/primeng-config.d.ts +294 -304
  494. package/types/primeng-confirmdialog.d.ts +504 -325
  495. package/types/primeng-confirmpopup.d.ts +253 -207
  496. package/types/primeng-contextmenu.d.ts +522 -366
  497. package/types/primeng-dataview.d.ts +497 -342
  498. package/types/primeng-datepicker.d.ts +1268 -969
  499. package/types/primeng-dialog.d.ts +667 -462
  500. package/types/primeng-divider.d.ts +112 -96
  501. package/types/primeng-dock.d.ts +206 -172
  502. package/types/primeng-dom.d.ts +97 -100
  503. package/types/primeng-dragdrop.d.ts +142 -107
  504. package/types/primeng-drawer.d.ts +354 -254
  505. package/types/primeng-dynamicdialog.d.ts +527 -535
  506. package/types/primeng-editor.d.ts +210 -162
  507. package/types/primeng-fieldset.d.ts +198 -163
  508. package/types/primeng-fileupload.d.ts +726 -523
  509. package/types/primeng-floatlabel.d.ts +54 -48
  510. package/types/primeng-fluid.d.ts +36 -36
  511. package/types/primeng-focustrap.d.ts +30 -27
  512. package/types/primeng-galleria.d.ts +569 -430
  513. package/types/primeng-gallery.d.ts +754 -552
  514. package/types/primeng-iconfield.d.ts +53 -42
  515. package/types/primeng-icons-angledoubledown.d.ts +6 -9
  516. package/types/primeng-icons-angledoubleleft.d.ts +6 -9
  517. package/types/primeng-icons-angledoubleright.d.ts +6 -9
  518. package/types/primeng-icons-angledoubleup.d.ts +6 -9
  519. package/types/primeng-icons-angledown.d.ts +6 -9
  520. package/types/primeng-icons-angleleft.d.ts +6 -9
  521. package/types/primeng-icons-angleright.d.ts +6 -9
  522. package/types/primeng-icons-angleup.d.ts +6 -9
  523. package/types/primeng-icons-arrowdown.d.ts +8 -11
  524. package/types/primeng-icons-arrowdownleft.d.ts +6 -9
  525. package/types/primeng-icons-arrowdownright.d.ts +6 -9
  526. package/types/primeng-icons-arrowleft.d.ts +8 -11
  527. package/types/primeng-icons-arrowright.d.ts +6 -9
  528. package/types/primeng-icons-arrowup.d.ts +8 -11
  529. package/types/primeng-icons-ban.d.ts +8 -11
  530. package/types/primeng-icons-bars.d.ts +6 -9
  531. package/types/primeng-icons-baseicon.d.ts +23 -22
  532. package/types/primeng-icons-blank.d.ts +6 -9
  533. package/types/primeng-icons-calendar.d.ts +6 -9
  534. package/types/primeng-icons-caretleft.d.ts +6 -9
  535. package/types/primeng-icons-caretright.d.ts +6 -9
  536. package/types/primeng-icons-check.d.ts +6 -9
  537. package/types/primeng-icons-chevrondown.d.ts +6 -9
  538. package/types/primeng-icons-chevronleft.d.ts +6 -9
  539. package/types/primeng-icons-chevronright.d.ts +6 -9
  540. package/types/primeng-icons-chevronup.d.ts +6 -9
  541. package/types/primeng-icons-exclamationtriangle.d.ts +8 -11
  542. package/types/primeng-icons-eye.d.ts +6 -9
  543. package/types/primeng-icons-eyeslash.d.ts +8 -11
  544. package/types/primeng-icons-filter.d.ts +8 -11
  545. package/types/primeng-icons-filterfill.d.ts +6 -9
  546. package/types/primeng-icons-filterslash.d.ts +8 -11
  547. package/types/primeng-icons-home.d.ts +8 -11
  548. package/types/primeng-icons-infocircle.d.ts +8 -11
  549. package/types/primeng-icons-minus.d.ts +6 -9
  550. package/types/primeng-icons-pencil.d.ts +8 -11
  551. package/types/primeng-icons-plus.d.ts +8 -11
  552. package/types/primeng-icons-refresh.d.ts +8 -11
  553. package/types/primeng-icons-search.d.ts +8 -11
  554. package/types/primeng-icons-searchminus.d.ts +8 -11
  555. package/types/primeng-icons-searchplus.d.ts +8 -11
  556. package/types/primeng-icons-sortalt.d.ts +8 -11
  557. package/types/primeng-icons-sortamountdown.d.ts +8 -11
  558. package/types/primeng-icons-sortamountupalt.d.ts +8 -11
  559. package/types/primeng-icons-spinner.d.ts +8 -11
  560. package/types/primeng-icons-star.d.ts +8 -11
  561. package/types/primeng-icons-starfill.d.ts +8 -11
  562. package/types/primeng-icons-thlarge.d.ts +8 -11
  563. package/types/primeng-icons-times.d.ts +6 -9
  564. package/types/primeng-icons-timescircle.d.ts +8 -11
  565. package/types/primeng-icons-trash.d.ts +8 -11
  566. package/types/primeng-icons-undo.d.ts +8 -11
  567. package/types/primeng-icons-upload.d.ts +8 -11
  568. package/types/primeng-icons-windowmaximize.d.ts +8 -11
  569. package/types/primeng-icons-windowminimize.d.ts +8 -11
  570. package/types/primeng-icons.d.ts +53 -53
  571. package/types/primeng-iftalabel.d.ts +37 -37
  572. package/types/primeng-image.d.ts +403 -308
  573. package/types/primeng-imagecompare.d.ts +93 -77
  574. package/types/primeng-inplace.d.ts +125 -111
  575. package/types/primeng-inputcolor.d.ts +646 -507
  576. package/types/primeng-inputgroup.d.ts +41 -41
  577. package/types/primeng-inputgroupaddon.d.ts +31 -31
  578. package/types/primeng-inputicon.d.ts +38 -32
  579. package/types/primeng-inputmask.d.ts +519 -362
  580. package/types/primeng-inputnumber.d.ts +572 -405
  581. package/types/primeng-inputotp.d.ts +205 -156
  582. package/types/primeng-inputpassword.d.ts +59 -43
  583. package/types/primeng-inputtags.d.ts +451 -297
  584. package/types/primeng-inputtext.d.ts +129 -93
  585. package/types/primeng-keyfilter.d.ts +62 -53
  586. package/types/primeng-knob.d.ts +256 -183
  587. package/types/primeng-label.d.ts +36 -36
  588. package/types/primeng-license.d.ts +1 -3
  589. package/types/primeng-listbox.d.ts +1040 -786
  590. package/types/primeng-megamenu.d.ts +535 -383
  591. package/types/primeng-menu.d.ts +478 -361
  592. package/types/primeng-menubar.d.ts +495 -354
  593. package/types/primeng-message.d.ts +191 -148
  594. package/types/primeng-metergroup.d.ts +249 -187
  595. package/types/primeng-motion.d.ts +602 -384
  596. package/types/primeng-multiselect.d.ts +1192 -858
  597. package/types/primeng-orderlist.d.ts +538 -390
  598. package/types/primeng-organizationchart.d.ts +235 -192
  599. package/types/primeng-overlay.d.ts +394 -294
  600. package/types/primeng-overlaybadge.d.ts +95 -64
  601. package/types/primeng-paginator.d.ts +409 -309
  602. package/types/primeng-panel.d.ts +267 -217
  603. package/types/primeng-panelmenu.d.ts +254 -228
  604. package/types/primeng-passthrough.d.ts +5 -7
  605. package/types/primeng-password.d.ts +605 -430
  606. package/types/primeng-picklist.d.ts +1041 -756
  607. package/types/primeng-popover.d.ts +235 -176
  608. package/types/primeng-progressbar.d.ts +130 -99
  609. package/types/primeng-progressspinner.d.ts +144 -108
  610. package/types/primeng-radiobutton.d.ts +218 -168
  611. package/types/primeng-rating.d.ts +239 -189
  612. package/types/primeng-ripple.d.ts +38 -42
  613. package/types/primeng-scrollarea.d.ts +290 -239
  614. package/types/primeng-scroller.d.ts +522 -387
  615. package/types/primeng-scrollpanel.d.ts +134 -128
  616. package/types/primeng-scrolltop.d.ts +169 -123
  617. package/types/primeng-select.d.ts +1013 -738
  618. package/types/primeng-selectbutton.d.ts +238 -164
  619. package/types/primeng-sidebar.d.ts +794 -561
  620. package/types/primeng-skeleton.d.ts +114 -83
  621. package/types/primeng-slider.d.ts +375 -306
  622. package/types/primeng-speeddial.d.ts +492 -370
  623. package/types/primeng-splitbutton.d.ts +381 -240
  624. package/types/primeng-splitter.d.ts +392 -299
  625. package/types/primeng-stepper.d.ts +422 -250
  626. package/types/primeng-steps.d.ts +157 -134
  627. package/types/primeng-styleclass.d.ts +163 -105
  628. package/types/primeng-table.d.ts +2898 -1911
  629. package/types/primeng-tabs.d.ts +467 -301
  630. package/types/primeng-tag.d.ts +106 -85
  631. package/types/primeng-terminal.d.ts +131 -117
  632. package/types/primeng-textarea.d.ts +145 -107
  633. package/types/primeng-tieredmenu.d.ts +572 -398
  634. package/types/primeng-timeline.d.ts +125 -109
  635. package/types/primeng-toast.d.ts +310 -247
  636. package/types/primeng-togglebutton.d.ts +254 -182
  637. package/types/primeng-toggleswitch.d.ts +188 -140
  638. package/types/primeng-toolbar.d.ts +82 -76
  639. package/types/primeng-tooltip.d.ts +334 -232
  640. package/types/primeng-tree.d.ts +762 -559
  641. package/types/primeng-treeselect.d.ts +749 -547
  642. package/types/primeng-treetable.d.ts +1839 -1313
  643. package/types/primeng-ts-helpers.d.ts +4 -6
  644. package/types/primeng-types-accordion.d.ts +58 -62
  645. package/types/primeng-types-autocomplete.d.ts +230 -233
  646. package/types/primeng-types-avatar.d.ts +25 -28
  647. package/types/primeng-types-avatargroup.d.ts +11 -14
  648. package/types/primeng-types-badge.d.ts +13 -16
  649. package/types/primeng-types-blockui.d.ts +18 -21
  650. package/types/primeng-types-breadcrumb.d.ts +65 -68
  651. package/types/primeng-types-button.d.ts +106 -109
  652. package/types/primeng-types-card.d.ts +54 -57
  653. package/types/primeng-types-carousel.d.ts +143 -146
  654. package/types/primeng-types-cascadeselect.d.ts +186 -192
  655. package/types/primeng-types-chart.d.ts +34 -39
  656. package/types/primeng-types-checkbox.d.ts +52 -55
  657. package/types/primeng-types-chip.d.ts +48 -51
  658. package/types/primeng-types-colorpicker.d.ts +59 -62
  659. package/types/primeng-types-commandmenu.d.ts +98 -101
  660. package/types/primeng-types-compare.d.ts +33 -36
  661. package/types/primeng-types-confirmdialog.d.ts +124 -127
  662. package/types/primeng-types-confirmpopup.d.ts +75 -78
  663. package/types/primeng-types-contextmenu.d.ts +100 -103
  664. package/types/primeng-types-dataview.d.ts +180 -183
  665. package/types/primeng-types-datepicker.d.ts +442 -445
  666. package/types/primeng-types-dialog.d.ts +93 -96
  667. package/types/primeng-types-divider.d.ts +14 -17
  668. package/types/primeng-types-dock.d.ts +45 -48
  669. package/types/primeng-types-drawer.d.ts +62 -65
  670. package/types/primeng-types-editor.d.ts +143 -146
  671. package/types/primeng-types-fieldset.d.ts +83 -87
  672. package/types/primeng-types-fileupload.d.ts +296 -301
  673. package/types/primeng-types-floatlabel.d.ts +12 -15
  674. package/types/primeng-types-fluid.d.ts +11 -14
  675. package/types/primeng-types-galleria.d.ts +209 -212
  676. package/types/primeng-types-gallery.d.ts +195 -198
  677. package/types/primeng-types-iconfield.d.ts +12 -15
  678. package/types/primeng-types-iftalabel.d.ts +11 -14
  679. package/types/primeng-types-image.d.ts +118 -121
  680. package/types/primeng-types-imagecompare.d.ts +22 -25
  681. package/types/primeng-types-inplace.d.ts +46 -49
  682. package/types/primeng-types-inputcolor.d.ts +86 -89
  683. package/types/primeng-types-inputgroup.d.ts +11 -14
  684. package/types/primeng-types-inputgroupaddon.d.ts +11 -14
  685. package/types/primeng-types-inputicon.d.ts +11 -14
  686. package/types/primeng-types-inputmask.d.ts +30 -33
  687. package/types/primeng-types-inputnumber.d.ts +72 -75
  688. package/types/primeng-types-inputotp.d.ts +67 -70
  689. package/types/primeng-types-inputpassword.d.ts +7 -10
  690. package/types/primeng-types-inputtags.d.ts +122 -125
  691. package/types/primeng-types-inputtext.d.ts +7 -10
  692. package/types/primeng-types-knob.d.ts +23 -26
  693. package/types/primeng-types-label.d.ts +7 -10
  694. package/types/primeng-types-listbox.d.ts +262 -266
  695. package/types/primeng-types-megamenu.d.ts +135 -138
  696. package/types/primeng-types-menu.d.ts +98 -101
  697. package/types/primeng-types-menubar.d.ts +122 -125
  698. package/types/primeng-types-message.d.ts +69 -72
  699. package/types/primeng-types-metergroup.d.ts +137 -140
  700. package/types/primeng-types-motion.d.ts +11 -14
  701. package/types/primeng-types-multiselect.d.ts +329 -333
  702. package/types/primeng-types-orderlist.d.ts +126 -129
  703. package/types/primeng-types-organizationchart.d.ts +147 -153
  704. package/types/primeng-types-overlay.d.ts +31 -34
  705. package/types/primeng-types-overlaybadge.d.ts +17 -20
  706. package/types/primeng-types-paginator.d.ts +131 -134
  707. package/types/primeng-types-panel.d.ts +91 -95
  708. package/types/primeng-types-panelmenu.d.ts +150 -153
  709. package/types/primeng-types-password.d.ts +94 -97
  710. package/types/primeng-types-picklist.d.ts +250 -260
  711. package/types/primeng-types-popover.d.ts +33 -36
  712. package/types/primeng-types-progressbar.d.ts +33 -36
  713. package/types/primeng-types-progressspinner.d.ts +27 -30
  714. package/types/primeng-types-radiobutton.d.ts +29 -32
  715. package/types/primeng-types-rating.d.ts +62 -65
  716. package/types/primeng-types-scrollarea.d.ts +35 -38
  717. package/types/primeng-types-scroller.d.ts +142 -146
  718. package/types/primeng-types-scrollpanel.d.ts +31 -34
  719. package/types/primeng-types-scrolltop.d.ts +37 -40
  720. package/types/primeng-types-select.d.ts +251 -254
  721. package/types/primeng-types-selectbutton.d.ts +56 -59
  722. package/types/primeng-types-shared.d.ts +6 -9
  723. package/types/primeng-types-sidebar.d.ts +105 -108
  724. package/types/primeng-types-skeleton.d.ts +11 -14
  725. package/types/primeng-types-slider.d.ts +59 -62
  726. package/types/primeng-types-speeddial.d.ts +71 -74
  727. package/types/primeng-types-splitbutton.d.ts +35 -38
  728. package/types/primeng-types-splitter.d.ts +58 -63
  729. package/types/primeng-types-stepper.d.ts +77 -80
  730. package/types/primeng-types-table.d.ts +743 -749
  731. package/types/primeng-types-tabs.d.ts +48 -51
  732. package/types/primeng-types-tag.d.ts +27 -30
  733. package/types/primeng-types-terminal.d.ts +43 -46
  734. package/types/primeng-types-textarea.d.ts +11 -14
  735. package/types/primeng-types-tieredmenu.d.ts +154 -157
  736. package/types/primeng-types-timeline.d.ts +60 -63
  737. package/types/primeng-types-toast.d.ts +92 -95
  738. package/types/primeng-types-togglebutton.d.ts +52 -55
  739. package/types/primeng-types-toggleswitch.d.ts +41 -44
  740. package/types/primeng-types-toolbar.d.ts +34 -37
  741. package/types/primeng-types-tooltip.d.ts +17 -20
  742. package/types/primeng-types-tree.d.ts +237 -246
  743. package/types/primeng-types-treeselect.d.ts +198 -202
  744. package/types/primeng-types-treetable.d.ts +492 -497
  745. package/types/primeng-usestyle.d.ts +28 -31
  746. package/types/primeng-utils.d.ts +37 -40
  747. package/types/primeng.d.ts +2 -2
  748. package/fesm2022/primeng-icons.mjs.map +0 -1
  749. package/fesm2022/primeng-ts-helpers.mjs.map +0 -1
  750. package/fesm2022/primeng-types-accordion.mjs.map +0 -1
  751. package/fesm2022/primeng-types-autocomplete.mjs.map +0 -1
  752. package/fesm2022/primeng-types-avatar.mjs.map +0 -1
  753. package/fesm2022/primeng-types-avatargroup.mjs.map +0 -1
  754. package/fesm2022/primeng-types-badge.mjs.map +0 -1
  755. package/fesm2022/primeng-types-blockui.mjs.map +0 -1
  756. package/fesm2022/primeng-types-breadcrumb.mjs.map +0 -1
  757. package/fesm2022/primeng-types-button.mjs.map +0 -1
  758. package/fesm2022/primeng-types-card.mjs.map +0 -1
  759. package/fesm2022/primeng-types-carousel.mjs.map +0 -1
  760. package/fesm2022/primeng-types-cascadeselect.mjs.map +0 -1
  761. package/fesm2022/primeng-types-chart.mjs.map +0 -1
  762. package/fesm2022/primeng-types-checkbox.mjs.map +0 -1
  763. package/fesm2022/primeng-types-chip.mjs.map +0 -1
  764. package/fesm2022/primeng-types-colorpicker.mjs.map +0 -1
  765. package/fesm2022/primeng-types-commandmenu.mjs.map +0 -1
  766. package/fesm2022/primeng-types-compare.mjs.map +0 -1
  767. package/fesm2022/primeng-types-confirmdialog.mjs.map +0 -1
  768. package/fesm2022/primeng-types-confirmpopup.mjs.map +0 -1
  769. package/fesm2022/primeng-types-contextmenu.mjs.map +0 -1
  770. package/fesm2022/primeng-types-dataview.mjs.map +0 -1
  771. package/fesm2022/primeng-types-datepicker.mjs.map +0 -1
  772. package/fesm2022/primeng-types-dialog.mjs.map +0 -1
  773. package/fesm2022/primeng-types-divider.mjs.map +0 -1
  774. package/fesm2022/primeng-types-dock.mjs.map +0 -1
  775. package/fesm2022/primeng-types-drawer.mjs.map +0 -1
  776. package/fesm2022/primeng-types-editor.mjs.map +0 -1
  777. package/fesm2022/primeng-types-fieldset.mjs.map +0 -1
  778. package/fesm2022/primeng-types-fileupload.mjs.map +0 -1
  779. package/fesm2022/primeng-types-floatlabel.mjs.map +0 -1
  780. package/fesm2022/primeng-types-fluid.mjs.map +0 -1
  781. package/fesm2022/primeng-types-galleria.mjs.map +0 -1
  782. package/fesm2022/primeng-types-gallery.mjs.map +0 -1
  783. package/fesm2022/primeng-types-iconfield.mjs.map +0 -1
  784. package/fesm2022/primeng-types-iftalabel.mjs.map +0 -1
  785. package/fesm2022/primeng-types-image.mjs.map +0 -1
  786. package/fesm2022/primeng-types-imagecompare.mjs.map +0 -1
  787. package/fesm2022/primeng-types-inplace.mjs.map +0 -1
  788. package/fesm2022/primeng-types-inputcolor.mjs.map +0 -1
  789. package/fesm2022/primeng-types-inputgroup.mjs.map +0 -1
  790. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +0 -1
  791. package/fesm2022/primeng-types-inputicon.mjs.map +0 -1
  792. package/fesm2022/primeng-types-inputmask.mjs.map +0 -1
  793. package/fesm2022/primeng-types-inputnumber.mjs.map +0 -1
  794. package/fesm2022/primeng-types-inputotp.mjs.map +0 -1
  795. package/fesm2022/primeng-types-inputpassword.mjs.map +0 -1
  796. package/fesm2022/primeng-types-inputtags.mjs.map +0 -1
  797. package/fesm2022/primeng-types-inputtext.mjs.map +0 -1
  798. package/fesm2022/primeng-types-knob.mjs.map +0 -1
  799. package/fesm2022/primeng-types-label.mjs.map +0 -1
  800. package/fesm2022/primeng-types-listbox.mjs.map +0 -1
  801. package/fesm2022/primeng-types-megamenu.mjs.map +0 -1
  802. package/fesm2022/primeng-types-menu.mjs.map +0 -1
  803. package/fesm2022/primeng-types-menubar.mjs.map +0 -1
  804. package/fesm2022/primeng-types-message.mjs.map +0 -1
  805. package/fesm2022/primeng-types-metergroup.mjs.map +0 -1
  806. package/fesm2022/primeng-types-motion.mjs.map +0 -1
  807. package/fesm2022/primeng-types-multiselect.mjs.map +0 -1
  808. package/fesm2022/primeng-types-orderlist.mjs.map +0 -1
  809. package/fesm2022/primeng-types-organizationchart.mjs.map +0 -1
  810. package/fesm2022/primeng-types-overlay.mjs.map +0 -1
  811. package/fesm2022/primeng-types-overlaybadge.mjs.map +0 -1
  812. package/fesm2022/primeng-types-paginator.mjs.map +0 -1
  813. package/fesm2022/primeng-types-panel.mjs.map +0 -1
  814. package/fesm2022/primeng-types-panelmenu.mjs.map +0 -1
  815. package/fesm2022/primeng-types-password.mjs.map +0 -1
  816. package/fesm2022/primeng-types-picklist.mjs.map +0 -1
  817. package/fesm2022/primeng-types-popover.mjs.map +0 -1
  818. package/fesm2022/primeng-types-progressbar.mjs.map +0 -1
  819. package/fesm2022/primeng-types-progressspinner.mjs.map +0 -1
  820. package/fesm2022/primeng-types-radiobutton.mjs.map +0 -1
  821. package/fesm2022/primeng-types-rating.mjs.map +0 -1
  822. package/fesm2022/primeng-types-scrollarea.mjs.map +0 -1
  823. package/fesm2022/primeng-types-scroller.mjs.map +0 -1
  824. package/fesm2022/primeng-types-scrollpanel.mjs.map +0 -1
  825. package/fesm2022/primeng-types-scrolltop.mjs.map +0 -1
  826. package/fesm2022/primeng-types-select.mjs.map +0 -1
  827. package/fesm2022/primeng-types-selectbutton.mjs.map +0 -1
  828. package/fesm2022/primeng-types-shared.mjs.map +0 -1
  829. package/fesm2022/primeng-types-sidebar.mjs.map +0 -1
  830. package/fesm2022/primeng-types-skeleton.mjs.map +0 -1
  831. package/fesm2022/primeng-types-slider.mjs.map +0 -1
  832. package/fesm2022/primeng-types-speeddial.mjs.map +0 -1
  833. package/fesm2022/primeng-types-splitbutton.mjs.map +0 -1
  834. package/fesm2022/primeng-types-splitter.mjs.map +0 -1
  835. package/fesm2022/primeng-types-stepper.mjs.map +0 -1
  836. package/fesm2022/primeng-types-table.mjs.map +0 -1
  837. package/fesm2022/primeng-types-tabs.mjs.map +0 -1
  838. package/fesm2022/primeng-types-tag.mjs.map +0 -1
  839. package/fesm2022/primeng-types-terminal.mjs.map +0 -1
  840. package/fesm2022/primeng-types-textarea.mjs.map +0 -1
  841. package/fesm2022/primeng-types-tieredmenu.mjs.map +0 -1
  842. package/fesm2022/primeng-types-timeline.mjs.map +0 -1
  843. package/fesm2022/primeng-types-toast.mjs.map +0 -1
  844. package/fesm2022/primeng-types-togglebutton.mjs.map +0 -1
  845. package/fesm2022/primeng-types-toggleswitch.mjs.map +0 -1
  846. package/fesm2022/primeng-types-toolbar.mjs.map +0 -1
  847. package/fesm2022/primeng-types-tooltip.mjs.map +0 -1
  848. package/fesm2022/primeng-types-tree.mjs.map +0 -1
  849. package/fesm2022/primeng-types-treeselect.mjs.map +0 -1
  850. package/fesm2022/primeng-types-treetable.mjs.map +0 -1
@@ -1,1599 +1,1660 @@
1
- export * from 'primeng/types/autocomplete';
2
- import { NgTemplateOutlet } from '@angular/common';
3
- import * as i0 from '@angular/core';
4
- import { Injectable, InjectionToken, forwardRef, inject, input, numberAttribute, booleanAttribute, output, viewChild, contentChild, signal, computed, effect, HostListener, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
- import { ChevronDown } from '@primeicons/angular/chevron-down';
7
- import { Spinner } from '@primeicons/angular/spinner';
8
- import { Times } from '@primeicons/angular/times';
9
- import { TimesCircle } from '@primeicons/angular/times-circle';
10
- import { uuid, equals, isNotEmpty, findLastIndex, resolveFieldData, focus, isEmpty, findSingle } from '@primeuix/utils';
11
- import { OverlayService, TranslationKeys, SharedModule } from 'primeng/api';
12
- import { AutoFocus } from 'primeng/autofocus';
13
- import { PARENT_INSTANCE } from 'primeng/basecomponent';
14
- import { BaseInput } from 'primeng/baseinput';
15
- import * as i1 from 'primeng/bind';
16
- import { Bind, BindModule } from 'primeng/bind';
17
- import { Chip } from 'primeng/chip';
18
- import { InputText } from 'primeng/inputtext';
19
- import { Overlay } from 'primeng/overlay';
20
- import { Ripple } from 'primeng/ripple';
21
- import { Scroller } from 'primeng/scroller';
22
- import { style } from '@primeuix/styles/autocomplete';
23
- import { BaseStyle } from 'primeng/base';
24
-
25
- const inlineStyles = {
26
- root: { position: 'relative' }
27
- };
1
+ import { NgTemplateOutlet } from "@angular/common";
2
+ import * as i0 from "@angular/core";
3
+ import { ChangeDetectionStrategy, Component, HostListener, Injectable, InjectionToken, NgModule, ViewEncapsulation, booleanAttribute, computed, contentChild, effect, forwardRef, inject, input, numberAttribute, output, signal, viewChild } from "@angular/core";
4
+ import { NG_VALUE_ACCESSOR } from "@angular/forms";
5
+ import { ChevronDown } from "@primeicons/angular/chevron-down";
6
+ import { Spinner } from "@primeicons/angular/spinner";
7
+ import { Times } from "@primeicons/angular/times";
8
+ import { TimesCircle } from "@primeicons/angular/times-circle";
9
+ import { equals, findLastIndex, findSingle, focus, isEmpty, isNotEmpty, resolveFieldData, uuid } from "@primeuix/utils";
10
+ import { OverlayService, SharedModule, TranslationKeys } from "primeng/api";
11
+ import { AutoFocus } from "primeng/autofocus";
12
+ import { PARENT_INSTANCE } from "primeng/basecomponent";
13
+ import { BaseInput } from "primeng/baseinput";
14
+ import * as i1 from "primeng/bind";
15
+ import { Bind, BindModule } from "primeng/bind";
16
+ import { Chip } from "primeng/chip";
17
+ import { InputText } from "primeng/inputtext";
18
+ import { Overlay } from "primeng/overlay";
19
+ import { Ripple } from "primeng/ripple";
20
+ import { Scroller } from "primeng/scroller";
21
+ import { style } from "@primeuix/styles/autocomplete";
22
+ import { BaseStyle } from "primeng/base";
23
+ export * from "primeng/types/autocomplete";
24
+ const inlineStyles = { root: { position: "relative" } };
28
25
  const classes = {
29
- root: ({ instance }) => [
30
- 'p-autocomplete p-component p-inputwrapper',
31
- {
32
- 'p-invalid': instance.invalid(),
33
- 'p-focus': instance.focused(),
34
- 'p-inputwrapper-filled': instance.$filled(),
35
- 'p-inputwrapper-focus': (instance.focused() && !instance.$disabled()) || instance.autofocus() || instance.overlayVisible(),
36
- 'p-autocomplete-open': instance.overlayVisible(),
37
- 'p-autocomplete-fluid': instance.hasFluid
38
- }
39
- ],
40
- pcInputText: 'p-autocomplete-input',
41
- inputMultiple: ({ instance }) => [
42
- 'p-autocomplete-input-multiple',
43
- {
44
- 'p-disabled': instance.$disabled(),
45
- 'p-variant-filled': instance.$variant() === 'filled'
46
- }
47
- ],
48
- clearIcon: 'p-autocomplete-clear-icon',
49
- chipItem: ({ instance, i }) => [
50
- 'p-autocomplete-chip-item',
51
- {
52
- 'p-focus': instance.focusedMultipleOptionIndex() === i
53
- }
54
- ],
55
- pcChip: 'p-autocomplete-chip',
56
- chipIcon: 'p-autocomplete-chip-icon',
57
- inputChip: 'p-autocomplete-input-chip',
58
- loader: 'p-autocomplete-loader',
59
- dropdown: 'p-autocomplete-dropdown',
60
- overlay: ({ instance }) => ['p-autocomplete-overlay p-component-overlay p-component', { 'p-input-filled': instance.$variant() === 'filled', 'p-ripple-disabled': instance.config.ripple() === false }],
61
- listContainer: 'p-autocomplete-list-container',
62
- list: 'p-autocomplete-list',
63
- optionGroup: 'p-autocomplete-option-group',
64
- option: ({ instance, option, i, scrollerOptions }) => ({
65
- 'p-autocomplete-option': true,
66
- 'p-autocomplete-option-selected': instance.isSelected(option),
67
- 'p-focus': instance.focusedOptionIndex() === instance.getOptionIndex(i, scrollerOptions),
68
- 'p-disabled': instance.isOptionDisabled(option)
69
- }),
70
- emptyMessage: 'p-autocomplete-empty-message'
26
+ root: ({ instance }) => ["p-autocomplete p-component p-inputwrapper", {
27
+ "p-invalid": instance.invalid(),
28
+ "p-focus": instance.focused(),
29
+ "p-inputwrapper-filled": instance.$filled(),
30
+ "p-inputwrapper-focus": instance.focused() && !instance.$disabled() || instance.autofocus() || instance.overlayVisible(),
31
+ "p-autocomplete-open": instance.overlayVisible(),
32
+ "p-autocomplete-fluid": instance.hasFluid
33
+ }],
34
+ pcInputText: "p-autocomplete-input",
35
+ inputMultiple: ({ instance }) => ["p-autocomplete-input-multiple", {
36
+ "p-disabled": instance.$disabled(),
37
+ "p-variant-filled": instance.$variant() === "filled"
38
+ }],
39
+ clearIcon: "p-autocomplete-clear-icon",
40
+ chipItem: ({ instance, i }) => ["p-autocomplete-chip-item", { "p-focus": instance.focusedMultipleOptionIndex() === i }],
41
+ pcChip: "p-autocomplete-chip",
42
+ chipIcon: "p-autocomplete-chip-icon",
43
+ inputChip: "p-autocomplete-input-chip",
44
+ loader: "p-autocomplete-loader",
45
+ dropdown: "p-autocomplete-dropdown",
46
+ overlay: ({ instance }) => ["p-autocomplete-overlay p-component-overlay p-component", {
47
+ "p-input-filled": instance.$variant() === "filled",
48
+ "p-ripple-disabled": instance.config.ripple() === false
49
+ }],
50
+ listContainer: "p-autocomplete-list-container",
51
+ list: "p-autocomplete-list",
52
+ optionGroup: "p-autocomplete-option-group",
53
+ option: ({ instance, option, i, scrollerOptions }) => ({
54
+ "p-autocomplete-option": true,
55
+ "p-autocomplete-option-selected": instance.isSelected(option),
56
+ "p-focus": instance.focusedOptionIndex() === instance.getOptionIndex(i, scrollerOptions),
57
+ "p-disabled": instance.isOptionDisabled(option)
58
+ }),
59
+ emptyMessage: "p-autocomplete-empty-message"
71
60
  };
72
- class AutoCompleteStyle extends BaseStyle {
73
- name = 'autocomplete';
74
- style = style;
75
- classes = classes;
76
- inlineStyles = inlineStyles;
77
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
78
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteStyle });
79
- }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteStyle, decorators: [{
81
- type: Injectable
82
- }] });
83
- /**
84
- *
85
- * AutoComplete is an input component that provides real-time suggestions while being typed.
86
- *
87
- * [Live Demo](https://www.primeng.org/autocomplete/)
88
- *
89
- * @module autocompletestyle
90
- *
91
- */
61
+ var AutoCompleteStyle = class AutoCompleteStyle extends BaseStyle {
62
+ name = "autocomplete";
63
+ style = style;
64
+ classes = classes;
65
+ inlineStyles = inlineStyles;
66
+ static ɵfac = i0.ɵɵngDeclareFactory({
67
+ minVersion: "12.0.0",
68
+ version: "22.2.0",
69
+ ngImport: i0,
70
+ type: AutoCompleteStyle,
71
+ deps: null,
72
+ target: i0.ɵɵFactoryTarget.Injectable
73
+ });
74
+ static ɵprov = i0.ɵɵngDeclareInjectable({
75
+ minVersion: "12.0.0",
76
+ version: "22.2.0",
77
+ ngImport: i0,
78
+ type: AutoCompleteStyle
79
+ });
80
+ };
81
+ i0.ɵɵngDeclareClassMetadata({
82
+ minVersion: "12.0.0",
83
+ version: "22.2.0",
84
+ ngImport: i0,
85
+ type: AutoCompleteStyle,
86
+ decorators: [{ type: Injectable }]
87
+ });
92
88
  var AutoCompleteClasses;
93
- (function (AutoCompleteClasses) {
94
- /**
95
- * Class name of the root element
96
- */
97
- AutoCompleteClasses["root"] = "p-autocomplete";
98
- /**
99
- * Class name of the input element
100
- */
101
- AutoCompleteClasses["pcInputText"] = "p-autocomplete-input";
102
- /**
103
- * Class name of the input multiple element
104
- */
105
- AutoCompleteClasses["inputMultiple"] = "p-autocomplete-input-multiple";
106
- /**
107
- * Class name of the chip item element
108
- */
109
- AutoCompleteClasses["chipItem"] = "p-autocomplete-chip-item";
110
- /**
111
- * Class name of the chip element
112
- */
113
- AutoCompleteClasses["pcChip"] = "p-autocomplete-chip";
114
- /**
115
- * Class name of the chip icon element
116
- */
117
- AutoCompleteClasses["chipIcon"] = "p-autocomplete-chip-icon";
118
- /**
119
- * Class name of the input chip element
120
- */
121
- AutoCompleteClasses["inputChip"] = "p-autocomplete-input-chip";
122
- /**
123
- * Class name of the loader element
124
- */
125
- AutoCompleteClasses["loader"] = "p-autocomplete-loader";
126
- /**
127
- * Class name of the dropdown element
128
- */
129
- AutoCompleteClasses["dropdown"] = "p-autocomplete-dropdown";
130
- /**
131
- * Class name of the panel element
132
- */
133
- AutoCompleteClasses["panel"] = "p-autocomplete-overlay";
134
- /**
135
- * Class name of the list element
136
- */
137
- AutoCompleteClasses["list"] = "p-autocomplete-list";
138
- /**
139
- * Class name of the option group element
140
- */
141
- AutoCompleteClasses["optionGroup"] = "p-autocomplete-option-group";
142
- /**
143
- * Class name of the option element
144
- */
145
- AutoCompleteClasses["option"] = "p-autocomplete-option";
146
- /**
147
- * Class name of the empty message element
148
- */
149
- AutoCompleteClasses["emptyMessage"] = "p-autocomplete-empty-message";
150
- /**
151
- * Class name of the clear icon
152
- */
153
- AutoCompleteClasses["clearIcon"] = "p-autocomplete-clear-icon";
89
+ (function(AutoCompleteClasses) {
90
+ AutoCompleteClasses["root"] = "p-autocomplete";
91
+ AutoCompleteClasses["pcInputText"] = "p-autocomplete-input";
92
+ AutoCompleteClasses["inputMultiple"] = "p-autocomplete-input-multiple";
93
+ AutoCompleteClasses["chipItem"] = "p-autocomplete-chip-item";
94
+ AutoCompleteClasses["pcChip"] = "p-autocomplete-chip";
95
+ AutoCompleteClasses["chipIcon"] = "p-autocomplete-chip-icon";
96
+ AutoCompleteClasses["inputChip"] = "p-autocomplete-input-chip";
97
+ AutoCompleteClasses["loader"] = "p-autocomplete-loader";
98
+ AutoCompleteClasses["dropdown"] = "p-autocomplete-dropdown";
99
+ AutoCompleteClasses["panel"] = "p-autocomplete-overlay";
100
+ AutoCompleteClasses["list"] = "p-autocomplete-list";
101
+ AutoCompleteClasses["optionGroup"] = "p-autocomplete-option-group";
102
+ AutoCompleteClasses["option"] = "p-autocomplete-option";
103
+ AutoCompleteClasses["emptyMessage"] = "p-autocomplete-empty-message";
104
+ AutoCompleteClasses["clearIcon"] = "p-autocomplete-clear-icon";
154
105
  })(AutoCompleteClasses || (AutoCompleteClasses = {}));
155
-
156
- const AUTOCOMPLETE_INSTANCE = new InjectionToken('AUTOCOMPLETE_INSTANCE');
106
+ const AUTOCOMPLETE_INSTANCE = new InjectionToken("AUTOCOMPLETE_INSTANCE");
157
107
  const AUTOCOMPLETE_VALUE_ACCESSOR = {
158
- provide: NG_VALUE_ACCESSOR,
159
- useExisting: forwardRef(() => AutoComplete),
160
- multi: true
108
+ provide: NG_VALUE_ACCESSOR,
109
+ useExisting: forwardRef(() => AutoComplete),
110
+ multi: true
161
111
  };
162
- /**
163
- * AutoComplete is an input component that provides real-time suggestions when being typed.
164
- * @group Components
165
- */
166
- class AutoComplete extends BaseInput {
167
- componentName = 'AutoComplete';
168
- $pcAutoComplete = inject(AUTOCOMPLETE_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
169
- bindDirectiveInstance = inject(Bind, { self: true });
170
- /**
171
- * Minimum number of characters to initiate a search.
172
- * @group Props
173
- */
174
- minQueryLength = input(/* @ts-ignore */
175
- ...(ngDevMode ? [undefined, { debugName: "minQueryLength" }] : /* istanbul ignore next */ []));
176
- /**
177
- * Delay between keystrokes to wait before sending a query.
178
- * @group Props
179
- */
180
- delay = input(300, { ...(ngDevMode ? { debugName: "delay" } : /* istanbul ignore next */ {}), transform: numberAttribute });
181
- /**
182
- * Inline style of the overlay panel element.
183
- * @group Props
184
- */
185
- panelStyle = input(/* @ts-ignore */
186
- ...(ngDevMode ? [undefined, { debugName: "panelStyle" }] : /* istanbul ignore next */ []));
187
- /**
188
- * Style class of the overlay panel element.
189
- * @group Props
190
- */
191
- panelStyleClass = input(/* @ts-ignore */
192
- ...(ngDevMode ? [undefined, { debugName: "panelStyleClass" }] : /* istanbul ignore next */ []));
193
- /**
194
- * Inline style of the input field.
195
- * @group Props
196
- */
197
- inputStyle = input(/* @ts-ignore */
198
- ...(ngDevMode ? [undefined, { debugName: "inputStyle" }] : /* istanbul ignore next */ []));
199
- /**
200
- * Identifier of the focus input to match a label defined for the component.
201
- * @group Props
202
- */
203
- inputId = input(/* @ts-ignore */
204
- ...(ngDevMode ? [undefined, { debugName: "inputId" }] : /* istanbul ignore next */ []));
205
- /**
206
- * Inline style of the input field.
207
- * @group Props
208
- */
209
- inputStyleClass = input(/* @ts-ignore */
210
- ...(ngDevMode ? [undefined, { debugName: "inputStyleClass" }] : /* istanbul ignore next */ []));
211
- /**
212
- * Hint text for the input field.
213
- * @group Props
214
- */
215
- placeholder = input(/* @ts-ignore */
216
- ...(ngDevMode ? [undefined, { debugName: "placeholder" }] : /* istanbul ignore next */ []));
217
- /**
218
- * When present, it specifies that the input cannot be typed.
219
- * @group Props
220
- */
221
- readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
222
- /**
223
- * Maximum height of the suggestions panel.
224
- * @group Props
225
- */
226
- scrollHeight = input('200px', /* @ts-ignore */
227
- ...(ngDevMode ? [{ debugName: "scrollHeight" }] : /* istanbul ignore next */ []));
228
- /**
229
- * Defines if data is loaded and interacted with in lazy manner.
230
- * @group Props
231
- */
232
- lazy = input(false, { ...(ngDevMode ? { debugName: "lazy" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
233
- /**
234
- * Whether the data should be loaded on demand during scroll.
235
- * @group Props
236
- */
237
- virtualScroll = input(false, { ...(ngDevMode ? { debugName: "virtualScroll" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
238
- /**
239
- * Height of an item in the list for VirtualScrolling.
240
- * @group Props
241
- */
242
- virtualScrollItemSize = input(/* @ts-ignore */
243
- ...(ngDevMode ? [undefined, { debugName: "virtualScrollItemSize" }] : /* istanbul ignore next */ []));
244
- /**
245
- * Whether to use the scroller feature. The properties of scroller component can be used like an object in it.
246
- * @group Props
247
- */
248
- virtualScrollOptions = input(/* @ts-ignore */
249
- ...(ngDevMode ? [undefined, { debugName: "virtualScrollOptions" }] : /* istanbul ignore next */ []));
250
- /**
251
- * When enabled, highlights the first item in the list by default.
252
- * @group Props
253
- */
254
- autoHighlight = input(false, { ...(ngDevMode ? { debugName: "autoHighlight" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
255
- /**
256
- * When present, autocomplete clears the manual input if it does not match of the suggestions to force only accepting values from the suggestions.
257
- * @group Props
258
- */
259
- forceSelection = input(false, { ...(ngDevMode ? { debugName: "forceSelection" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
260
- /**
261
- * Type of the input, defaults to "text".
262
- * @group Props
263
- */
264
- type = input('text', /* @ts-ignore */
265
- ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
266
- /**
267
- * Whether to automatically manage layering.
268
- * @group Props
269
- */
270
- autoZIndex = input(true, { ...(ngDevMode ? { debugName: "autoZIndex" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
271
- /**
272
- * Base zIndex value to use in layering.
273
- * @group Props
274
- */
275
- baseZIndex = input(0, { ...(ngDevMode ? { debugName: "baseZIndex" } : /* istanbul ignore next */ {}), transform: numberAttribute });
276
- /**
277
- * Defines a string that labels the input for accessibility.
278
- * @group Props
279
- */
280
- ariaLabel = input(/* @ts-ignore */
281
- ...(ngDevMode ? [undefined, { debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
282
- /**
283
- * Defines a string that labels the dropdown button for accessibility.
284
- * @group Props
285
- */
286
- dropdownAriaLabel = input(/* @ts-ignore */
287
- ...(ngDevMode ? [undefined, { debugName: "dropdownAriaLabel" }] : /* istanbul ignore next */ []));
288
- /**
289
- * Specifies one or more IDs in the DOM that labels the input field.
290
- * @group Props
291
- */
292
- ariaLabelledBy = input(/* @ts-ignore */
293
- ...(ngDevMode ? [undefined, { debugName: "ariaLabelledBy" }] : /* istanbul ignore next */ []));
294
- /**
295
- * Icon class of the dropdown icon.
296
- * @group Props
297
- */
298
- dropdownIcon = input(/* @ts-ignore */
299
- ...(ngDevMode ? [undefined, { debugName: "dropdownIcon" }] : /* istanbul ignore next */ []));
300
- /**
301
- * Ensures uniqueness of selected items on multiple mode.
302
- * @group Props
303
- */
304
- unique = input(true, { ...(ngDevMode ? { debugName: "unique" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
305
- /**
306
- * Whether to display options as grouped when nested options are provided.
307
- * @group Props
308
- */
309
- group = input(false, { ...(ngDevMode ? { debugName: "group" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
310
- /**
311
- * Whether to run a query when input receives focus.
312
- * @group Props
313
- */
314
- completeOnFocus = input(false, { ...(ngDevMode ? { debugName: "completeOnFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
315
- /**
316
- * When enabled, a clear icon is displayed to clear the value.
317
- * @group Props
318
- */
319
- showClear = input(false, { ...(ngDevMode ? { debugName: "showClear" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
320
- /**
321
- * Displays a button next to the input field when enabled.
322
- * @group Props
323
- */
324
- dropdown = input(false, { ...(ngDevMode ? { debugName: "dropdown" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
325
- /**
326
- * Whether to show the empty message or not.
327
- * @group Props
328
- */
329
- showEmptyMessage = input(true, { ...(ngDevMode ? { debugName: "showEmptyMessage" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
330
- /**
331
- * Specifies the behavior dropdown button. Default "blank" mode sends an empty string and "current" mode sends the input value.
332
- * @group Props
333
- */
334
- dropdownMode = input('blank', /* @ts-ignore */
335
- ...(ngDevMode ? [{ debugName: "dropdownMode" }] : /* istanbul ignore next */ []));
336
- /**
337
- * Specifies if multiple values can be selected.
338
- * @deprecated Use InputTags component instead for chips/tags input functionality.
339
- * @group Props
340
- */
341
- multiple = input(false, { ...(ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
342
- /**
343
- * When enabled, the input value is added to the selected items on tab key press when multiple is true and typeahead is false.
344
- * @deprecated Use InputTags component instead for chips/tags input functionality.
345
- * @group Props
346
- */
347
- addOnTab = input(false, { ...(ngDevMode ? { debugName: "addOnTab" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
348
- /**
349
- * Index of the element in tabbing order.
350
- * @group Props
351
- */
352
- tabindex = input(/* @ts-ignore */
353
- ...(ngDevMode ? [undefined, { debugName: "tabindex" }] : /* istanbul ignore next */ []));
354
- /**
355
- * A property to uniquely identify a value in options.
356
- * @group Props
357
- */
358
- dataKey = input(/* @ts-ignore */
359
- ...(ngDevMode ? [undefined, { debugName: "dataKey" }] : /* istanbul ignore next */ []));
360
- /**
361
- * Text to display when there is no data. Defaults to global value in i18n translation configuration.
362
- * @group Props
363
- */
364
- emptyMessage = input(/* @ts-ignore */
365
- ...(ngDevMode ? [undefined, { debugName: "emptyMessage" }] : /* istanbul ignore next */ []));
366
- /**
367
- * When present, it specifies that the component should automatically get focus on load.
368
- * @group Props
369
- */
370
- autofocus = input(false, { ...(ngDevMode ? { debugName: "autofocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
371
- /**
372
- * Used to define a string that autocomplete attribute the current element.
373
- * @group Props
374
- */
375
- autocomplete = input('off', /* @ts-ignore */
376
- ...(ngDevMode ? [{ debugName: "autocomplete" }] : /* istanbul ignore next */ []));
377
- /**
378
- * Name of the options field of an option group.
379
- * @group Props
380
- */
381
- optionGroupChildren = input('items', /* @ts-ignore */
382
- ...(ngDevMode ? [{ debugName: "optionGroupChildren" }] : /* istanbul ignore next */ []));
383
- /**
384
- * Name of the label field of an option group.
385
- * @group Props
386
- */
387
- optionGroupLabel = input('label', /* @ts-ignore */
388
- ...(ngDevMode ? [{ debugName: "optionGroupLabel" }] : /* istanbul ignore next */ []));
389
- /**
390
- * Options for the overlay element.
391
- * @group Props
392
- */
393
- overlayOptions = input(/* @ts-ignore */
394
- ...(ngDevMode ? [undefined, { debugName: "overlayOptions" }] : /* istanbul ignore next */ []));
395
- /**
396
- * An array of suggestions to display.
397
- * @group Props
398
- */
399
- suggestions = input([], /* @ts-ignore */
400
- ...(ngDevMode ? [{ debugName: "suggestions" }] : /* istanbul ignore next */ []));
401
- /**
402
- * Property name or getter function to use as the label of an option.
403
- * @group Props
404
- */
405
- optionLabel = input(/* @ts-ignore */
406
- ...(ngDevMode ? [undefined, { debugName: "optionLabel" }] : /* istanbul ignore next */ []));
407
- /**
408
- * Property name or getter function to use as the value of an option.
409
- * @group Props
410
- */
411
- optionValue = input(/* @ts-ignore */
412
- ...(ngDevMode ? [undefined, { debugName: "optionValue" }] : /* istanbul ignore next */ []));
413
- /**
414
- * Unique identifier of the component.
415
- * @group Props
416
- */
417
- id = input(/* @ts-ignore */
418
- ...(ngDevMode ? [undefined, { debugName: "id" }] : /* istanbul ignore next */ []));
419
- /**
420
- * Text to display when the search is active. Defaults to global value in i18n translation configuration.
421
- * @group Props
422
- * @defaultValue '{0} results are available'
423
- */
424
- searchMessage = input(/* @ts-ignore */
425
- ...(ngDevMode ? [undefined, { debugName: "searchMessage" }] : /* istanbul ignore next */ []));
426
- /**
427
- * Text to display when filtering does not return any results. Defaults to global value in i18n translation configuration.
428
- * @group Props
429
- * @defaultValue 'No selected item'
430
- */
431
- emptySelectionMessage = input(/* @ts-ignore */
432
- ...(ngDevMode ? [undefined, { debugName: "emptySelectionMessage" }] : /* istanbul ignore next */ []));
433
- /**
434
- * Text to be displayed in hidden accessible field when options are selected. Defaults to global value in i18n translation configuration.
435
- * @group Props
436
- * @defaultValue '{0} items selected'
437
- */
438
- selectionMessage = input(/* @ts-ignore */
439
- ...(ngDevMode ? [undefined, { debugName: "selectionMessage" }] : /* istanbul ignore next */ []));
440
- /**
441
- * Whether to focus on the first visible or selected element when the overlay panel is shown.
442
- * @group Props
443
- */
444
- autoOptionFocus = input(false, { ...(ngDevMode ? { debugName: "autoOptionFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
445
- /**
446
- * When enabled, the focused option is selected.
447
- * @group Props
448
- */
449
- selectOnFocus = input(false, { ...(ngDevMode ? { debugName: "selectOnFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
450
- /**
451
- * Locale to use in searching. The default locale is the host environment's current locale.
452
- * @group Props
453
- */
454
- searchLocale = input(/* @ts-ignore */
455
- ...(ngDevMode ? [undefined, { debugName: "searchLocale" }] : /* istanbul ignore next */ []));
456
- /**
457
- * Property name or getter function to use as the disabled flag of an option, defaults to false when not defined.
458
- * @group Props
459
- */
460
- optionDisabled = input(/* @ts-ignore */
461
- ...(ngDevMode ? [undefined, { debugName: "optionDisabled" }] : /* istanbul ignore next */ []));
462
- /**
463
- * When enabled, the hovered option will be focused.
464
- * @group Props
465
- */
466
- focusOnHover = input(true, { ...(ngDevMode ? { debugName: "focusOnHover" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
467
- /**
468
- * Whether typeahead is active or not.
469
- * @defaultValue true
470
- * @group Props
471
- */
472
- typeahead = input(true, { ...(ngDevMode ? { debugName: "typeahead" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
473
- /**
474
- * Whether to add an item on blur event if the input has value and typeahead is false with multiple mode.
475
- * @deprecated Use InputTags component instead for chips/tags input functionality.
476
- * @defaultValue false
477
- * @group Props
478
- */
479
- addOnBlur = input(false, { ...(ngDevMode ? { debugName: "addOnBlur" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
480
- /**
481
- * Separator char to add item when typeahead is false and multiple mode is enabled.
482
- * @deprecated Use InputTags component instead for chips/tags input functionality.
483
- * @group Props
484
- */
485
- separator = input(/* @ts-ignore */
486
- ...(ngDevMode ? [undefined, { debugName: "separator" }] : /* istanbul ignore next */ []));
487
- /**
488
- * Target element to attach the overlay, valid values are "body" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]="mydiv" for a div element having #mydiv as variable name).
489
- * @defaultValue 'self'
490
- * @group Props
491
- */
492
- appendTo = input(undefined, /* @ts-ignore */
493
- ...(ngDevMode ? [{ debugName: "appendTo" }] : /* istanbul ignore next */ []));
494
- /**
495
- * The motion options.
496
- * @group Props
497
- */
498
- motionOptions = input(undefined, /* @ts-ignore */
499
- ...(ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []));
500
- /**
501
- * Callback to invoke to search for suggestions.
502
- * @param {AutoCompleteCompleteEvent} event - Custom complete event.
503
- * @group Emits
504
- */
505
- completeMethod = output();
506
- /**
507
- * Callback to invoke when a suggestion is selected.
508
- * @param {AutoCompleteSelectEvent} event - custom select event.
509
- * @group Emits
510
- */
511
- onSelect = output();
512
- /**
513
- * Callback to invoke when a selected value is removed.
514
- * @param {AutoCompleteUnselectEvent} event - custom unselect event.
515
- * @group Emits
516
- */
517
- onUnselect = output();
518
- /**
519
- * Callback to invoke when an item is added via addOnBlur or separator features.
520
- * @param {AutoCompleteAddEvent} event - Custom add event.
521
- * @group Emits
522
- */
523
- onAdd = output();
524
- /**
525
- * Callback to invoke when the component receives focus.
526
- * @param {Event} event - Browser event.
527
- * @group Emits
528
- */
529
- onFocus = output();
530
- /**
531
- * Callback to invoke when the component loses focus.
532
- * @param {Event} event - Browser event.
533
- * @group Emits
534
- */
535
- onBlur = output();
536
- /**
537
- * Callback to invoke to when dropdown button is clicked.
538
- * @param {AutoCompleteDropdownClickEvent} event - custom dropdown click event.
539
- * @group Emits
540
- */
541
- onDropdownClick = output();
542
- /**
543
- * Callback to invoke when clear button is clicked.
544
- * @group Emits
545
- */
546
- onClear = output();
547
- /**
548
- * Callback to invoke on input key down.
549
- * @param {KeyboardEvent} event - Keyboard event.
550
- * @group Emits
551
- */
552
- onInputKeydown = output();
553
- /**
554
- * Callback to invoke on input key up.
555
- * @param {KeyboardEvent} event - Keyboard event.
556
- * @group Emits
557
- */
558
- onKeyUp = output();
559
- /**
560
- * Callback to invoke on overlay is shown.
561
- * @group Emits
562
- */
563
- onShow = output();
564
- /**
565
- * Callback to invoke on overlay is hidden.
566
- * @group Emits
567
- */
568
- onHide = output();
569
- /**
570
- * Callback to invoke on lazy load data.
571
- * @param {AutoCompleteLazyLoadEvent} event - Lazy load event.
572
- * @group Emits
573
- */
574
- onLazyLoad = output();
575
- inputEL = viewChild('focusInput', /* @ts-ignore */
576
- ...(ngDevMode ? [{ debugName: "inputEL" }] : /* istanbul ignore next */ []));
577
- multiInputEl = viewChild('multiIn', /* @ts-ignore */
578
- ...(ngDevMode ? [{ debugName: "multiInputEl" }] : /* istanbul ignore next */ []));
579
- multiContainerEL = viewChild('multiContainer', /* @ts-ignore */
580
- ...(ngDevMode ? [{ debugName: "multiContainerEL" }] : /* istanbul ignore next */ []));
581
- dropdownButton = viewChild('ddBtn', /* @ts-ignore */
582
- ...(ngDevMode ? [{ debugName: "dropdownButton" }] : /* istanbul ignore next */ []));
583
- itemsViewChild = viewChild('items', /* @ts-ignore */
584
- ...(ngDevMode ? [{ debugName: "itemsViewChild" }] : /* istanbul ignore next */ []));
585
- scroller = viewChild('scroller', /* @ts-ignore */
586
- ...(ngDevMode ? [{ debugName: "scroller" }] : /* istanbul ignore next */ []));
587
- overlayViewChild = viewChild('overlay', /* @ts-ignore */
588
- ...(ngDevMode ? [{ debugName: "overlayViewChild" }] : /* istanbul ignore next */ []));
589
- itemsWrapper;
590
- /**
591
- * Custom item template.
592
- * @group Templates
593
- */
594
- itemTemplate = contentChild('item', { ...(ngDevMode ? { debugName: "itemTemplate" } : /* istanbul ignore next */ {}), descendants: false });
595
- /**
596
- * Custom empty message template.
597
- * @group Templates
598
- */
599
- emptyTemplate = contentChild('empty', { ...(ngDevMode ? { debugName: "emptyTemplate" } : /* istanbul ignore next */ {}), descendants: false });
600
- /**
601
- * Custom header template.
602
- * @group Templates
603
- */
604
- headerTemplate = contentChild('header', { ...(ngDevMode ? { debugName: "headerTemplate" } : /* istanbul ignore next */ {}), descendants: false });
605
- /**
606
- * Custom footer template.
607
- * @group Templates
608
- */
609
- footerTemplate = contentChild('footer', { ...(ngDevMode ? { debugName: "footerTemplate" } : /* istanbul ignore next */ {}), descendants: false });
610
- /**
611
- * Custom selected item template.
612
- * @group Templates
613
- */
614
- selectedItemTemplate = contentChild('selecteditem', { ...(ngDevMode ? { debugName: "selectedItemTemplate" } : /* istanbul ignore next */ {}), descendants: false });
615
- /**
616
- * Custom group template.
617
- * @group Templates
618
- */
619
- groupTemplate = contentChild('group', { ...(ngDevMode ? { debugName: "groupTemplate" } : /* istanbul ignore next */ {}), descendants: false });
620
- /**
621
- * Custom loader template.
622
- * @group Templates
623
- */
624
- loaderTemplate = contentChild('loader', { ...(ngDevMode ? { debugName: "loaderTemplate" } : /* istanbul ignore next */ {}), descendants: false });
625
- /**
626
- * Custom remove icon template.
627
- * @group Templates
628
- */
629
- removeIconTemplate = contentChild('removeicon', { ...(ngDevMode ? { debugName: "removeIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
630
- /**
631
- * Custom loading icon template.
632
- * @group Templates
633
- */
634
- loadingIconTemplate = contentChild('loadingicon', { ...(ngDevMode ? { debugName: "loadingIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
635
- /**
636
- * Custom clear icon template.
637
- * @group Templates
638
- */
639
- clearIconTemplate = contentChild('clearicon', { ...(ngDevMode ? { debugName: "clearIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
640
- /**
641
- * Custom dropdown icon template.
642
- * @group Templates
643
- */
644
- dropdownIconTemplate = contentChild('dropdownicon', { ...(ngDevMode ? { debugName: "dropdownIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
645
- value;
646
- timeout = null;
647
- overlayVisible = signal(false, /* @ts-ignore */
648
- ...(ngDevMode ? [{ debugName: "overlayVisible" }] : /* istanbul ignore next */ []));
649
- suggestionsUpdated;
650
- highlightOption;
651
- highlightOptionChanged;
652
- focused = signal(false, /* @ts-ignore */
653
- ...(ngDevMode ? [{ debugName: "focused" }] : /* istanbul ignore next */ []));
654
- loading = signal(false, /* @ts-ignore */
655
- ...(ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []));
656
- scrollHandler;
657
- listId;
658
- searchTimeout = null;
659
- dirty = false;
660
- focusedMultipleOptionIndex = signal(-1, /* @ts-ignore */
661
- ...(ngDevMode ? [{ debugName: "focusedMultipleOptionIndex" }] : /* istanbul ignore next */ []));
662
- focusedOptionIndex = signal(-1, /* @ts-ignore */
663
- ...(ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []));
664
- _componentStyle = inject(AutoCompleteStyle);
665
- overlayService = inject(OverlayService);
666
- _internalId = uuid('pn_id_');
667
- $id = computed(() => this.id() || this._internalId, /* @ts-ignore */
668
- ...(ngDevMode ? [{ debugName: "$id" }] : /* istanbul ignore next */ []));
669
- $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), /* @ts-ignore */
670
- ...(ngDevMode ? [{ debugName: "$appendTo" }] : /* istanbul ignore next */ []));
671
- get $overlayTarget() {
672
- return this.el?.nativeElement?.closest('[data-pc-name="inputtags"]') ? '@grandparent' : '@parent';
673
- }
674
- visibleOptions = computed(() => (this.group() ? this.flatOptions(this.suggestions()) : this.suggestions() || []), /* @ts-ignore */
675
- ...(ngDevMode ? [{ debugName: "visibleOptions" }] : /* istanbul ignore next */ []));
676
- inputValue = computed(() => {
677
- const modelValue = this.modelValue();
678
- const selectedOption = this.optionValueSelected ? (this.suggestions() || []).find((option) => equals(option, modelValue, this.equalityKey())) : modelValue;
679
- if (isNotEmpty(modelValue)) {
680
- if (typeof modelValue === 'object' || this.optionValueSelected) {
681
- const label = this.getOptionLabel(selectedOption);
682
- return label != null ? label : modelValue;
683
- }
684
- else {
685
- return modelValue;
686
- }
687
- }
688
- else {
689
- return '';
690
- }
691
- }, /* @ts-ignore */
692
- ...(ngDevMode ? [{ debugName: "inputValue" }] : /* istanbul ignore next */ []));
693
- $showClear = computed(() => this.$filled() && !this.$disabled() && this.showClear() && !this.loading(), /* @ts-ignore */
694
- ...(ngDevMode ? [{ debugName: "$showClear" }] : /* istanbul ignore next */ []));
695
- scrollerStyle = computed(() => ({ height: this.scrollHeight() }), /* @ts-ignore */
696
- ...(ngDevMode ? [{ debugName: "scrollerStyle" }] : /* istanbul ignore next */ []));
697
- $tabindex = computed(() => (!this.$disabled() ? this.tabindex() : -1), /* @ts-ignore */
698
- ...(ngDevMode ? [{ debugName: "$tabindex" }] : /* istanbul ignore next */ []));
699
- requiredAttr = computed(() => (this.required() ? '' : undefined), /* @ts-ignore */
700
- ...(ngDevMode ? [{ debugName: "requiredAttr" }] : /* istanbul ignore next */ []));
701
- readonlyAttr = computed(() => (this.readonly() ? '' : undefined), /* @ts-ignore */
702
- ...(ngDevMode ? [{ debugName: "readonlyAttr" }] : /* istanbul ignore next */ []));
703
- disabledAttr = computed(() => (this.$disabled() ? '' : undefined), /* @ts-ignore */
704
- ...(ngDevMode ? [{ debugName: "disabledAttr" }] : /* istanbul ignore next */ []));
705
- $listId = computed(() => this.$id() + '_list', /* @ts-ignore */
706
- ...(ngDevMode ? [{ debugName: "$listId" }] : /* istanbul ignore next */ []));
707
- get focusedMultipleOptionId() {
708
- return this.focusedMultipleOptionIndex() !== -1 ? `${this.$id()}_multiple_option_${this.focusedMultipleOptionIndex()}` : null;
709
- }
710
- get focusedOptionId() {
711
- return this.focusedOptionIndex() !== -1 ? `${this.$id()}_${this.focusedOptionIndex()}` : null;
712
- }
713
- get searchResultMessageText() {
714
- return isNotEmpty(this.visibleOptions()) && this.overlayVisible() ? this.searchMessageText.replaceAll('{0}', this.visibleOptions().length) : this.emptySearchMessageText;
715
- }
716
- get searchMessageText() {
717
- return this.searchMessage() || this.config.translation.searchMessage || '';
718
- }
719
- get emptySearchMessageText() {
720
- return this.emptyMessage() || this.config.translation.emptySearchMessage || '';
721
- }
722
- get selectionMessageText() {
723
- return this.selectionMessage() || this.config.translation.selectionMessage || '';
724
- }
725
- get emptySelectionMessageText() {
726
- return this.emptySelectionMessage() || this.config.translation.emptySelectionMessage || '';
727
- }
728
- get selectedMessageText() {
729
- return this.hasSelectedOption() ? this.selectionMessageText.replaceAll('{0}', this.multiple() ? this.modelValue()?.length : '1') : this.emptySelectionMessageText;
730
- }
731
- get ariaSetSize() {
732
- return this.visibleOptions().filter((option) => !this.isOptionGroup(option)).length;
733
- }
734
- get listLabel() {
735
- return this.translate(TranslationKeys.ARIA, 'listLabel');
736
- }
737
- get virtualScrollerDisabled() {
738
- return !this.virtualScroll();
739
- }
740
- get optionValueSelected() {
741
- return typeof this.modelValue() === 'string' && this.optionValue();
742
- }
743
- onHostClick(event) {
744
- this.onContainerClick(event);
745
- }
746
- chipItemClass(index) {
747
- return this._componentStyle.classes.chipItem({ instance: this, i: index });
748
- }
749
- constructor() {
750
- super();
751
- effect(() => {
752
- const value = this.suggestions();
753
- if (value) {
754
- this.handleSuggestionsChange();
755
- }
756
- });
757
- }
758
- onAfterViewChecked() {
759
- this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
760
- //Use timeouts as since Angular 4.2, AfterViewChecked is broken and not called after panel is updated
761
- if (this.suggestionsUpdated && this.overlayViewChild()) {
762
- setTimeout(() => {
763
- if (this.overlayViewChild()) {
764
- this.overlayViewChild().alignOverlay();
765
- }
766
- }, 1);
767
- this.suggestionsUpdated = false;
768
- }
769
- }
770
- handleSuggestionsChange() {
771
- if (this.loading()) {
772
- if (this.suggestions()?.length > 0 || this.showEmptyMessage() || !!this.emptyTemplate()) {
773
- this.show();
774
- }
775
- else {
776
- this.hide();
777
- }
778
- const focusedOptionIndex = this.overlayVisible() && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
779
- this.focusedOptionIndex.set(focusedOptionIndex);
780
- this.suggestionsUpdated = true;
781
- this.loading.set(false);
782
- }
783
- }
784
- flatOptions(options) {
785
- return (options || []).reduce((result, option, index) => {
786
- result.push({ optionGroup: option, group: true, index });
787
- const optionGroupChildren = this.getOptionGroupChildren(option);
788
- if (optionGroupChildren) {
789
- optionGroupChildren.forEach((o) => result.push(o));
790
- }
791
- return result;
792
- }, []);
793
- }
794
- isOptionGroup(option) {
795
- return this.optionGroupLabel() && option.optionGroup && option.group;
796
- }
797
- findFirstOptionIndex() {
798
- return this.visibleOptions().findIndex((option) => this.isValidOption(option));
799
- }
800
- findLastOptionIndex() {
801
- return findLastIndex(this.visibleOptions(), (option) => this.isValidOption(option));
802
- }
803
- findFirstFocusedOptionIndex() {
804
- const selectedIndex = this.findSelectedOptionIndex();
805
- return selectedIndex < 0 ? this.findFirstOptionIndex() : selectedIndex;
806
- }
807
- findLastFocusedOptionIndex() {
808
- const selectedIndex = this.findSelectedOptionIndex();
809
- return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
810
- }
811
- findSelectedOptionIndex() {
812
- return this.hasSelectedOption() ? this.visibleOptions().findIndex((option) => this.isValidSelectedOption(option)) : -1;
813
- }
814
- findNextOptionIndex(index) {
815
- const matchedOptionIndex = index < this.visibleOptions().length - 1
816
- ? this.visibleOptions()
817
- .slice(index + 1)
818
- .findIndex((option) => this.isValidOption(option))
819
- : -1;
820
- return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
821
- }
822
- findPrevOptionIndex(index) {
823
- const matchedOptionIndex = index > 0 ? findLastIndex(this.visibleOptions().slice(0, index), (option) => this.isValidOption(option)) : -1;
824
- return matchedOptionIndex > -1 ? matchedOptionIndex : index;
825
- }
826
- isValidSelectedOption(option) {
827
- return this.isValidOption(option) && this.isSelected(option);
828
- }
829
- isValidOption(option) {
830
- return option && !(this.isOptionDisabled(option) || this.isOptionGroup(option));
831
- }
832
- isOptionDisabled(option) {
833
- return this.optionDisabled() ? resolveFieldData(option, this.optionDisabled()) : false;
834
- }
835
- isSelected(option) {
836
- if (this.multiple()) {
837
- return this.unique() ? this.modelValue()?.some((model) => equals(model, option, this.equalityKey())) : false;
838
- }
839
- return equals(this.modelValue(), option, this.equalityKey());
840
- }
841
- isOptionMatched(option, value) {
842
- return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.searchLocale()) === value.toLocaleLowerCase(this.searchLocale());
843
- }
844
- isInputClicked(event) {
845
- return event.target === this.inputEL()?.nativeElement;
846
- }
847
- isDropdownClicked(event) {
848
- return this.dropdownButton()?.nativeElement ? event.target === this.dropdownButton().nativeElement || this.dropdownButton().nativeElement.contains(event.target) : false;
849
- }
850
- equalityKey() {
851
- return this.optionValue() ? undefined : this.dataKey();
852
- }
853
- onContainerClick(event) {
854
- if (this.$disabled() || this.loading() || this.isInputClicked(event) || this.isDropdownClicked(event)) {
855
- return;
856
- }
857
- if (!this.overlayViewChild() || !this.overlayViewChild().overlayViewChild()?.nativeElement.contains(event.target)) {
858
- focus(this.inputEL()?.nativeElement);
859
- }
860
- }
861
- handleDropdownClick(event) {
862
- let query = undefined;
863
- if (this.overlayVisible()) {
864
- this.hide(true);
865
- }
866
- else {
867
- focus(this.inputEL()?.nativeElement);
868
- query = this.inputEL()?.nativeElement?.value;
869
- if (this.dropdownMode() === 'blank')
870
- this.search(event, '', 'dropdown');
871
- else if (this.dropdownMode() === 'current')
872
- this.search(event, query, 'dropdown');
873
- }
874
- this.onDropdownClick.emit({ originalEvent: event, query });
875
- }
876
- onInput(event) {
877
- if (this.typeahead()) {
878
- const _minLength = this.minQueryLength() || 1;
879
- if (this.searchTimeout) {
880
- clearTimeout(this.searchTimeout);
881
- }
882
- let query = event.target.value;
883
- const maxLen = this.maxlength();
884
- if (maxLen != null) {
885
- query = query.split('').slice(0, maxLen).join('');
886
- }
887
- if (!this.multiple() && !this.forceSelection()) {
888
- this.updateModel(query);
889
- }
890
- if (query.length === 0 && !this.multiple()) {
891
- this.onClear.emit();
892
- setTimeout(() => {
893
- this.hide();
894
- }, this.delay() / 2);
895
- }
896
- else {
897
- if (query.length >= _minLength) {
898
- this.focusedOptionIndex.set(-1);
899
- this.searchTimeout = setTimeout(() => {
900
- this.search(event, query, 'input');
901
- }, this.delay());
902
- }
903
- else {
904
- this.hide();
905
- }
906
- }
907
- }
908
- }
909
- onInputChange(event) {
910
- this.updateInputWithForceSelection(event);
911
- }
912
- onInputFocus(event) {
913
- if (this.$disabled()) {
914
- // For ScreenReaders
915
- return;
916
- }
917
- if (!this.dirty && this.completeOnFocus()) {
918
- this.search(event, event.target.value, 'focus');
919
- }
920
- this.dirty = true;
921
- this.focused.set(true);
922
- const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.overlayVisible() && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
923
- this.focusedOptionIndex.set(focusedOptionIndex);
924
- if (this.overlayVisible()) {
925
- this.scrollInView(this.focusedOptionIndex());
926
- }
927
- this.onFocus.emit(event);
928
- }
929
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
930
- onMultipleContainerFocus(event) {
931
- if (this.$disabled()) {
932
- // For ScreenReaders
933
- return;
934
- }
935
- this.focused.set(true);
936
- }
937
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
938
- onMultipleContainerBlur(event) {
939
- this.focusedMultipleOptionIndex.set(-1);
940
- this.focused.set(false);
941
- }
942
- onMultipleContainerKeyDown(event) {
943
- if (this.$disabled()) {
944
- event.preventDefault();
945
- return;
946
- }
947
- switch (event.code) {
948
- case 'ArrowLeft':
949
- this.onArrowLeftKeyOnMultiple(event);
950
- break;
951
- case 'ArrowRight':
952
- this.onArrowRightKeyOnMultiple(event);
953
- break;
954
- case 'Backspace':
955
- this.onBackspaceKeyOnMultiple(event);
956
- break;
957
- default:
958
- break;
959
- }
960
- }
961
- onInputBlur(event) {
962
- this.dirty = false;
963
- this.focused.set(false);
964
- this.focusedOptionIndex.set(-1);
965
- if (this.addOnBlur() && this.multiple() && !this.typeahead()) {
966
- const inputValue = (this.multiInputEl()?.nativeElement?.value || event.target.value || '').trim();
967
- if (inputValue && !this.isSelected(inputValue)) {
968
- this.updateModel([...(this.modelValue() || []), inputValue]);
969
- this.onAdd.emit({ originalEvent: event, value: inputValue });
970
- if (this.multiInputEl()?.nativeElement) {
971
- this.multiInputEl().nativeElement.value = '';
972
- }
973
- else {
974
- event.target.value = '';
975
- }
976
- }
977
- }
978
- this.onModelTouched();
979
- this.onBlur.emit(event);
980
- }
981
- onInputPaste(event) {
982
- if (this.separator() && this.multiple() && !this.typeahead()) {
983
- const pastedData = event.clipboardData?.getData('Text');
984
- if (pastedData) {
985
- const values = pastedData.split(this.separator());
986
- const newValues = [...(this.modelValue() || [])];
987
- values.forEach((value) => {
988
- const trimmedValue = value.trim();
989
- if (trimmedValue && !this.isSelected(trimmedValue)) {
990
- newValues.push(trimmedValue);
991
- }
992
- });
993
- if (newValues.length > (this.modelValue() || []).length) {
994
- const addedValues = newValues.slice((this.modelValue() || []).length);
995
- this.updateModel(newValues);
996
- addedValues.forEach((addedValue) => {
997
- this.onAdd.emit({ originalEvent: event, value: addedValue });
998
- });
999
- if (this.multiInputEl()?.nativeElement) {
1000
- this.multiInputEl().nativeElement.value = '';
1001
- }
1002
- else {
1003
- event.target.value = '';
1004
- }
1005
- event.preventDefault();
1006
- }
1007
- }
1008
- }
1009
- else {
1010
- this.onKeyDown(event);
1011
- }
1012
- }
1013
- onInputKeyUp(event) {
1014
- this.onKeyUp.emit(event);
1015
- }
1016
- onKeyDown(event) {
1017
- if (this.$disabled()) {
1018
- event.preventDefault();
1019
- return;
1020
- }
1021
- // Emit keydown event for external handling
1022
- this.onInputKeydown.emit(event);
1023
- switch (event.code) {
1024
- case 'ArrowDown':
1025
- this.onArrowDownKey(event);
1026
- break;
1027
- case 'ArrowUp':
1028
- this.onArrowUpKey(event);
1029
- break;
1030
- case 'ArrowLeft':
1031
- this.onArrowLeftKey(event);
1032
- break;
1033
- case 'ArrowRight':
1034
- this.onArrowRightKey(event);
1035
- break;
1036
- case 'Home':
1037
- this.onHomeKey(event);
1038
- break;
1039
- case 'End':
1040
- this.onEndKey(event);
1041
- break;
1042
- case 'PageDown':
1043
- this.onPageDownKey(event);
1044
- break;
1045
- case 'PageUp':
1046
- this.onPageUpKey(event);
1047
- break;
1048
- case 'Enter':
1049
- case 'NumpadEnter':
1050
- this.onEnterKey(event);
1051
- break;
1052
- case 'Escape':
1053
- this.onEscapeKey(event);
1054
- if (this.overlayVisible()) {
1055
- event.stopPropagation();
1056
- }
1057
- break;
1058
- case 'Tab':
1059
- this.onTabKey(event);
1060
- break;
1061
- case 'Backspace':
1062
- this.onBackspaceKey(event);
1063
- break;
1064
- case 'ShiftLeft':
1065
- case 'ShiftRight':
1066
- //NOOP
1067
- break;
1068
- default:
1069
- this.handleSeparatorKey(event);
1070
- break;
1071
- }
1072
- }
1073
- handleSeparatorKey(event) {
1074
- const separator = this.separator();
1075
- if (separator && this.multiple() && !this.typeahead()) {
1076
- if (separator === event.key || (typeof separator === 'string' && event.key === separator) || (separator instanceof RegExp && event.key.match(separator))) {
1077
- const inputValue = (this.multiInputEl()?.nativeElement?.value || event.target.value || '').trim();
1078
- if (inputValue && !this.isSelected(inputValue)) {
1079
- this.updateModel([...(this.modelValue() || []), inputValue]);
1080
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1081
- if (this.multiInputEl()?.nativeElement) {
1082
- this.multiInputEl().nativeElement.value = '';
1083
- }
1084
- else {
1085
- event.target.value = '';
1086
- }
1087
- event.preventDefault();
1088
- }
1089
- }
1090
- }
1091
- }
1092
- onArrowDownKey(event) {
1093
- if (!this.overlayVisible()) {
1094
- return;
1095
- }
1096
- const optionIndex = this.focusedOptionIndex() !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex()) : this.findFirstFocusedOptionIndex();
1097
- this.changeFocusedOptionIndex(event, optionIndex);
1098
- event.preventDefault();
1099
- event.stopPropagation();
1100
- }
1101
- onArrowUpKey(event) {
1102
- if (!this.overlayVisible()) {
1103
- return;
1104
- }
1105
- if (event.altKey) {
1106
- if (this.focusedOptionIndex() !== -1) {
1107
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1108
- }
1109
- if (this.overlayVisible()) {
1110
- this.hide();
1111
- }
1112
- event.preventDefault();
1113
- }
1114
- else {
1115
- const optionIndex = this.focusedOptionIndex() !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex()) : this.findLastFocusedOptionIndex();
1116
- this.changeFocusedOptionIndex(event, optionIndex);
1117
- event.preventDefault();
1118
- event.stopPropagation();
1119
- }
1120
- }
1121
- onArrowLeftKey(event) {
1122
- const target = event.currentTarget;
1123
- this.focusedOptionIndex.set(-1);
1124
- if (this.multiple()) {
1125
- if (isEmpty(target.value) && this.hasSelectedOption()) {
1126
- focus(this.multiContainerEL()?.nativeElement);
1127
- this.focusedMultipleOptionIndex.set(this.modelValue().length);
1128
- }
1129
- else {
1130
- event.stopPropagation(); // To prevent onArrowLeftKeyOnMultiple method
1131
- }
1132
- }
1133
- }
1134
- onArrowRightKey(event) {
1135
- this.focusedOptionIndex.set(-1);
1136
- if (this.multiple()) {
1137
- event.stopPropagation();
1138
- } // To prevent onArrowRightKeyOnMultiple method
1139
- }
1140
- onHomeKey(event) {
1141
- const currentTarget = event.currentTarget;
1142
- const len = currentTarget.value.length;
1143
- currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
1144
- this.focusedOptionIndex.set(-1);
1145
- event.preventDefault();
1146
- }
1147
- onEndKey(event) {
1148
- const currentTarget = event.currentTarget;
1149
- const len = currentTarget.value.length;
1150
- currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
1151
- this.focusedOptionIndex.set(-1);
1152
- event.preventDefault();
1153
- }
1154
- onPageDownKey(event) {
1155
- this.scrollInView(this.visibleOptions().length - 1);
1156
- event.preventDefault();
1157
- }
1158
- onPageUpKey(event) {
1159
- this.scrollInView(0);
1160
- event.preventDefault();
1161
- }
1162
- onEnterKey(event) {
1163
- if (!this.typeahead() && !this.forceSelection()) {
1164
- if (this.multiple()) {
1165
- const inputValue = event.target.value?.trim();
1166
- if (inputValue && !this.isSelected(inputValue)) {
1167
- this.updateModel([...(this.modelValue() || []), inputValue]);
1168
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1169
- if (this.inputEL()?.nativeElement) {
1170
- this.inputEL().nativeElement.value = '';
1171
- }
1172
- }
1173
- }
1174
- }
1175
- if (!this.overlayVisible()) {
1176
- return;
1177
- }
1178
- else {
1179
- if (this.focusedOptionIndex() !== -1) {
1180
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1181
- }
1182
- this.hide();
1183
- }
1184
- event.preventDefault();
1185
- }
1186
- onEscapeKey(event) {
1187
- if (this.overlayVisible()) {
1188
- this.hide(true);
1189
- }
1190
- event.preventDefault();
1191
- }
1192
- onTabKey(event) {
1193
- // If there's a focused option in the dropdown, select it
1194
- if (this.focusedOptionIndex() !== -1) {
1195
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1196
- return;
1197
- }
1198
- // Handle tab key behavior for multiple mode without typeahead
1199
- if (this.multiple() && !this.typeahead()) {
1200
- const inputValue = (this.multiInputEl()?.nativeElement?.value || this.inputEL()?.nativeElement?.value || '').trim();
1201
- if (this.addOnTab()) {
1202
- if (inputValue && !this.isSelected(inputValue)) {
1203
- // Add the value and keep focus
1204
- this.updateModel([...(this.modelValue() || []), inputValue]);
1205
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1206
- if (this.multiInputEl()?.nativeElement) {
1207
- this.multiInputEl().nativeElement.value = '';
1208
- }
1209
- else if (this.inputEL()?.nativeElement) {
1210
- this.inputEL().nativeElement.value = '';
1211
- }
1212
- this.updateInputValue();
1213
- event.preventDefault(); // Keep focus on the component
1214
- if (this.overlayVisible()) {
1215
- this.hide();
1216
- }
1217
- return;
1218
- }
1219
- // If no value or already selected, allow normal tab behavior (blur)
1220
- }
1221
- // If addOnTab is false or no value to add, allow normal tab behavior
1222
- // which will trigger blur and potentially addOnBlur
1223
- }
1224
- if (this.overlayVisible()) {
1225
- this.hide();
1226
- }
1227
- }
1228
- onBackspaceKey(event) {
1229
- if (this.multiple()) {
1230
- if (isNotEmpty(this.modelValue()) && !this.inputEL()?.nativeElement?.value) {
1231
- const removedValue = this.modelValue()[this.modelValue().length - 1];
1232
- const newValue = this.modelValue().slice(0, -1);
1233
- this.updateModel(newValue);
1234
- this.onUnselect.emit({ originalEvent: event, value: removedValue });
1235
- }
1236
- event.stopPropagation(); // To prevent onBackspaceKeyOnMultiple method
1237
- }
1238
- }
1239
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
1240
- onArrowLeftKeyOnMultiple(event) {
1241
- const optionIndex = this.focusedMultipleOptionIndex() < 1 ? 0 : this.focusedMultipleOptionIndex() - 1;
1242
- this.focusedMultipleOptionIndex.set(optionIndex);
1243
- }
1244
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
1245
- onArrowRightKeyOnMultiple(event) {
1246
- let optionIndex = this.focusedMultipleOptionIndex();
1247
- optionIndex++;
1248
- this.focusedMultipleOptionIndex.set(optionIndex);
1249
- if (optionIndex > this.modelValue().length - 1) {
1250
- this.focusedMultipleOptionIndex.set(-1);
1251
- focus(this.inputEL()?.nativeElement);
1252
- }
1253
- }
1254
- onBackspaceKeyOnMultiple(event) {
1255
- if (this.focusedMultipleOptionIndex() !== -1) {
1256
- this.removeOption(event, this.focusedMultipleOptionIndex());
1257
- }
1258
- }
1259
- onOptionSelect(event, option, isHide = true) {
1260
- if (this.multiple()) {
1261
- if (this.inputEL()?.nativeElement) {
1262
- this.inputEL().nativeElement.value = '';
1263
- }
1264
- if (!this.isSelected(option)) {
1265
- this.updateModel([...(this.modelValue() || []), option]);
1266
- }
1267
- }
1268
- else {
1269
- this.updateModel(option);
1270
- }
1271
- if (event) {
1272
- this.onSelect.emit({ originalEvent: event, value: option });
1273
- }
1274
- if (isHide) {
1275
- this.hide(true);
1276
- }
1277
- }
1278
- onOptionMouseEnter(event, index) {
1279
- if (this.focusOnHover()) {
1280
- this.changeFocusedOptionIndex(event, index);
1281
- }
1282
- }
1283
- search(event, query, source) {
1284
- //allow empty string but not undefined or null
1285
- if (query === undefined || query === null) {
1286
- return;
1287
- }
1288
- //do not search blank values on input change
1289
- if (source === 'input' && query.trim().length === 0) {
1290
- return;
1291
- }
1292
- this.loading.set(true);
1293
- this.completeMethod.emit({ originalEvent: event, query });
1294
- }
1295
- removeOption(event, index) {
1296
- event.stopPropagation();
1297
- const removedOption = this.modelValue()[index];
1298
- const value = this.modelValue().filter((_, i) => i !== index);
1299
- this.updateModel(value);
1300
- this.onUnselect.emit({ originalEvent: event, value: removedOption });
1301
- focus(this.inputEL()?.nativeElement);
1302
- }
1303
- updateModel(options) {
1304
- let value = null;
1305
- if (options) {
1306
- value = this.multiple() ? options.map((option) => this.getOptionValue(option)) : this.getOptionValue(options);
1307
- }
1308
- this.value = value;
1309
- this.writeModelValue(options);
1310
- this.onModelChange(value);
1311
- this.updateInputValue();
1312
- }
1313
- updateInputValue() {
1314
- const inputEl = this.inputEL();
1315
- if (inputEl && inputEl.nativeElement) {
1316
- if (!this.multiple()) {
1317
- inputEl.nativeElement.value = this.inputValue();
1318
- }
1319
- else {
1320
- inputEl.nativeElement.value = '';
1321
- }
1322
- }
1323
- }
1324
- updateInputWithForceSelection(event) {
1325
- const input = this.inputEL()?.nativeElement;
1326
- const inputCleared = !input?.value && isNotEmpty(this.modelValue());
1327
- if (!this.forceSelection() || this.overlayVisible() || (!input?.value && !inputCleared)) {
1328
- return;
1329
- }
1330
- const _minLength = this.minQueryLength();
1331
- if (!inputCleared && _minLength != null && input.value.length < _minLength) {
1332
- return;
1333
- }
1334
- const matchedOption = this.visibleOptions()?.find((option) => this.isOptionMatched(option, input.value));
1335
- if (!matchedOption) {
1336
- input.value = '';
1337
- if (!this.multiple()) {
1338
- this.clear();
1339
- }
1340
- return;
1341
- }
1342
- if (matchedOption && !this.isSelected(matchedOption)) {
1343
- this.onOptionSelect(event, matchedOption);
1344
- }
1345
- }
1346
- autoUpdateModel() {
1347
- if ((this.selectOnFocus() || this.autoHighlight()) && this.autoOptionFocus() && !this.hasSelectedOption()) {
1348
- const focusedOptionIndex = this.findFirstFocusedOptionIndex();
1349
- this.focusedOptionIndex.set(focusedOptionIndex);
1350
- this.onOptionSelect(null, this.visibleOptions()[this.focusedOptionIndex()], false);
1351
- }
1352
- }
1353
- scrollInView(index = -1) {
1354
- const id = index !== -1 ? `${this.$id()}_${index}` : this.focusedOptionId;
1355
- const itemsViewChild = this.itemsViewChild();
1356
- if (itemsViewChild && itemsViewChild.nativeElement) {
1357
- const element = findSingle(itemsViewChild.nativeElement, `li[id="${id}"]`);
1358
- if (element) {
1359
- if (element.scrollIntoView) {
1360
- element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
1361
- }
1362
- }
1363
- else if (!this.virtualScrollerDisabled) {
1364
- setTimeout(() => {
1365
- if (this.virtualScroll()) {
1366
- this.scroller()?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
1367
- }
1368
- }, 0);
1369
- }
1370
- }
1371
- }
1372
- changeFocusedOptionIndex(event, index) {
1373
- if (this.focusedOptionIndex() !== index) {
1374
- this.focusedOptionIndex.set(index);
1375
- this.scrollInView();
1376
- if (this.selectOnFocus()) {
1377
- this.onOptionSelect(event, this.visibleOptions()[index], false);
1378
- }
1379
- }
1380
- }
1381
- show(isFocus = false) {
1382
- this.dirty = true;
1383
- this.overlayVisible.set(true);
1384
- const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
1385
- this.focusedOptionIndex.set(focusedOptionIndex);
1386
- if (isFocus) {
1387
- focus(this.inputEL()?.nativeElement);
1388
- }
1389
- if (isFocus) {
1390
- focus(this.inputEL()?.nativeElement);
1391
- }
1392
- this.onShow.emit();
1393
- }
1394
- hide(isFocus = false) {
1395
- const _hide = () => {
1396
- this.dirty = isFocus;
1397
- this.overlayVisible.set(false);
1398
- this.focusedOptionIndex.set(-1);
1399
- if (isFocus) {
1400
- focus(this.inputEL()?.nativeElement);
1401
- }
1402
- this.onHide.emit();
1403
- this.updateInputWithForceSelection(null);
1404
- };
1405
- if (this.timeout) {
1406
- clearTimeout(this.timeout);
1407
- }
1408
- this.timeout = setTimeout(() => {
1409
- _hide();
1410
- }, 0); // For ScreenReaders
1411
- }
1412
- clear() {
1413
- this.updateModel(null);
1414
- if (this.inputEL()?.nativeElement) {
1415
- this.inputEL().nativeElement.value = '';
1416
- }
1417
- this.onClear.emit();
1418
- if (this.overlayVisible()) {
1419
- this.hide();
1420
- }
1421
- }
1422
- hasSelectedOption() {
1423
- return isNotEmpty(this.modelValue());
1424
- }
1425
- getAriaPosInset(index) {
1426
- return ((this.optionGroupLabel()
1427
- ? index -
1428
- this.visibleOptions()
1429
- .slice(0, index)
1430
- .filter((option) => this.isOptionGroup(option)).length
1431
- : index) + 1);
1432
- }
1433
- getOptionLabel(option) {
1434
- const optionLabel = this.optionLabel();
1435
- return optionLabel ? resolveFieldData(option, optionLabel) : option && option.label != undefined ? option.label : option;
1436
- }
1437
- getOptionValue(option) {
1438
- const optionValue = this.optionValue();
1439
- return optionValue ? resolveFieldData(option, optionValue) : option && option.value != undefined ? option.value : option;
1440
- }
1441
- getChipTrackKey(option) {
1442
- return option != null && typeof option === 'object' ? this.getOptionValue(option) : option;
1443
- }
1444
- getOptionIndex(index, scrollerOptions) {
1445
- return this.virtualScrollerDisabled ? index : scrollerOptions && scrollerOptions.getItemOptions(index)['index'];
1446
- }
1447
- getOptionGroupLabel(optionGroup) {
1448
- const optionGroupLabel = this.optionGroupLabel();
1449
- return optionGroupLabel ? resolveFieldData(optionGroup, optionGroupLabel) : optionGroup && optionGroup.label != undefined ? optionGroup.label : optionGroup;
1450
- }
1451
- getOptionGroupChildren(optionGroup) {
1452
- const optionGroupChildren = this.optionGroupChildren();
1453
- return optionGroupChildren ? resolveFieldData(optionGroup, optionGroupChildren) : optionGroup.items;
1454
- }
1455
- getPTOptions(option, scrollerOptions, index, key) {
1456
- return this.ptm(key, {
1457
- context: {
1458
- option,
1459
- index: this.getOptionIndex(index, scrollerOptions),
1460
- selected: this.isSelected(option),
1461
- focused: this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions),
1462
- disabled: this.isOptionDisabled(option)
1463
- }
1464
- });
1465
- }
1466
- getSelectedItemContext(option) {
1467
- return { $implicit: option };
1468
- }
1469
- getRemoveIconContext(index) {
1470
- return { removeCallback: this.removeOption.bind(this), index, class: this.cx('chipIcon') };
1471
- }
1472
- getGroupContext(optionGroup) {
1473
- return { $implicit: optionGroup };
1474
- }
1475
- getItemContext(option, index, scrollerOptions) {
1476
- return {
1477
- $implicit: option,
1478
- index: scrollerOptions.getOptions ? scrollerOptions.getOptions(index) : index
1479
- };
1480
- }
1481
- getLoaderContext(scrollerOptions) {
1482
- return { options: scrollerOptions };
1483
- }
1484
- getBuildInItemsContext(items, scrollerOptions) {
1485
- return { $implicit: items, options: scrollerOptions };
1486
- }
1487
- shouldShowEmptyMessage(items) {
1488
- return !items || (items.length === 0 && this.showEmptyMessage());
1489
- }
1490
- getItemStyle(scrollerOptions) {
1491
- return { height: scrollerOptions.itemSize + 'px' };
1492
- }
1493
- getChipLabel(option) {
1494
- return !this.selectedItemTemplate() && this.getOptionLabel(option);
1495
- }
1496
- getMultipleOptionId(index) {
1497
- return this.$id() + '_multiple_option_' + index;
1498
- }
1499
- getOptionElementId(index, scrollerOptions) {
1500
- return this.$id() + '_' + this.getOptionIndex(index, scrollerOptions);
1501
- }
1502
- isOptionFocused(index, scrollerOptions) {
1503
- return this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions);
1504
- }
1505
- getAriaControls() {
1506
- return this.overlayVisible() ? this.$listId() : null;
1507
- }
1508
- getAriaActiveDescendant() {
1509
- return this.focused() ? this.focusedOptionId : undefined;
1510
- }
1511
- getMultipleAriaActiveDescendant() {
1512
- return this.focused() ? this.focusedMultipleOptionId : undefined;
1513
- }
1514
- getMultiplePlaceholder() {
1515
- return !this.$filled() ? this.placeholder() : null;
1516
- }
1517
- getListContainerMaxHeight() {
1518
- return this.virtualScroll() ? 'auto' : this.scrollHeight();
1519
- }
1520
- onOverlayBeforeEnter() {
1521
- this.itemsWrapper = findSingle(this.overlayViewChild()?.overlayViewChild()?.nativeElement, this.virtualScroll() ? '[data-pc-name="virtualscroller"]' : '[data-pc-name="pcoverlay"]');
1522
- if (this.virtualScroll()) {
1523
- this.scroller()?.setContentEl(this.itemsViewChild()?.nativeElement);
1524
- this.scroller()?.viewInit();
1525
- }
1526
- if (this.visibleOptions() && this.visibleOptions().length) {
1527
- if (this.virtualScroll()) {
1528
- const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
1529
- if (selectedIndex !== -1) {
1530
- this.scroller()?.scrollToIndex(selectedIndex);
1531
- }
1532
- }
1533
- else {
1534
- let selectedListItem = findSingle(this.itemsWrapper, '[data-pc-section="option"][data-p-selected="true"]');
1535
- if (selectedListItem) {
1536
- selectedListItem.scrollIntoView({ block: 'nearest', inline: 'center' });
1537
- }
1538
- }
1539
- }
1540
- }
1541
- get containerDataP() {
1542
- return this.cn({
1543
- fluid: this.hasFluid
1544
- });
1545
- }
1546
- get overlayDataP() {
1547
- return this.cn({
1548
- [`overlay-${this.$appendTo()}`]: true
1549
- });
1550
- }
1551
- get inputMultipleDataP() {
1552
- return this.cn({
1553
- invalid: this.invalid(),
1554
- disabled: this.$disabled(),
1555
- focus: this.focused(),
1556
- fluid: this.hasFluid,
1557
- filled: this.$variant() === 'filled',
1558
- empty: !this.$filled(),
1559
- [this.size()]: this.size()
1560
- });
1561
- }
1562
- /**
1563
- * @override
1564
- *
1565
- * @see {@link BaseEditableHolder.writeControlValue}
1566
- * Writes the value to the control.
1567
- */
1568
- writeControlValue(value, setModelValue) {
1569
- if (this.multiple()) {
1570
- const resolved = (value || []).map((val) => {
1571
- const match = this.visibleOptions().find((option) => equals(val, option, this.equalityKey()));
1572
- return match ?? val;
1573
- });
1574
- setModelValue(isEmpty(value) ? value : resolved);
1575
- }
1576
- else {
1577
- const option = this.visibleOptions().find((option) => equals(value, option, this.equalityKey()));
1578
- setModelValue(isEmpty(option) ? value : option);
1579
- }
1580
- this.value = value;
1581
- this.updateInputValue();
1582
- }
1583
- onDestroy() {
1584
- if (this.searchTimeout) {
1585
- clearTimeout(this.searchTimeout);
1586
- }
1587
- if (this.timeout) {
1588
- clearTimeout(this.timeout);
1589
- }
1590
- if (this.scrollHandler) {
1591
- this.scrollHandler.destroy();
1592
- this.scrollHandler = null;
1593
- }
1594
- }
1595
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoComplete, deps: [], target: i0.ɵɵFactoryTarget.Component });
1596
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: AutoComplete, isStandalone: true, selector: "p-autocomplete, p-auto-complete", inputs: { minQueryLength: { classPropertyName: "minQueryLength", publicName: "minQueryLength", isSignal: true, isRequired: false, transformFunction: null }, delay: { classPropertyName: "delay", publicName: "delay", isSignal: true, isRequired: false, transformFunction: null }, panelStyle: { classPropertyName: "panelStyle", publicName: "panelStyle", isSignal: true, isRequired: false, transformFunction: null }, panelStyleClass: { classPropertyName: "panelStyleClass", publicName: "panelStyleClass", isSignal: true, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: true, isRequired: false, transformFunction: null }, inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, inputStyleClass: { classPropertyName: "inputStyleClass", publicName: "inputStyleClass", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollOptions: { classPropertyName: "virtualScrollOptions", publicName: "virtualScrollOptions", isSignal: true, isRequired: false, transformFunction: null }, autoHighlight: { classPropertyName: "autoHighlight", publicName: "autoHighlight", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: true, isRequired: false, transformFunction: null }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, dropdownAriaLabel: { classPropertyName: "dropdownAriaLabel", publicName: "dropdownAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, dropdownIcon: { classPropertyName: "dropdownIcon", publicName: "dropdownIcon", isSignal: true, isRequired: false, transformFunction: null }, unique: { classPropertyName: "unique", publicName: "unique", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, completeOnFocus: { classPropertyName: "completeOnFocus", publicName: "completeOnFocus", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: true, isRequired: false, transformFunction: null }, dropdown: { classPropertyName: "dropdown", publicName: "dropdown", isSignal: true, isRequired: false, transformFunction: null }, showEmptyMessage: { classPropertyName: "showEmptyMessage", publicName: "showEmptyMessage", isSignal: true, isRequired: false, transformFunction: null }, dropdownMode: { classPropertyName: "dropdownMode", publicName: "dropdownMode", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, addOnTab: { classPropertyName: "addOnTab", publicName: "addOnTab", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: true, isRequired: false, transformFunction: null }, emptyMessage: { classPropertyName: "emptyMessage", publicName: "emptyMessage", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, optionGroupChildren: { classPropertyName: "optionGroupChildren", publicName: "optionGroupChildren", isSignal: true, isRequired: false, transformFunction: null }, optionGroupLabel: { classPropertyName: "optionGroupLabel", publicName: "optionGroupLabel", isSignal: true, isRequired: false, transformFunction: null }, overlayOptions: { classPropertyName: "overlayOptions", publicName: "overlayOptions", isSignal: true, isRequired: false, transformFunction: null }, suggestions: { classPropertyName: "suggestions", publicName: "suggestions", isSignal: true, isRequired: false, transformFunction: null }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, searchMessage: { classPropertyName: "searchMessage", publicName: "searchMessage", isSignal: true, isRequired: false, transformFunction: null }, emptySelectionMessage: { classPropertyName: "emptySelectionMessage", publicName: "emptySelectionMessage", isSignal: true, isRequired: false, transformFunction: null }, selectionMessage: { classPropertyName: "selectionMessage", publicName: "selectionMessage", isSignal: true, isRequired: false, transformFunction: null }, autoOptionFocus: { classPropertyName: "autoOptionFocus", publicName: "autoOptionFocus", isSignal: true, isRequired: false, transformFunction: null }, selectOnFocus: { classPropertyName: "selectOnFocus", publicName: "selectOnFocus", isSignal: true, isRequired: false, transformFunction: null }, searchLocale: { classPropertyName: "searchLocale", publicName: "searchLocale", isSignal: true, isRequired: false, transformFunction: null }, optionDisabled: { classPropertyName: "optionDisabled", publicName: "optionDisabled", isSignal: true, isRequired: false, transformFunction: null }, focusOnHover: { classPropertyName: "focusOnHover", publicName: "focusOnHover", isSignal: true, isRequired: false, transformFunction: null }, typeahead: { classPropertyName: "typeahead", publicName: "typeahead", isSignal: true, isRequired: false, transformFunction: null }, addOnBlur: { classPropertyName: "addOnBlur", publicName: "addOnBlur", isSignal: true, isRequired: false, transformFunction: null }, separator: { classPropertyName: "separator", publicName: "separator", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { completeMethod: "completeMethod", onSelect: "onSelect", onUnselect: "onUnselect", onAdd: "onAdd", onFocus: "onFocus", onBlur: "onBlur", onDropdownClick: "onDropdownClick", onClear: "onClear", onInputKeydown: "onInputKeydown", onKeyUp: "onKeyUp", onShow: "onShow", onHide: "onHide", onLazyLoad: "onLazyLoad" }, host: { listeners: { "click": "onHostClick($event)" }, properties: { "class": "cx('root')", "style": "sx('root')", "attr.data-p": "containerDataP" } }, providers: [AUTOCOMPLETE_VALUE_ACCESSOR, AutoCompleteStyle, { provide: AUTOCOMPLETE_INSTANCE, useExisting: AutoComplete }, { provide: PARENT_INSTANCE, useExisting: AutoComplete }], queries: [{ propertyName: "itemTemplate", first: true, predicate: ["item"], isSignal: true }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"], isSignal: true }, { propertyName: "headerTemplate", first: true, predicate: ["header"], isSignal: true }, { propertyName: "footerTemplate", first: true, predicate: ["footer"], isSignal: true }, { propertyName: "selectedItemTemplate", first: true, predicate: ["selecteditem"], isSignal: true }, { propertyName: "groupTemplate", first: true, predicate: ["group"], isSignal: true }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"], isSignal: true }, { propertyName: "removeIconTemplate", first: true, predicate: ["removeicon"], isSignal: true }, { propertyName: "loadingIconTemplate", first: true, predicate: ["loadingicon"], isSignal: true }, { propertyName: "clearIconTemplate", first: true, predicate: ["clearicon"], isSignal: true }, { propertyName: "dropdownIconTemplate", first: true, predicate: ["dropdownicon"], isSignal: true }], viewQueries: [{ propertyName: "inputEL", first: true, predicate: ["focusInput"], descendants: true, isSignal: true }, { propertyName: "multiInputEl", first: true, predicate: ["multiIn"], descendants: true, isSignal: true }, { propertyName: "multiContainerEL", first: true, predicate: ["multiContainer"], descendants: true, isSignal: true }, { propertyName: "dropdownButton", first: true, predicate: ["ddBtn"], descendants: true, isSignal: true }, { propertyName: "itemsViewChild", first: true, predicate: ["items"], descendants: true, isSignal: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true, isSignal: true }, { propertyName: "overlayViewChild", first: true, predicate: ["overlay"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
112
+ var AutoComplete = class AutoComplete extends BaseInput {
113
+ componentName = "AutoComplete";
114
+ $pcAutoComplete = inject(AUTOCOMPLETE_INSTANCE, {
115
+ optional: true,
116
+ skipSelf: true
117
+ }) ?? void 0;
118
+ bindDirectiveInstance = inject(Bind, { self: true });
119
+ minQueryLength = input(...ngDevMode ? [void 0, { debugName: "minQueryLength" }] : /* istanbul ignore next */ []);
120
+ delay = input(300, {
121
+ ...ngDevMode ? { debugName: "delay" } : /* istanbul ignore next */ {},
122
+ transform: numberAttribute
123
+ });
124
+ panelStyle = input(...ngDevMode ? [void 0, { debugName: "panelStyle" }] : /* istanbul ignore next */ []);
125
+ panelStyleClass = input(...ngDevMode ? [void 0, { debugName: "panelStyleClass" }] : /* istanbul ignore next */ []);
126
+ inputStyle = input(...ngDevMode ? [void 0, { debugName: "inputStyle" }] : /* istanbul ignore next */ []);
127
+ inputId = input(...ngDevMode ? [void 0, { debugName: "inputId" }] : /* istanbul ignore next */ []);
128
+ inputStyleClass = input(...ngDevMode ? [void 0, { debugName: "inputStyleClass" }] : /* istanbul ignore next */ []);
129
+ placeholder = input(...ngDevMode ? [void 0, { debugName: "placeholder" }] : /* istanbul ignore next */ []);
130
+ readonly = input(false, {
131
+ ...ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {},
132
+ transform: booleanAttribute
133
+ });
134
+ scrollHeight = input("200px", ...ngDevMode ? [{ debugName: "scrollHeight" }] : /* istanbul ignore next */ []);
135
+ lazy = input(false, {
136
+ ...ngDevMode ? { debugName: "lazy" } : /* istanbul ignore next */ {},
137
+ transform: booleanAttribute
138
+ });
139
+ virtualScroll = input(false, {
140
+ ...ngDevMode ? { debugName: "virtualScroll" } : /* istanbul ignore next */ {},
141
+ transform: booleanAttribute
142
+ });
143
+ virtualScrollItemSize = input(...ngDevMode ? [void 0, { debugName: "virtualScrollItemSize" }] : /* istanbul ignore next */ []);
144
+ virtualScrollOptions = input(...ngDevMode ? [void 0, { debugName: "virtualScrollOptions" }] : /* istanbul ignore next */ []);
145
+ autoHighlight = input(false, {
146
+ ...ngDevMode ? { debugName: "autoHighlight" } : /* istanbul ignore next */ {},
147
+ transform: booleanAttribute
148
+ });
149
+ forceSelection = input(false, {
150
+ ...ngDevMode ? { debugName: "forceSelection" } : /* istanbul ignore next */ {},
151
+ transform: booleanAttribute
152
+ });
153
+ type = input("text", ...ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []);
154
+ autoZIndex = input(true, {
155
+ ...ngDevMode ? { debugName: "autoZIndex" } : /* istanbul ignore next */ {},
156
+ transform: booleanAttribute
157
+ });
158
+ baseZIndex = input(0, {
159
+ ...ngDevMode ? { debugName: "baseZIndex" } : /* istanbul ignore next */ {},
160
+ transform: numberAttribute
161
+ });
162
+ ariaLabel = input(...ngDevMode ? [void 0, { debugName: "ariaLabel" }] : /* istanbul ignore next */ []);
163
+ dropdownAriaLabel = input(...ngDevMode ? [void 0, { debugName: "dropdownAriaLabel" }] : /* istanbul ignore next */ []);
164
+ ariaLabelledBy = input(...ngDevMode ? [void 0, { debugName: "ariaLabelledBy" }] : /* istanbul ignore next */ []);
165
+ dropdownIcon = input(...ngDevMode ? [void 0, { debugName: "dropdownIcon" }] : /* istanbul ignore next */ []);
166
+ unique = input(true, {
167
+ ...ngDevMode ? { debugName: "unique" } : /* istanbul ignore next */ {},
168
+ transform: booleanAttribute
169
+ });
170
+ group = input(false, {
171
+ ...ngDevMode ? { debugName: "group" } : /* istanbul ignore next */ {},
172
+ transform: booleanAttribute
173
+ });
174
+ completeOnFocus = input(false, {
175
+ ...ngDevMode ? { debugName: "completeOnFocus" } : /* istanbul ignore next */ {},
176
+ transform: booleanAttribute
177
+ });
178
+ showClear = input(false, {
179
+ ...ngDevMode ? { debugName: "showClear" } : /* istanbul ignore next */ {},
180
+ transform: booleanAttribute
181
+ });
182
+ dropdown = input(false, {
183
+ ...ngDevMode ? { debugName: "dropdown" } : /* istanbul ignore next */ {},
184
+ transform: booleanAttribute
185
+ });
186
+ showEmptyMessage = input(true, {
187
+ ...ngDevMode ? { debugName: "showEmptyMessage" } : /* istanbul ignore next */ {},
188
+ transform: booleanAttribute
189
+ });
190
+ dropdownMode = input("blank", ...ngDevMode ? [{ debugName: "dropdownMode" }] : /* istanbul ignore next */ []);
191
+ multiple = input(false, {
192
+ ...ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {},
193
+ transform: booleanAttribute
194
+ });
195
+ addOnTab = input(false, {
196
+ ...ngDevMode ? { debugName: "addOnTab" } : /* istanbul ignore next */ {},
197
+ transform: booleanAttribute
198
+ });
199
+ tabindex = input(...ngDevMode ? [void 0, { debugName: "tabindex" }] : /* istanbul ignore next */ []);
200
+ dataKey = input(...ngDevMode ? [void 0, { debugName: "dataKey" }] : /* istanbul ignore next */ []);
201
+ emptyMessage = input(...ngDevMode ? [void 0, { debugName: "emptyMessage" }] : /* istanbul ignore next */ []);
202
+ autofocus = input(false, {
203
+ ...ngDevMode ? { debugName: "autofocus" } : /* istanbul ignore next */ {},
204
+ transform: booleanAttribute
205
+ });
206
+ autocomplete = input("off", ...ngDevMode ? [{ debugName: "autocomplete" }] : /* istanbul ignore next */ []);
207
+ optionGroupChildren = input("items", ...ngDevMode ? [{ debugName: "optionGroupChildren" }] : /* istanbul ignore next */ []);
208
+ optionGroupLabel = input("label", ...ngDevMode ? [{ debugName: "optionGroupLabel" }] : /* istanbul ignore next */ []);
209
+ overlayOptions = input(...ngDevMode ? [void 0, { debugName: "overlayOptions" }] : /* istanbul ignore next */ []);
210
+ suggestions = input([], ...ngDevMode ? [{ debugName: "suggestions" }] : /* istanbul ignore next */ []);
211
+ optionLabel = input(...ngDevMode ? [void 0, { debugName: "optionLabel" }] : /* istanbul ignore next */ []);
212
+ optionValue = input(...ngDevMode ? [void 0, { debugName: "optionValue" }] : /* istanbul ignore next */ []);
213
+ id = input(...ngDevMode ? [void 0, { debugName: "id" }] : /* istanbul ignore next */ []);
214
+ searchMessage = input(...ngDevMode ? [void 0, { debugName: "searchMessage" }] : /* istanbul ignore next */ []);
215
+ emptySelectionMessage = input(...ngDevMode ? [void 0, { debugName: "emptySelectionMessage" }] : /* istanbul ignore next */ []);
216
+ selectionMessage = input(...ngDevMode ? [void 0, { debugName: "selectionMessage" }] : /* istanbul ignore next */ []);
217
+ autoOptionFocus = input(false, {
218
+ ...ngDevMode ? { debugName: "autoOptionFocus" } : /* istanbul ignore next */ {},
219
+ transform: booleanAttribute
220
+ });
221
+ selectOnFocus = input(false, {
222
+ ...ngDevMode ? { debugName: "selectOnFocus" } : /* istanbul ignore next */ {},
223
+ transform: booleanAttribute
224
+ });
225
+ searchLocale = input(...ngDevMode ? [void 0, { debugName: "searchLocale" }] : /* istanbul ignore next */ []);
226
+ optionDisabled = input(...ngDevMode ? [void 0, { debugName: "optionDisabled" }] : /* istanbul ignore next */ []);
227
+ focusOnHover = input(true, {
228
+ ...ngDevMode ? { debugName: "focusOnHover" } : /* istanbul ignore next */ {},
229
+ transform: booleanAttribute
230
+ });
231
+ typeahead = input(true, {
232
+ ...ngDevMode ? { debugName: "typeahead" } : /* istanbul ignore next */ {},
233
+ transform: booleanAttribute
234
+ });
235
+ addOnBlur = input(false, {
236
+ ...ngDevMode ? { debugName: "addOnBlur" } : /* istanbul ignore next */ {},
237
+ transform: booleanAttribute
238
+ });
239
+ separator = input(...ngDevMode ? [void 0, { debugName: "separator" }] : /* istanbul ignore next */ []);
240
+ appendTo = input(void 0, ...ngDevMode ? [{ debugName: "appendTo" }] : /* istanbul ignore next */ []);
241
+ motionOptions = input(void 0, ...ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []);
242
+ completeMethod = output();
243
+ onSelect = output();
244
+ onUnselect = output();
245
+ onAdd = output();
246
+ onFocus = output();
247
+ onBlur = output();
248
+ onDropdownClick = output();
249
+ onClear = output();
250
+ onInputKeydown = output();
251
+ onKeyUp = output();
252
+ onShow = output();
253
+ onHide = output();
254
+ onLazyLoad = output();
255
+ inputEL = viewChild("focusInput", ...ngDevMode ? [{ debugName: "inputEL" }] : /* istanbul ignore next */ []);
256
+ multiInputEl = viewChild("multiIn", ...ngDevMode ? [{ debugName: "multiInputEl" }] : /* istanbul ignore next */ []);
257
+ multiContainerEL = viewChild("multiContainer", ...ngDevMode ? [{ debugName: "multiContainerEL" }] : /* istanbul ignore next */ []);
258
+ dropdownButton = viewChild("ddBtn", ...ngDevMode ? [{ debugName: "dropdownButton" }] : /* istanbul ignore next */ []);
259
+ itemsViewChild = viewChild("items", ...ngDevMode ? [{ debugName: "itemsViewChild" }] : /* istanbul ignore next */ []);
260
+ scroller = viewChild("scroller", ...ngDevMode ? [{ debugName: "scroller" }] : /* istanbul ignore next */ []);
261
+ overlayViewChild = viewChild("overlay", ...ngDevMode ? [{ debugName: "overlayViewChild" }] : /* istanbul ignore next */ []);
262
+ itemsWrapper;
263
+ itemTemplate = contentChild("item", {
264
+ ...ngDevMode ? { debugName: "itemTemplate" } : /* istanbul ignore next */ {},
265
+ descendants: false
266
+ });
267
+ emptyTemplate = contentChild("empty", {
268
+ ...ngDevMode ? { debugName: "emptyTemplate" } : /* istanbul ignore next */ {},
269
+ descendants: false
270
+ });
271
+ headerTemplate = contentChild("header", {
272
+ ...ngDevMode ? { debugName: "headerTemplate" } : /* istanbul ignore next */ {},
273
+ descendants: false
274
+ });
275
+ footerTemplate = contentChild("footer", {
276
+ ...ngDevMode ? { debugName: "footerTemplate" } : /* istanbul ignore next */ {},
277
+ descendants: false
278
+ });
279
+ selectedItemTemplate = contentChild("selecteditem", {
280
+ ...ngDevMode ? { debugName: "selectedItemTemplate" } : /* istanbul ignore next */ {},
281
+ descendants: false
282
+ });
283
+ groupTemplate = contentChild("group", {
284
+ ...ngDevMode ? { debugName: "groupTemplate" } : /* istanbul ignore next */ {},
285
+ descendants: false
286
+ });
287
+ loaderTemplate = contentChild("loader", {
288
+ ...ngDevMode ? { debugName: "loaderTemplate" } : /* istanbul ignore next */ {},
289
+ descendants: false
290
+ });
291
+ removeIconTemplate = contentChild("removeicon", {
292
+ ...ngDevMode ? { debugName: "removeIconTemplate" } : /* istanbul ignore next */ {},
293
+ descendants: false
294
+ });
295
+ loadingIconTemplate = contentChild("loadingicon", {
296
+ ...ngDevMode ? { debugName: "loadingIconTemplate" } : /* istanbul ignore next */ {},
297
+ descendants: false
298
+ });
299
+ clearIconTemplate = contentChild("clearicon", {
300
+ ...ngDevMode ? { debugName: "clearIconTemplate" } : /* istanbul ignore next */ {},
301
+ descendants: false
302
+ });
303
+ dropdownIconTemplate = contentChild("dropdownicon", {
304
+ ...ngDevMode ? { debugName: "dropdownIconTemplate" } : /* istanbul ignore next */ {},
305
+ descendants: false
306
+ });
307
+ value;
308
+ timeout = null;
309
+ overlayVisible = signal(false, ...ngDevMode ? [{ debugName: "overlayVisible" }] : /* istanbul ignore next */ []);
310
+ suggestionsUpdated;
311
+ highlightOption;
312
+ highlightOptionChanged;
313
+ focused = signal(false, ...ngDevMode ? [{ debugName: "focused" }] : /* istanbul ignore next */ []);
314
+ loading = signal(false, ...ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []);
315
+ scrollHandler;
316
+ listId;
317
+ searchTimeout = null;
318
+ dirty = false;
319
+ focusedMultipleOptionIndex = signal(-1, ...ngDevMode ? [{ debugName: "focusedMultipleOptionIndex" }] : /* istanbul ignore next */ []);
320
+ focusedOptionIndex = signal(-1, ...ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []);
321
+ _componentStyle = inject(AutoCompleteStyle);
322
+ overlayService = inject(OverlayService);
323
+ _internalId = uuid("pn_id_");
324
+ $id = computed(() => this.id() || this._internalId, ...ngDevMode ? [{ debugName: "$id" }] : /* istanbul ignore next */ []);
325
+ $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), ...ngDevMode ? [{ debugName: "$appendTo" }] : /* istanbul ignore next */ []);
326
+ get $overlayTarget() {
327
+ return this.el?.nativeElement?.closest("[data-pc-name=\"inputtags\"]") ? "@grandparent" : "@parent";
328
+ }
329
+ visibleOptions = computed(() => this.group() ? this.flatOptions(this.suggestions()) : this.suggestions() || [], ...ngDevMode ? [{ debugName: "visibleOptions" }] : /* istanbul ignore next */ []);
330
+ inputValue = computed(() => {
331
+ const modelValue = this.modelValue();
332
+ const selectedOption = this.optionValueSelected ? (this.suggestions() || []).find((option) => equals(option, modelValue, this.equalityKey())) : modelValue;
333
+ if (isNotEmpty(modelValue)) {
334
+ if (typeof modelValue === "object" || this.optionValueSelected) {
335
+ const label = this.getOptionLabel(selectedOption);
336
+ return label != null ? label : modelValue;
337
+ } else return modelValue;
338
+ } else return "";
339
+ }, ...ngDevMode ? [{ debugName: "inputValue" }] : /* istanbul ignore next */ []);
340
+ $showClear = computed(() => this.$filled() && !this.$disabled() && this.showClear() && !this.loading(), ...ngDevMode ? [{ debugName: "$showClear" }] : /* istanbul ignore next */ []);
341
+ scrollerStyle = computed(() => ({ height: this.scrollHeight() }), ...ngDevMode ? [{ debugName: "scrollerStyle" }] : /* istanbul ignore next */ []);
342
+ $tabindex = computed(() => !this.$disabled() ? this.tabindex() : -1, ...ngDevMode ? [{ debugName: "$tabindex" }] : /* istanbul ignore next */ []);
343
+ requiredAttr = computed(() => this.required() ? "" : void 0, ...ngDevMode ? [{ debugName: "requiredAttr" }] : /* istanbul ignore next */ []);
344
+ readonlyAttr = computed(() => this.readonly() ? "" : void 0, ...ngDevMode ? [{ debugName: "readonlyAttr" }] : /* istanbul ignore next */ []);
345
+ disabledAttr = computed(() => this.$disabled() ? "" : void 0, ...ngDevMode ? [{ debugName: "disabledAttr" }] : /* istanbul ignore next */ []);
346
+ $listId = computed(() => this.$id() + "_list", ...ngDevMode ? [{ debugName: "$listId" }] : /* istanbul ignore next */ []);
347
+ get focusedMultipleOptionId() {
348
+ return this.focusedMultipleOptionIndex() !== -1 ? `${this.$id()}_multiple_option_${this.focusedMultipleOptionIndex()}` : null;
349
+ }
350
+ get focusedOptionId() {
351
+ return this.focusedOptionIndex() !== -1 ? `${this.$id()}_${this.focusedOptionIndex()}` : null;
352
+ }
353
+ get searchResultMessageText() {
354
+ return isNotEmpty(this.visibleOptions()) && this.overlayVisible() ? this.searchMessageText.replaceAll("{0}", this.visibleOptions().length) : this.emptySearchMessageText;
355
+ }
356
+ get searchMessageText() {
357
+ return this.searchMessage() || this.config.translation.searchMessage || "";
358
+ }
359
+ get emptySearchMessageText() {
360
+ return this.emptyMessage() || this.config.translation.emptySearchMessage || "";
361
+ }
362
+ get selectionMessageText() {
363
+ return this.selectionMessage() || this.config.translation.selectionMessage || "";
364
+ }
365
+ get emptySelectionMessageText() {
366
+ return this.emptySelectionMessage() || this.config.translation.emptySelectionMessage || "";
367
+ }
368
+ get selectedMessageText() {
369
+ return this.hasSelectedOption() ? this.selectionMessageText.replaceAll("{0}", this.multiple() ? this.modelValue()?.length : "1") : this.emptySelectionMessageText;
370
+ }
371
+ get ariaSetSize() {
372
+ return this.visibleOptions().filter((option) => !this.isOptionGroup(option)).length;
373
+ }
374
+ get listLabel() {
375
+ return this.translate(TranslationKeys.ARIA, "listLabel");
376
+ }
377
+ get virtualScrollerDisabled() {
378
+ return !this.virtualScroll();
379
+ }
380
+ get optionValueSelected() {
381
+ return typeof this.modelValue() === "string" && this.optionValue();
382
+ }
383
+ onHostClick(event) {
384
+ this.onContainerClick(event);
385
+ }
386
+ chipItemClass(index) {
387
+ return this._componentStyle.classes.chipItem({
388
+ instance: this,
389
+ i: index
390
+ });
391
+ }
392
+ constructor() {
393
+ super();
394
+ effect(() => {
395
+ if (this.suggestions()) this.handleSuggestionsChange();
396
+ });
397
+ }
398
+ onAfterViewChecked() {
399
+ this.bindDirectiveInstance.setAttrs(this.ptms(["host", "root"]));
400
+ if (this.suggestionsUpdated && this.overlayViewChild()) {
401
+ setTimeout(() => {
402
+ if (this.overlayViewChild()) this.overlayViewChild().alignOverlay();
403
+ }, 1);
404
+ this.suggestionsUpdated = false;
405
+ }
406
+ }
407
+ handleSuggestionsChange() {
408
+ if (this.loading()) {
409
+ if (this.suggestions()?.length > 0 || this.showEmptyMessage() || !!this.emptyTemplate()) this.show();
410
+ else this.hide();
411
+ const focusedOptionIndex = this.overlayVisible() && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
412
+ this.focusedOptionIndex.set(focusedOptionIndex);
413
+ this.suggestionsUpdated = true;
414
+ this.loading.set(false);
415
+ }
416
+ }
417
+ flatOptions(options) {
418
+ return (options || []).reduce((result, option, index) => {
419
+ result.push({
420
+ optionGroup: option,
421
+ group: true,
422
+ index
423
+ });
424
+ const optionGroupChildren = this.getOptionGroupChildren(option);
425
+ if (optionGroupChildren) optionGroupChildren.forEach((o) => result.push(o));
426
+ return result;
427
+ }, []);
428
+ }
429
+ isOptionGroup(option) {
430
+ return this.optionGroupLabel() && option.optionGroup && option.group;
431
+ }
432
+ findFirstOptionIndex() {
433
+ return this.visibleOptions().findIndex((option) => this.isValidOption(option));
434
+ }
435
+ findLastOptionIndex() {
436
+ return findLastIndex(this.visibleOptions(), (option) => this.isValidOption(option));
437
+ }
438
+ findFirstFocusedOptionIndex() {
439
+ const selectedIndex = this.findSelectedOptionIndex();
440
+ return selectedIndex < 0 ? this.findFirstOptionIndex() : selectedIndex;
441
+ }
442
+ findLastFocusedOptionIndex() {
443
+ const selectedIndex = this.findSelectedOptionIndex();
444
+ return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
445
+ }
446
+ findSelectedOptionIndex() {
447
+ return this.hasSelectedOption() ? this.visibleOptions().findIndex((option) => this.isValidSelectedOption(option)) : -1;
448
+ }
449
+ findNextOptionIndex(index) {
450
+ const matchedOptionIndex = index < this.visibleOptions().length - 1 ? this.visibleOptions().slice(index + 1).findIndex((option) => this.isValidOption(option)) : -1;
451
+ return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
452
+ }
453
+ findPrevOptionIndex(index) {
454
+ const matchedOptionIndex = index > 0 ? findLastIndex(this.visibleOptions().slice(0, index), (option) => this.isValidOption(option)) : -1;
455
+ return matchedOptionIndex > -1 ? matchedOptionIndex : index;
456
+ }
457
+ isValidSelectedOption(option) {
458
+ return this.isValidOption(option) && this.isSelected(option);
459
+ }
460
+ isValidOption(option) {
461
+ return option && !(this.isOptionDisabled(option) || this.isOptionGroup(option));
462
+ }
463
+ isOptionDisabled(option) {
464
+ return this.optionDisabled() ? resolveFieldData(option, this.optionDisabled()) : false;
465
+ }
466
+ isSelected(option) {
467
+ if (this.multiple()) return this.unique() ? this.modelValue()?.some((model) => equals(model, option, this.equalityKey())) : false;
468
+ return equals(this.modelValue(), option, this.equalityKey());
469
+ }
470
+ isOptionMatched(option, value) {
471
+ return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.searchLocale()) === value.toLocaleLowerCase(this.searchLocale());
472
+ }
473
+ isInputClicked(event) {
474
+ return event.target === this.inputEL()?.nativeElement;
475
+ }
476
+ isDropdownClicked(event) {
477
+ return this.dropdownButton()?.nativeElement ? event.target === this.dropdownButton().nativeElement || this.dropdownButton().nativeElement.contains(event.target) : false;
478
+ }
479
+ equalityKey() {
480
+ return this.optionValue() ? void 0 : this.dataKey();
481
+ }
482
+ onContainerClick(event) {
483
+ if (this.$disabled() || this.loading() || this.isInputClicked(event) || this.isDropdownClicked(event)) return;
484
+ if (!this.overlayViewChild() || !this.overlayViewChild().overlayViewChild()?.nativeElement.contains(event.target)) focus(this.inputEL()?.nativeElement);
485
+ }
486
+ handleDropdownClick(event) {
487
+ let query = void 0;
488
+ if (this.overlayVisible()) this.hide(true);
489
+ else {
490
+ focus(this.inputEL()?.nativeElement);
491
+ query = this.inputEL()?.nativeElement?.value;
492
+ if (this.dropdownMode() === "blank") this.search(event, "", "dropdown");
493
+ else if (this.dropdownMode() === "current") this.search(event, query, "dropdown");
494
+ }
495
+ this.onDropdownClick.emit({
496
+ originalEvent: event,
497
+ query
498
+ });
499
+ }
500
+ onInput(event) {
501
+ if (this.typeahead()) {
502
+ const _minLength = this.minQueryLength() || 1;
503
+ if (this.searchTimeout) clearTimeout(this.searchTimeout);
504
+ let query = event.target.value;
505
+ const maxLen = this.maxlength();
506
+ if (maxLen != null) query = query.split("").slice(0, maxLen).join("");
507
+ if (!this.multiple() && !this.forceSelection()) this.updateModel(query);
508
+ if (query.length === 0 && !this.multiple()) {
509
+ this.onClear.emit();
510
+ setTimeout(() => {
511
+ this.hide();
512
+ }, this.delay() / 2);
513
+ } else if (query.length >= _minLength) {
514
+ this.focusedOptionIndex.set(-1);
515
+ this.searchTimeout = setTimeout(() => {
516
+ this.search(event, query, "input");
517
+ }, this.delay());
518
+ } else this.hide();
519
+ }
520
+ }
521
+ onInputChange(event) {
522
+ this.updateInputWithForceSelection(event);
523
+ }
524
+ onInputFocus(event) {
525
+ if (this.$disabled()) return;
526
+ if (!this.dirty && this.completeOnFocus()) this.search(event, event.target.value, "focus");
527
+ this.dirty = true;
528
+ this.focused.set(true);
529
+ const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.overlayVisible() && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
530
+ this.focusedOptionIndex.set(focusedOptionIndex);
531
+ if (this.overlayVisible()) this.scrollInView(this.focusedOptionIndex());
532
+ this.onFocus.emit(event);
533
+ }
534
+ onMultipleContainerFocus(event) {
535
+ if (this.$disabled()) return;
536
+ this.focused.set(true);
537
+ }
538
+ onMultipleContainerBlur(event) {
539
+ this.focusedMultipleOptionIndex.set(-1);
540
+ this.focused.set(false);
541
+ }
542
+ onMultipleContainerKeyDown(event) {
543
+ if (this.$disabled()) {
544
+ event.preventDefault();
545
+ return;
546
+ }
547
+ switch (event.code) {
548
+ case "ArrowLeft":
549
+ this.onArrowLeftKeyOnMultiple(event);
550
+ break;
551
+ case "ArrowRight":
552
+ this.onArrowRightKeyOnMultiple(event);
553
+ break;
554
+ case "Backspace": this.onBackspaceKeyOnMultiple(event);
555
+ }
556
+ }
557
+ onInputBlur(event) {
558
+ this.dirty = false;
559
+ this.focused.set(false);
560
+ this.focusedOptionIndex.set(-1);
561
+ if (this.addOnBlur() && this.multiple() && !this.typeahead()) {
562
+ const inputValue = (this.multiInputEl()?.nativeElement?.value || event.target.value || "").trim();
563
+ if (inputValue && !this.isSelected(inputValue)) {
564
+ this.updateModel([...this.modelValue() || [], inputValue]);
565
+ this.onAdd.emit({
566
+ originalEvent: event,
567
+ value: inputValue
568
+ });
569
+ if (this.multiInputEl()?.nativeElement) this.multiInputEl().nativeElement.value = "";
570
+ else event.target.value = "";
571
+ }
572
+ }
573
+ this.onModelTouched();
574
+ this.onBlur.emit(event);
575
+ }
576
+ onInputPaste(event) {
577
+ if (this.separator() && this.multiple() && !this.typeahead()) {
578
+ const pastedData = event.clipboardData?.getData("Text");
579
+ if (pastedData) {
580
+ const values = pastedData.split(this.separator());
581
+ const newValues = [...this.modelValue() || []];
582
+ values.forEach((value) => {
583
+ const trimmedValue = value.trim();
584
+ if (trimmedValue && !this.isSelected(trimmedValue)) newValues.push(trimmedValue);
585
+ });
586
+ if (newValues.length > (this.modelValue() || []).length) {
587
+ const addedValues = newValues.slice((this.modelValue() || []).length);
588
+ this.updateModel(newValues);
589
+ addedValues.forEach((addedValue) => {
590
+ this.onAdd.emit({
591
+ originalEvent: event,
592
+ value: addedValue
593
+ });
594
+ });
595
+ if (this.multiInputEl()?.nativeElement) this.multiInputEl().nativeElement.value = "";
596
+ else event.target.value = "";
597
+ event.preventDefault();
598
+ }
599
+ }
600
+ } else this.onKeyDown(event);
601
+ }
602
+ onInputKeyUp(event) {
603
+ this.onKeyUp.emit(event);
604
+ }
605
+ onKeyDown(event) {
606
+ if (this.$disabled()) {
607
+ event.preventDefault();
608
+ return;
609
+ }
610
+ this.onInputKeydown.emit(event);
611
+ switch (event.code) {
612
+ case "ArrowDown":
613
+ this.onArrowDownKey(event);
614
+ break;
615
+ case "ArrowUp":
616
+ this.onArrowUpKey(event);
617
+ break;
618
+ case "ArrowLeft":
619
+ this.onArrowLeftKey(event);
620
+ break;
621
+ case "ArrowRight":
622
+ this.onArrowRightKey(event);
623
+ break;
624
+ case "Home":
625
+ this.onHomeKey(event);
626
+ break;
627
+ case "End":
628
+ this.onEndKey(event);
629
+ break;
630
+ case "PageDown":
631
+ this.onPageDownKey(event);
632
+ break;
633
+ case "PageUp":
634
+ this.onPageUpKey(event);
635
+ break;
636
+ case "Enter":
637
+ case "NumpadEnter":
638
+ this.onEnterKey(event);
639
+ break;
640
+ case "Escape":
641
+ this.onEscapeKey(event);
642
+ if (this.overlayVisible()) event.stopPropagation();
643
+ break;
644
+ case "Tab":
645
+ this.onTabKey(event);
646
+ break;
647
+ case "Backspace":
648
+ this.onBackspaceKey(event);
649
+ break;
650
+ case "ShiftLeft":
651
+ case "ShiftRight": break;
652
+ default: this.handleSeparatorKey(event);
653
+ }
654
+ }
655
+ handleSeparatorKey(event) {
656
+ const separator = this.separator();
657
+ if (separator && this.multiple() && !this.typeahead()) {
658
+ if (separator === event.key || typeof separator === "string" && event.key === separator || separator instanceof RegExp && event.key.match(separator)) {
659
+ const inputValue = (this.multiInputEl()?.nativeElement?.value || event.target.value || "").trim();
660
+ if (inputValue && !this.isSelected(inputValue)) {
661
+ this.updateModel([...this.modelValue() || [], inputValue]);
662
+ this.onAdd.emit({
663
+ originalEvent: event,
664
+ value: inputValue
665
+ });
666
+ if (this.multiInputEl()?.nativeElement) this.multiInputEl().nativeElement.value = "";
667
+ else event.target.value = "";
668
+ event.preventDefault();
669
+ }
670
+ }
671
+ }
672
+ }
673
+ onArrowDownKey(event) {
674
+ if (!this.overlayVisible()) return;
675
+ const optionIndex = this.focusedOptionIndex() !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex()) : this.findFirstFocusedOptionIndex();
676
+ this.changeFocusedOptionIndex(event, optionIndex);
677
+ event.preventDefault();
678
+ event.stopPropagation();
679
+ }
680
+ onArrowUpKey(event) {
681
+ if (!this.overlayVisible()) return;
682
+ if (event.altKey) {
683
+ if (this.focusedOptionIndex() !== -1) this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
684
+ if (this.overlayVisible()) this.hide();
685
+ event.preventDefault();
686
+ } else {
687
+ const optionIndex = this.focusedOptionIndex() !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex()) : this.findLastFocusedOptionIndex();
688
+ this.changeFocusedOptionIndex(event, optionIndex);
689
+ event.preventDefault();
690
+ event.stopPropagation();
691
+ }
692
+ }
693
+ onArrowLeftKey(event) {
694
+ const target = event.currentTarget;
695
+ this.focusedOptionIndex.set(-1);
696
+ if (this.multiple()) {
697
+ if (isEmpty(target.value) && this.hasSelectedOption()) {
698
+ focus(this.multiContainerEL()?.nativeElement);
699
+ this.focusedMultipleOptionIndex.set(this.modelValue().length);
700
+ } else event.stopPropagation();
701
+ }
702
+ }
703
+ onArrowRightKey(event) {
704
+ this.focusedOptionIndex.set(-1);
705
+ if (this.multiple()) event.stopPropagation();
706
+ }
707
+ onHomeKey(event) {
708
+ const currentTarget = event.currentTarget;
709
+ const len = currentTarget.value.length;
710
+ currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
711
+ this.focusedOptionIndex.set(-1);
712
+ event.preventDefault();
713
+ }
714
+ onEndKey(event) {
715
+ const currentTarget = event.currentTarget;
716
+ const len = currentTarget.value.length;
717
+ currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
718
+ this.focusedOptionIndex.set(-1);
719
+ event.preventDefault();
720
+ }
721
+ onPageDownKey(event) {
722
+ this.scrollInView(this.visibleOptions().length - 1);
723
+ event.preventDefault();
724
+ }
725
+ onPageUpKey(event) {
726
+ this.scrollInView(0);
727
+ event.preventDefault();
728
+ }
729
+ onEnterKey(event) {
730
+ if (!this.typeahead() && !this.forceSelection()) {
731
+ if (this.multiple()) {
732
+ const inputValue = event.target.value?.trim();
733
+ if (inputValue && !this.isSelected(inputValue)) {
734
+ this.updateModel([...this.modelValue() || [], inputValue]);
735
+ this.onAdd.emit({
736
+ originalEvent: event,
737
+ value: inputValue
738
+ });
739
+ if (this.inputEL()?.nativeElement) this.inputEL().nativeElement.value = "";
740
+ }
741
+ }
742
+ }
743
+ if (!this.overlayVisible()) return;
744
+ else {
745
+ if (this.focusedOptionIndex() !== -1) this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
746
+ this.hide();
747
+ }
748
+ event.preventDefault();
749
+ }
750
+ onEscapeKey(event) {
751
+ if (this.overlayVisible()) this.hide(true);
752
+ event.preventDefault();
753
+ }
754
+ onTabKey(event) {
755
+ if (this.focusedOptionIndex() !== -1) {
756
+ this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
757
+ return;
758
+ }
759
+ if (this.multiple() && !this.typeahead()) {
760
+ const inputValue = (this.multiInputEl()?.nativeElement?.value || this.inputEL()?.nativeElement?.value || "").trim();
761
+ if (this.addOnTab()) {
762
+ if (inputValue && !this.isSelected(inputValue)) {
763
+ this.updateModel([...this.modelValue() || [], inputValue]);
764
+ this.onAdd.emit({
765
+ originalEvent: event,
766
+ value: inputValue
767
+ });
768
+ if (this.multiInputEl()?.nativeElement) this.multiInputEl().nativeElement.value = "";
769
+ else if (this.inputEL()?.nativeElement) this.inputEL().nativeElement.value = "";
770
+ this.updateInputValue();
771
+ event.preventDefault();
772
+ if (this.overlayVisible()) this.hide();
773
+ return;
774
+ }
775
+ }
776
+ }
777
+ if (this.overlayVisible()) this.hide();
778
+ }
779
+ onBackspaceKey(event) {
780
+ if (this.multiple()) {
781
+ if (isNotEmpty(this.modelValue()) && !this.inputEL()?.nativeElement?.value) {
782
+ const removedValue = this.modelValue()[this.modelValue().length - 1];
783
+ const newValue = this.modelValue().slice(0, -1);
784
+ this.updateModel(newValue);
785
+ this.onUnselect.emit({
786
+ originalEvent: event,
787
+ value: removedValue
788
+ });
789
+ }
790
+ event.stopPropagation();
791
+ }
792
+ }
793
+ onArrowLeftKeyOnMultiple(event) {
794
+ const optionIndex = this.focusedMultipleOptionIndex() < 1 ? 0 : this.focusedMultipleOptionIndex() - 1;
795
+ this.focusedMultipleOptionIndex.set(optionIndex);
796
+ }
797
+ onArrowRightKeyOnMultiple(event) {
798
+ let optionIndex = this.focusedMultipleOptionIndex();
799
+ optionIndex++;
800
+ this.focusedMultipleOptionIndex.set(optionIndex);
801
+ if (optionIndex > this.modelValue().length - 1) {
802
+ this.focusedMultipleOptionIndex.set(-1);
803
+ focus(this.inputEL()?.nativeElement);
804
+ }
805
+ }
806
+ onBackspaceKeyOnMultiple(event) {
807
+ if (this.focusedMultipleOptionIndex() !== -1) this.removeOption(event, this.focusedMultipleOptionIndex());
808
+ }
809
+ onOptionSelect(event, option, isHide = true) {
810
+ if (this.multiple()) {
811
+ if (this.inputEL()?.nativeElement) this.inputEL().nativeElement.value = "";
812
+ if (!this.isSelected(option)) this.updateModel([...this.modelValue() || [], option]);
813
+ } else this.updateModel(option);
814
+ if (event) this.onSelect.emit({
815
+ originalEvent: event,
816
+ value: option
817
+ });
818
+ if (isHide) this.hide(true);
819
+ }
820
+ onOptionMouseEnter(event, index) {
821
+ if (this.focusOnHover()) this.changeFocusedOptionIndex(event, index);
822
+ }
823
+ search(event, query, source) {
824
+ if (query === void 0 || query === null) return;
825
+ if (source === "input" && query.trim().length === 0) return;
826
+ this.loading.set(true);
827
+ this.completeMethod.emit({
828
+ originalEvent: event,
829
+ query
830
+ });
831
+ }
832
+ removeOption(event, index) {
833
+ event.stopPropagation();
834
+ const removedOption = this.modelValue()[index];
835
+ const value = this.modelValue().filter((_, i) => i !== index);
836
+ this.updateModel(value);
837
+ this.onUnselect.emit({
838
+ originalEvent: event,
839
+ value: removedOption
840
+ });
841
+ focus(this.inputEL()?.nativeElement);
842
+ }
843
+ updateModel(options) {
844
+ let value = null;
845
+ if (options) value = this.multiple() ? options.map((option) => this.getOptionValue(option)) : this.getOptionValue(options);
846
+ this.value = value;
847
+ this.writeModelValue(options);
848
+ this.onModelChange(value);
849
+ this.updateInputValue();
850
+ }
851
+ updateInputValue() {
852
+ const inputEl = this.inputEL();
853
+ if (inputEl && inputEl.nativeElement) {
854
+ if (!this.multiple()) inputEl.nativeElement.value = this.inputValue();
855
+ else inputEl.nativeElement.value = "";
856
+ }
857
+ }
858
+ updateInputWithForceSelection(event) {
859
+ const input = this.inputEL()?.nativeElement;
860
+ const inputCleared = !input?.value && isNotEmpty(this.modelValue());
861
+ if (!this.forceSelection() || this.overlayVisible() || !input?.value && !inputCleared) return;
862
+ const _minLength = this.minQueryLength();
863
+ if (!inputCleared && _minLength != null && input.value.length < _minLength) return;
864
+ const matchedOption = this.visibleOptions()?.find((option) => this.isOptionMatched(option, input.value));
865
+ if (!matchedOption) {
866
+ input.value = "";
867
+ if (!this.multiple()) this.clear();
868
+ return;
869
+ }
870
+ if (matchedOption && !this.isSelected(matchedOption)) this.onOptionSelect(event, matchedOption);
871
+ }
872
+ autoUpdateModel() {
873
+ if ((this.selectOnFocus() || this.autoHighlight()) && this.autoOptionFocus() && !this.hasSelectedOption()) {
874
+ const focusedOptionIndex = this.findFirstFocusedOptionIndex();
875
+ this.focusedOptionIndex.set(focusedOptionIndex);
876
+ this.onOptionSelect(null, this.visibleOptions()[this.focusedOptionIndex()], false);
877
+ }
878
+ }
879
+ scrollInView(index = -1) {
880
+ const id = index !== -1 ? `${this.$id()}_${index}` : this.focusedOptionId;
881
+ const itemsViewChild = this.itemsViewChild();
882
+ if (itemsViewChild && itemsViewChild.nativeElement) {
883
+ const element = findSingle(itemsViewChild.nativeElement, `li[id="${id}"]`);
884
+ if (element) {
885
+ if (element.scrollIntoView) element.scrollIntoView({
886
+ block: "nearest",
887
+ inline: "nearest"
888
+ });
889
+ } else if (!this.virtualScrollerDisabled) setTimeout(() => {
890
+ if (this.virtualScroll()) this.scroller()?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
891
+ }, 0);
892
+ }
893
+ }
894
+ changeFocusedOptionIndex(event, index) {
895
+ if (this.focusedOptionIndex() !== index) {
896
+ this.focusedOptionIndex.set(index);
897
+ this.scrollInView();
898
+ if (this.selectOnFocus()) this.onOptionSelect(event, this.visibleOptions()[index], false);
899
+ }
900
+ }
901
+ show(isFocus = false) {
902
+ this.dirty = true;
903
+ this.overlayVisible.set(true);
904
+ const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
905
+ this.focusedOptionIndex.set(focusedOptionIndex);
906
+ if (isFocus) focus(this.inputEL()?.nativeElement);
907
+ if (isFocus) focus(this.inputEL()?.nativeElement);
908
+ this.onShow.emit();
909
+ }
910
+ hide(isFocus = false) {
911
+ const _hide = () => {
912
+ this.dirty = isFocus;
913
+ this.overlayVisible.set(false);
914
+ this.focusedOptionIndex.set(-1);
915
+ if (isFocus) focus(this.inputEL()?.nativeElement);
916
+ this.onHide.emit();
917
+ this.updateInputWithForceSelection(null);
918
+ };
919
+ if (this.timeout) clearTimeout(this.timeout);
920
+ this.timeout = setTimeout(() => {
921
+ _hide();
922
+ }, 0);
923
+ }
924
+ clear() {
925
+ this.updateModel(null);
926
+ if (this.inputEL()?.nativeElement) this.inputEL().nativeElement.value = "";
927
+ this.onClear.emit();
928
+ if (this.overlayVisible()) this.hide();
929
+ }
930
+ hasSelectedOption() {
931
+ return isNotEmpty(this.modelValue());
932
+ }
933
+ getAriaPosInset(index) {
934
+ return (this.optionGroupLabel() ? index - this.visibleOptions().slice(0, index).filter((option) => this.isOptionGroup(option)).length : index) + 1;
935
+ }
936
+ getOptionLabel(option) {
937
+ const optionLabel = this.optionLabel();
938
+ return optionLabel ? resolveFieldData(option, optionLabel) : option && option.label != void 0 ? option.label : option;
939
+ }
940
+ getOptionValue(option) {
941
+ const optionValue = this.optionValue();
942
+ return optionValue ? resolveFieldData(option, optionValue) : option && option.value != void 0 ? option.value : option;
943
+ }
944
+ getChipTrackKey(option) {
945
+ return option != null && typeof option === "object" ? this.getOptionValue(option) : option;
946
+ }
947
+ getOptionIndex(index, scrollerOptions) {
948
+ return this.virtualScrollerDisabled ? index : scrollerOptions && scrollerOptions.getItemOptions(index)["index"];
949
+ }
950
+ getOptionGroupLabel(optionGroup) {
951
+ const optionGroupLabel = this.optionGroupLabel();
952
+ return optionGroupLabel ? resolveFieldData(optionGroup, optionGroupLabel) : optionGroup && optionGroup.label != void 0 ? optionGroup.label : optionGroup;
953
+ }
954
+ getOptionGroupChildren(optionGroup) {
955
+ const optionGroupChildren = this.optionGroupChildren();
956
+ return optionGroupChildren ? resolveFieldData(optionGroup, optionGroupChildren) : optionGroup.items;
957
+ }
958
+ getPTOptions(option, scrollerOptions, index, key) {
959
+ return this.ptm(key, { context: {
960
+ option,
961
+ index: this.getOptionIndex(index, scrollerOptions),
962
+ selected: this.isSelected(option),
963
+ focused: this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions),
964
+ disabled: this.isOptionDisabled(option)
965
+ } });
966
+ }
967
+ getSelectedItemContext(option) {
968
+ return { $implicit: option };
969
+ }
970
+ getRemoveIconContext(index) {
971
+ return {
972
+ removeCallback: this.removeOption.bind(this),
973
+ index,
974
+ class: this.cx("chipIcon")
975
+ };
976
+ }
977
+ getGroupContext(optionGroup) {
978
+ return { $implicit: optionGroup };
979
+ }
980
+ getItemContext(option, index, scrollerOptions) {
981
+ return {
982
+ $implicit: option,
983
+ index: scrollerOptions.getOptions ? scrollerOptions.getOptions(index) : index
984
+ };
985
+ }
986
+ getLoaderContext(scrollerOptions) {
987
+ return { options: scrollerOptions };
988
+ }
989
+ getBuildInItemsContext(items, scrollerOptions) {
990
+ return {
991
+ $implicit: items,
992
+ options: scrollerOptions
993
+ };
994
+ }
995
+ shouldShowEmptyMessage(items) {
996
+ return !items || items.length === 0 && this.showEmptyMessage();
997
+ }
998
+ getItemStyle(scrollerOptions) {
999
+ return { height: scrollerOptions.itemSize + "px" };
1000
+ }
1001
+ getChipLabel(option) {
1002
+ return !this.selectedItemTemplate() && this.getOptionLabel(option);
1003
+ }
1004
+ getMultipleOptionId(index) {
1005
+ return this.$id() + "_multiple_option_" + index;
1006
+ }
1007
+ getOptionElementId(index, scrollerOptions) {
1008
+ return this.$id() + "_" + this.getOptionIndex(index, scrollerOptions);
1009
+ }
1010
+ isOptionFocused(index, scrollerOptions) {
1011
+ return this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions);
1012
+ }
1013
+ getAriaControls() {
1014
+ return this.overlayVisible() ? this.$listId() : null;
1015
+ }
1016
+ getAriaActiveDescendant() {
1017
+ return this.focused() ? this.focusedOptionId : void 0;
1018
+ }
1019
+ getMultipleAriaActiveDescendant() {
1020
+ return this.focused() ? this.focusedMultipleOptionId : void 0;
1021
+ }
1022
+ getMultiplePlaceholder() {
1023
+ return !this.$filled() ? this.placeholder() : null;
1024
+ }
1025
+ getListContainerMaxHeight() {
1026
+ return this.virtualScroll() ? "auto" : this.scrollHeight();
1027
+ }
1028
+ onOverlayBeforeEnter() {
1029
+ this.itemsWrapper = findSingle(this.overlayViewChild()?.overlayViewChild()?.nativeElement, this.virtualScroll() ? "[data-pc-name=\"virtualscroller\"]" : "[data-pc-name=\"pcoverlay\"]");
1030
+ if (this.virtualScroll()) {
1031
+ this.scroller()?.setContentEl(this.itemsViewChild()?.nativeElement);
1032
+ this.scroller()?.viewInit();
1033
+ }
1034
+ if (this.visibleOptions() && this.visibleOptions().length) {
1035
+ if (this.virtualScroll()) {
1036
+ const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
1037
+ if (selectedIndex !== -1) this.scroller()?.scrollToIndex(selectedIndex);
1038
+ } else {
1039
+ let selectedListItem = findSingle(this.itemsWrapper, "[data-pc-section=\"option\"][data-p-selected=\"true\"]");
1040
+ if (selectedListItem) selectedListItem.scrollIntoView({
1041
+ block: "nearest",
1042
+ inline: "center"
1043
+ });
1044
+ }
1045
+ }
1046
+ }
1047
+ get containerDataP() {
1048
+ return this.cn({ fluid: this.hasFluid });
1049
+ }
1050
+ get overlayDataP() {
1051
+ return this.cn({ [`overlay-${this.$appendTo()}`]: true });
1052
+ }
1053
+ get inputMultipleDataP() {
1054
+ return this.cn({
1055
+ invalid: this.invalid(),
1056
+ disabled: this.$disabled(),
1057
+ focus: this.focused(),
1058
+ fluid: this.hasFluid,
1059
+ filled: this.$variant() === "filled",
1060
+ empty: !this.$filled(),
1061
+ [this.size()]: this.size()
1062
+ });
1063
+ }
1064
+ writeControlValue(value, setModelValue) {
1065
+ if (this.multiple()) {
1066
+ const resolved = (value || []).map((val) => {
1067
+ return this.visibleOptions().find((option) => equals(val, option, this.equalityKey())) ?? val;
1068
+ });
1069
+ setModelValue(isEmpty(value) ? value : resolved);
1070
+ } else {
1071
+ const option = this.visibleOptions().find((option) => equals(value, option, this.equalityKey()));
1072
+ setModelValue(isEmpty(option) ? value : option);
1073
+ }
1074
+ this.value = value;
1075
+ this.updateInputValue();
1076
+ }
1077
+ onDestroy() {
1078
+ if (this.searchTimeout) clearTimeout(this.searchTimeout);
1079
+ if (this.timeout) clearTimeout(this.timeout);
1080
+ if (this.scrollHandler) {
1081
+ this.scrollHandler.destroy();
1082
+ this.scrollHandler = null;
1083
+ }
1084
+ }
1085
+ static ɵfac = i0.ɵɵngDeclareFactory({
1086
+ minVersion: "12.0.0",
1087
+ version: "22.2.0",
1088
+ ngImport: i0,
1089
+ type: AutoComplete,
1090
+ deps: [],
1091
+ target: i0.ɵɵFactoryTarget.Component
1092
+ });
1093
+ static ɵcmp = i0.ɵɵngDeclareComponent({
1094
+ minVersion: "17.0.0",
1095
+ version: "22.2.0",
1096
+ type: AutoComplete,
1097
+ isStandalone: true,
1098
+ selector: "p-autocomplete, p-auto-complete",
1099
+ inputs: {
1100
+ minQueryLength: {
1101
+ classPropertyName: "minQueryLength",
1102
+ publicName: "minQueryLength",
1103
+ isSignal: true,
1104
+ isRequired: false,
1105
+ transformFunction: null
1106
+ },
1107
+ delay: {
1108
+ classPropertyName: "delay",
1109
+ publicName: "delay",
1110
+ isSignal: true,
1111
+ isRequired: false,
1112
+ transformFunction: null
1113
+ },
1114
+ panelStyle: {
1115
+ classPropertyName: "panelStyle",
1116
+ publicName: "panelStyle",
1117
+ isSignal: true,
1118
+ isRequired: false,
1119
+ transformFunction: null
1120
+ },
1121
+ panelStyleClass: {
1122
+ classPropertyName: "panelStyleClass",
1123
+ publicName: "panelStyleClass",
1124
+ isSignal: true,
1125
+ isRequired: false,
1126
+ transformFunction: null
1127
+ },
1128
+ inputStyle: {
1129
+ classPropertyName: "inputStyle",
1130
+ publicName: "inputStyle",
1131
+ isSignal: true,
1132
+ isRequired: false,
1133
+ transformFunction: null
1134
+ },
1135
+ inputId: {
1136
+ classPropertyName: "inputId",
1137
+ publicName: "inputId",
1138
+ isSignal: true,
1139
+ isRequired: false,
1140
+ transformFunction: null
1141
+ },
1142
+ inputStyleClass: {
1143
+ classPropertyName: "inputStyleClass",
1144
+ publicName: "inputStyleClass",
1145
+ isSignal: true,
1146
+ isRequired: false,
1147
+ transformFunction: null
1148
+ },
1149
+ placeholder: {
1150
+ classPropertyName: "placeholder",
1151
+ publicName: "placeholder",
1152
+ isSignal: true,
1153
+ isRequired: false,
1154
+ transformFunction: null
1155
+ },
1156
+ readonly: {
1157
+ classPropertyName: "readonly",
1158
+ publicName: "readonly",
1159
+ isSignal: true,
1160
+ isRequired: false,
1161
+ transformFunction: null
1162
+ },
1163
+ scrollHeight: {
1164
+ classPropertyName: "scrollHeight",
1165
+ publicName: "scrollHeight",
1166
+ isSignal: true,
1167
+ isRequired: false,
1168
+ transformFunction: null
1169
+ },
1170
+ lazy: {
1171
+ classPropertyName: "lazy",
1172
+ publicName: "lazy",
1173
+ isSignal: true,
1174
+ isRequired: false,
1175
+ transformFunction: null
1176
+ },
1177
+ virtualScroll: {
1178
+ classPropertyName: "virtualScroll",
1179
+ publicName: "virtualScroll",
1180
+ isSignal: true,
1181
+ isRequired: false,
1182
+ transformFunction: null
1183
+ },
1184
+ virtualScrollItemSize: {
1185
+ classPropertyName: "virtualScrollItemSize",
1186
+ publicName: "virtualScrollItemSize",
1187
+ isSignal: true,
1188
+ isRequired: false,
1189
+ transformFunction: null
1190
+ },
1191
+ virtualScrollOptions: {
1192
+ classPropertyName: "virtualScrollOptions",
1193
+ publicName: "virtualScrollOptions",
1194
+ isSignal: true,
1195
+ isRequired: false,
1196
+ transformFunction: null
1197
+ },
1198
+ autoHighlight: {
1199
+ classPropertyName: "autoHighlight",
1200
+ publicName: "autoHighlight",
1201
+ isSignal: true,
1202
+ isRequired: false,
1203
+ transformFunction: null
1204
+ },
1205
+ forceSelection: {
1206
+ classPropertyName: "forceSelection",
1207
+ publicName: "forceSelection",
1208
+ isSignal: true,
1209
+ isRequired: false,
1210
+ transformFunction: null
1211
+ },
1212
+ type: {
1213
+ classPropertyName: "type",
1214
+ publicName: "type",
1215
+ isSignal: true,
1216
+ isRequired: false,
1217
+ transformFunction: null
1218
+ },
1219
+ autoZIndex: {
1220
+ classPropertyName: "autoZIndex",
1221
+ publicName: "autoZIndex",
1222
+ isSignal: true,
1223
+ isRequired: false,
1224
+ transformFunction: null
1225
+ },
1226
+ baseZIndex: {
1227
+ classPropertyName: "baseZIndex",
1228
+ publicName: "baseZIndex",
1229
+ isSignal: true,
1230
+ isRequired: false,
1231
+ transformFunction: null
1232
+ },
1233
+ ariaLabel: {
1234
+ classPropertyName: "ariaLabel",
1235
+ publicName: "ariaLabel",
1236
+ isSignal: true,
1237
+ isRequired: false,
1238
+ transformFunction: null
1239
+ },
1240
+ dropdownAriaLabel: {
1241
+ classPropertyName: "dropdownAriaLabel",
1242
+ publicName: "dropdownAriaLabel",
1243
+ isSignal: true,
1244
+ isRequired: false,
1245
+ transformFunction: null
1246
+ },
1247
+ ariaLabelledBy: {
1248
+ classPropertyName: "ariaLabelledBy",
1249
+ publicName: "ariaLabelledBy",
1250
+ isSignal: true,
1251
+ isRequired: false,
1252
+ transformFunction: null
1253
+ },
1254
+ dropdownIcon: {
1255
+ classPropertyName: "dropdownIcon",
1256
+ publicName: "dropdownIcon",
1257
+ isSignal: true,
1258
+ isRequired: false,
1259
+ transformFunction: null
1260
+ },
1261
+ unique: {
1262
+ classPropertyName: "unique",
1263
+ publicName: "unique",
1264
+ isSignal: true,
1265
+ isRequired: false,
1266
+ transformFunction: null
1267
+ },
1268
+ group: {
1269
+ classPropertyName: "group",
1270
+ publicName: "group",
1271
+ isSignal: true,
1272
+ isRequired: false,
1273
+ transformFunction: null
1274
+ },
1275
+ completeOnFocus: {
1276
+ classPropertyName: "completeOnFocus",
1277
+ publicName: "completeOnFocus",
1278
+ isSignal: true,
1279
+ isRequired: false,
1280
+ transformFunction: null
1281
+ },
1282
+ showClear: {
1283
+ classPropertyName: "showClear",
1284
+ publicName: "showClear",
1285
+ isSignal: true,
1286
+ isRequired: false,
1287
+ transformFunction: null
1288
+ },
1289
+ dropdown: {
1290
+ classPropertyName: "dropdown",
1291
+ publicName: "dropdown",
1292
+ isSignal: true,
1293
+ isRequired: false,
1294
+ transformFunction: null
1295
+ },
1296
+ showEmptyMessage: {
1297
+ classPropertyName: "showEmptyMessage",
1298
+ publicName: "showEmptyMessage",
1299
+ isSignal: true,
1300
+ isRequired: false,
1301
+ transformFunction: null
1302
+ },
1303
+ dropdownMode: {
1304
+ classPropertyName: "dropdownMode",
1305
+ publicName: "dropdownMode",
1306
+ isSignal: true,
1307
+ isRequired: false,
1308
+ transformFunction: null
1309
+ },
1310
+ multiple: {
1311
+ classPropertyName: "multiple",
1312
+ publicName: "multiple",
1313
+ isSignal: true,
1314
+ isRequired: false,
1315
+ transformFunction: null
1316
+ },
1317
+ addOnTab: {
1318
+ classPropertyName: "addOnTab",
1319
+ publicName: "addOnTab",
1320
+ isSignal: true,
1321
+ isRequired: false,
1322
+ transformFunction: null
1323
+ },
1324
+ tabindex: {
1325
+ classPropertyName: "tabindex",
1326
+ publicName: "tabindex",
1327
+ isSignal: true,
1328
+ isRequired: false,
1329
+ transformFunction: null
1330
+ },
1331
+ dataKey: {
1332
+ classPropertyName: "dataKey",
1333
+ publicName: "dataKey",
1334
+ isSignal: true,
1335
+ isRequired: false,
1336
+ transformFunction: null
1337
+ },
1338
+ emptyMessage: {
1339
+ classPropertyName: "emptyMessage",
1340
+ publicName: "emptyMessage",
1341
+ isSignal: true,
1342
+ isRequired: false,
1343
+ transformFunction: null
1344
+ },
1345
+ autofocus: {
1346
+ classPropertyName: "autofocus",
1347
+ publicName: "autofocus",
1348
+ isSignal: true,
1349
+ isRequired: false,
1350
+ transformFunction: null
1351
+ },
1352
+ autocomplete: {
1353
+ classPropertyName: "autocomplete",
1354
+ publicName: "autocomplete",
1355
+ isSignal: true,
1356
+ isRequired: false,
1357
+ transformFunction: null
1358
+ },
1359
+ optionGroupChildren: {
1360
+ classPropertyName: "optionGroupChildren",
1361
+ publicName: "optionGroupChildren",
1362
+ isSignal: true,
1363
+ isRequired: false,
1364
+ transformFunction: null
1365
+ },
1366
+ optionGroupLabel: {
1367
+ classPropertyName: "optionGroupLabel",
1368
+ publicName: "optionGroupLabel",
1369
+ isSignal: true,
1370
+ isRequired: false,
1371
+ transformFunction: null
1372
+ },
1373
+ overlayOptions: {
1374
+ classPropertyName: "overlayOptions",
1375
+ publicName: "overlayOptions",
1376
+ isSignal: true,
1377
+ isRequired: false,
1378
+ transformFunction: null
1379
+ },
1380
+ suggestions: {
1381
+ classPropertyName: "suggestions",
1382
+ publicName: "suggestions",
1383
+ isSignal: true,
1384
+ isRequired: false,
1385
+ transformFunction: null
1386
+ },
1387
+ optionLabel: {
1388
+ classPropertyName: "optionLabel",
1389
+ publicName: "optionLabel",
1390
+ isSignal: true,
1391
+ isRequired: false,
1392
+ transformFunction: null
1393
+ },
1394
+ optionValue: {
1395
+ classPropertyName: "optionValue",
1396
+ publicName: "optionValue",
1397
+ isSignal: true,
1398
+ isRequired: false,
1399
+ transformFunction: null
1400
+ },
1401
+ id: {
1402
+ classPropertyName: "id",
1403
+ publicName: "id",
1404
+ isSignal: true,
1405
+ isRequired: false,
1406
+ transformFunction: null
1407
+ },
1408
+ searchMessage: {
1409
+ classPropertyName: "searchMessage",
1410
+ publicName: "searchMessage",
1411
+ isSignal: true,
1412
+ isRequired: false,
1413
+ transformFunction: null
1414
+ },
1415
+ emptySelectionMessage: {
1416
+ classPropertyName: "emptySelectionMessage",
1417
+ publicName: "emptySelectionMessage",
1418
+ isSignal: true,
1419
+ isRequired: false,
1420
+ transformFunction: null
1421
+ },
1422
+ selectionMessage: {
1423
+ classPropertyName: "selectionMessage",
1424
+ publicName: "selectionMessage",
1425
+ isSignal: true,
1426
+ isRequired: false,
1427
+ transformFunction: null
1428
+ },
1429
+ autoOptionFocus: {
1430
+ classPropertyName: "autoOptionFocus",
1431
+ publicName: "autoOptionFocus",
1432
+ isSignal: true,
1433
+ isRequired: false,
1434
+ transformFunction: null
1435
+ },
1436
+ selectOnFocus: {
1437
+ classPropertyName: "selectOnFocus",
1438
+ publicName: "selectOnFocus",
1439
+ isSignal: true,
1440
+ isRequired: false,
1441
+ transformFunction: null
1442
+ },
1443
+ searchLocale: {
1444
+ classPropertyName: "searchLocale",
1445
+ publicName: "searchLocale",
1446
+ isSignal: true,
1447
+ isRequired: false,
1448
+ transformFunction: null
1449
+ },
1450
+ optionDisabled: {
1451
+ classPropertyName: "optionDisabled",
1452
+ publicName: "optionDisabled",
1453
+ isSignal: true,
1454
+ isRequired: false,
1455
+ transformFunction: null
1456
+ },
1457
+ focusOnHover: {
1458
+ classPropertyName: "focusOnHover",
1459
+ publicName: "focusOnHover",
1460
+ isSignal: true,
1461
+ isRequired: false,
1462
+ transformFunction: null
1463
+ },
1464
+ typeahead: {
1465
+ classPropertyName: "typeahead",
1466
+ publicName: "typeahead",
1467
+ isSignal: true,
1468
+ isRequired: false,
1469
+ transformFunction: null
1470
+ },
1471
+ addOnBlur: {
1472
+ classPropertyName: "addOnBlur",
1473
+ publicName: "addOnBlur",
1474
+ isSignal: true,
1475
+ isRequired: false,
1476
+ transformFunction: null
1477
+ },
1478
+ separator: {
1479
+ classPropertyName: "separator",
1480
+ publicName: "separator",
1481
+ isSignal: true,
1482
+ isRequired: false,
1483
+ transformFunction: null
1484
+ },
1485
+ appendTo: {
1486
+ classPropertyName: "appendTo",
1487
+ publicName: "appendTo",
1488
+ isSignal: true,
1489
+ isRequired: false,
1490
+ transformFunction: null
1491
+ },
1492
+ motionOptions: {
1493
+ classPropertyName: "motionOptions",
1494
+ publicName: "motionOptions",
1495
+ isSignal: true,
1496
+ isRequired: false,
1497
+ transformFunction: null
1498
+ }
1499
+ },
1500
+ outputs: {
1501
+ completeMethod: "completeMethod",
1502
+ onSelect: "onSelect",
1503
+ onUnselect: "onUnselect",
1504
+ onAdd: "onAdd",
1505
+ onFocus: "onFocus",
1506
+ onBlur: "onBlur",
1507
+ onDropdownClick: "onDropdownClick",
1508
+ onClear: "onClear",
1509
+ onInputKeydown: "onInputKeydown",
1510
+ onKeyUp: "onKeyUp",
1511
+ onShow: "onShow",
1512
+ onHide: "onHide",
1513
+ onLazyLoad: "onLazyLoad"
1514
+ },
1515
+ host: {
1516
+ listeners: { "click": "onHostClick($event)" },
1517
+ properties: {
1518
+ "class": "cx('root')",
1519
+ "style": "sx('root')",
1520
+ "attr.data-p": "containerDataP"
1521
+ }
1522
+ },
1523
+ providers: [
1524
+ AUTOCOMPLETE_VALUE_ACCESSOR,
1525
+ AutoCompleteStyle,
1526
+ {
1527
+ provide: AUTOCOMPLETE_INSTANCE,
1528
+ useExisting: AutoComplete
1529
+ },
1530
+ {
1531
+ provide: PARENT_INSTANCE,
1532
+ useExisting: AutoComplete
1533
+ }
1534
+ ],
1535
+ queries: [
1536
+ {
1537
+ propertyName: "itemTemplate",
1538
+ first: true,
1539
+ predicate: ["item"],
1540
+ isSignal: true
1541
+ },
1542
+ {
1543
+ propertyName: "emptyTemplate",
1544
+ first: true,
1545
+ predicate: ["empty"],
1546
+ isSignal: true
1547
+ },
1548
+ {
1549
+ propertyName: "headerTemplate",
1550
+ first: true,
1551
+ predicate: ["header"],
1552
+ isSignal: true
1553
+ },
1554
+ {
1555
+ propertyName: "footerTemplate",
1556
+ first: true,
1557
+ predicate: ["footer"],
1558
+ isSignal: true
1559
+ },
1560
+ {
1561
+ propertyName: "selectedItemTemplate",
1562
+ first: true,
1563
+ predicate: ["selecteditem"],
1564
+ isSignal: true
1565
+ },
1566
+ {
1567
+ propertyName: "groupTemplate",
1568
+ first: true,
1569
+ predicate: ["group"],
1570
+ isSignal: true
1571
+ },
1572
+ {
1573
+ propertyName: "loaderTemplate",
1574
+ first: true,
1575
+ predicate: ["loader"],
1576
+ isSignal: true
1577
+ },
1578
+ {
1579
+ propertyName: "removeIconTemplate",
1580
+ first: true,
1581
+ predicate: ["removeicon"],
1582
+ isSignal: true
1583
+ },
1584
+ {
1585
+ propertyName: "loadingIconTemplate",
1586
+ first: true,
1587
+ predicate: ["loadingicon"],
1588
+ isSignal: true
1589
+ },
1590
+ {
1591
+ propertyName: "clearIconTemplate",
1592
+ first: true,
1593
+ predicate: ["clearicon"],
1594
+ isSignal: true
1595
+ },
1596
+ {
1597
+ propertyName: "dropdownIconTemplate",
1598
+ first: true,
1599
+ predicate: ["dropdownicon"],
1600
+ isSignal: true
1601
+ }
1602
+ ],
1603
+ viewQueries: [
1604
+ {
1605
+ propertyName: "inputEL",
1606
+ first: true,
1607
+ predicate: ["focusInput"],
1608
+ descendants: true,
1609
+ isSignal: true
1610
+ },
1611
+ {
1612
+ propertyName: "multiInputEl",
1613
+ first: true,
1614
+ predicate: ["multiIn"],
1615
+ descendants: true,
1616
+ isSignal: true
1617
+ },
1618
+ {
1619
+ propertyName: "multiContainerEL",
1620
+ first: true,
1621
+ predicate: ["multiContainer"],
1622
+ descendants: true,
1623
+ isSignal: true
1624
+ },
1625
+ {
1626
+ propertyName: "dropdownButton",
1627
+ first: true,
1628
+ predicate: ["ddBtn"],
1629
+ descendants: true,
1630
+ isSignal: true
1631
+ },
1632
+ {
1633
+ propertyName: "itemsViewChild",
1634
+ first: true,
1635
+ predicate: ["items"],
1636
+ descendants: true,
1637
+ isSignal: true
1638
+ },
1639
+ {
1640
+ propertyName: "scroller",
1641
+ first: true,
1642
+ predicate: ["scroller"],
1643
+ descendants: true,
1644
+ isSignal: true
1645
+ },
1646
+ {
1647
+ propertyName: "overlayViewChild",
1648
+ first: true,
1649
+ predicate: ["overlay"],
1650
+ descendants: true,
1651
+ isSignal: true
1652
+ }
1653
+ ],
1654
+ usesInheritance: true,
1655
+ hostDirectives: [{ directive: i1.Bind }],
1656
+ ngImport: i0,
1657
+ template: `
1597
1658
  @if (!multiple()) {
1598
1659
  <input
1599
1660
  #focusInput
@@ -1864,15 +1925,202 @@ class AutoComplete extends BaseInput {
1864
1925
  </span>
1865
1926
  </ng-template>
1866
1927
  </p-overlay>
1867
- `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: Overlay, selector: "p-overlay", inputs: ["hostName", "visible", "mode", "style", "styleClass", "contentStyle", "contentStyleClass", "target", "autoZIndex", "baseZIndex", "listener", "responsive", "options", "appendTo", "inline", "motionOptions", "hostAttrSelector"], outputs: ["visibleChange", "onBeforeShow", "onShow", "onBeforeHide", "onHide", "onAnimationStart", "onAnimationDone", "onBeforeEnter", "onEnter", "onAfterEnter", "onBeforeLeave", "onLeave", "onAfterLeave"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "component", type: Scroller, selector: "p-scroller, p-virtualscroller, p-virtual-scroller", inputs: ["hostName", "id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "component", type: TimesCircle, selector: "svg[data-p-icon=\"times-circle\"]" }, { kind: "component", type: Spinner, selector: "svg[data-p-icon=\"spinner\"]" }, { kind: "component", type: ChevronDown, selector: "svg[data-p-icon=\"chevron-down\"]" }, { kind: "component", type: Chip, selector: "p-chip", inputs: ["label", "icon", "image", "alt", "disabled", "removable", "removeIcon", "chipProps"], outputs: ["onRemove", "onImageError"] }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: Times, selector: "svg[data-p-icon=\"times\"]" }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1868
- }
1869
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoComplete, decorators: [{
1870
- type: Component,
1871
- args: [{
1872
- selector: 'p-autocomplete, p-auto-complete',
1873
- standalone: true,
1874
- imports: [NgTemplateOutlet, Overlay, InputText, Ripple, Scroller, AutoFocus, TimesCircle, Spinner, ChevronDown, Chip, SharedModule, Times, BindModule],
1875
- template: `
1928
+ `,
1929
+ isInline: true,
1930
+ dependencies: [
1931
+ {
1932
+ kind: "directive",
1933
+ type: NgTemplateOutlet,
1934
+ selector: "[ngTemplateOutlet]",
1935
+ inputs: [
1936
+ "ngTemplateOutletContext",
1937
+ "ngTemplateOutlet",
1938
+ "ngTemplateOutletInjector"
1939
+ ]
1940
+ },
1941
+ {
1942
+ kind: "component",
1943
+ type: Overlay,
1944
+ selector: "p-overlay",
1945
+ inputs: [
1946
+ "hostName",
1947
+ "visible",
1948
+ "mode",
1949
+ "style",
1950
+ "styleClass",
1951
+ "contentStyle",
1952
+ "contentStyleClass",
1953
+ "target",
1954
+ "autoZIndex",
1955
+ "baseZIndex",
1956
+ "listener",
1957
+ "responsive",
1958
+ "options",
1959
+ "appendTo",
1960
+ "inline",
1961
+ "motionOptions",
1962
+ "hostAttrSelector"
1963
+ ],
1964
+ outputs: [
1965
+ "visibleChange",
1966
+ "onBeforeShow",
1967
+ "onShow",
1968
+ "onBeforeHide",
1969
+ "onHide",
1970
+ "onAnimationStart",
1971
+ "onAnimationDone",
1972
+ "onBeforeEnter",
1973
+ "onEnter",
1974
+ "onAfterEnter",
1975
+ "onBeforeLeave",
1976
+ "onLeave",
1977
+ "onAfterLeave"
1978
+ ]
1979
+ },
1980
+ {
1981
+ kind: "directive",
1982
+ type: InputText,
1983
+ selector: "[pInputText]",
1984
+ inputs: [
1985
+ "hostName",
1986
+ "pInputTextPT",
1987
+ "pInputTextUnstyled",
1988
+ "pSize",
1989
+ "variant",
1990
+ "fluid",
1991
+ "invalid"
1992
+ ]
1993
+ },
1994
+ {
1995
+ kind: "directive",
1996
+ type: Ripple,
1997
+ selector: "[pRipple]"
1998
+ },
1999
+ {
2000
+ kind: "component",
2001
+ type: Scroller,
2002
+ selector: "p-scroller, p-virtualscroller, p-virtual-scroller",
2003
+ inputs: [
2004
+ "hostName",
2005
+ "id",
2006
+ "style",
2007
+ "styleClass",
2008
+ "tabindex",
2009
+ "items",
2010
+ "itemSize",
2011
+ "scrollHeight",
2012
+ "scrollWidth",
2013
+ "orientation",
2014
+ "step",
2015
+ "delay",
2016
+ "resizeDelay",
2017
+ "appendOnly",
2018
+ "inline",
2019
+ "lazy",
2020
+ "disabled",
2021
+ "loaderDisabled",
2022
+ "columns",
2023
+ "showSpacer",
2024
+ "showLoader",
2025
+ "numToleratedItems",
2026
+ "loading",
2027
+ "autoSize",
2028
+ "trackBy",
2029
+ "options"
2030
+ ],
2031
+ outputs: [
2032
+ "onLazyLoad",
2033
+ "onScroll",
2034
+ "onScrollIndexChange"
2035
+ ]
2036
+ },
2037
+ {
2038
+ kind: "directive",
2039
+ type: AutoFocus,
2040
+ selector: "[pAutoFocus]",
2041
+ inputs: ["pAutoFocus"]
2042
+ },
2043
+ {
2044
+ kind: "component",
2045
+ type: TimesCircle,
2046
+ selector: "svg[data-p-icon=\"times-circle\"]"
2047
+ },
2048
+ {
2049
+ kind: "component",
2050
+ type: Spinner,
2051
+ selector: "svg[data-p-icon=\"spinner\"]"
2052
+ },
2053
+ {
2054
+ kind: "component",
2055
+ type: ChevronDown,
2056
+ selector: "svg[data-p-icon=\"chevron-down\"]"
2057
+ },
2058
+ {
2059
+ kind: "component",
2060
+ type: Chip,
2061
+ selector: "p-chip",
2062
+ inputs: [
2063
+ "label",
2064
+ "icon",
2065
+ "image",
2066
+ "alt",
2067
+ "disabled",
2068
+ "removable",
2069
+ "removeIcon",
2070
+ "chipProps"
2071
+ ],
2072
+ outputs: ["onRemove", "onImageError"]
2073
+ },
2074
+ {
2075
+ kind: "ngmodule",
2076
+ type: SharedModule
2077
+ },
2078
+ {
2079
+ kind: "component",
2080
+ type: Times,
2081
+ selector: "svg[data-p-icon=\"times\"]"
2082
+ },
2083
+ {
2084
+ kind: "ngmodule",
2085
+ type: BindModule
2086
+ },
2087
+ {
2088
+ kind: "directive",
2089
+ type: i1.Bind,
2090
+ selector: "[pBind]",
2091
+ inputs: ["pBind"]
2092
+ }
2093
+ ],
2094
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
2095
+ encapsulation: i0.ViewEncapsulation.None
2096
+ });
2097
+ };
2098
+ i0.ɵɵngDeclareClassMetadata({
2099
+ minVersion: "12.0.0",
2100
+ version: "22.2.0",
2101
+ ngImport: i0,
2102
+ type: AutoComplete,
2103
+ decorators: [{
2104
+ type: Component,
2105
+ args: [{
2106
+ selector: "p-autocomplete, p-auto-complete",
2107
+ standalone: true,
2108
+ imports: [
2109
+ NgTemplateOutlet,
2110
+ Overlay,
2111
+ InputText,
2112
+ Ripple,
2113
+ Scroller,
2114
+ AutoFocus,
2115
+ TimesCircle,
2116
+ Spinner,
2117
+ ChevronDown,
2118
+ Chip,
2119
+ SharedModule,
2120
+ Times,
2121
+ BindModule
2122
+ ],
2123
+ template: `
1876
2124
  @if (!multiple()) {
1877
2125
  <input
1878
2126
  #focusInput
@@ -2144,36 +2392,691 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImpor
2144
2392
  </ng-template>
2145
2393
  </p-overlay>
2146
2394
  `,
2147
- providers: [AUTOCOMPLETE_VALUE_ACCESSOR, AutoCompleteStyle, { provide: AUTOCOMPLETE_INSTANCE, useExisting: AutoComplete }, { provide: PARENT_INSTANCE, useExisting: AutoComplete }],
2148
- changeDetection: ChangeDetectionStrategy.OnPush,
2149
- encapsulation: ViewEncapsulation.None,
2150
- host: {
2151
- '[class]': "cx('root')",
2152
- '[style]': "sx('root')",
2153
- '[attr.data-p]': 'containerDataP'
2154
- },
2155
- hostDirectives: [Bind]
2156
- }]
2157
- }], ctorParameters: () => [], propDecorators: { minQueryLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "minQueryLength", required: false }] }], delay: [{ type: i0.Input, args: [{ isSignal: true, alias: "delay", required: false }] }], panelStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "panelStyle", required: false }] }], panelStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "panelStyleClass", required: false }] }], inputStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputStyle", required: false }] }], inputId: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputId", required: false }] }], inputStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputStyleClass", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], scrollHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollHeight", required: false }] }], lazy: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazy", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], virtualScrollItemSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScrollItemSize", required: false }] }], virtualScrollOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScrollOptions", required: false }] }], autoHighlight: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoHighlight", required: false }] }], forceSelection: [{ type: i0.Input, args: [{ isSignal: true, alias: "forceSelection", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], autoZIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoZIndex", required: false }] }], baseZIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "baseZIndex", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], dropdownAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownAriaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], dropdownIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownIcon", required: false }] }], unique: [{ type: i0.Input, args: [{ isSignal: true, alias: "unique", required: false }] }], group: [{ type: i0.Input, args: [{ isSignal: true, alias: "group", required: false }] }], completeOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "completeOnFocus", required: false }] }], showClear: [{ type: i0.Input, args: [{ isSignal: true, alias: "showClear", required: false }] }], dropdown: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdown", required: false }] }], showEmptyMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "showEmptyMessage", required: false }] }], dropdownMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownMode", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], addOnTab: [{ type: i0.Input, args: [{ isSignal: true, alias: "addOnTab", required: false }] }], tabindex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabindex", required: false }] }], dataKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "dataKey", required: false }] }], emptyMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptyMessage", required: false }] }], autofocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autofocus", required: false }] }], autocomplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocomplete", required: false }] }], optionGroupChildren: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionGroupChildren", required: false }] }], optionGroupLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionGroupLabel", required: false }] }], overlayOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "overlayOptions", required: false }] }], suggestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "suggestions", required: false }] }], optionLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionLabel", required: false }] }], optionValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionValue", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], searchMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchMessage", required: false }] }], emptySelectionMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptySelectionMessage", required: false }] }], selectionMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectionMessage", required: false }] }], autoOptionFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoOptionFocus", required: false }] }], selectOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectOnFocus", required: false }] }], searchLocale: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchLocale", required: false }] }], optionDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionDisabled", required: false }] }], focusOnHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusOnHover", required: false }] }], typeahead: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeahead", required: false }] }], addOnBlur: [{ type: i0.Input, args: [{ isSignal: true, alias: "addOnBlur", required: false }] }], separator: [{ type: i0.Input, args: [{ isSignal: true, alias: "separator", required: false }] }], appendTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "appendTo", required: false }] }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], completeMethod: [{ type: i0.Output, args: ["completeMethod"] }], onSelect: [{ type: i0.Output, args: ["onSelect"] }], onUnselect: [{ type: i0.Output, args: ["onUnselect"] }], onAdd: [{ type: i0.Output, args: ["onAdd"] }], onFocus: [{ type: i0.Output, args: ["onFocus"] }], onBlur: [{ type: i0.Output, args: ["onBlur"] }], onDropdownClick: [{ type: i0.Output, args: ["onDropdownClick"] }], onClear: [{ type: i0.Output, args: ["onClear"] }], onInputKeydown: [{ type: i0.Output, args: ["onInputKeydown"] }], onKeyUp: [{ type: i0.Output, args: ["onKeyUp"] }], onShow: [{ type: i0.Output, args: ["onShow"] }], onHide: [{ type: i0.Output, args: ["onHide"] }], onLazyLoad: [{ type: i0.Output, args: ["onLazyLoad"] }], inputEL: [{ type: i0.ViewChild, args: ['focusInput', { isSignal: true }] }], multiInputEl: [{ type: i0.ViewChild, args: ['multiIn', { isSignal: true }] }], multiContainerEL: [{ type: i0.ViewChild, args: ['multiContainer', { isSignal: true }] }], dropdownButton: [{ type: i0.ViewChild, args: ['ddBtn', { isSignal: true }] }], itemsViewChild: [{ type: i0.ViewChild, args: ['items', { isSignal: true }] }], scroller: [{ type: i0.ViewChild, args: ['scroller', { isSignal: true }] }], overlayViewChild: [{ type: i0.ViewChild, args: ['overlay', { isSignal: true }] }], itemTemplate: [{ type: i0.ContentChild, args: ['item', { ...{ descendants: false }, isSignal: true }] }], emptyTemplate: [{ type: i0.ContentChild, args: ['empty', { ...{ descendants: false }, isSignal: true }] }], headerTemplate: [{ type: i0.ContentChild, args: ['header', { ...{ descendants: false }, isSignal: true }] }], footerTemplate: [{ type: i0.ContentChild, args: ['footer', { ...{ descendants: false }, isSignal: true }] }], selectedItemTemplate: [{ type: i0.ContentChild, args: ['selecteditem', { ...{ descendants: false }, isSignal: true }] }], groupTemplate: [{ type: i0.ContentChild, args: ['group', { ...{ descendants: false }, isSignal: true }] }], loaderTemplate: [{ type: i0.ContentChild, args: ['loader', { ...{ descendants: false }, isSignal: true }] }], removeIconTemplate: [{ type: i0.ContentChild, args: ['removeicon', { ...{ descendants: false }, isSignal: true }] }], loadingIconTemplate: [{ type: i0.ContentChild, args: ['loadingicon', { ...{ descendants: false }, isSignal: true }] }], clearIconTemplate: [{ type: i0.ContentChild, args: ['clearicon', { ...{ descendants: false }, isSignal: true }] }], dropdownIconTemplate: [{ type: i0.ContentChild, args: ['dropdownicon', { ...{ descendants: false }, isSignal: true }] }], onHostClick: [{
2158
- type: HostListener,
2159
- args: ['click', ['$event']]
2160
- }] } });
2161
- class AutoCompleteModule {
2162
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2163
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteModule, imports: [AutoComplete, SharedModule], exports: [AutoComplete, SharedModule] });
2164
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteModule, imports: [AutoComplete, SharedModule, SharedModule] });
2165
- }
2166
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: AutoCompleteModule, decorators: [{
2167
- type: NgModule,
2168
- args: [{
2169
- imports: [AutoComplete, SharedModule],
2170
- exports: [AutoComplete, SharedModule]
2171
- }]
2172
- }] });
2173
-
2174
- /**
2175
- * Generated bundle index. Do not edit.
2176
- */
2177
-
2395
+ providers: [
2396
+ AUTOCOMPLETE_VALUE_ACCESSOR,
2397
+ AutoCompleteStyle,
2398
+ {
2399
+ provide: AUTOCOMPLETE_INSTANCE,
2400
+ useExisting: AutoComplete
2401
+ },
2402
+ {
2403
+ provide: PARENT_INSTANCE,
2404
+ useExisting: AutoComplete
2405
+ }
2406
+ ],
2407
+ changeDetection: ChangeDetectionStrategy.OnPush,
2408
+ encapsulation: ViewEncapsulation.None,
2409
+ host: {
2410
+ "[class]": "cx('root')",
2411
+ "[style]": "sx('root')",
2412
+ "[attr.data-p]": "containerDataP"
2413
+ },
2414
+ hostDirectives: [Bind]
2415
+ }]
2416
+ }],
2417
+ ctorParameters: () => [],
2418
+ propDecorators: {
2419
+ minQueryLength: [{
2420
+ type: i0.Input,
2421
+ args: [{
2422
+ isSignal: true,
2423
+ alias: "minQueryLength",
2424
+ required: false
2425
+ }]
2426
+ }],
2427
+ delay: [{
2428
+ type: i0.Input,
2429
+ args: [{
2430
+ isSignal: true,
2431
+ alias: "delay",
2432
+ required: false
2433
+ }]
2434
+ }],
2435
+ panelStyle: [{
2436
+ type: i0.Input,
2437
+ args: [{
2438
+ isSignal: true,
2439
+ alias: "panelStyle",
2440
+ required: false
2441
+ }]
2442
+ }],
2443
+ panelStyleClass: [{
2444
+ type: i0.Input,
2445
+ args: [{
2446
+ isSignal: true,
2447
+ alias: "panelStyleClass",
2448
+ required: false
2449
+ }]
2450
+ }],
2451
+ inputStyle: [{
2452
+ type: i0.Input,
2453
+ args: [{
2454
+ isSignal: true,
2455
+ alias: "inputStyle",
2456
+ required: false
2457
+ }]
2458
+ }],
2459
+ inputId: [{
2460
+ type: i0.Input,
2461
+ args: [{
2462
+ isSignal: true,
2463
+ alias: "inputId",
2464
+ required: false
2465
+ }]
2466
+ }],
2467
+ inputStyleClass: [{
2468
+ type: i0.Input,
2469
+ args: [{
2470
+ isSignal: true,
2471
+ alias: "inputStyleClass",
2472
+ required: false
2473
+ }]
2474
+ }],
2475
+ placeholder: [{
2476
+ type: i0.Input,
2477
+ args: [{
2478
+ isSignal: true,
2479
+ alias: "placeholder",
2480
+ required: false
2481
+ }]
2482
+ }],
2483
+ readonly: [{
2484
+ type: i0.Input,
2485
+ args: [{
2486
+ isSignal: true,
2487
+ alias: "readonly",
2488
+ required: false
2489
+ }]
2490
+ }],
2491
+ scrollHeight: [{
2492
+ type: i0.Input,
2493
+ args: [{
2494
+ isSignal: true,
2495
+ alias: "scrollHeight",
2496
+ required: false
2497
+ }]
2498
+ }],
2499
+ lazy: [{
2500
+ type: i0.Input,
2501
+ args: [{
2502
+ isSignal: true,
2503
+ alias: "lazy",
2504
+ required: false
2505
+ }]
2506
+ }],
2507
+ virtualScroll: [{
2508
+ type: i0.Input,
2509
+ args: [{
2510
+ isSignal: true,
2511
+ alias: "virtualScroll",
2512
+ required: false
2513
+ }]
2514
+ }],
2515
+ virtualScrollItemSize: [{
2516
+ type: i0.Input,
2517
+ args: [{
2518
+ isSignal: true,
2519
+ alias: "virtualScrollItemSize",
2520
+ required: false
2521
+ }]
2522
+ }],
2523
+ virtualScrollOptions: [{
2524
+ type: i0.Input,
2525
+ args: [{
2526
+ isSignal: true,
2527
+ alias: "virtualScrollOptions",
2528
+ required: false
2529
+ }]
2530
+ }],
2531
+ autoHighlight: [{
2532
+ type: i0.Input,
2533
+ args: [{
2534
+ isSignal: true,
2535
+ alias: "autoHighlight",
2536
+ required: false
2537
+ }]
2538
+ }],
2539
+ forceSelection: [{
2540
+ type: i0.Input,
2541
+ args: [{
2542
+ isSignal: true,
2543
+ alias: "forceSelection",
2544
+ required: false
2545
+ }]
2546
+ }],
2547
+ type: [{
2548
+ type: i0.Input,
2549
+ args: [{
2550
+ isSignal: true,
2551
+ alias: "type",
2552
+ required: false
2553
+ }]
2554
+ }],
2555
+ autoZIndex: [{
2556
+ type: i0.Input,
2557
+ args: [{
2558
+ isSignal: true,
2559
+ alias: "autoZIndex",
2560
+ required: false
2561
+ }]
2562
+ }],
2563
+ baseZIndex: [{
2564
+ type: i0.Input,
2565
+ args: [{
2566
+ isSignal: true,
2567
+ alias: "baseZIndex",
2568
+ required: false
2569
+ }]
2570
+ }],
2571
+ ariaLabel: [{
2572
+ type: i0.Input,
2573
+ args: [{
2574
+ isSignal: true,
2575
+ alias: "ariaLabel",
2576
+ required: false
2577
+ }]
2578
+ }],
2579
+ dropdownAriaLabel: [{
2580
+ type: i0.Input,
2581
+ args: [{
2582
+ isSignal: true,
2583
+ alias: "dropdownAriaLabel",
2584
+ required: false
2585
+ }]
2586
+ }],
2587
+ ariaLabelledBy: [{
2588
+ type: i0.Input,
2589
+ args: [{
2590
+ isSignal: true,
2591
+ alias: "ariaLabelledBy",
2592
+ required: false
2593
+ }]
2594
+ }],
2595
+ dropdownIcon: [{
2596
+ type: i0.Input,
2597
+ args: [{
2598
+ isSignal: true,
2599
+ alias: "dropdownIcon",
2600
+ required: false
2601
+ }]
2602
+ }],
2603
+ unique: [{
2604
+ type: i0.Input,
2605
+ args: [{
2606
+ isSignal: true,
2607
+ alias: "unique",
2608
+ required: false
2609
+ }]
2610
+ }],
2611
+ group: [{
2612
+ type: i0.Input,
2613
+ args: [{
2614
+ isSignal: true,
2615
+ alias: "group",
2616
+ required: false
2617
+ }]
2618
+ }],
2619
+ completeOnFocus: [{
2620
+ type: i0.Input,
2621
+ args: [{
2622
+ isSignal: true,
2623
+ alias: "completeOnFocus",
2624
+ required: false
2625
+ }]
2626
+ }],
2627
+ showClear: [{
2628
+ type: i0.Input,
2629
+ args: [{
2630
+ isSignal: true,
2631
+ alias: "showClear",
2632
+ required: false
2633
+ }]
2634
+ }],
2635
+ dropdown: [{
2636
+ type: i0.Input,
2637
+ args: [{
2638
+ isSignal: true,
2639
+ alias: "dropdown",
2640
+ required: false
2641
+ }]
2642
+ }],
2643
+ showEmptyMessage: [{
2644
+ type: i0.Input,
2645
+ args: [{
2646
+ isSignal: true,
2647
+ alias: "showEmptyMessage",
2648
+ required: false
2649
+ }]
2650
+ }],
2651
+ dropdownMode: [{
2652
+ type: i0.Input,
2653
+ args: [{
2654
+ isSignal: true,
2655
+ alias: "dropdownMode",
2656
+ required: false
2657
+ }]
2658
+ }],
2659
+ multiple: [{
2660
+ type: i0.Input,
2661
+ args: [{
2662
+ isSignal: true,
2663
+ alias: "multiple",
2664
+ required: false
2665
+ }]
2666
+ }],
2667
+ addOnTab: [{
2668
+ type: i0.Input,
2669
+ args: [{
2670
+ isSignal: true,
2671
+ alias: "addOnTab",
2672
+ required: false
2673
+ }]
2674
+ }],
2675
+ tabindex: [{
2676
+ type: i0.Input,
2677
+ args: [{
2678
+ isSignal: true,
2679
+ alias: "tabindex",
2680
+ required: false
2681
+ }]
2682
+ }],
2683
+ dataKey: [{
2684
+ type: i0.Input,
2685
+ args: [{
2686
+ isSignal: true,
2687
+ alias: "dataKey",
2688
+ required: false
2689
+ }]
2690
+ }],
2691
+ emptyMessage: [{
2692
+ type: i0.Input,
2693
+ args: [{
2694
+ isSignal: true,
2695
+ alias: "emptyMessage",
2696
+ required: false
2697
+ }]
2698
+ }],
2699
+ autofocus: [{
2700
+ type: i0.Input,
2701
+ args: [{
2702
+ isSignal: true,
2703
+ alias: "autofocus",
2704
+ required: false
2705
+ }]
2706
+ }],
2707
+ autocomplete: [{
2708
+ type: i0.Input,
2709
+ args: [{
2710
+ isSignal: true,
2711
+ alias: "autocomplete",
2712
+ required: false
2713
+ }]
2714
+ }],
2715
+ optionGroupChildren: [{
2716
+ type: i0.Input,
2717
+ args: [{
2718
+ isSignal: true,
2719
+ alias: "optionGroupChildren",
2720
+ required: false
2721
+ }]
2722
+ }],
2723
+ optionGroupLabel: [{
2724
+ type: i0.Input,
2725
+ args: [{
2726
+ isSignal: true,
2727
+ alias: "optionGroupLabel",
2728
+ required: false
2729
+ }]
2730
+ }],
2731
+ overlayOptions: [{
2732
+ type: i0.Input,
2733
+ args: [{
2734
+ isSignal: true,
2735
+ alias: "overlayOptions",
2736
+ required: false
2737
+ }]
2738
+ }],
2739
+ suggestions: [{
2740
+ type: i0.Input,
2741
+ args: [{
2742
+ isSignal: true,
2743
+ alias: "suggestions",
2744
+ required: false
2745
+ }]
2746
+ }],
2747
+ optionLabel: [{
2748
+ type: i0.Input,
2749
+ args: [{
2750
+ isSignal: true,
2751
+ alias: "optionLabel",
2752
+ required: false
2753
+ }]
2754
+ }],
2755
+ optionValue: [{
2756
+ type: i0.Input,
2757
+ args: [{
2758
+ isSignal: true,
2759
+ alias: "optionValue",
2760
+ required: false
2761
+ }]
2762
+ }],
2763
+ id: [{
2764
+ type: i0.Input,
2765
+ args: [{
2766
+ isSignal: true,
2767
+ alias: "id",
2768
+ required: false
2769
+ }]
2770
+ }],
2771
+ searchMessage: [{
2772
+ type: i0.Input,
2773
+ args: [{
2774
+ isSignal: true,
2775
+ alias: "searchMessage",
2776
+ required: false
2777
+ }]
2778
+ }],
2779
+ emptySelectionMessage: [{
2780
+ type: i0.Input,
2781
+ args: [{
2782
+ isSignal: true,
2783
+ alias: "emptySelectionMessage",
2784
+ required: false
2785
+ }]
2786
+ }],
2787
+ selectionMessage: [{
2788
+ type: i0.Input,
2789
+ args: [{
2790
+ isSignal: true,
2791
+ alias: "selectionMessage",
2792
+ required: false
2793
+ }]
2794
+ }],
2795
+ autoOptionFocus: [{
2796
+ type: i0.Input,
2797
+ args: [{
2798
+ isSignal: true,
2799
+ alias: "autoOptionFocus",
2800
+ required: false
2801
+ }]
2802
+ }],
2803
+ selectOnFocus: [{
2804
+ type: i0.Input,
2805
+ args: [{
2806
+ isSignal: true,
2807
+ alias: "selectOnFocus",
2808
+ required: false
2809
+ }]
2810
+ }],
2811
+ searchLocale: [{
2812
+ type: i0.Input,
2813
+ args: [{
2814
+ isSignal: true,
2815
+ alias: "searchLocale",
2816
+ required: false
2817
+ }]
2818
+ }],
2819
+ optionDisabled: [{
2820
+ type: i0.Input,
2821
+ args: [{
2822
+ isSignal: true,
2823
+ alias: "optionDisabled",
2824
+ required: false
2825
+ }]
2826
+ }],
2827
+ focusOnHover: [{
2828
+ type: i0.Input,
2829
+ args: [{
2830
+ isSignal: true,
2831
+ alias: "focusOnHover",
2832
+ required: false
2833
+ }]
2834
+ }],
2835
+ typeahead: [{
2836
+ type: i0.Input,
2837
+ args: [{
2838
+ isSignal: true,
2839
+ alias: "typeahead",
2840
+ required: false
2841
+ }]
2842
+ }],
2843
+ addOnBlur: [{
2844
+ type: i0.Input,
2845
+ args: [{
2846
+ isSignal: true,
2847
+ alias: "addOnBlur",
2848
+ required: false
2849
+ }]
2850
+ }],
2851
+ separator: [{
2852
+ type: i0.Input,
2853
+ args: [{
2854
+ isSignal: true,
2855
+ alias: "separator",
2856
+ required: false
2857
+ }]
2858
+ }],
2859
+ appendTo: [{
2860
+ type: i0.Input,
2861
+ args: [{
2862
+ isSignal: true,
2863
+ alias: "appendTo",
2864
+ required: false
2865
+ }]
2866
+ }],
2867
+ motionOptions: [{
2868
+ type: i0.Input,
2869
+ args: [{
2870
+ isSignal: true,
2871
+ alias: "motionOptions",
2872
+ required: false
2873
+ }]
2874
+ }],
2875
+ completeMethod: [{
2876
+ type: i0.Output,
2877
+ args: ["completeMethod"]
2878
+ }],
2879
+ onSelect: [{
2880
+ type: i0.Output,
2881
+ args: ["onSelect"]
2882
+ }],
2883
+ onUnselect: [{
2884
+ type: i0.Output,
2885
+ args: ["onUnselect"]
2886
+ }],
2887
+ onAdd: [{
2888
+ type: i0.Output,
2889
+ args: ["onAdd"]
2890
+ }],
2891
+ onFocus: [{
2892
+ type: i0.Output,
2893
+ args: ["onFocus"]
2894
+ }],
2895
+ onBlur: [{
2896
+ type: i0.Output,
2897
+ args: ["onBlur"]
2898
+ }],
2899
+ onDropdownClick: [{
2900
+ type: i0.Output,
2901
+ args: ["onDropdownClick"]
2902
+ }],
2903
+ onClear: [{
2904
+ type: i0.Output,
2905
+ args: ["onClear"]
2906
+ }],
2907
+ onInputKeydown: [{
2908
+ type: i0.Output,
2909
+ args: ["onInputKeydown"]
2910
+ }],
2911
+ onKeyUp: [{
2912
+ type: i0.Output,
2913
+ args: ["onKeyUp"]
2914
+ }],
2915
+ onShow: [{
2916
+ type: i0.Output,
2917
+ args: ["onShow"]
2918
+ }],
2919
+ onHide: [{
2920
+ type: i0.Output,
2921
+ args: ["onHide"]
2922
+ }],
2923
+ onLazyLoad: [{
2924
+ type: i0.Output,
2925
+ args: ["onLazyLoad"]
2926
+ }],
2927
+ inputEL: [{
2928
+ type: i0.ViewChild,
2929
+ args: ["focusInput", { isSignal: true }]
2930
+ }],
2931
+ multiInputEl: [{
2932
+ type: i0.ViewChild,
2933
+ args: ["multiIn", { isSignal: true }]
2934
+ }],
2935
+ multiContainerEL: [{
2936
+ type: i0.ViewChild,
2937
+ args: ["multiContainer", { isSignal: true }]
2938
+ }],
2939
+ dropdownButton: [{
2940
+ type: i0.ViewChild,
2941
+ args: ["ddBtn", { isSignal: true }]
2942
+ }],
2943
+ itemsViewChild: [{
2944
+ type: i0.ViewChild,
2945
+ args: ["items", { isSignal: true }]
2946
+ }],
2947
+ scroller: [{
2948
+ type: i0.ViewChild,
2949
+ args: ["scroller", { isSignal: true }]
2950
+ }],
2951
+ overlayViewChild: [{
2952
+ type: i0.ViewChild,
2953
+ args: ["overlay", { isSignal: true }]
2954
+ }],
2955
+ itemTemplate: [{
2956
+ type: i0.ContentChild,
2957
+ args: ["item", {
2958
+ descendants: false,
2959
+ isSignal: true
2960
+ }]
2961
+ }],
2962
+ emptyTemplate: [{
2963
+ type: i0.ContentChild,
2964
+ args: ["empty", {
2965
+ descendants: false,
2966
+ isSignal: true
2967
+ }]
2968
+ }],
2969
+ headerTemplate: [{
2970
+ type: i0.ContentChild,
2971
+ args: ["header", {
2972
+ descendants: false,
2973
+ isSignal: true
2974
+ }]
2975
+ }],
2976
+ footerTemplate: [{
2977
+ type: i0.ContentChild,
2978
+ args: ["footer", {
2979
+ descendants: false,
2980
+ isSignal: true
2981
+ }]
2982
+ }],
2983
+ selectedItemTemplate: [{
2984
+ type: i0.ContentChild,
2985
+ args: ["selecteditem", {
2986
+ descendants: false,
2987
+ isSignal: true
2988
+ }]
2989
+ }],
2990
+ groupTemplate: [{
2991
+ type: i0.ContentChild,
2992
+ args: ["group", {
2993
+ descendants: false,
2994
+ isSignal: true
2995
+ }]
2996
+ }],
2997
+ loaderTemplate: [{
2998
+ type: i0.ContentChild,
2999
+ args: ["loader", {
3000
+ descendants: false,
3001
+ isSignal: true
3002
+ }]
3003
+ }],
3004
+ removeIconTemplate: [{
3005
+ type: i0.ContentChild,
3006
+ args: ["removeicon", {
3007
+ descendants: false,
3008
+ isSignal: true
3009
+ }]
3010
+ }],
3011
+ loadingIconTemplate: [{
3012
+ type: i0.ContentChild,
3013
+ args: ["loadingicon", {
3014
+ descendants: false,
3015
+ isSignal: true
3016
+ }]
3017
+ }],
3018
+ clearIconTemplate: [{
3019
+ type: i0.ContentChild,
3020
+ args: ["clearicon", {
3021
+ descendants: false,
3022
+ isSignal: true
3023
+ }]
3024
+ }],
3025
+ dropdownIconTemplate: [{
3026
+ type: i0.ContentChild,
3027
+ args: ["dropdownicon", {
3028
+ descendants: false,
3029
+ isSignal: true
3030
+ }]
3031
+ }],
3032
+ onHostClick: [{
3033
+ type: HostListener,
3034
+ args: ["click", ["$event"]]
3035
+ }]
3036
+ }
3037
+ });
3038
+ var AutoCompleteModule = class AutoCompleteModule {
3039
+ static ɵfac = i0.ɵɵngDeclareFactory({
3040
+ minVersion: "12.0.0",
3041
+ version: "22.2.0",
3042
+ ngImport: i0,
3043
+ type: AutoCompleteModule,
3044
+ deps: [],
3045
+ target: i0.ɵɵFactoryTarget.NgModule
3046
+ });
3047
+ static ɵmod = i0.ɵɵngDeclareNgModule({
3048
+ minVersion: "14.0.0",
3049
+ version: "22.2.0",
3050
+ ngImport: i0,
3051
+ type: AutoCompleteModule,
3052
+ imports: [AutoComplete, SharedModule],
3053
+ exports: [AutoComplete, SharedModule]
3054
+ });
3055
+ static ɵinj = i0.ɵɵngDeclareInjector({
3056
+ minVersion: "12.0.0",
3057
+ version: "22.2.0",
3058
+ ngImport: i0,
3059
+ type: AutoCompleteModule,
3060
+ imports: [
3061
+ AutoComplete,
3062
+ SharedModule,
3063
+ SharedModule
3064
+ ]
3065
+ });
3066
+ };
3067
+ i0.ɵɵngDeclareClassMetadata({
3068
+ minVersion: "12.0.0",
3069
+ version: "22.2.0",
3070
+ ngImport: i0,
3071
+ type: AutoCompleteModule,
3072
+ decorators: [{
3073
+ type: NgModule,
3074
+ args: [{
3075
+ imports: [AutoComplete, SharedModule],
3076
+ exports: [AutoComplete, SharedModule]
3077
+ }]
3078
+ }]
3079
+ });
2178
3080
  export { AUTOCOMPLETE_VALUE_ACCESSOR, AutoComplete, AutoCompleteClasses, AutoCompleteModule, AutoCompleteStyle };
2179
- //# sourceMappingURL=primeng-autocomplete.mjs.map
3081
+
3082
+ //# sourceMappingURL=primeng-autocomplete.mjs.map