primevue 4.1.1 → 4.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. package/accordion/index.mjs.map +1 -1
  2. package/accordion/style/index.mjs +1 -1
  3. package/accordion/style/index.mjs.map +1 -1
  4. package/accordioncontent/index.mjs.map +1 -1
  5. package/accordioncontent/style/index.mjs.map +1 -1
  6. package/accordionheader/index.mjs.map +1 -1
  7. package/accordionheader/style/index.mjs.map +1 -1
  8. package/accordionpanel/index.mjs.map +1 -1
  9. package/accordionpanel/style/index.mjs.map +1 -1
  10. package/accordiontab/index.mjs.map +1 -1
  11. package/accordiontab/style/index.mjs.map +1 -1
  12. package/animateonscroll/index.mjs.map +1 -1
  13. package/animateonscroll/style/index.mjs.map +1 -1
  14. package/autocomplete/AutoComplete.vue +36 -32
  15. package/autocomplete/BaseAutoComplete.vue +2 -19
  16. package/autocomplete/index.d.ts +21 -0
  17. package/autocomplete/index.mjs +40 -53
  18. package/autocomplete/index.mjs.map +1 -1
  19. package/autocomplete/style/index.mjs +7 -7
  20. package/autocomplete/style/index.mjs.map +1 -1
  21. package/avatar/index.mjs.map +1 -1
  22. package/avatar/style/index.mjs +1 -1
  23. package/avatar/style/index.mjs.map +1 -1
  24. package/avatargroup/index.mjs.map +1 -1
  25. package/avatargroup/style/index.mjs.map +1 -1
  26. package/badge/index.mjs.map +1 -1
  27. package/badge/style/index.mjs.map +1 -1
  28. package/badgedirective/index.d.ts +2 -2
  29. package/badgedirective/index.mjs.map +1 -1
  30. package/badgedirective/style/index.mjs.map +1 -1
  31. package/blockui/index.mjs.map +1 -1
  32. package/blockui/style/index.mjs.map +1 -1
  33. package/breadcrumb/Breadcrumb.vue +1 -1
  34. package/breadcrumb/index.mjs +2 -1
  35. package/breadcrumb/index.mjs.map +1 -1
  36. package/breadcrumb/style/index.d.ts +4 -0
  37. package/breadcrumb/style/index.mjs +2 -1
  38. package/breadcrumb/style/index.mjs.map +1 -1
  39. package/button/BaseButton.vue +4 -0
  40. package/button/index.d.ts +6 -0
  41. package/button/index.mjs +4 -0
  42. package/button/index.mjs.map +1 -1
  43. package/button/style/index.mjs +3 -3
  44. package/button/style/index.mjs.map +1 -1
  45. package/buttongroup/index.mjs.map +1 -1
  46. package/buttongroup/style/index.mjs +1 -1
  47. package/buttongroup/style/index.mjs.map +1 -1
  48. package/calendar/index.mjs.map +1 -1
  49. package/calendar/style/index.mjs.map +1 -1
  50. package/card/index.mjs.map +1 -1
  51. package/card/style/index.mjs.map +1 -1
  52. package/carousel/index.mjs.map +1 -1
  53. package/carousel/style/index.mjs +1 -1
  54. package/carousel/style/index.mjs.map +1 -1
  55. package/cascadeselect/BaseCascadeSelect.vue +8 -14
  56. package/cascadeselect/CascadeSelect.vue +34 -25
  57. package/cascadeselect/index.d.ts +45 -0
  58. package/cascadeselect/index.mjs +50 -38
  59. package/cascadeselect/index.mjs.map +1 -1
  60. package/cascadeselect/style/index.d.ts +4 -0
  61. package/cascadeselect/style/index.mjs +8 -5
  62. package/cascadeselect/style/index.mjs.map +1 -1
  63. package/chart/index.mjs.map +1 -1
  64. package/chart/style/index.mjs.map +1 -1
  65. package/checkbox/BaseCheckbox.vue +2 -19
  66. package/checkbox/Checkbox.vue +18 -6
  67. package/checkbox/index.d.ts +17 -0
  68. package/checkbox/index.mjs +20 -25
  69. package/checkbox/index.mjs.map +1 -1
  70. package/checkbox/style/index.mjs +5 -3
  71. package/checkbox/style/index.mjs.map +1 -1
  72. package/checkboxgroup/BaseCheckboxGroup.vue +16 -0
  73. package/checkboxgroup/CheckboxGroup.vue +29 -0
  74. package/checkboxgroup/index.d.ts +160 -0
  75. package/checkboxgroup/index.mjs +46 -0
  76. package/checkboxgroup/index.mjs.map +1 -0
  77. package/checkboxgroup/package.json +11 -0
  78. package/checkboxgroup/style/index.d.ts +19 -0
  79. package/checkboxgroup/style/index.mjs +17 -0
  80. package/checkboxgroup/style/index.mjs.map +1 -0
  81. package/checkboxgroup/style/package.json +6 -0
  82. package/chip/index.mjs.map +1 -1
  83. package/chip/style/index.mjs +1 -1
  84. package/chip/style/index.mjs.map +1 -1
  85. package/chips/index.mjs.map +1 -1
  86. package/chips/style/index.mjs.map +1 -1
  87. package/colorpicker/BaseColorPicker.vue +2 -10
  88. package/colorpicker/ColorPicker.vue +7 -4
  89. package/colorpicker/index.d.ts +22 -0
  90. package/colorpicker/index.mjs +21 -23
  91. package/colorpicker/index.mjs.map +1 -1
  92. package/colorpicker/style/index.mjs +5 -3
  93. package/colorpicker/style/index.mjs.map +1 -1
  94. package/column/index.mjs.map +1 -1
  95. package/column/style/index.mjs.map +1 -1
  96. package/columngroup/index.mjs.map +1 -1
  97. package/columngroup/style/index.mjs.map +1 -1
  98. package/config/index.d.ts +4 -0
  99. package/confirmationservice/index.mjs.map +1 -1
  100. package/confirmdialog/index.mjs.map +1 -1
  101. package/confirmdialog/style/index.mjs.map +1 -1
  102. package/confirmpopup/index.mjs.map +1 -1
  103. package/confirmpopup/style/index.mjs +1 -1
  104. package/confirmpopup/style/index.mjs.map +1 -1
  105. package/contextmenu/index.mjs.map +1 -1
  106. package/contextmenu/style/index.mjs +1 -1
  107. package/contextmenu/style/index.mjs.map +1 -1
  108. package/datatable/BodyCell.vue +15 -6
  109. package/datatable/DataTable.vue +56 -2
  110. package/datatable/FooterCell.vue +15 -6
  111. package/datatable/HeaderCell.vue +15 -6
  112. package/datatable/index.d.ts +12 -8
  113. package/datatable/index.mjs +163 -78
  114. package/datatable/index.mjs.map +1 -1
  115. package/datatable/style/index.mjs +1 -1
  116. package/datatable/style/index.mjs.map +1 -1
  117. package/dataview/DataView.vue +33 -1
  118. package/dataview/index.d.ts +4 -0
  119. package/dataview/index.mjs +42 -6
  120. package/dataview/index.mjs.map +1 -1
  121. package/dataview/style/index.mjs.map +1 -1
  122. package/datepicker/BaseDatePicker.vue +2 -23
  123. package/datepicker/DatePicker.vue +39 -40
  124. package/datepicker/index.d.ts +21 -4
  125. package/datepicker/index.mjs +45 -65
  126. package/datepicker/index.mjs.map +1 -1
  127. package/datepicker/style/index.mjs +4 -5
  128. package/datepicker/style/index.mjs.map +1 -1
  129. package/deferredcontent/index.mjs.map +1 -1
  130. package/deferredcontent/style/index.mjs.map +1 -1
  131. package/dialog/index.mjs.map +1 -1
  132. package/dialog/style/index.mjs +1 -1
  133. package/dialog/style/index.mjs.map +1 -1
  134. package/dialogservice/index.mjs.map +1 -1
  135. package/divider/index.mjs.map +1 -1
  136. package/divider/style/index.mjs +1 -1
  137. package/divider/style/index.mjs.map +1 -1
  138. package/dock/index.mjs.map +1 -1
  139. package/dock/style/index.mjs +1 -1
  140. package/dock/style/index.mjs.map +1 -1
  141. package/drawer/index.mjs.map +1 -1
  142. package/drawer/style/index.mjs +1 -1
  143. package/drawer/style/index.mjs.map +1 -1
  144. package/dropdown/index.mjs.map +1 -1
  145. package/dropdown/style/index.mjs.map +1 -1
  146. package/dynamicdialog/index.mjs.map +1 -1
  147. package/dynamicdialog/style/index.mjs.map +1 -1
  148. package/editor/BaseEditor.vue +2 -3
  149. package/editor/Editor.vue +3 -3
  150. package/editor/index.d.ts +22 -0
  151. package/editor/index.mjs +5 -6
  152. package/editor/index.mjs.map +1 -1
  153. package/editor/style/index.mjs +7 -2
  154. package/editor/style/index.mjs.map +1 -1
  155. package/fieldset/index.mjs.map +1 -1
  156. package/fieldset/style/index.mjs +1 -1
  157. package/fieldset/style/index.mjs.map +1 -1
  158. package/fileupload/index.mjs.map +1 -1
  159. package/fileupload/style/index.mjs +1 -1
  160. package/fileupload/style/index.mjs.map +1 -1
  161. package/floatlabel/index.mjs.map +1 -1
  162. package/floatlabel/style/index.mjs +1 -1
  163. package/floatlabel/style/index.mjs.map +1 -1
  164. package/fluid/index.mjs.map +1 -1
  165. package/fluid/style/index.mjs.map +1 -1
  166. package/focustrap/index.mjs.map +1 -1
  167. package/focustrap/style/index.mjs.map +1 -1
  168. package/galleria/index.mjs.map +1 -1
  169. package/galleria/style/index.mjs +1 -1
  170. package/galleria/style/index.mjs.map +1 -1
  171. package/iconfield/index.mjs.map +1 -1
  172. package/iconfield/style/index.mjs +1 -1
  173. package/iconfield/style/index.mjs.map +1 -1
  174. package/iftalabel/index.mjs.map +1 -1
  175. package/iftalabel/style/index.mjs +1 -1
  176. package/iftalabel/style/index.mjs.map +1 -1
  177. package/image/index.mjs.map +1 -1
  178. package/image/style/index.mjs +1 -1
  179. package/image/style/index.mjs.map +1 -1
  180. package/imagecompare/ImageCompare.vue +33 -1
  181. package/imagecompare/index.mjs +35 -1
  182. package/imagecompare/index.mjs.map +1 -1
  183. package/imagecompare/style/index.mjs +1 -1
  184. package/imagecompare/style/index.mjs.map +1 -1
  185. package/index.d.ts +811 -0
  186. package/index.mjs +531 -0
  187. package/index.mjs.map +1 -0
  188. package/inlinemessage/index.mjs.map +1 -1
  189. package/inlinemessage/style/index.mjs.map +1 -1
  190. package/inplace/index.d.ts +0 -4
  191. package/inplace/index.mjs.map +1 -1
  192. package/inplace/style/index.mjs.map +1 -1
  193. package/inputchips/index.mjs.map +1 -1
  194. package/inputchips/style/index.mjs.map +1 -1
  195. package/inputgroup/index.mjs.map +1 -1
  196. package/inputgroup/style/index.mjs +1 -1
  197. package/inputgroup/style/index.mjs.map +1 -1
  198. package/inputgroupaddon/index.mjs.map +1 -1
  199. package/inputgroupaddon/style/index.mjs.map +1 -1
  200. package/inputicon/index.mjs.map +1 -1
  201. package/inputicon/style/index.mjs.map +1 -1
  202. package/inputmask/BaseInputMask.vue +2 -23
  203. package/inputmask/InputMask.vue +9 -14
  204. package/inputmask/index.d.ts +13 -0
  205. package/inputmask/index.mjs +13 -38
  206. package/inputmask/index.mjs.map +1 -1
  207. package/inputmask/style/index.mjs +1 -1
  208. package/inputmask/style/index.mjs.map +1 -1
  209. package/inputnumber/BaseInputNumber.vue +2 -22
  210. package/inputnumber/InputNumber.vue +14 -16
  211. package/inputnumber/index.d.ts +26 -0
  212. package/inputnumber/index.mjs +22 -39
  213. package/inputnumber/index.mjs.map +1 -1
  214. package/inputnumber/style/index.mjs +3 -3
  215. package/inputnumber/style/index.mjs.map +1 -1
  216. package/inputotp/BaseInputOtp.vue +2 -18
  217. package/inputotp/InputOtp.vue +4 -2
  218. package/inputotp/index.d.ts +21 -0
  219. package/inputotp/index.mjs +7 -21
  220. package/inputotp/index.mjs.map +1 -1
  221. package/inputotp/style/index.mjs +2 -2
  222. package/inputotp/style/index.mjs.map +1 -1
  223. package/inputswitch/index.mjs.map +1 -1
  224. package/inputswitch/style/index.mjs.map +1 -1
  225. package/inputtext/BaseInputText.vue +2 -21
  226. package/inputtext/InputText.vue +13 -22
  227. package/inputtext/index.d.ts +17 -0
  228. package/inputtext/index.mjs +16 -48
  229. package/inputtext/index.mjs.map +1 -1
  230. package/inputtext/style/index.mjs +7 -7
  231. package/inputtext/style/index.mjs.map +1 -1
  232. package/keyfilter/index.mjs.map +1 -1
  233. package/keyfilter/style/index.mjs.map +1 -1
  234. package/knob/BaseKnob.vue +2 -10
  235. package/knob/Knob.vue +23 -19
  236. package/knob/index.d.ts +24 -2
  237. package/knob/index.mjs +31 -32
  238. package/knob/index.mjs.map +1 -1
  239. package/knob/style/index.mjs +4 -2
  240. package/knob/style/index.mjs.map +1 -1
  241. package/listbox/BaseListbox.vue +2 -11
  242. package/listbox/Listbox.vue +21 -20
  243. package/listbox/index.d.ts +17 -0
  244. package/listbox/index.mjs +23 -31
  245. package/listbox/index.mjs.map +1 -1
  246. package/listbox/style/index.mjs +4 -3
  247. package/listbox/style/index.mjs.map +1 -1
  248. package/megamenu/index.mjs.map +1 -1
  249. package/megamenu/style/index.mjs +1 -1
  250. package/megamenu/style/index.mjs.map +1 -1
  251. package/menu/index.mjs.map +1 -1
  252. package/menu/style/index.mjs +1 -1
  253. package/menu/style/index.mjs.map +1 -1
  254. package/menubar/index.mjs.map +1 -1
  255. package/menubar/style/index.mjs +1 -1
  256. package/menubar/style/index.mjs.map +1 -1
  257. package/message/BaseMessage.vue +8 -0
  258. package/message/index.d.ts +9 -0
  259. package/message/index.mjs +8 -0
  260. package/message/index.mjs.map +1 -1
  261. package/message/style/index.mjs +7 -2
  262. package/message/style/index.mjs.map +1 -1
  263. package/metergroup/index.mjs.map +1 -1
  264. package/metergroup/style/index.mjs +1 -1
  265. package/metergroup/style/index.mjs.map +1 -1
  266. package/multiselect/BaseMultiSelect.vue +14 -19
  267. package/multiselect/MultiSelect.vue +45 -31
  268. package/multiselect/index.d.ts +50 -0
  269. package/multiselect/index.mjs +71 -52
  270. package/multiselect/index.mjs.map +1 -1
  271. package/multiselect/style/index.d.ts +4 -0
  272. package/multiselect/style/index.mjs +8 -5
  273. package/multiselect/style/index.mjs.map +1 -1
  274. package/orderlist/index.mjs.map +1 -1
  275. package/orderlist/style/index.mjs.map +1 -1
  276. package/organizationchart/index.mjs.map +1 -1
  277. package/organizationchart/style/index.mjs +1 -1
  278. package/organizationchart/style/index.mjs.map +1 -1
  279. package/overlaybadge/index.mjs.map +1 -1
  280. package/overlaybadge/style/index.mjs +1 -1
  281. package/overlaybadge/style/index.mjs.map +1 -1
  282. package/overlaypanel/index.mjs.map +1 -1
  283. package/overlaypanel/style/index.mjs.map +1 -1
  284. package/package.json +15 -6
  285. package/paginator/Paginator.vue +104 -84
  286. package/paginator/index.d.ts +54 -0
  287. package/paginator/index.mjs +21 -3
  288. package/paginator/index.mjs.map +1 -1
  289. package/paginator/style/index.mjs +1 -1
  290. package/paginator/style/index.mjs.map +1 -1
  291. package/panel/index.mjs.map +1 -1
  292. package/panel/style/index.mjs.map +1 -1
  293. package/panelmenu/index.mjs.map +1 -1
  294. package/panelmenu/style/index.mjs +1 -1
  295. package/panelmenu/style/index.mjs.map +1 -1
  296. package/passthrough/index.mjs.map +1 -1
  297. package/password/BasePassword.vue +2 -15
  298. package/password/Password.vue +13 -18
  299. package/password/index.d.ts +21 -0
  300. package/password/index.mjs +14 -32
  301. package/password/index.mjs.map +1 -1
  302. package/password/style/index.mjs +3 -3
  303. package/password/style/index.mjs.map +1 -1
  304. package/picklist/index.mjs.map +1 -1
  305. package/picklist/style/index.mjs.map +1 -1
  306. package/popover/index.mjs.map +1 -1
  307. package/popover/style/index.mjs +1 -1
  308. package/popover/style/index.mjs.map +1 -1
  309. package/portal/index.mjs.map +1 -1
  310. package/portal/style/index.mjs.map +1 -1
  311. package/progressbar/index.mjs.map +1 -1
  312. package/progressbar/style/index.mjs +1 -1
  313. package/progressbar/style/index.mjs.map +1 -1
  314. package/progressspinner/index.mjs.map +1 -1
  315. package/progressspinner/style/index.mjs.map +1 -1
  316. package/radiobutton/BaseRadioButton.vue +2 -19
  317. package/radiobutton/RadioButton.vue +15 -4
  318. package/radiobutton/index.d.ts +17 -0
  319. package/radiobutton/index.mjs +17 -23
  320. package/radiobutton/index.mjs.map +1 -1
  321. package/radiobutton/style/index.mjs +5 -3
  322. package/radiobutton/style/index.mjs.map +1 -1
  323. package/radiobuttongroup/BaseRadioButtonGroup.vue +16 -0
  324. package/radiobuttongroup/RadioButtonGroup.vue +29 -0
  325. package/radiobuttongroup/index.d.ts +160 -0
  326. package/radiobuttongroup/index.mjs +46 -0
  327. package/radiobuttongroup/index.mjs.map +1 -0
  328. package/radiobuttongroup/package.json +11 -0
  329. package/radiobuttongroup/style/index.d.ts +19 -0
  330. package/radiobuttongroup/style/index.mjs +17 -0
  331. package/radiobuttongroup/style/index.mjs.map +1 -0
  332. package/radiobuttongroup/style/package.json +6 -0
  333. package/rating/BaseRating.vue +2 -10
  334. package/rating/Rating.vue +17 -16
  335. package/rating/index.d.ts +18 -0
  336. package/rating/index.mjs +17 -23
  337. package/rating/index.mjs.map +1 -1
  338. package/rating/style/index.mjs +14 -5
  339. package/rating/style/index.mjs.map +1 -1
  340. package/ripple/index.mjs.map +1 -1
  341. package/ripple/style/index.mjs.map +1 -1
  342. package/row/index.mjs.map +1 -1
  343. package/row/style/index.mjs.map +1 -1
  344. package/scrollpanel/ScrollPanel.vue +38 -5
  345. package/scrollpanel/index.mjs +58 -28
  346. package/scrollpanel/index.mjs.map +1 -1
  347. package/scrollpanel/style/index.mjs +1 -1
  348. package/scrollpanel/style/index.mjs.map +1 -1
  349. package/scrolltop/index.mjs.map +1 -1
  350. package/scrolltop/style/index.mjs +1 -1
  351. package/scrolltop/style/index.mjs.map +1 -1
  352. package/select/BaseSelect.vue +2 -19
  353. package/select/Select.vue +15 -19
  354. package/select/index.d.ts +21 -0
  355. package/select/index.mjs +18 -40
  356. package/select/index.mjs.map +1 -1
  357. package/select/style/index.mjs +7 -5
  358. package/select/style/index.mjs.map +1 -1
  359. package/selectbutton/BaseSelectButton.vue +6 -8
  360. package/selectbutton/SelectButton.vue +9 -8
  361. package/selectbutton/index.d.ts +21 -0
  362. package/selectbutton/index.mjs +15 -16
  363. package/selectbutton/index.mjs.map +1 -1
  364. package/selectbutton/style/index.mjs +3 -3
  365. package/selectbutton/style/index.mjs.map +1 -1
  366. package/sidebar/index.mjs.map +1 -1
  367. package/sidebar/style/index.mjs.map +1 -1
  368. package/skeleton/index.mjs.map +1 -1
  369. package/skeleton/style/index.mjs +1 -1
  370. package/skeleton/style/index.mjs.map +1 -1
  371. package/slider/BaseSlider.vue +2 -7
  372. package/slider/Slider.vue +94 -38
  373. package/slider/index.d.ts +22 -0
  374. package/slider/index.mjs +145 -72
  375. package/slider/index.mjs.map +1 -1
  376. package/slider/style/index.mjs +4 -2
  377. package/slider/style/index.mjs.map +1 -1
  378. package/speeddial/index.mjs.map +1 -1
  379. package/speeddial/style/index.mjs +1 -1
  380. package/speeddial/style/index.mjs.map +1 -1
  381. package/splitbutton/index.mjs.map +1 -1
  382. package/splitbutton/style/index.mjs +1 -1
  383. package/splitbutton/style/index.mjs.map +1 -1
  384. package/splitter/Splitter.vue +31 -3
  385. package/splitter/index.mjs +50 -20
  386. package/splitter/index.mjs.map +1 -1
  387. package/splitter/style/index.mjs.map +1 -1
  388. package/splitterpanel/index.mjs.map +1 -1
  389. package/splitterpanel/style/index.mjs.map +1 -1
  390. package/step/index.mjs.map +1 -1
  391. package/step/style/index.mjs.map +1 -1
  392. package/stepitem/index.mjs.map +1 -1
  393. package/stepitem/style/index.mjs.map +1 -1
  394. package/steplist/index.mjs.map +1 -1
  395. package/steplist/style/index.mjs.map +1 -1
  396. package/steppanel/index.mjs.map +1 -1
  397. package/steppanel/style/index.mjs.map +1 -1
  398. package/steppanels/index.mjs.map +1 -1
  399. package/steppanels/style/index.mjs.map +1 -1
  400. package/stepper/index.mjs.map +1 -1
  401. package/stepper/style/index.mjs +1 -1
  402. package/stepper/style/index.mjs.map +1 -1
  403. package/steps/index.mjs.map +1 -1
  404. package/steps/style/index.mjs +1 -1
  405. package/steps/style/index.mjs.map +1 -1
  406. package/styleclass/index.mjs.map +1 -1
  407. package/styleclass/style/index.mjs.map +1 -1
  408. package/tab/index.mjs.map +1 -1
  409. package/tab/style/index.mjs.map +1 -1
  410. package/tablist/TabList.vue +40 -5
  411. package/tablist/index.mjs +38 -5
  412. package/tablist/index.mjs.map +1 -1
  413. package/tablist/style/index.mjs.map +1 -1
  414. package/tabmenu/index.mjs.map +1 -1
  415. package/tabmenu/style/index.mjs.map +1 -1
  416. package/tabpanel/index.mjs.map +1 -1
  417. package/tabpanel/style/index.mjs.map +1 -1
  418. package/tabpanels/index.mjs.map +1 -1
  419. package/tabpanels/style/index.mjs.map +1 -1
  420. package/tabs/index.mjs.map +1 -1
  421. package/tabs/style/index.mjs +1 -1
  422. package/tabs/style/index.mjs.map +1 -1
  423. package/tabview/index.mjs.map +1 -1
  424. package/tabview/style/index.mjs.map +1 -1
  425. package/tag/index.mjs.map +1 -1
  426. package/tag/style/index.mjs.map +1 -1
  427. package/terminal/index.mjs.map +1 -1
  428. package/terminal/style/index.mjs +1 -1
  429. package/terminal/style/index.mjs.map +1 -1
  430. package/textarea/BaseTextarea.vue +3 -16
  431. package/textarea/Textarea.vue +13 -19
  432. package/textarea/index.d.ts +21 -0
  433. package/textarea/index.mjs +14 -38
  434. package/textarea/index.mjs.map +1 -1
  435. package/textarea/style/index.mjs +7 -5
  436. package/textarea/style/index.mjs.map +1 -1
  437. package/tieredmenu/index.mjs.map +1 -1
  438. package/tieredmenu/style/index.mjs +1 -1
  439. package/tieredmenu/style/index.mjs.map +1 -1
  440. package/timeline/index.mjs.map +1 -1
  441. package/timeline/style/index.mjs.map +1 -1
  442. package/toast/Toast.vue +0 -1
  443. package/toast/index.mjs.map +1 -1
  444. package/toast/style/index.mjs +1 -1
  445. package/toast/style/index.mjs.map +1 -1
  446. package/toastservice/index.mjs.map +1 -1
  447. package/togglebutton/BaseToggleButton.vue +6 -11
  448. package/togglebutton/ToggleButton.vue +11 -7
  449. package/togglebutton/index.d.ts +21 -0
  450. package/togglebutton/index.mjs +20 -18
  451. package/togglebutton/index.mjs.map +1 -1
  452. package/togglebutton/style/index.mjs +4 -2
  453. package/togglebutton/style/index.mjs.map +1 -1
  454. package/toggleswitch/BaseToggleSwitch.vue +2 -14
  455. package/toggleswitch/ToggleSwitch.vue +4 -3
  456. package/toggleswitch/index.d.ts +17 -0
  457. package/toggleswitch/index.mjs +7 -17
  458. package/toggleswitch/index.mjs.map +1 -1
  459. package/toggleswitch/style/index.mjs +2 -2
  460. package/toggleswitch/style/index.mjs.map +1 -1
  461. package/toolbar/index.mjs.map +1 -1
  462. package/toolbar/style/index.mjs.map +1 -1
  463. package/tooltip/index.mjs.map +1 -1
  464. package/tooltip/style/index.mjs.map +1 -1
  465. package/tree/TreeNode.vue +1 -1
  466. package/tree/index.mjs +2 -2
  467. package/tree/index.mjs.map +1 -1
  468. package/tree/style/index.mjs +1 -1
  469. package/tree/style/index.mjs.map +1 -1
  470. package/treeselect/BaseTreeSelect.vue +18 -19
  471. package/treeselect/TreeSelect.vue +61 -18
  472. package/treeselect/index.d.ts +80 -26
  473. package/treeselect/index.mjs +87 -38
  474. package/treeselect/index.mjs.map +1 -1
  475. package/treeselect/style/index.d.ts +4 -0
  476. package/treeselect/style/index.mjs +8 -5
  477. package/treeselect/style/index.mjs.map +1 -1
  478. package/treetable/BodyCell.vue +21 -12
  479. package/treetable/FooterCell.vue +15 -6
  480. package/treetable/HeaderCell.vue +15 -6
  481. package/treetable/TreeTable.vue +57 -2
  482. package/treetable/index.d.ts +12 -8
  483. package/treetable/index.mjs +146 -59
  484. package/treetable/index.mjs.map +1 -1
  485. package/treetable/style/index.mjs +1 -1
  486. package/treetable/style/index.mjs.map +1 -1
  487. package/umd/primevue.min.js +1 -1
  488. package/useconfirm/index.mjs.map +1 -1
  489. package/usedialog/index.mjs.map +1 -1
  490. package/usetoast/index.mjs.map +1 -1
  491. package/virtualscroller/index.mjs.map +1 -1
  492. package/virtualscroller/style/index.mjs.map +1 -1
  493. package/web-types.json +1 -1
