primeng 22.1.0 → 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 -578
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +266 -165
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +888 -847
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +2534 -1592
  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 -101
  18. package/fesm2022/primeng-base.mjs.map +1 -1
  19. package/fesm2022/primeng-basecomponent.mjs +528 -489
  20. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  21. package/fesm2022/primeng-baseeditableholder.mjs +131 -69
  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 -96
  28. package/fesm2022/primeng-bind.mjs.map +1 -1
  29. package/fesm2022/primeng-blockui.mjs +360 -228
  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 -703
  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 -1773
  40. package/fesm2022/primeng-carousel.mjs.map +1 -1
  41. package/fesm2022/primeng-cascadeselect.mjs +2373 -1364
  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 -353
  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 -315
  54. package/fesm2022/primeng-commandmenu.mjs.map +1 -1
  55. package/fesm2022/primeng-compare.mjs +843 -480
  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 -540
  60. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  61. package/fesm2022/primeng-confirmpopup.mjs +810 -531
  62. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  63. package/fesm2022/primeng-contextmenu.mjs +1862 -1051
  64. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  65. package/fesm2022/primeng-dataview.mjs +1130 -549
  66. package/fesm2022/primeng-dataview.mjs.map +1 -1
  67. package/fesm2022/primeng-datepicker.mjs +3750 -3354
  68. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  69. package/fesm2022/primeng-dialog.mjs +1635 -968
  70. package/fesm2022/primeng-dialog.mjs.map +1 -1
  71. package/fesm2022/primeng-divider.mjs +272 -148
  72. package/fesm2022/primeng-divider.mjs.map +1 -1
  73. package/fesm2022/primeng-dock.mjs +609 -385
  74. package/fesm2022/primeng-dock.mjs.map +1 -1
  75. package/fesm2022/primeng-dom.mjs +599 -761
  76. package/fesm2022/primeng-dom.mjs.map +1 -1
  77. package/fesm2022/primeng-dragdrop.mjs +323 -311
  78. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  79. package/fesm2022/primeng-drawer.mjs +913 -482
  80. package/fesm2022/primeng-drawer.mjs.map +1 -1
  81. package/fesm2022/primeng-dynamicdialog.mjs +828 -928
  82. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  83. package/fesm2022/primeng-editor.mjs +547 -390
  84. package/fesm2022/primeng-editor.mjs.map +1 -1
  85. package/fesm2022/primeng-fieldset.mjs +559 -274
  86. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  87. package/fesm2022/primeng-fileupload.mjs +1836 -1047
  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 -1406
  96. package/fesm2022/primeng-galleria.mjs.map +1 -1
  97. package/fesm2022/primeng-gallery.mjs +2768 -1798
  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 -534
  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 -2180
  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 -1379
  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 -375
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputpassword.mjs +179 -98
  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 -170
  239. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  240. package/fesm2022/primeng-keyfilter.mjs +268 -243
  241. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  242. package/fesm2022/primeng-knob.mjs +627 -403
  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 -1593
  249. package/fesm2022/primeng-listbox.mjs.map +1 -1
  250. package/fesm2022/primeng-megamenu.mjs +2006 -1117
  251. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  252. package/fesm2022/primeng-menu.mjs +1437 -845
  253. package/fesm2022/primeng-menu.mjs.map +1 -1
  254. package/fesm2022/primeng-menubar.mjs +1832 -972
  255. package/fesm2022/primeng-menubar.mjs.map +1 -1
  256. package/fesm2022/primeng-message.mjs +474 -243
  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 -1898
  263. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  264. package/fesm2022/primeng-orderlist.mjs +1308 -678
  265. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  266. package/fesm2022/primeng-organizationchart.mjs +912 -597
  267. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  268. package/fesm2022/primeng-overlay.mjs +929 -610
  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 +961 -505
  273. package/fesm2022/primeng-paginator.mjs.map +1 -1
  274. package/fesm2022/primeng-panel.mjs +668 -347
  275. package/fesm2022/primeng-panel.mjs.map +1 -1
  276. package/fesm2022/primeng-panelmenu.mjs +1842 -966
  277. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  278. package/fesm2022/primeng-passthrough.mjs +10 -20
  279. package/fesm2022/primeng-passthrough.mjs.map +1 -1
  280. package/fesm2022/primeng-password.mjs +1518 -858
  281. package/fesm2022/primeng-password.mjs.map +1 -1
  282. package/fesm2022/primeng-picklist.mjs +2270 -1253
  283. package/fesm2022/primeng-picklist.mjs.map +1 -1
  284. package/fesm2022/primeng-popover.mjs +656 -434
  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 -294
  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 -170
  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 -1047
  299. package/fesm2022/primeng-scroller.mjs.map +1 -1
  300. package/fesm2022/primeng-scrollpanel.mjs +568 -454
  301. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  302. package/fesm2022/primeng-scrolltop.mjs +509 -261
  303. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  304. package/fesm2022/primeng-select.mjs +2948 -1714
  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 -1413
  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 -704
  315. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  316. package/fesm2022/primeng-splitbutton.mjs +889 -340
  317. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  318. package/fesm2022/primeng-splitter.mjs +997 -762
  319. package/fesm2022/primeng-splitter.mjs.map +1 -1
  320. package/fesm2022/primeng-stepper.mjs +1355 -645
  321. package/fesm2022/primeng-stepper.mjs.map +1 -1
  322. package/fesm2022/primeng-steps.mjs +523 -407
  323. package/fesm2022/primeng-steps.mjs.map +1 -1
  324. package/fesm2022/primeng-styleclass.mjs +446 -330
  325. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  326. package/fesm2022/primeng-table.mjs +9765 -5849
  327. package/fesm2022/primeng-table.mjs.map +1 -1
  328. package/fesm2022/primeng-tabs.mjs +1357 -815
  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 -204
  335. package/fesm2022/primeng-textarea.mjs.map +1 -1
  336. package/fesm2022/primeng-tieredmenu.mjs +1917 -1094
  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 -928
  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 -765
  349. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  350. package/fesm2022/primeng-tree.mjs +2681 -1888
  351. package/fesm2022/primeng-tree.mjs.map +1 -1
  352. package/fesm2022/primeng-treeselect.mjs +1678 -927
  353. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  354. package/fesm2022/primeng-treetable.mjs +5849 -3742
  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 -109
  459. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  460. package/fesm2022/primeng-utils.mjs +238 -328
  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 +7 -2
  465. package/types/primeng-accordion.d.ts +289 -221
  466. package/types/primeng-animateonscroll.d.ts +89 -61
  467. package/types/primeng-api.d.ts +1760 -1790
  468. package/types/primeng-autocomplete.d.ts +1054 -757
  469. package/types/primeng-autofocus.d.ts +27 -24
  470. package/types/primeng-avatar.d.ts +153 -117
  471. package/types/primeng-avatargroup.d.ts +46 -43
  472. package/types/primeng-badge.d.ts +105 -81
  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 -427
  482. package/types/primeng-buttongroup.d.ts +27 -33
  483. package/types/primeng-card.d.ts +131 -122
  484. package/types/primeng-carousel.d.ts +800 -632
  485. package/types/primeng-cascadeselect.d.ts +754 -565
  486. package/types/primeng-chart.d.ts +160 -116
  487. package/types/primeng-checkbox.d.ts +299 -211
  488. package/types/primeng-chip.d.ts +189 -147
  489. package/types/primeng-classnames.d.ts +23 -21
  490. package/types/primeng-colorpicker.d.ts +325 -272
  491. package/types/primeng-commandmenu.d.ts +213 -165
  492. package/types/primeng-compare.d.ts +267 -191
  493. package/types/primeng-config.d.ts +294 -304
  494. package/types/primeng-confirmdialog.d.ts +505 -328
  495. package/types/primeng-confirmpopup.d.ts +254 -214
  496. package/types/primeng-contextmenu.d.ts +522 -368
  497. package/types/primeng-dataview.d.ts +498 -345
  498. package/types/primeng-datepicker.d.ts +1269 -972
  499. package/types/primeng-dialog.d.ts +668 -465
  500. package/types/primeng-divider.d.ts +114 -100
  501. package/types/primeng-dock.d.ts +207 -175
  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 +355 -257
  505. package/types/primeng-dynamicdialog.d.ts +528 -540
  506. package/types/primeng-editor.d.ts +211 -165
  507. package/types/primeng-fieldset.d.ts +199 -166
  508. package/types/primeng-fileupload.d.ts +727 -526
  509. package/types/primeng-floatlabel.d.ts +55 -51
  510. package/types/primeng-fluid.d.ts +37 -39
  511. package/types/primeng-focustrap.d.ts +30 -27
  512. package/types/primeng-galleria.d.ts +570 -433
  513. package/types/primeng-gallery.d.ts +754 -552
  514. package/types/primeng-iconfield.d.ts +54 -45
  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 +24 -25
  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 +38 -40
  572. package/types/primeng-image.d.ts +404 -311
  573. package/types/primeng-imagecompare.d.ts +94 -80
  574. package/types/primeng-inplace.d.ts +126 -114
  575. package/types/primeng-inputcolor.d.ts +645 -508
  576. package/types/primeng-inputgroup.d.ts +42 -44
  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 +520 -365
  580. package/types/primeng-inputnumber.d.ts +573 -408
  581. package/types/primeng-inputotp.d.ts +206 -159
  582. package/types/primeng-inputpassword.d.ts +60 -47
  583. package/types/primeng-inputtags.d.ts +453 -301
  584. package/types/primeng-inputtext.d.ts +130 -96
  585. package/types/primeng-keyfilter.d.ts +62 -53
  586. package/types/primeng-knob.d.ts +257 -186
  587. package/types/primeng-label.d.ts +37 -39
  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 +536 -386
  591. package/types/primeng-menu.d.ts +478 -363
  592. package/types/primeng-menubar.d.ts +495 -354
  593. package/types/primeng-message.d.ts +192 -151
  594. package/types/primeng-metergroup.d.ts +249 -189
  595. package/types/primeng-motion.d.ts +601 -385
  596. package/types/primeng-multiselect.d.ts +1193 -861
  597. package/types/primeng-orderlist.d.ts +539 -393
  598. package/types/primeng-organizationchart.d.ts +236 -195
  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 +410 -314
  602. package/types/primeng-panel.d.ts +267 -217
  603. package/types/primeng-panelmenu.d.ts +255 -231
  604. package/types/primeng-passthrough.d.ts +5 -7
  605. package/types/primeng-password.d.ts +606 -433
  606. package/types/primeng-picklist.d.ts +1042 -759
  607. package/types/primeng-popover.d.ts +235 -176
  608. package/types/primeng-progressbar.d.ts +131 -102
  609. package/types/primeng-progressspinner.d.ts +145 -111
  610. package/types/primeng-radiobutton.d.ts +219 -171
  611. package/types/primeng-rating.d.ts +240 -192
  612. package/types/primeng-ripple.d.ts +39 -45
  613. package/types/primeng-scrollarea.d.ts +292 -243
  614. package/types/primeng-scroller.d.ts +523 -390
  615. package/types/primeng-scrollpanel.d.ts +135 -131
  616. package/types/primeng-scrolltop.d.ts +170 -126
  617. package/types/primeng-select.d.ts +1014 -741
  618. package/types/primeng-selectbutton.d.ts +239 -167
  619. package/types/primeng-sidebar.d.ts +793 -562
  620. package/types/primeng-skeleton.d.ts +116 -87
  621. package/types/primeng-slider.d.ts +378 -311
  622. package/types/primeng-speeddial.d.ts +495 -375
  623. package/types/primeng-splitbutton.d.ts +382 -243
  624. package/types/primeng-splitter.d.ts +392 -301
  625. package/types/primeng-stepper.d.ts +417 -257
  626. package/types/primeng-steps.d.ts +158 -137
  627. package/types/primeng-styleclass.d.ts +163 -105
  628. package/types/primeng-table.d.ts +2898 -1912
  629. package/types/primeng-tabs.d.ts +463 -307
  630. package/types/primeng-tag.d.ts +107 -88
  631. package/types/primeng-terminal.d.ts +132 -120
  632. package/types/primeng-textarea.d.ts +146 -110
  633. package/types/primeng-tieredmenu.d.ts +573 -401
  634. package/types/primeng-timeline.d.ts +126 -112
  635. package/types/primeng-toast.d.ts +313 -252
  636. package/types/primeng-togglebutton.d.ts +255 -185
  637. package/types/primeng-toggleswitch.d.ts +190 -144
  638. package/types/primeng-toolbar.d.ts +83 -79
  639. package/types/primeng-tooltip.d.ts +335 -235
  640. package/types/primeng-tree.d.ts +763 -562
  641. package/types/primeng-treeselect.d.ts +750 -544
  642. package/types/primeng-treetable.d.ts +1839 -1315
  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,1560 +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"