@@ -26,10 +26,13 @@
26
26
  />
27
27
  </div>
28
28
  <span :class="cx('label')" v-bind="ptm('label')">
29
- <slot name="value" :value="modelValue" :placeholder="placeholder">
29
+ <slot name="value" :value="d_value" :placeholder="placeholder">
30
30
  {{ label }}
31
31
  </slot>
32
32
  </span>
33
+ <slot v-if="isClearIconVisible" name="clearicon" :class="cx('clearIcon')" :clearCallback="onClearClick">
34
+ <component :is="clearIcon ? 'i' : 'TimesIcon'" ref="clearIcon" :class="[cx('clearIcon'), clearIcon]" @click="onClearClick" v-bind="ptm('clearIcon')" data-pc-section="clearicon" />
35
+ </slot>
33
36
  <div :class="cx('dropdown')" role="button" tabindex="-1" v-bind="ptm('dropdown')">
34
37
  <slot v-if="loading" name="loadingicon" :class="cx('loadingIcon')">
35
38
  <span v-if="loadingIcon" :class="[cx('loadingIcon'), 'pi-spin', loadingIcon]" aria-hidden="true" v-bind="ptm('loadingIcon')" />
@@ -53,7 +56,7 @@
53
56
  @keydown="onOverlayKeyDown"
54
57
  v-bind="{ ...panelProps, ...overlayProps, ...ptm('overlay') }"
55
58
  >
56
- <slot name="header" :value="modelValue" :options="options" />
59
+ <slot name="header" :value="d_value" :options="options" />
57
60
  <div :class="cx('listContainer')" v-bind="ptm('listContainer')">
58
61
  <CascadeSelectSub
59
62
  :id="id + '_tree'"
@@ -71,7 +74,7 @@
71
74
  :optionGroupIcon="optionGroupIcon"
72
75
  :optionGroupLabel="optionGroupLabel"
73
76
  :optionGroupChildren="optionGroupChildren"
74
- :value="modelValue"
77
+ :value="d_value"
75
78
  @option-change="onOptionClick"
76
79
  @option-focus-change="onOptionMouseMove"
77
80
  @option-focus-enter-change="onOptionMouseEnter"
@@ -82,7 +85,7 @@
82
85
  <span role="status" aria-live="polite" class="p-hidden-accessible" v-bind="ptm('hiddenSelectedMessage')" :data-p-hidden-accessible="true">
83
86
  {{ selectedMessageText }}
84
87
  </span>
85
- <slot name="footer" :value="modelValue" :options="options" />
88
+ <slot name="footer" :value="d_value" :options="options" />
86
89
  </div>