60
+ };
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
+ });
71
80
  };
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.2", ngImport: i0, type: AutoCompleteStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
78
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: AutoCompleteStyle });
79
- }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", 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
- */
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
- onHostClick(event) {
646
- this.onContainerClick(event);
647
- }
648
- value;
649
- timeout = null;
650
- overlayVisible = signal(false, /* @ts-ignore */
651
- ...(ngDevMode ? [{ debugName: "overlayVisible" }] : /* istanbul ignore next */ []));
652
- suggestionsUpdated;
653
- highlightOption;
654
- highlightOptionChanged;
655
- focused = signal(false, /* @ts-ignore */
656
- ...(ngDevMode ? [{ debugName: "focused" }] : /* istanbul ignore next */ []));
657
- loading = signal(false, /* @ts-ignore */
658
- ...(ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []));
659
- scrollHandler;
660
- listId;
661
- searchTimeout = null;
662
- dirty = false;
663
- focusedMultipleOptionIndex = signal(-1, /* @ts-ignore */
664
- ...(ngDevMode ? [{ debugName: "focusedMultipleOptionIndex" }] : /* istanbul ignore next */ []));
665
- focusedOptionIndex = signal(-1, /* @ts-ignore */
666
- ...(ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []));
667
- _componentStyle = inject(AutoCompleteStyle);
668
- overlayService = inject(OverlayService);
669
- _internalId = uuid('pn_id_');
670
- $id = computed(() => this.id() || this._internalId, /* @ts-ignore */
671
- ...(ngDevMode ? [{ debugName: "$id" }] : /* istanbul ignore next */ []));
672
- $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), /* @ts-ignore */
673
- ...(ngDevMode ? [{ debugName: "$appendTo" }] : /* istanbul ignore next */ []));
674
- get $overlayTarget() {
675
- return this.el?.nativeElement?.closest('[data-pc-name="inputtags"]') ? '@grandparent' : '@parent';
676
- }
677
- visibleOptions = computed(() => {
678
- return this.group() ? this.flatOptions(this.suggestions()) : this.suggestions() || [];
679
- }, /* @ts-ignore */
680
- ...(ngDevMode ? [{ debugName: "visibleOptions" }] : /* istanbul ignore next */ []));
681
- inputValue = computed(() => {
682
- const modelValue = this.modelValue();
683
- const selectedOption = this.optionValueSelected ? (this.suggestions() || []).find((option) => equals(option, modelValue, this.equalityKey())) : modelValue;
684
- if (isNotEmpty(modelValue)) {
685
- if (typeof modelValue === 'object' || this.optionValueSelected) {
686
- const label = this.getOptionLabel(selectedOption);
687
- return label != null ? label : modelValue;
688
- }
689
- else {
690
- return modelValue;
691
- }
692
- }
693
- else {
694
- return '';
695
- }
696
- }, /* @ts-ignore */
697
- ...(ngDevMode ? [{ debugName: "inputValue" }] : /* istanbul ignore next */ []));
698
- $showClear = computed(() => this.$filled() && !this.$disabled() && this.showClear() && !this.loading(), /* @ts-ignore */
699
- ...(ngDevMode ? [{ debugName: "$showClear" }] : /* istanbul ignore next */ []));
700
- scrollerStyle = computed(() => ({ height: this.scrollHeight() }), /* @ts-ignore */
701
- ...(ngDevMode ? [{ debugName: "scrollerStyle" }] : /* istanbul ignore next */ []));
702
- $tabindex = computed(() => (!this.$disabled() ? this.tabindex() : -1), /* @ts-ignore */
703
- ...(ngDevMode ? [{ debugName: "$tabindex" }] : /* istanbul ignore next */ []));
704
- requiredAttr = computed(() => (this.required() ? '' : undefined), /* @ts-ignore */
705
- ...(ngDevMode ? [{ debugName: "requiredAttr" }] : /* istanbul ignore next */ []));
706
- readonlyAttr = computed(() => (this.readonly() ? '' : undefined), /* @ts-ignore */
707
- ...(ngDevMode ? [{ debugName: "readonlyAttr" }] : /* istanbul ignore next */ []));
708
- disabledAttr = computed(() => (this.$disabled() ? '' : undefined), /* @ts-ignore */
709
- ...(ngDevMode ? [{ debugName: "disabledAttr" }] : /* istanbul ignore next */ []));
710
- $listId = computed(() => this.$id() + '_list', /* @ts-ignore */
711
- ...(ngDevMode ? [{ debugName: "$listId" }] : /* istanbul ignore next */ []));
712
- get focusedMultipleOptionId() {
713
- return this.focusedMultipleOptionIndex() !== -1 ? `${this.$id()}_multiple_option_${this.focusedMultipleOptionIndex()}` : null;
714
- }
715
- get focusedOptionId() {
716
- return this.focusedOptionIndex() !== -1 ? `${this.$id()}_${this.focusedOptionIndex()}` : null;
717
- }
718
- get searchResultMessageText() {
719
- return isNotEmpty(this.visibleOptions()) && this.overlayVisible() ? this.searchMessageText.replaceAll('{0}', this.visibleOptions().length) : this.emptySearchMessageText;
720
- }
721
- get searchMessageText() {
722
- return this.searchMessage() || this.config.translation.searchMessage || '';
723
- }
724
- get emptySearchMessageText() {
725
- return this.emptyMessage() || this.config.translation.emptySearchMessage || '';
726
- }
727
- get selectionMessageText() {
728
- return this.selectionMessage() || this.config.translation.selectionMessage || '';
729
- }
730
- get emptySelectionMessageText() {
731
- return this.emptySelectionMessage() || this.config.translation.emptySelectionMessage || '';
732
- }
733
- get selectedMessageText() {
734
- return this.hasSelectedOption() ? this.selectionMessageText.replaceAll('{0}', this.multiple() ? this.modelValue()?.length : '1') : this.emptySelectionMessageText;
735
- }
736
- get ariaSetSize() {
737
- return this.visibleOptions().filter((option) => !this.isOptionGroup(option)).length;
738
- }
739
- get listLabel() {
740
- return this.translate(TranslationKeys.ARIA, 'listLabel');
741
- }
742
- get virtualScrollerDisabled() {
743
- return !this.virtualScroll();
744
- }
745
- get optionValueSelected() {
746
- return typeof this.modelValue() === 'string' && this.optionValue();
747
- }
748
- chipItemClass(index) {
749
- return this._componentStyle.classes.chipItem({ instance: this, i: index });
750
- }
751
- constructor() {
752
- super();
753
- effect(() => {
754
- const value = this.suggestions();
755
- if (value) {
756
- this.handleSuggestionsChange();
757
- }
758
- });
759
- }
760
- onAfterViewChecked() {
761
- this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
762
- //Use timeouts as since Angular 4.2, AfterViewChecked is broken and not called after panel is updated
763
- if (this.suggestionsUpdated && this.overlayViewChild()) {
764
- setTimeout(() => {
765
- if (this.overlayViewChild()) {
766
- this.overlayViewChild().alignOverlay();
767
- }
768
- }, 1);
769
- this.suggestionsUpdated = false;
770
- }
771
- }
772
- handleSuggestionsChange() {
773
- if (this.loading()) {
774
- this.suggestions()?.length > 0 || this.showEmptyMessage() || !!this.emptyTemplate() ? this.show() : this.hide();
775
- const focusedOptionIndex = this.overlayVisible() && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
776
- this.focusedOptionIndex.set(focusedOptionIndex);
777
- this.suggestionsUpdated = true;
778
- this.loading.set(false);
779
- }
780
- }
781
- flatOptions(options) {
782
- return (options || []).reduce((result, option, index) => {
783
- result.push({ optionGroup: option, group: true, index });
784
- const optionGroupChildren = this.getOptionGroupChildren(option);
785
- optionGroupChildren && optionGroupChildren.forEach((o) => result.push(o));
786
- return result;
787
- }, []);
788
- }
789
- isOptionGroup(option) {
790
- return this.optionGroupLabel() && option.optionGroup && option.group;
791
- }
792
- findFirstOptionIndex() {
793
- return this.visibleOptions().findIndex((option) => this.isValidOption(option));
794
- }
795
- findLastOptionIndex() {
796
- return findLastIndex(this.visibleOptions(), (option) => this.isValidOption(option));
797
- }
798
- findFirstFocusedOptionIndex() {
799
- const selectedIndex = this.findSelectedOptionIndex();
800
- return selectedIndex < 0 ? this.findFirstOptionIndex() : selectedIndex;
801
- }
802
- findLastFocusedOptionIndex() {
803
- const selectedIndex = this.findSelectedOptionIndex();
804
- return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
805
- }
806
- findSelectedOptionIndex() {
807
- return this.hasSelectedOption() ? this.visibleOptions().findIndex((option) => this.isValidSelectedOption(option)) : -1;
808
- }
809
- findNextOptionIndex(index) {
810
- const matchedOptionIndex = index < this.visibleOptions().length - 1
811
- ? this.visibleOptions()
812
- .slice(index + 1)
813
- .findIndex((option) => this.isValidOption(option))
814
- : -1;
815
- return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
816
- }
817
- findPrevOptionIndex(index) {
818
- const matchedOptionIndex = index > 0 ? findLastIndex(this.visibleOptions().slice(0, index), (option) => this.isValidOption(option)) : -1;
819
- return matchedOptionIndex > -1 ? matchedOptionIndex : index;
820
- }
821
- isValidSelectedOption(option) {
822
- return this.isValidOption(option) && this.isSelected(option);
823
- }
824
- isValidOption(option) {
825
- return option && !(this.isOptionDisabled(option) || this.isOptionGroup(option));
826
- }
827
- isOptionDisabled(option) {
828
- return this.optionDisabled() ? resolveFieldData(option, this.optionDisabled()) : false;
829
- }
830
- isSelected(option) {
831
- if (this.multiple()) {
832
- return this.unique() ? this.modelValue()?.some((model) => equals(model, option, this.equalityKey())) : false;
833
- }
834
- return equals(this.modelValue(), option, this.equalityKey());
835
- }
836
- isOptionMatched(option, value) {
837
- return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.searchLocale()) === value.toLocaleLowerCase(this.searchLocale());
838
- }
839
- isInputClicked(event) {
840
- return event.target === this.inputEL()?.nativeElement;
841
- }
842
- isDropdownClicked(event) {
843
- return this.dropdownButton()?.nativeElement ? event.target === this.dropdownButton().nativeElement || this.dropdownButton().nativeElement.contains(event.target) : false;
844
- }
845
- equalityKey() {
846
- return this.optionValue() ? undefined : this.dataKey();
847
- }
848
- onContainerClick(event) {
849
- if (this.$disabled() || this.loading() || this.isInputClicked(event) || this.isDropdownClicked(event)) {
850
- return;
851
- }
852
- if (!this.overlayViewChild() || !this.overlayViewChild().overlayViewChild()?.nativeElement.contains(event.target)) {
853
- focus(this.inputEL()?.nativeElement);
854
- }
855
- }
856
- handleDropdownClick(event) {
857
- let query = undefined;
858
- if (this.overlayVisible()) {
859
- this.hide(true);
860
- }
861
- else {
862
- focus(this.inputEL()?.nativeElement);
863
- query = this.inputEL()?.nativeElement?.value;
864
- if (this.dropdownMode() === 'blank')
865
- this.search(event, '', 'dropdown');
866
- else if (this.dropdownMode() === 'current')
867
- this.search(event, query, 'dropdown');
868
- }
869
- this.onDropdownClick.emit({ originalEvent: event, query });
870
- }
871
- onInput(event) {
872
- if (this.typeahead()) {
873
- const _minLength = this.minQueryLength() || 1;
874
- if (this.searchTimeout) {
875
- clearTimeout(this.searchTimeout);
876
- }
877
- let query = event.target.value;
878
- const maxLen = this.maxlength();
879
- if (maxLen != null) {
880
- query = query.split('').slice(0, maxLen).join('');
881
- }
882
- if (!this.multiple() && !this.forceSelection()) {
883
- this.updateModel(query);
884
- }
885
- if (query.length === 0 && !this.multiple()) {
886
- this.onClear.emit();
887
- setTimeout(() => {
888
- this.hide();
889
- }, this.delay() / 2);
890
- }
891
- else {
892
- if (query.length >= _minLength) {
893
- this.focusedOptionIndex.set(-1);
894
- this.searchTimeout = setTimeout(() => {
895
- this.search(event, query, 'input');
896
- }, this.delay());
897
- }
898
- else {
899
- this.hide();
900
- }
901
- }
902
- }
903
- }
904
- onInputChange(event) {
905
- this.updateInputWithForceSelection(event);
906
- }
907
- onInputFocus(event) {
908
- if (this.$disabled()) {
909
- // For ScreenReaders
910
- return;
911
- }
912
- if (!this.dirty && this.completeOnFocus()) {
913
- this.search(event, event.target.value, 'focus');
914
- }
915
- this.dirty = true;
916
- this.focused.set(true);
917
- const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.overlayVisible() && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
918
- this.focusedOptionIndex.set(focusedOptionIndex);
919
- this.overlayVisible() && this.scrollInView(this.focusedOptionIndex());
920
- this.onFocus.emit(event);
921
- }
922
- onMultipleContainerFocus(event) {
923
- if (this.$disabled()) {
924
- // For ScreenReaders
925
- return;
926
- }
927
- this.focused.set(true);
928
- }
929
- onMultipleContainerBlur(event) {
930
- this.focusedMultipleOptionIndex.set(-1);
931
- this.focused.set(false);
932
- }
933
- onMultipleContainerKeyDown(event) {
934
- if (this.$disabled()) {
935
- event.preventDefault();
936
- return;
937
- }
938
- switch (event.code) {
939
- case 'ArrowLeft':
940
- this.onArrowLeftKeyOnMultiple(event);
941
- break;
942
- case 'ArrowRight':
943
- this.onArrowRightKeyOnMultiple(event);
944
- break;
945
- case 'Backspace':
946
- this.onBackspaceKeyOnMultiple(event);
947
- break;
948
- default:
949
- break;
950
- }
951
- }
952
- onInputBlur(event) {
953
- this.dirty = false;
954
- this.focused.set(false);
955
- this.focusedOptionIndex.set(-1);
956
- if (this.addOnBlur() && this.multiple() && !this.typeahead()) {
957
- const inputValue = (this.multiInputEl()?.nativeElement?.value || event.target.value || '').trim();
958
- if (inputValue && !this.isSelected(inputValue)) {
959
- this.updateModel([...(this.modelValue() || []), inputValue]);
960
- this.onAdd.emit({ originalEvent: event, value: inputValue });
961
- if (this.multiInputEl()?.nativeElement) {
962
- this.multiInputEl().nativeElement.value = '';
963
- }
964
- else {
965
- event.target.value = '';
966
- }
967
- }
968
- }
969
- this.onModelTouched();
970
- this.onBlur.emit(event);
971
- }
972
- onInputPaste(event) {
973
- if (this.separator() && this.multiple() && !this.typeahead()) {
974
- const pastedData = event.clipboardData?.getData('Text');
975
- if (pastedData) {
976
- const values = pastedData.split(this.separator());
977
- const newValues = [...(this.modelValue() || [])];
978
- values.forEach((value) => {
979
- const trimmedValue = value.trim();
980
- if (trimmedValue && !this.isSelected(trimmedValue)) {
981
- newValues.push(trimmedValue);
982
- }
983
- });
984
- if (newValues.length > (this.modelValue() || []).length) {
985
- const addedValues = newValues.slice((this.modelValue() || []).length);
986
- this.updateModel(newValues);
987
- addedValues.forEach((addedValue) => {
988
- this.onAdd.emit({ originalEvent: event, value: addedValue });
989
- });
990
- if (this.multiInputEl()?.nativeElement) {
991
- this.multiInputEl().nativeElement.value = '';
992
- }
993
- else {
994
- event.target.value = '';
995
- }
996
- event.preventDefault();
997
- }
998
- }
999
- }
1000
- else {
1001
- this.onKeyDown(event);
1002
- }
1003
- }
1004
- onInputKeyUp(event) {
1005
- this.onKeyUp.emit(event);
1006
- }
1007
- onKeyDown(event) {
1008
- if (this.$disabled()) {
1009
- event.preventDefault();
1010
- return;
1011
- }
1012
- // Emit keydown event for external handling
1013
- this.onInputKeydown.emit(event);
1014
- switch (event.code) {
1015
- case 'ArrowDown':
1016
- this.onArrowDownKey(event);
1017
- break;
1018
- case 'ArrowUp':
1019
- this.onArrowUpKey(event);
1020
- break;
1021
- case 'ArrowLeft':
1022
- this.onArrowLeftKey(event);
1023
- break;
1024
- case 'ArrowRight':
1025
- this.onArrowRightKey(event);
1026
- break;
1027
- case 'Home':
1028
- this.onHomeKey(event);
1029
- break;
1030
- case 'End':
1031
- this.onEndKey(event);
1032
- break;
1033
- case 'PageDown':
1034
- this.onPageDownKey(event);
1035
- break;
1036
- case 'PageUp':
1037
- this.onPageUpKey(event);
1038
- break;
1039
- case 'Enter':
1040
- case 'NumpadEnter':
1041
- this.onEnterKey(event);
1042
- break;
1043
- case 'Escape':
1044
- this.onEscapeKey(event);
1045
- if (this.overlayVisible()) {
1046
- event.stopPropagation();
1047
- }
1048
- break;
1049
- case 'Tab':
1050
- this.onTabKey(event);
1051
- break;
1052
- case 'Backspace':
1053
- this.onBackspaceKey(event);
1054
- break;
1055
- case 'ShiftLeft':
1056
- case 'ShiftRight':
1057
- //NOOP
1058
- break;
1059
- default:
1060
- this.handleSeparatorKey(event);
1061
- break;
1062
- }
1063
- }
1064
- handleSeparatorKey(event) {
1065
- const separator = this.separator();
1066
- if (separator && this.multiple() && !this.typeahead()) {
1067
- if (separator === event.key || (typeof separator === 'string' && event.key === separator) || (separator instanceof RegExp && event.key.match(separator))) {
1068
- const inputValue = (this.multiInputEl()?.nativeElement?.value || event.target.value || '').trim();
1069
- if (inputValue && !this.isSelected(inputValue)) {
1070
- this.updateModel([...(this.modelValue() || []), inputValue]);
1071
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1072
- if (this.multiInputEl()?.nativeElement) {
1073
- this.multiInputEl().nativeElement.value = '';
1074
- }
1075
- else {
1076
- event.target.value = '';
1077
- }
1078
- event.preventDefault();
1079
- }
1080
- }
1081
- }
1082
- }
1083
- onArrowDownKey(event) {
1084
- if (!this.overlayVisible()) {
1085
- return;
1086
- }
1087
- const optionIndex = this.focusedOptionIndex() !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex()) : this.findFirstFocusedOptionIndex();
1088
- this.changeFocusedOptionIndex(event, optionIndex);
1089
- event.preventDefault();
1090
- event.stopPropagation();
1091
- }
1092
- onArrowUpKey(event) {
1093
- if (!this.overlayVisible()) {
1094
- return;
1095
- }
1096
- if (event.altKey) {
1097
- if (this.focusedOptionIndex() !== -1) {
1098
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1099
- }
1100
- this.overlayVisible() && this.hide();
1101
- event.preventDefault();
1102
- }
1103
- else {
1104
- const optionIndex = this.focusedOptionIndex() !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex()) : this.findLastFocusedOptionIndex();
1105
- this.changeFocusedOptionIndex(event, optionIndex);
1106
- event.preventDefault();
1107
- event.stopPropagation();
1108
- }
1109
- }
1110
- onArrowLeftKey(event) {
1111
- const target = event.currentTarget;
1112
- this.focusedOptionIndex.set(-1);
1113
- if (this.multiple()) {
1114
- if (isEmpty(target.value) && this.hasSelectedOption()) {
1115
- focus(this.multiContainerEL()?.nativeElement);
1116
- this.focusedMultipleOptionIndex.set(this.modelValue().length);
1117
- }
1118
- else {
1119
- event.stopPropagation(); // To prevent onArrowLeftKeyOnMultiple method
1120
- }
1121
- }
1122
- }
1123
- onArrowRightKey(event) {
1124
- this.focusedOptionIndex.set(-1);
1125
- this.multiple() && event.stopPropagation(); // To prevent onArrowRightKeyOnMultiple method
1126
- }
1127
- onHomeKey(event) {
1128
- const currentTarget = event.currentTarget;
1129
- const len = currentTarget.value.length;
1130
- currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
1131
- this.focusedOptionIndex.set(-1);
1132
- event.preventDefault();
1133
- }
1134
- onEndKey(event) {
1135
- const currentTarget = event.currentTarget;
1136
- const len = currentTarget.value.length;
1137
- currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
1138
- this.focusedOptionIndex.set(-1);
1139
- event.preventDefault();
1140
- }
1141
- onPageDownKey(event) {
1142
- this.scrollInView(this.visibleOptions().length - 1);
1143
- event.preventDefault();
1144
- }
1145
- onPageUpKey(event) {
1146
- this.scrollInView(0);
1147
- event.preventDefault();
1148
- }
1149
- onEnterKey(event) {
1150
- if (!this.typeahead() && !this.forceSelection()) {
1151
- if (this.multiple()) {
1152
- const inputValue = event.target.value?.trim();
1153
- if (inputValue && !this.isSelected(inputValue)) {
1154
- this.updateModel([...(this.modelValue() || []), inputValue]);
1155
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1156
- this.inputEL()?.nativeElement && (this.inputEL().nativeElement.value = '');
1157
- }
1158
- }
1159
- }
1160
- if (!this.overlayVisible()) {
1161
- return;
1162
- }
1163
- else {
1164
- if (this.focusedOptionIndex() !== -1) {
1165
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1166
- }
1167
- this.hide();
1168
- }
1169
- event.preventDefault();
1170
- }
1171
- onEscapeKey(event) {
1172
- this.overlayVisible() && this.hide(true);
1173
- event.preventDefault();
1174
- }
1175
- onTabKey(event) {
1176
- // If there's a focused option in the dropdown, select it
1177
- if (this.focusedOptionIndex() !== -1) {
1178
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1179
- return;
1180
- }
1181
- // Handle tab key behavior for multiple mode without typeahead
1182
- if (this.multiple() && !this.typeahead()) {
1183
- const inputValue = (this.multiInputEl()?.nativeElement?.value || this.inputEL()?.nativeElement?.value || '').trim();
1184
- if (this.addOnTab()) {
1185
- if (inputValue && !this.isSelected(inputValue)) {
1186
- // Add the value and keep focus
1187
- this.updateModel([...(this.modelValue() || []), inputValue]);
1188
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1189
- if (this.multiInputEl()?.nativeElement) {
1190
- this.multiInputEl().nativeElement.value = '';
1191
- }
1192
- else if (this.inputEL()?.nativeElement) {
1193
- this.inputEL().nativeElement.value = '';
1194
- }
1195
- this.updateInputValue();
1196
- event.preventDefault(); // Keep focus on the component
1197
- this.overlayVisible() && this.hide();
1198
- return;
1199
- }
1200
- // If no value or already selected, allow normal tab behavior (blur)
1201
- }
1202
- // If addOnTab is false or no value to add, allow normal tab behavior
1203
- // which will trigger blur and potentially addOnBlur
1204
- }
1205
- this.overlayVisible() && this.hide();
1206
- }
1207
- onBackspaceKey(event) {
1208
- if (this.multiple()) {
1209
- if (isNotEmpty(this.modelValue()) && !this.inputEL()?.nativeElement?.value) {
1210
- const removedValue = this.modelValue()[this.modelValue().length - 1];
1211
- const newValue = this.modelValue().slice(0, -1);
1212
- this.updateModel(newValue);
1213
- this.onUnselect.emit({ originalEvent: event, value: removedValue });
1214
- }
1215
- event.stopPropagation(); // To prevent onBackspaceKeyOnMultiple method
1216
- }
1217
- }
1218
- onArrowLeftKeyOnMultiple(event) {
1219
- const optionIndex = this.focusedMultipleOptionIndex() < 1 ? 0 : this.focusedMultipleOptionIndex() - 1;
1220
- this.focusedMultipleOptionIndex.set(optionIndex);
1221
- }
1222
- onArrowRightKeyOnMultiple(event) {
1223
- let optionIndex = this.focusedMultipleOptionIndex();
1224
- optionIndex++;
1225
- this.focusedMultipleOptionIndex.set(optionIndex);
1226
- if (optionIndex > this.modelValue().length - 1) {
1227
- this.focusedMultipleOptionIndex.set(-1);
1228
- focus(this.inputEL()?.nativeElement);
1229
- }
1230
- }
1231
- onBackspaceKeyOnMultiple(event) {
1232
- if (this.focusedMultipleOptionIndex() !== -1) {
1233
- this.removeOption(event, this.focusedMultipleOptionIndex());
1234
- }
1235
- }
1236
- onOptionSelect(event, option, isHide = true) {
1237
- if (this.multiple()) {
1238
- this.inputEL()?.nativeElement && (this.inputEL().nativeElement.value = '');
1239
- if (!this.isSelected(option)) {
1240
- this.updateModel([...(this.modelValue() || []), option]);
1241
- }
1242
- }
1243
- else {
1244
- this.updateModel(option);
1245
- }
1246
- if (event) {
1247
- this.onSelect.emit({ originalEvent: event, value: option });
1248
- }
1249
- isHide && this.hide(true);
1250
- }
1251
- onOptionMouseEnter(event, index) {
1252
- if (this.focusOnHover()) {
1253
- this.changeFocusedOptionIndex(event, index);
1254
- }
1255
- }
1256
- search(event, query, source) {
1257
- //allow empty string but not undefined or null
1258
- if (query === undefined || query === null) {
1259
- return;
1260
- }
1261
- //do not search blank values on input change
1262
- if (source === 'input' && query.trim().length === 0) {
1263
- return;
1264
- }
1265
- this.loading.set(true);
1266
- this.completeMethod.emit({ originalEvent: event, query });
1267
- }
1268
- removeOption(event, index) {
1269
- event.stopPropagation();
1270
- const removedOption = this.modelValue()[index];
1271
- const value = this.modelValue().filter((_, i) => i !== index);
1272
- this.updateModel(value);
1273
- this.onUnselect.emit({ originalEvent: event, value: removedOption });
1274
- focus(this.inputEL()?.nativeElement);
1275
- }
1276
- updateModel(options) {
1277
- let value = null;
1278
- if (options) {
1279
- value = this.multiple() ? options.map((option) => this.getOptionValue(option)) : this.getOptionValue(options);
1280
- }
1281
- this.value = value;
1282
- this.writeModelValue(options);
1283
- this.onModelChange(value);
1284
- this.updateInputValue();
1285
- }
1286
- updateInputValue() {
1287
- const inputEl = this.inputEL();
1288
- if (inputEl && inputEl.nativeElement) {
1289
- if (!this.multiple()) {
1290
- inputEl.nativeElement.value = this.inputValue();
1291
- }
1292
- else {
1293
- inputEl.nativeElement.value = '';
1294
- }
1295
- }
1296
- }
1297
- updateInputWithForceSelection(event) {
1298
- const input = this.inputEL()?.nativeElement;
1299
- const inputCleared = !input?.value && isNotEmpty(this.modelValue());
1300
- if (!this.forceSelection() || this.overlayVisible() || (!input?.value && !inputCleared)) {
1301
- return;
1302
- }
1303
- const _minLength = this.minQueryLength();
1304
- if (!inputCleared && _minLength != null && input.value.length < _minLength) {
1305
- return;
1306
- }
1307
- const matchedOption = this.visibleOptions()?.find((option) => this.isOptionMatched(option, input.value));
1308
- if (!matchedOption) {
1309
- input.value = '';
1310
- if (!this.multiple()) {
1311
- this.clear();
1312
- }
1313
- return;
1314
- }
1315
- if (matchedOption && !this.isSelected(matchedOption)) {
1316
- this.onOptionSelect(event, matchedOption);
1317
- }
1318
- }
1319
- autoUpdateModel() {
1320
- if ((this.selectOnFocus() || this.autoHighlight()) && this.autoOptionFocus() && !this.hasSelectedOption()) {
1321
- const focusedOptionIndex = this.findFirstFocusedOptionIndex();
1322
- this.focusedOptionIndex.set(focusedOptionIndex);
1323
- this.onOptionSelect(null, this.visibleOptions()[this.focusedOptionIndex()], false);
1324
- }
1325
- }
1326
- scrollInView(index = -1) {
1327
- const id = index !== -1 ? `${this.$id()}_${index}` : this.focusedOptionId;
1328
- const itemsViewChild = this.itemsViewChild();
1329
- if (itemsViewChild && itemsViewChild.nativeElement) {
1330
- const element = findSingle(itemsViewChild.nativeElement, `li[id="${id}"]`);
1331
- if (element) {
1332
- element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
1333
- }
1334
- else if (!this.virtualScrollerDisabled) {
1335
- setTimeout(() => {
1336
- this.virtualScroll() && this.scroller()?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
1337
- }, 0);
1338
- }
1339
- }
1340
- }
1341
- changeFocusedOptionIndex(event, index) {
1342
- if (this.focusedOptionIndex() !== index) {
1343
- this.focusedOptionIndex.set(index);
1344
- this.scrollInView();
1345
- if (this.selectOnFocus()) {
1346
- this.onOptionSelect(event, this.visibleOptions()[index], false);
1347
- }
1348
- }
1349
- }
1350
- show(isFocus = false) {
1351
- this.dirty = true;
1352
- this.overlayVisible.set(true);
1353
- const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
1354
- this.focusedOptionIndex.set(focusedOptionIndex);
1355
- isFocus && focus(this.inputEL()?.nativeElement);
1356
- if (isFocus) {
1357
- focus(this.inputEL()?.nativeElement);
1358
- }
1359
- this.onShow.emit();
1360
- }
1361
- hide(isFocus = false) {
1362
- const _hide = () => {
1363
- this.dirty = isFocus;
1364
- this.overlayVisible.set(false);
1365
- this.focusedOptionIndex.set(-1);
1366
- isFocus && focus(this.inputEL()?.nativeElement);
1367
- this.onHide.emit();
1368
- this.updateInputWithForceSelection(null);
1369
- };
1370
- if (this.timeout) {
1371
- clearTimeout(this.timeout);
1372
- }
1373
- this.timeout = setTimeout(() => {
1374
- _hide();
1375
- }, 0); // For ScreenReaders
1376
- }
1377
- clear() {
1378
- this.updateModel(null);
1379
- this.inputEL()?.nativeElement && (this.inputEL().nativeElement.value = '');
1380
- this.onClear.emit();
1381
- this.overlayVisible() && this.hide();
1382
- }
1383
- hasSelectedOption() {
1384
- return isNotEmpty(this.modelValue());
1385
- }
1386
- getAriaPosInset(index) {
1387
- return ((this.optionGroupLabel()
1388
- ? index -
1389
- this.visibleOptions()
1390
- .slice(0, index)
1391
- .filter((option) => this.isOptionGroup(option)).length
1392
- : index) + 1);
1393
- }
1394
- getOptionLabel(option) {
1395
- const optionLabel = this.optionLabel();
1396
- return optionLabel ? resolveFieldData(option, optionLabel) : option && option.label != undefined ? option.label : option;
1397
- }
1398
- getOptionValue(option) {
1399
- const optionValue = this.optionValue();
1400
- return optionValue ? resolveFieldData(option, optionValue) : option && option.value != undefined ? option.value : option;
1401
- }
1402
- getChipTrackKey(option) {
1403
- return option != null && typeof option === 'object' ? this.getOptionValue(option) : option;
1404
- }
1405
- getOptionIndex(index, scrollerOptions) {
1406
- return this.virtualScrollerDisabled ? index : scrollerOptions && scrollerOptions.getItemOptions(index)['index'];
1407
- }
1408
- getOptionGroupLabel(optionGroup) {
1409
- const optionGroupLabel = this.optionGroupLabel();
1410
- return optionGroupLabel ? resolveFieldData(optionGroup, optionGroupLabel) : optionGroup && optionGroup.label != undefined ? optionGroup.label : optionGroup;
1411
- }
1412
- getOptionGroupChildren(optionGroup) {
1413
- const optionGroupChildren = this.optionGroupChildren();
1414
- return optionGroupChildren ? resolveFieldData(optionGroup, optionGroupChildren) : optionGroup.items;
1415
- }
1416
- getPTOptions(option, scrollerOptions, index, key) {
1417
- return this.ptm(key, {
1418
- context: {
1419
- option,
1420
- index: this.getOptionIndex(index, scrollerOptions),
1421
- selected: this.isSelected(option),
1422
- focused: this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions),
1423
- disabled: this.isOptionDisabled(option)
1424
- }
1425
- });
1426
- }
1427
- getSelectedItemContext(option) {
1428
- return { $implicit: option };
1429
- }
1430
- getRemoveIconContext(index) {
1431
- return { removeCallback: this.removeOption.bind(this), index, class: this.cx('chipIcon') };
1432
- }
1433
- getGroupContext(optionGroup) {
1434
- return { $implicit: optionGroup };
1435
- }
1436
- getItemContext(option, index, scrollerOptions) {
1437
- return {
1438
- $implicit: option,
1439
- index: scrollerOptions.getOptions ? scrollerOptions.getOptions(index) : index
1440
- };
1441
- }
1442
- getLoaderContext(scrollerOptions) {
1443
- return { options: scrollerOptions };
1444
- }
1445
- getBuildInItemsContext(items, scrollerOptions) {
1446
- return { $implicit: items, options: scrollerOptions };
1447
- }
1448
- shouldShowEmptyMessage(items) {
1449
- return !items || (items.length === 0 && this.showEmptyMessage());
1450
- }
1451
- getItemStyle(scrollerOptions) {
1452
- return { height: scrollerOptions.itemSize + 'px' };
1453
- }
1454
- getChipLabel(option) {
1455
- return !this.selectedItemTemplate() && this.getOptionLabel(option);
1456
- }
1457
- getMultipleOptionId(index) {
1458
- return this.$id() + '_multiple_option_' + index;
1459
- }
1460
- getOptionElementId(index, scrollerOptions) {
1461
- return this.$id() + '_' + this.getOptionIndex(index, scrollerOptions);
1462
- }
1463
- isOptionFocused(index, scrollerOptions) {
1464
- return this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions);
1465
- }
1466
- getAriaControls() {
1467
- return this.overlayVisible() ? this.$listId() : null;
1468
- }
1469
- getAriaActiveDescendant() {
1470
- return this.focused() ? this.focusedOptionId : undefined;
1471
- }
1472
- getMultipleAriaActiveDescendant() {
1473
- return this.focused() ? this.focusedMultipleOptionId : undefined;
1474
- }
1475
- getMultiplePlaceholder() {
1476
- return !this.$filled() ? this.placeholder() : null;
1477
- }
1478
- getListContainerMaxHeight() {
1479
- return this.virtualScroll() ? 'auto' : this.scrollHeight();
1480
- }
1481
- onOverlayBeforeEnter() {
1482
- this.itemsWrapper = findSingle(this.overlayViewChild()?.overlayViewChild()?.nativeElement, this.virtualScroll() ? '[data-pc-name="virtualscroller"]' : '[data-pc-name="pcoverlay"]');
1483
- if (this.virtualScroll()) {
1484
- this.scroller()?.setContentEl(this.itemsViewChild()?.nativeElement);
1485
- this.scroller()?.viewInit();
1486
- }
1487
- if (this.visibleOptions() && this.visibleOptions().length) {
1488
- if (this.virtualScroll()) {
1489
- const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
1490
- if (selectedIndex !== -1) {
1491
- this.scroller()?.scrollToIndex(selectedIndex);
1492
- }
1493
- }
1494
- else {
1495
- let selectedListItem = findSingle(this.itemsWrapper, '[data-pc-section="option"][data-p-selected="true"]');
1496
- if (selectedListItem) {
1497
- selectedListItem.scrollIntoView({ block: 'nearest', inline: 'center' });
1498
- }
1499
- }
1500
- }
1501
- }
1502
- get containerDataP() {
1503
- return this.cn({
1504
- fluid: this.hasFluid
1505
- });
1506
- }
1507
- get overlayDataP() {
1508
- return this.cn({
1509
- [`overlay-${this.$appendTo()}`]: true
1510
- });
1511
- }
1512
- get inputMultipleDataP() {
1513
- return this.cn({
1514
- invalid: this.invalid(),
1515
- disabled: this.$disabled(),
1516
- focus: this.focused(),
1517
- fluid: this.hasFluid,
1518
- filled: this.$variant() === 'filled',
1519
- empty: !this.$filled(),
1520
- [this.size()]: this.size()
1521
- });
1522
- }
1523
- /**
1524
- * @override
1525
- *
1526
- * @see {@link BaseEditableHolder.writeControlValue}
1527
- * Writes the value to the control.
1528
- */
1529
- writeControlValue(value, setModelValue) {
1530
- if (this.multiple()) {
1531
- const resolved = (value || []).map((val) => {
1532
- const match = this.visibleOptions().find((option) => equals(val, option, this.equalityKey()));
1533
- return match ?? val;
1534
- });
1535
- setModelValue(isEmpty(value) ? value : resolved);
1536
- }
1537
- else {
1538
- const option = this.visibleOptions().find((option) => equals(value, option, this.equalityKey()));
1539
- setModelValue(isEmpty(option) ? value : option);
1540
- }
1541
- this.value = value;
1542
- this.updateInputValue();
1543
- }
1544
- onDestroy() {
1545
- if (this.searchTimeout) {
1546
- clearTimeout(this.searchTimeout);
1547
- }
1548
- if (this.timeout) {
1549
- clearTimeout(this.timeout);
1550
- }
1551
- if (this.scrollHandler) {
1552
- this.scrollHandler.destroy();
1553
- this.scrollHandler = null;
1554
- }
1555
- }
1556
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: AutoComplete, deps: [], target: i0.ɵɵFactoryTarget.Component });
1557
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", 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: `
1558
1658
  @if (!multiple()) {
1559
1659
  <input
1560
1660
  #focusInput
@@ -1825,15 +1925,202 @@ class AutoComplete extends BaseInput {
1825
1925
  </span>
1826
1926
  </ng-template>
1827
1927
  </p-overlay>
1828
- `, 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 });
1829
- }
1830
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: AutoComplete, decorators: [{
1831
- type: Component,
1832
- args: [{
1833
- selector: 'p-autocomplete, p-auto-complete',
1834
- standalone: true,
1835
- imports: [NgTemplateOutlet, Overlay, InputText, Ripple, Scroller, AutoFocus, TimesCircle, Spinner, ChevronDown, Chip, SharedModule, Times, BindModule],
1836
- 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: `
1837
2124
  @if (!multiple()) {
1838
2125
  <input
1839
2126
  #focusInput
@@ -2105,36 +2392,691 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
2105
2392
  </ng-template>
2106
2393
  </p-overlay>
2107
2394
  `,
2108
- providers: [AUTOCOMPLETE_VALUE_ACCESSOR, AutoCompleteStyle, { provide: AUTOCOMPLETE_INSTANCE, useExisting: AutoComplete }, { provide: PARENT_INSTANCE, useExisting: AutoComplete }],
2109
- changeDetection: ChangeDetectionStrategy.OnPush,
2110
- encapsulation: ViewEncapsulation.None,
2111
- host: {
2112
- '[class]': "cx('root')",
2113
- '[style]': "sx('root')",
2114
- '[attr.data-p]': 'containerDataP'
2115
- },
2116
- hostDirectives: [Bind]
2117
- }]
2118
- }], 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: [{
2119
- type: HostListener,
2120
- args: ['click', ['$event']]
2121
- }] } });
2122
- class AutoCompleteModule {
2123
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: AutoCompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2124
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: AutoCompleteModule, imports: [AutoComplete, SharedModule], exports: [AutoComplete, SharedModule] });
2125
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: AutoCompleteModule, imports: [AutoComplete, SharedModule, SharedModule] });
2126
- }
2127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: AutoCompleteModule, decorators: [{
2128
- type: NgModule,
2129
- args: [{
2130
- imports: [AutoComplete, SharedModule],
2131
- exports: [AutoComplete, SharedModule]
2132
- }]
2133
- }] });
2134
-
2135
- /**
2136
- * Generated bundle index. Do not edit.
2137
- */
2138
-
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
+ });
2139
3080
  export { AUTOCOMPLETE_VALUE_ACCESSOR, AutoComplete, AutoCompleteClasses, AutoCompleteModule, AutoCompleteStyle };
2140
- //# sourceMappingURL=primeng-autocomplete.mjs.map
3081
+
3082
+ //# sourceMappingURL=primeng-autocomplete.mjs.map