87
90
  </transition>
88
91
  </Portal>
@@ -101,15 +104,13 @@ import OverlayEventBus from 'primevue/overlayeventbus';
101
104
  import Portal from 'primevue/portal';
102
105
  import BaseCascadeSelect from './BaseCascadeSelect.vue';
103
106
  import CascadeSelectSub from './CascadeSelectSub.vue';
107
+ import TimesIcon from '@primevue/icons/times';
104
108
 
105
109
  export default {
106
110
  name: 'CascadeSelect',
107
111
  extends: BaseCascadeSelect,
108
112
  inheritAttrs: false,
109
- emits: ['update:modelValue', 'change', 'focus', 'blur', 'click', 'group-change', 'before-show', 'before-hide', 'hide', 'show'],
110
- inject: {
111
- $pcFluid: { default: null }
112
- },
113
+ emits: ['change', 'focus', 'blur', 'click', 'group-change', 'before-show', 'before-hide', 'hide', 'show'],
113
114
  outsideClickListener: null,
114
115
  matchMediaListener: null,
115
116
  scrollHandler: null,
@@ -193,9 +194,9 @@ export default {
193
194
  show(isFocus) {
194
195
  this.$emit('before-show');
195
196
  this.overlayVisible = true;
196
- this.activeOptionPath = this.hasSelectedOption ? this.findOptionPathByValue(this.modelValue) : this.activeOptionPath;
197
+ this.activeOptionPath = this.$filled ? this.findOptionPathByValue(this.d_value) : this.activeOptionPath;
197
198
 
198
- if (this.hasSelectedOption && isNotEmpty(this.activeOptionPath)) {
199
+ if (this.$filled && isNotEmpty(this.activeOptionPath)) {
199
200
  const processedOption = this.activeOptionPath[this.activeOptionPath.length - 1];
200
201
 
201
202
  this.focusedOptionInfo = { index: processedOption.index, level: processedOption.level, parentKey: processedOption.parentKey };
@@ -234,6 +235,7 @@ export default {
234
235
  this.focusedOptionInfo = { index: -1, level: 0, parentKey: '' };
235
236
  this.searchValue = '';
236
237
  this.$emit('blur', event);
238
+ this.formField.onBlur?.();
237
239
  },
238
240
  onKeyDown(event) {
239
241
  if (this.disabled || this.loading) {
@@ -357,7 +359,7 @@ export default {
357
359
  },
358
360
  onOptionMouseEnter(event) {
359
361
  if (this.focusOnHover) {
360
- if (this.dirty || (!this.dirty && isNotEmpty(this.modelValue))) {
362
+ if (this.dirty || (!this.dirty && isNotEmpty(this.d_value))) {
361
363
  this.onOptionChange({ ...event, type: 'hover' });
362
364
  } else if (!this.dirty && event.processedOption.level === 0) {
363
365
  this.onOptionClick({ ...event, type: 'hover' });
@@ -385,7 +387,9 @@ export default {
385
387
  return;
386
388
  }
387
389
 
388
- if (!this.overlay || !this.overlay.contains(event.target)) {
390
+ if (event.target.getAttribute('data-pc-section') === 'clearicon' || event.target.closest('[data-pc-section="clearicon"]')) {
391
+ return;
392
+ } else if (!this.overlay || !this.overlay.contains(event.target)) {
389
393
  this.overlayVisible ? this.hide() : this.show();
390
394
  focus(this.$refs.focusInput);
391
395
  }
@@ -393,6 +397,9 @@ export default {
393
397
  this.clicked = true;
394
398
  this.$emit('click', event);
395
399
  },
400
+ onClearClick(event) {
401
+ this.updateModel(event, null);
402
+ },
396
403
  onOverlayClick(event) {
397
404
  OverlayEventBus.emit('overlay-click', {
398
405
  originalEvent: event,
@@ -756,7 +763,7 @@ export default {
756
763
  });
757
764
  },
758
765
  autoUpdateModel() {
759
- if (this.selectOnFocus && this.autoOptionFocus && !this.hasSelectedOption) {
766
+ if (this.selectOnFocus && this.autoOptionFocus && !this.$filled) {
760
767
  this.focusedOptionInfo.index = this.findFirstFocusedOptionIndex();
761
768
  this.onOptionChange({ processedOption: this.visibleOptions[this.focusedOptionInfo.index], isHide: false });
762
769
 
@@ -764,7 +771,7 @@ export default {
764
771
  }
765
772
  },
766
773
  updateModel(event, value) {
767
- this.$emit('update:modelValue', value);
774
+ this.writeValue(value, event);
768
775
  this.$emit('change', { originalEvent: event, value });
769
776
  },
770
777
  createProcessedOptions(options, level = 0, parent = {}, parentKey = '') {
@@ -793,14 +800,15 @@ export default {
793
800
  }
794
801
  },
795
802
  computed: {
803
+ // @deprecated use $filled instead.
796
804
  hasSelectedOption() {
797
- return isNotEmpty(this.modelValue);
805
+ return this.$filled;
798
806
  },
799
807
  label() {
800
808
  const label = this.placeholder || 'p-emptylabel';
801
809
 
802
- if (this.hasSelectedOption) {
803
- const activeOptionPath = this.findOptionPathByValue(this.modelValue);
810
+ if (this.$filled) {
811
+ const activeOptionPath = this.findOptionPathByValue(this.d_value);
804
812
  const processedOption = isNotEmpty(activeOptionPath) ? activeOptionPath[activeOptionPath.length - 1] : null;
805
813
 
806
814
  return processedOption ? this.getOptionLabel(processedOption.option) : label;
@@ -838,21 +846,22 @@ export default {
838
846
  return this.emptySelectionMessage || this.$primevue.config.locale.emptySelectionMessage || '';
839
847
  },
840
848
  selectedMessageText() {
841
- return this.hasSelectedOption ? this.selectionMessageText.replaceAll('{0}', '1') : this.emptySelectionMessageText;
849
+ return this.$filled ? this.selectionMessageText.replaceAll('{0}', '1') : this.emptySelectionMessageText;
842
850
  },
843
851
  focusedOptionId() {
844
852
  return this.focusedOptionInfo.index !== -1 ? `${this.id}${isNotEmpty(this.focusedOptionInfo.parentKey) ? '_' + this.focusedOptionInfo.parentKey : ''}_${this.focusedOptionInfo.index}` : null;
845
853
  },
846
- hasFluid() {
847
- return isEmpty(this.fluid) ? !!this.$pcFluid : this.fluid;
854
+ isClearIconVisible() {
855
+ return this.showClear && this.d_value != null && isNotEmpty(this.options);
848
856
  }
849
857
  },
850
858
  components: {
851
- CascadeSelectSub: CascadeSelectSub,
852
- Portal: Portal,
853
- ChevronDownIcon: ChevronDownIcon,
854
- SpinnerIcon: SpinnerIcon,
855
- AngleRightIcon: AngleRightIcon
859
+ CascadeSelectSub,
860
+ Portal,
861
+ ChevronDownIcon,
862
+ SpinnerIcon,
863
+ AngleRightIcon,
864
+ TimesIcon
856
865
  }
857
866
  };
858
867
  </script>
@@ -88,6 +88,10 @@ export interface CascadeSelectPassThroughOptions {
88
88
  * Used to pass attributes to the label's DOM element.
89
89
  */
90
90
  label?: CascadeSelectPassThroughOptionType;
91
+ /**
92
+ * Used to pass attributes to the label's DOM element.
93
+ */
94
+ clearIcon?: CascadeSelectPassThroughOptionType;
91
95
  /**
92
96
  * Used to pass attributes to the dropdown button's DOM element.
93
97
  */
@@ -263,6 +267,14 @@ export interface CascadeSelectProps {
263
267
  * Value of the component.
264
268
  */
265
269
  modelValue?: any | undefined;
270
+ /**
271
+ * The default value for the input when not controlled by `modelValue`.
272
+ */
273
+ defaultValue?: any | undefined;
274
+ /**
275
+ * The name attribute for the element, typically used in form submissions.
276
+ */
277
+ name?: string | undefined;
266
278
  /**
267
279
  * An array of selectitems to display as the available options.
268
280
  */
@@ -296,6 +308,10 @@ export interface CascadeSelectProps {
296
308
  * @defaultValue 960px
297
309
  */
298
310
  breakpoint?: string | undefined;
311
+ /**
312
+ * Defines the size of the component.
313
+ */
314
+ size?: 'small' | 'large' | undefined;
299
315
  /**
300
316
  * When present, it specifies that the component should have invalid state style.
301
317
  * @defaultValue false
@@ -315,6 +331,15 @@ export interface CascadeSelectProps {
315
331
  * A property to uniquely identify an option.
316
332
  */
317
333
  dataKey?: string | undefined;
334
+ /**
335
+ * When enabled, a clear icon is displayed to clear the value.
336
+ * @defaultValue false
337
+ */
338
+ showClear?: boolean | undefined;
339
+ /**
340
+ * Icon to display in clear button.
341
+ */
342
+ clearIcon?: string | undefined;
318
343
  /**
319
344
  * Identifier of the underlying input element.
320
345
  */
@@ -441,6 +466,10 @@ export interface CascadeSelectProps {
441
466
  * Establishes a string value that labels the component.
442
467
  */
443
468
  ariaLabel?: string | undefined;
469
+ /**
470
+ * Form control object, typically used for handling validation and form state.
471
+ */
472
+ formControl?: Record<string, any> | undefined;
444
473
  /**
445
474
  * It generates scoped CSS variables using design tokens for the component.
446
475
  */
@@ -537,6 +566,17 @@ export interface CascadeSelectSlots {
537
566
  */
538
567
  options: any[];
539
568
  }): VNode[];
569
+ /**
570
+ * Custom clear icon template.
571
+ * @param {Object} scope - clear icon slot's params.
572
+ */
573
+ clearicon(scope: {
574
+ /**
575
+ * Clear icon click function.
576
+ * @param {Event} event - Browser event
577
+ */
578
+ clearCallback: (event: Event) => void;
579
+ }): VNode[];
540
580
  }
541
581
 
542
582
  /**
@@ -548,6 +588,11 @@ export interface CascadeSelectEmitsOptions {
548
588
  * @param {*} value - New value.
549
589
  */
550
590
  'update:modelValue'(value: any): void;
591
+ /**
592
+ * Emitted when the value changes in uncontrolled mode.
593
+ * @param {*} value - New value.
594
+ */
595
+ 'value-change'(value: any): void;
551
596
  /**
552
597
  * Callback to invoke on value change.
553
598
  * @param { CascadeSelectChangeEvent } event - Custom change event.
@@ -7,16 +7,17 @@ import ChevronDownIcon from '@primevue/icons/chevrondown';
7
7
  import SpinnerIcon from '@primevue/icons/spinner';
8
8
  import OverlayEventBus from 'primevue/overlayeventbus';
9
9
  import Portal from 'primevue/portal';
10
- import BaseComponent from '@primevue/core/basecomponent';
10
+ import BaseInput from '@primevue/core/baseinput';
11
11
  import CascadeSelectStyle from 'primevue/cascadeselect/style';
12
+ import BaseComponent from '@primevue/core/basecomponent';
12
13
  import Ripple from 'primevue/ripple';
13
14
  import { resolveComponent, resolveDirective, openBlock, createElementBlock, mergeProps, Fragment, renderList, withDirectives, createBlock, resolveDynamicComponent, toDisplayString, normalizeClass, createCommentVNode, createElementVNode, renderSlot, createTextVNode, createVNode, withCtx, Transition } from 'vue';
15
+ import TimesIcon from '@primevue/icons/times';
14
16
 
15
17
  var script$2 = {
16
18
  name: 'BaseCascadeSelect',
17
- "extends": BaseComponent,
19
+ "extends": BaseInput,
18
20
  props: {
19
- modelValue: null,
20
21
  options: Array,
21
22
  optionLabel: null,
22
23
  optionValue: null,
@@ -28,16 +29,15 @@ var script$2 = {
28
29
  type: String,
29
30
  "default": '960px'
30
31
  },
31
- variant: {
32
- type: String,
33
- "default": null
34
- },
35
- invalid: {
32
+ dataKey: null,
33
+ showClear: {
36
34
  type: Boolean,
37
35
  "default": false
38
36
  },
39
- disabled: Boolean,
40
- dataKey: null,
37
+ clearIcon: {
38
+ type: String,
39
+ "default": undefined
40
+ },
41
41
  inputId: {
42
42
  type: String,
43
43
  "default": null
@@ -145,10 +145,6 @@ var script$2 = {
145
145
  ariaLabel: {
146
146
  type: String,
147
147
  "default": null
148
- },
149
- fluid: {
150
- type: Boolean,
151
- "default": null
152
148
  }
153
149
  },
154
150
  style: CascadeSelectStyle,
@@ -376,12 +372,7 @@ var script = {
376
372
  name: 'CascadeSelect',
377
373
  "extends": script$2,
378
374
  inheritAttrs: false,
379
- emits: ['update:modelValue', 'change', 'focus', 'blur', 'click', 'group-change', 'before-show', 'before-hide', 'hide', 'show'],
380
- inject: {
381
- $pcFluid: {
382
- "default": null
383
- }
384
- },
375
+ emits: ['change', 'focus', 'blur', 'click', 'group-change', 'before-show', 'before-hide', 'hide', 'show'],
385
376
  outsideClickListener: null,
386
377
  matchMediaListener: null,
387
378
  scrollHandler: null,
@@ -466,8 +457,8 @@ var script = {
466
457
  show: function show(isFocus) {
467
458
  this.$emit('before-show');
468
459
  this.overlayVisible = true;
469
- this.activeOptionPath = this.hasSelectedOption ? this.findOptionPathByValue(this.modelValue) : this.activeOptionPath;
470
- if (this.hasSelectedOption && isNotEmpty(this.activeOptionPath)) {
460
+ this.activeOptionPath = this.$filled ? this.findOptionPathByValue(this.d_value) : this.activeOptionPath;
461
+ if (this.$filled && isNotEmpty(this.activeOptionPath)) {
471
462
  var processedOption = this.activeOptionPath[this.activeOptionPath.length - 1];
472
463
  this.focusedOptionInfo = {
473
464
  index: processedOption.index,
@@ -510,6 +501,7 @@ var script = {
510
501
  this.$emit('focus', event);
511
502
  },
512
503
  onBlur: function onBlur(event) {
504
+ var _this$formField$onBlu, _this$formField;
513
505
  this.focused = false;
514
506
  this.focusedOptionInfo = {
515
507
  index: -1,
@@ -518,6 +510,7 @@ var script = {
518
510
  };
519
511
  this.searchValue = '';
520
512
  this.$emit('blur', event);
513
+ (_this$formField$onBlu = (_this$formField = this.formField).onBlur) === null || _this$formField$onBlu === void 0 || _this$formField$onBlu.call(_this$formField);
521
514
  },
522
515
  onKeyDown: function onKeyDown(event) {
523
516
  if (this.disabled || this.loading) {
@@ -644,7 +637,7 @@ var script = {
644
637
  },
645
638
  onOptionMouseEnter: function onOptionMouseEnter(event) {
646
639
  if (this.focusOnHover) {
647
- if (this.dirty || !this.dirty && isNotEmpty(this.modelValue)) {
640
+ if (this.dirty || !this.dirty && isNotEmpty(this.d_value)) {
648
641
  this.onOptionChange(_objectSpread$1(_objectSpread$1({}, event), {}, {
649
642
  type: 'hover'
650
643
  }));
@@ -680,13 +673,18 @@ var script = {
680
673
  if (this.disabled || this.loading) {
681
674
  return;
682
675
  }
683
- if (!this.overlay || !this.overlay.contains(event.target)) {
676
+ if (event.target.getAttribute('data-pc-section') === 'clearicon' || event.target.closest('[data-pc-section="clearicon"]')) {
677
+ return;
678
+ } else if (!this.overlay || !this.overlay.contains(event.target)) {
684
679
  this.overlayVisible ? this.hide() : this.show();
685
680
  focus(this.$refs.focusInput);
686
681
  }
687
682
  this.clicked = true;
688
683
  this.$emit('click', event);
689
684
  },
685
+ onClearClick: function onClearClick(event) {
686
+ this.updateModel(event, null);
687
+ },
690
688
  onOverlayClick: function onOverlayClick(event) {
691
689
  OverlayEventBus.emit('overlay-click', {
692
690
  originalEvent: event,
@@ -1073,7 +1071,7 @@ var script = {
1073
1071
  });
1074
1072
  },
1075
1073
  autoUpdateModel: function autoUpdateModel() {
1076
- if (this.selectOnFocus && this.autoOptionFocus && !this.hasSelectedOption) {
1074
+ if (this.selectOnFocus && this.autoOptionFocus && !this.$filled) {
1077
1075
  this.focusedOptionInfo.index = this.findFirstFocusedOptionIndex();
1078
1076
  this.onOptionChange({
1079
1077
  processedOption: this.visibleOptions[this.focusedOptionInfo.index],
@@ -1087,7 +1085,7 @@ var script = {
1087
1085
  }
1088
1086
  },
1089
1087
  updateModel: function updateModel(event, value) {
1090
- this.$emit('update:modelValue', value);
1088
+ this.writeValue(value, event);
1091
1089
  this.$emit('change', {
1092
1090
  originalEvent: event,
1093
1091
  value: value
@@ -1119,13 +1117,14 @@ var script = {
1119
1117
  }
1120
1118
  },
1121
1119
  computed: {
1120
+ // @deprecated use $filled instead.
1122
1121
  hasSelectedOption: function hasSelectedOption() {
1123
- return isNotEmpty(this.modelValue);
1122
+ return this.$filled;
1124
1123
  },
1125
1124
  label: function label() {
1126
1125
  var label = this.placeholder || 'p-emptylabel';
1127
- if (this.hasSelectedOption) {
1128
- var activeOptionPath = this.findOptionPathByValue(this.modelValue);
1126
+ if (this.$filled) {
1127
+ var activeOptionPath = this.findOptionPathByValue(this.d_value);
1129
1128
  var processedOption = isNotEmpty(activeOptionPath) ? activeOptionPath[activeOptionPath.length - 1] : null;
1130
1129
  return processedOption ? this.getOptionLabel(processedOption.option) : label;
1131
1130
  }
@@ -1163,13 +1162,13 @@ var script = {
1163
1162
  return this.emptySelectionMessage || this.$primevue.config.locale.emptySelectionMessage || '';
1164
1163
  },
1165
1164
  selectedMessageText: function selectedMessageText() {
1166
- return this.hasSelectedOption ? this.selectionMessageText.replaceAll('{0}', '1') : this.emptySelectionMessageText;
1165
+ return this.$filled ? this.selectionMessageText.replaceAll('{0}', '1') : this.emptySelectionMessageText;
1167
1166
  },
1168
1167
  focusedOptionId: function focusedOptionId() {
1169
1168
  return this.focusedOptionInfo.index !== -1 ? "".concat(this.id).concat(isNotEmpty(this.focusedOptionInfo.parentKey) ? '_' + this.focusedOptionInfo.parentKey : '', "_").concat(this.focusedOptionInfo.index) : null;
1170
1169
  },
1171
- hasFluid: function hasFluid() {
1172
- return isEmpty(this.fluid) ? !!this.$pcFluid : this.fluid;
1170
+ isClearIconVisible: function isClearIconVisible() {
1171
+ return this.showClear && this.d_value != null && isNotEmpty(this.options);
1173
1172
  }
1174
1173
  },
1175
1174
  components: {
@@ -1177,7 +1176,8 @@ var script = {
1177
1176
  Portal: Portal,
1178
1177
  ChevronDownIcon: ChevronDownIcon,
1179
1178
  SpinnerIcon: SpinnerIcon,
1180
- AngleRightIcon: AngleRightIcon
1179
+ AngleRightIcon: AngleRightIcon,
1180
+ TimesIcon: TimesIcon
1181
1181
  }
1182
1182
  };
1183
1183
 
@@ -1233,11 +1233,23 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1233
1233
  }, _objectSpread(_objectSpread({}, _ctx.inputProps), _ctx.ptm('hiddenInput'))), null, 16, _hoisted_1)], 16), createElementVNode("span", mergeProps({
1234
1234
  "class": _ctx.cx('label')
1235
1235
  }, _ctx.ptm('label')), [renderSlot(_ctx.$slots, "value", {
1236
- value: _ctx.modelValue,
1236
+ value: _ctx.d_value,
1237
1237
  placeholder: _ctx.placeholder
1238
1238
  }, function () {
1239
1239
  return [createTextVNode(toDisplayString($options.label), 1)];
1240
- })], 16), createElementVNode("div", mergeProps({
1240
+ })], 16), $options.isClearIconVisible ? renderSlot(_ctx.$slots, "clearicon", {
1241
+ key: 0,
1242
+ "class": normalizeClass(_ctx.cx('clearIcon')),
1243
+ clearCallback: $options.onClearClick
1244
+ }, function () {
1245
+ return [(openBlock(), createBlock(resolveDynamicComponent(_ctx.clearIcon ? 'i' : 'TimesIcon'), mergeProps({
1246
+ ref: "clearIcon",
1247
+ "class": [_ctx.cx('clearIcon'), _ctx.clearIcon],
1248
+ onClick: $options.onClearClick
1249
+ }, _ctx.ptm('clearIcon'), {
1250
+ "data-pc-section": "clearicon"
1251
+ }), null, 16, ["class", "onClick"]))];
1252
+ }) : createCommentVNode("", true), createElementVNode("div", mergeProps({
1241
1253
  "class": _ctx.cx('dropdown'),
1242
1254
  role: "button",
1243
1255
  tabindex: "-1"
@@ -1293,7 +1305,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1293
1305
  return $options.onOverlayKeyDown && $options.onOverlayKeyDown.apply($options, arguments);
1294
1306
  })
1295
1307
  }, _objectSpread(_objectSpread(_objectSpread({}, _ctx.panelProps), _ctx.overlayProps), _ctx.ptm('overlay'))), [renderSlot(_ctx.$slots, "header", {
1296
- value: _ctx.modelValue,
1308
+ value: _ctx.d_value,
1297
1309
  options: _ctx.options
1298
1310
  }), createElementVNode("div", mergeProps({
1299
1311
  "class": _ctx.cx('listContainer')
@@ -1313,7 +1325,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1313
1325
  optionGroupIcon: _ctx.optionGroupIcon,
1314
1326
  optionGroupLabel: _ctx.optionGroupLabel,
1315
1327
  optionGroupChildren: _ctx.optionGroupChildren,
1316
- value: _ctx.modelValue,
1328
+ value: _ctx.d_value,
1317
1329
  onOptionChange: $options.onOptionClick,
1318
1330
  onOptionFocusChange: $options.onOptionMouseMove,
1319
1331
  onOptionFocusEnterChange: $options.onOptionMouseEnter,
@@ -1326,7 +1338,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1326
1338
  }, _ctx.ptm('hiddenSelectedMessage'), {
1327
1339
  "data-p-hidden-accessible": true
1328
1340
  }), toDisplayString($options.selectedMessageText), 17), renderSlot(_ctx.$slots, "footer", {
1329
- value: _ctx.modelValue,
1341
+ value: _ctx.d_value,
1330
1342
  options: _ctx.options
1331
1343
  })], 16)) : createCommentVNode("", true)];
1332
1344
  }),