primevue 4.1.0 → 4.2.0

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 (596) hide show
  1. package/README.md +2 -94
  2. package/accordion/index.d.ts +2 -2
  3. package/accordion/index.mjs.map +1 -1
  4. package/accordion/style/index.mjs +1 -1
  5. package/accordion/style/index.mjs.map +1 -1
  6. package/accordioncontent/index.d.ts +2 -2
  7. package/accordioncontent/index.mjs.map +1 -1
  8. package/accordioncontent/style/index.mjs.map +1 -1
  9. package/accordionheader/index.d.ts +2 -2
  10. package/accordionheader/index.mjs.map +1 -1
  11. package/accordionheader/style/index.mjs.map +1 -1
  12. package/accordionpanel/index.d.ts +2 -2
  13. package/accordionpanel/index.mjs.map +1 -1
  14. package/accordionpanel/style/index.mjs.map +1 -1
  15. package/accordiontab/index.d.ts +2 -2
  16. package/accordiontab/index.mjs.map +1 -1
  17. package/accordiontab/style/index.mjs.map +1 -1
  18. package/animateonscroll/index.mjs.map +1 -1
  19. package/animateonscroll/style/index.mjs.map +1 -1
  20. package/autocomplete/AutoComplete.vue +36 -32
  21. package/autocomplete/BaseAutoComplete.vue +2 -19
  22. package/autocomplete/index.d.ts +23 -2
  23. package/autocomplete/index.mjs +40 -53
  24. package/autocomplete/index.mjs.map +1 -1
  25. package/autocomplete/style/index.mjs +7 -7
  26. package/autocomplete/style/index.mjs.map +1 -1
  27. package/avatar/index.d.ts +2 -2
  28. package/avatar/index.mjs.map +1 -1
  29. package/avatar/style/index.mjs +1 -1
  30. package/avatar/style/index.mjs.map +1 -1
  31. package/avatargroup/index.d.ts +2 -2
  32. package/avatargroup/index.mjs.map +1 -1
  33. package/avatargroup/style/index.mjs.map +1 -1
  34. package/badge/index.d.ts +2 -2
  35. package/badge/index.mjs.map +1 -1
  36. package/badge/style/index.mjs.map +1 -1
  37. package/badgedirective/index.d.ts +2 -2
  38. package/badgedirective/index.mjs.map +1 -1
  39. package/badgedirective/style/index.mjs.map +1 -1
  40. package/blockui/index.d.ts +2 -2
  41. package/blockui/index.mjs.map +1 -1
  42. package/blockui/style/index.mjs.map +1 -1
  43. package/breadcrumb/Breadcrumb.vue +1 -1
  44. package/breadcrumb/index.d.ts +2 -2
  45. package/breadcrumb/index.mjs +2 -1
  46. package/breadcrumb/index.mjs.map +1 -1
  47. package/breadcrumb/style/index.d.ts +4 -0
  48. package/breadcrumb/style/index.mjs +2 -1
  49. package/breadcrumb/style/index.mjs.map +1 -1
  50. package/button/BaseButton.vue +4 -0
  51. package/button/index.d.ts +8 -2
  52. package/button/index.mjs +4 -0
  53. package/button/index.mjs.map +1 -1
  54. package/button/style/index.mjs +3 -3
  55. package/button/style/index.mjs.map +1 -1
  56. package/buttongroup/index.d.ts +2 -2
  57. package/buttongroup/index.mjs.map +1 -1
  58. package/buttongroup/style/index.mjs +1 -1
  59. package/buttongroup/style/index.mjs.map +1 -1
  60. package/calendar/index.d.ts +2 -2
  61. package/calendar/index.mjs.map +1 -1
  62. package/calendar/style/index.mjs.map +1 -1
  63. package/card/index.d.ts +2 -2
  64. package/card/index.mjs.map +1 -1
  65. package/card/style/index.mjs.map +1 -1
  66. package/carousel/index.d.ts +2 -2
  67. package/carousel/index.mjs.map +1 -1
  68. package/carousel/style/index.mjs +1 -1
  69. package/carousel/style/index.mjs.map +1 -1
  70. package/cascadeselect/BaseCascadeSelect.vue +8 -14
  71. package/cascadeselect/CascadeSelect.vue +86 -55
  72. package/cascadeselect/CascadeSelectSub.vue +8 -17
  73. package/cascadeselect/index.d.ts +47 -2
  74. package/cascadeselect/index.mjs +148 -99
  75. package/cascadeselect/index.mjs.map +1 -1
  76. package/cascadeselect/style/index.d.ts +4 -0
  77. package/cascadeselect/style/index.mjs +9 -6
  78. package/cascadeselect/style/index.mjs.map +1 -1
  79. package/chart/index.d.ts +2 -2
  80. package/chart/index.mjs.map +1 -1
  81. package/chart/style/index.mjs.map +1 -1
  82. package/checkbox/BaseCheckbox.vue +2 -19
  83. package/checkbox/Checkbox.vue +18 -6
  84. package/checkbox/index.d.ts +19 -2
  85. package/checkbox/index.mjs +20 -25
  86. package/checkbox/index.mjs.map +1 -1
  87. package/checkbox/style/index.mjs +5 -3
  88. package/checkbox/style/index.mjs.map +1 -1
  89. package/checkboxgroup/BaseCheckboxGroup.vue +16 -0
  90. package/checkboxgroup/CheckboxGroup.vue +29 -0
  91. package/checkboxgroup/index.d.ts +160 -0
  92. package/checkboxgroup/index.mjs +46 -0
  93. package/checkboxgroup/index.mjs.map +1 -0
  94. package/checkboxgroup/package.json +11 -0
  95. package/checkboxgroup/style/index.d.ts +19 -0
  96. package/checkboxgroup/style/index.mjs +17 -0
  97. package/checkboxgroup/style/index.mjs.map +1 -0
  98. package/checkboxgroup/style/package.json +6 -0
  99. package/chip/index.d.ts +2 -2
  100. package/chip/index.mjs.map +1 -1
  101. package/chip/style/index.mjs +1 -1
  102. package/chip/style/index.mjs.map +1 -1
  103. package/chips/index.d.ts +2 -2
  104. package/chips/index.mjs.map +1 -1
  105. package/chips/style/index.mjs.map +1 -1
  106. package/colorpicker/BaseColorPicker.vue +2 -10
  107. package/colorpicker/ColorPicker.vue +7 -4
  108. package/colorpicker/index.d.ts +24 -2
  109. package/colorpicker/index.mjs +21 -23
  110. package/colorpicker/index.mjs.map +1 -1
  111. package/colorpicker/style/index.mjs +5 -3
  112. package/colorpicker/style/index.mjs.map +1 -1
  113. package/column/index.d.ts +2 -2
  114. package/column/index.mjs.map +1 -1
  115. package/column/style/index.mjs.map +1 -1
  116. package/columngroup/index.d.ts +2 -2
  117. package/columngroup/index.mjs.map +1 -1
  118. package/columngroup/style/index.mjs.map +1 -1
  119. package/config/index.d.ts +4 -0
  120. package/confirmationservice/index.mjs.map +1 -1
  121. package/confirmdialog/index.d.ts +2 -2
  122. package/confirmdialog/index.mjs.map +1 -1
  123. package/confirmdialog/style/index.mjs.map +1 -1
  124. package/confirmpopup/index.d.ts +2 -2
  125. package/confirmpopup/index.mjs.map +1 -1
  126. package/confirmpopup/style/index.mjs +1 -1
  127. package/confirmpopup/style/index.mjs.map +1 -1
  128. package/contextmenu/ContextMenu.vue +8 -3
  129. package/contextmenu/index.d.ts +2 -2
  130. package/contextmenu/index.mjs +6 -3
  131. package/contextmenu/index.mjs.map +1 -1
  132. package/contextmenu/style/index.mjs +1 -1
  133. package/contextmenu/style/index.mjs.map +1 -1
  134. package/datatable/BodyCell.vue +15 -6
  135. package/datatable/DataTable.vue +58 -4
  136. package/datatable/FooterCell.vue +15 -6
  137. package/datatable/HeaderCell.vue +15 -6
  138. package/datatable/index.d.ts +14 -10
  139. package/datatable/index.mjs +167 -82
  140. package/datatable/index.mjs.map +1 -1
  141. package/datatable/style/index.mjs +1 -1
  142. package/datatable/style/index.mjs.map +1 -1
  143. package/dataview/DataView.vue +33 -1
  144. package/dataview/index.d.ts +6 -2
  145. package/dataview/index.mjs +42 -6
  146. package/dataview/index.mjs.map +1 -1
  147. package/dataview/style/index.mjs.map +1 -1
  148. package/datepicker/BaseDatePicker.vue +2 -23
  149. package/datepicker/DatePicker.vue +39 -40
  150. package/datepicker/index.d.ts +23 -6
  151. package/datepicker/index.mjs +45 -65
  152. package/datepicker/index.mjs.map +1 -1
  153. package/datepicker/style/index.mjs +4 -5
  154. package/datepicker/style/index.mjs.map +1 -1
  155. package/deferredcontent/index.d.ts +2 -2
  156. package/deferredcontent/index.mjs.map +1 -1
  157. package/deferredcontent/style/index.mjs.map +1 -1
  158. package/dialog/index.d.ts +2 -2
  159. package/dialog/index.mjs.map +1 -1
  160. package/dialog/style/index.mjs +1 -1
  161. package/dialog/style/index.mjs.map +1 -1
  162. package/dialogservice/index.mjs.map +1 -1
  163. package/divider/index.d.ts +2 -2
  164. package/divider/index.mjs.map +1 -1
  165. package/divider/style/index.mjs +1 -1
  166. package/divider/style/index.mjs.map +1 -1
  167. package/dock/index.d.ts +2 -2
  168. package/dock/index.mjs.map +1 -1
  169. package/dock/style/index.mjs +1 -1
  170. package/dock/style/index.mjs.map +1 -1
  171. package/drawer/index.d.ts +2 -2
  172. package/drawer/index.mjs.map +1 -1
  173. package/drawer/style/index.mjs +1 -1
  174. package/drawer/style/index.mjs.map +1 -1
  175. package/dropdown/index.d.ts +2 -2
  176. package/dropdown/index.mjs.map +1 -1
  177. package/dropdown/style/index.mjs.map +1 -1
  178. package/dynamicdialog/index.d.ts +2 -2
  179. package/dynamicdialog/index.mjs.map +1 -1
  180. package/dynamicdialog/style/index.mjs.map +1 -1
  181. package/editor/BaseEditor.vue +2 -3
  182. package/editor/Editor.vue +3 -3
  183. package/editor/index.d.ts +24 -2
  184. package/editor/index.mjs +5 -6
  185. package/editor/index.mjs.map +1 -1
  186. package/editor/style/index.mjs +7 -2
  187. package/editor/style/index.mjs.map +1 -1
  188. package/fieldset/index.d.ts +2 -2
  189. package/fieldset/index.mjs.map +1 -1
  190. package/fieldset/style/index.mjs +1 -1
  191. package/fieldset/style/index.mjs.map +1 -1
  192. package/fileupload/index.d.ts +2 -2
  193. package/fileupload/index.mjs.map +1 -1
  194. package/fileupload/style/index.mjs +1 -1
  195. package/fileupload/style/index.mjs.map +1 -1
  196. package/floatlabel/index.d.ts +2 -2
  197. package/floatlabel/index.mjs.map +1 -1
  198. package/floatlabel/style/index.mjs +1 -1
  199. package/floatlabel/style/index.mjs.map +1 -1
  200. package/fluid/index.d.ts +2 -2
  201. package/fluid/index.mjs.map +1 -1
  202. package/fluid/style/index.mjs.map +1 -1
  203. package/focustrap/index.mjs.map +1 -1
  204. package/focustrap/style/index.mjs.map +1 -1
  205. package/galleria/index.d.ts +2 -2
  206. package/galleria/index.mjs.map +1 -1
  207. package/galleria/style/index.mjs +1 -1
  208. package/galleria/style/index.mjs.map +1 -1
  209. package/iconfield/index.d.ts +2 -2
  210. package/iconfield/index.mjs.map +1 -1
  211. package/iconfield/style/index.mjs +1 -1
  212. package/iconfield/style/index.mjs.map +1 -1
  213. package/iftalabel/index.d.ts +2 -2
  214. package/iftalabel/index.mjs.map +1 -1
  215. package/iftalabel/style/index.mjs +1 -1
  216. package/iftalabel/style/index.mjs.map +1 -1
  217. package/image/index.d.ts +2 -2
  218. package/image/index.mjs.map +1 -1
  219. package/image/style/index.mjs +1 -1
  220. package/image/style/index.mjs.map +1 -1
  221. package/imagecompare/ImageCompare.vue +33 -1
  222. package/imagecompare/index.d.ts +2 -2
  223. package/imagecompare/index.mjs +35 -1
  224. package/imagecompare/index.mjs.map +1 -1
  225. package/imagecompare/style/index.mjs +1 -1
  226. package/imagecompare/style/index.mjs.map +1 -1
  227. package/index.d.ts +811 -0
  228. package/index.mjs +531 -0
  229. package/index.mjs.map +1 -0
  230. package/inlinemessage/index.d.ts +2 -2
  231. package/inlinemessage/index.mjs.map +1 -1
  232. package/inlinemessage/style/index.mjs.map +1 -1
  233. package/inplace/index.d.ts +2 -6
  234. package/inplace/index.mjs.map +1 -1
  235. package/inplace/style/index.mjs.map +1 -1
  236. package/inputchips/index.d.ts +2 -2
  237. package/inputchips/index.mjs.map +1 -1
  238. package/inputchips/style/index.mjs.map +1 -1
  239. package/inputgroup/index.d.ts +2 -2
  240. package/inputgroup/index.mjs.map +1 -1
  241. package/inputgroup/style/index.mjs +1 -1
  242. package/inputgroup/style/index.mjs.map +1 -1
  243. package/inputgroupaddon/index.d.ts +2 -2
  244. package/inputgroupaddon/index.mjs.map +1 -1
  245. package/inputgroupaddon/style/index.mjs.map +1 -1
  246. package/inputicon/index.d.ts +2 -2
  247. package/inputicon/index.mjs.map +1 -1
  248. package/inputicon/style/index.mjs.map +1 -1
  249. package/inputmask/BaseInputMask.vue +2 -23
  250. package/inputmask/InputMask.vue +9 -14
  251. package/inputmask/index.d.ts +15 -2
  252. package/inputmask/index.mjs +13 -38
  253. package/inputmask/index.mjs.map +1 -1
  254. package/inputmask/style/index.mjs +1 -1
  255. package/inputmask/style/index.mjs.map +1 -1
  256. package/inputnumber/BaseInputNumber.vue +2 -22
  257. package/inputnumber/InputNumber.vue +14 -16
  258. package/inputnumber/index.d.ts +28 -2
  259. package/inputnumber/index.mjs +22 -39
  260. package/inputnumber/index.mjs.map +1 -1
  261. package/inputnumber/style/index.mjs +3 -3
  262. package/inputnumber/style/index.mjs.map +1 -1
  263. package/inputotp/BaseInputOtp.vue +2 -18
  264. package/inputotp/InputOtp.vue +4 -2
  265. package/inputotp/index.d.ts +23 -2
  266. package/inputotp/index.mjs +7 -21
  267. package/inputotp/index.mjs.map +1 -1
  268. package/inputotp/style/index.mjs +2 -2
  269. package/inputotp/style/index.mjs.map +1 -1
  270. package/inputswitch/index.d.ts +2 -2
  271. package/inputswitch/index.mjs.map +1 -1
  272. package/inputswitch/style/index.mjs.map +1 -1
  273. package/inputtext/BaseInputText.vue +2 -21
  274. package/inputtext/InputText.vue +13 -22
  275. package/inputtext/index.d.ts +19 -2
  276. package/inputtext/index.mjs +16 -48
  277. package/inputtext/index.mjs.map +1 -1
  278. package/inputtext/style/index.mjs +7 -7
  279. package/inputtext/style/index.mjs.map +1 -1
  280. package/keyfilter/index.mjs.map +1 -1
  281. package/keyfilter/style/index.mjs.map +1 -1
  282. package/knob/BaseKnob.vue +2 -10
  283. package/knob/Knob.vue +23 -19
  284. package/knob/index.d.ts +26 -4
  285. package/knob/index.mjs +31 -32
  286. package/knob/index.mjs.map +1 -1
  287. package/knob/style/index.mjs +4 -2
  288. package/knob/style/index.mjs.map +1 -1
  289. package/listbox/BaseListbox.vue +2 -11
  290. package/listbox/Listbox.vue +21 -20
  291. package/listbox/index.d.ts +19 -2
  292. package/listbox/index.mjs +23 -31
  293. package/listbox/index.mjs.map +1 -1
  294. package/listbox/style/index.mjs +4 -3
  295. package/listbox/style/index.mjs.map +1 -1
  296. package/megamenu/BaseMegaMenu.vue +4 -0
  297. package/megamenu/MegaMenu.vue +15 -5
  298. package/megamenu/index.d.ts +7 -2
  299. package/megamenu/index.mjs +23 -6
  300. package/megamenu/index.mjs.map +1 -1
  301. package/megamenu/style/index.mjs +5 -5
  302. package/megamenu/style/index.mjs.map +1 -1
  303. package/menu/index.d.ts +2 -2
  304. package/menu/index.mjs.map +1 -1
  305. package/menu/style/index.mjs +1 -1
  306. package/menu/style/index.mjs.map +1 -1
  307. package/menubar/Menubar.vue +8 -3
  308. package/menubar/index.d.ts +2 -2
  309. package/menubar/index.mjs +6 -3
  310. package/menubar/index.mjs.map +1 -1
  311. package/menubar/style/index.mjs +1 -1
  312. package/menubar/style/index.mjs.map +1 -1
  313. package/message/BaseMessage.vue +8 -0
  314. package/message/index.d.ts +11 -2
  315. package/message/index.mjs +8 -0
  316. package/message/index.mjs.map +1 -1
  317. package/message/style/index.mjs +7 -2
  318. package/message/style/index.mjs.map +1 -1
  319. package/metergroup/index.d.ts +2 -2
  320. package/metergroup/index.mjs.map +1 -1
  321. package/metergroup/style/index.mjs +1 -1
  322. package/metergroup/style/index.mjs.map +1 -1
  323. package/multiselect/BaseMultiSelect.vue +14 -19
  324. package/multiselect/MultiSelect.vue +45 -31
  325. package/multiselect/index.d.ts +52 -2
  326. package/multiselect/index.mjs +71 -52
  327. package/multiselect/index.mjs.map +1 -1
  328. package/multiselect/style/index.d.ts +4 -0
  329. package/multiselect/style/index.mjs +8 -5
  330. package/multiselect/style/index.mjs.map +1 -1
  331. package/orderlist/index.d.ts +2 -2
  332. package/orderlist/index.mjs.map +1 -1
  333. package/orderlist/style/index.mjs.map +1 -1
  334. package/organizationchart/index.d.ts +2 -2
  335. package/organizationchart/index.mjs.map +1 -1
  336. package/organizationchart/style/index.mjs +1 -1
  337. package/organizationchart/style/index.mjs.map +1 -1
  338. package/overlaybadge/index.d.ts +2 -2
  339. package/overlaybadge/index.mjs.map +1 -1
  340. package/overlaybadge/style/index.mjs +1 -1
  341. package/overlaybadge/style/index.mjs.map +1 -1
  342. package/overlaypanel/index.d.ts +2 -2
  343. package/overlaypanel/index.mjs.map +1 -1
  344. package/overlaypanel/style/index.mjs.map +1 -1
  345. package/package.json +15 -6
  346. package/paginator/Paginator.vue +104 -84
  347. package/paginator/index.d.ts +56 -2
  348. package/paginator/index.mjs +21 -3
  349. package/paginator/index.mjs.map +1 -1
  350. package/paginator/style/index.mjs +1 -1
  351. package/paginator/style/index.mjs.map +1 -1
  352. package/panel/index.d.ts +2 -2
  353. package/panel/index.mjs.map +1 -1
  354. package/panel/style/index.mjs.map +1 -1
  355. package/panelmenu/index.d.ts +2 -2
  356. package/panelmenu/index.mjs.map +1 -1
  357. package/panelmenu/style/index.mjs +1 -1
  358. package/panelmenu/style/index.mjs.map +1 -1
  359. package/passthrough/index.mjs.map +1 -1
  360. package/password/BasePassword.vue +2 -15
  361. package/password/Password.vue +13 -18
  362. package/password/index.d.ts +23 -2
  363. package/password/index.mjs +14 -32
  364. package/password/index.mjs.map +1 -1
  365. package/password/style/index.mjs +3 -3
  366. package/password/style/index.mjs.map +1 -1
  367. package/picklist/index.d.ts +2 -2
  368. package/picklist/index.mjs.map +1 -1
  369. package/picklist/style/index.mjs.map +1 -1
  370. package/popover/index.d.ts +2 -2
  371. package/popover/index.mjs.map +1 -1
  372. package/popover/style/index.mjs +1 -1
  373. package/popover/style/index.mjs.map +1 -1
  374. package/portal/index.d.ts +2 -2
  375. package/portal/index.mjs.map +1 -1
  376. package/portal/style/index.mjs.map +1 -1
  377. package/progressbar/index.d.ts +2 -2
  378. package/progressbar/index.mjs.map +1 -1
  379. package/progressbar/style/index.mjs +1 -1
  380. package/progressbar/style/index.mjs.map +1 -1
  381. package/progressspinner/index.d.ts +2 -2
  382. package/progressspinner/index.mjs.map +1 -1
  383. package/progressspinner/style/index.mjs.map +1 -1
  384. package/radiobutton/BaseRadioButton.vue +2 -19
  385. package/radiobutton/RadioButton.vue +15 -4
  386. package/radiobutton/index.d.ts +19 -2
  387. package/radiobutton/index.mjs +17 -23
  388. package/radiobutton/index.mjs.map +1 -1
  389. package/radiobutton/style/index.mjs +5 -3
  390. package/radiobutton/style/index.mjs.map +1 -1
  391. package/radiobuttongroup/BaseRadioButtonGroup.vue +16 -0
  392. package/radiobuttongroup/RadioButtonGroup.vue +29 -0
  393. package/radiobuttongroup/index.d.ts +160 -0
  394. package/radiobuttongroup/index.mjs +46 -0
  395. package/radiobuttongroup/index.mjs.map +1 -0
  396. package/radiobuttongroup/package.json +11 -0
  397. package/radiobuttongroup/style/index.d.ts +19 -0
  398. package/radiobuttongroup/style/index.mjs +17 -0
  399. package/radiobuttongroup/style/index.mjs.map +1 -0
  400. package/radiobuttongroup/style/package.json +6 -0
  401. package/rating/BaseRating.vue +2 -10
  402. package/rating/Rating.vue +17 -16
  403. package/rating/index.d.ts +20 -2
  404. package/rating/index.mjs +17 -23
  405. package/rating/index.mjs.map +1 -1
  406. package/rating/style/index.mjs +14 -5
  407. package/rating/style/index.mjs.map +1 -1
  408. package/ripple/index.mjs.map +1 -1
  409. package/ripple/style/index.mjs.map +1 -1
  410. package/row/index.d.ts +2 -2
  411. package/row/index.mjs.map +1 -1
  412. package/row/style/index.mjs.map +1 -1
  413. package/scrollpanel/ScrollPanel.vue +38 -5
  414. package/scrollpanel/index.d.ts +2 -2
  415. package/scrollpanel/index.mjs +58 -28
  416. package/scrollpanel/index.mjs.map +1 -1
  417. package/scrollpanel/style/index.mjs +1 -1
  418. package/scrollpanel/style/index.mjs.map +1 -1
  419. package/scrolltop/index.d.ts +2 -2
  420. package/scrolltop/index.mjs.map +1 -1
  421. package/scrolltop/style/index.mjs +1 -1
  422. package/scrolltop/style/index.mjs.map +1 -1
  423. package/select/BaseSelect.vue +2 -19
  424. package/select/Select.vue +15 -19
  425. package/select/index.d.ts +23 -2
  426. package/select/index.mjs +18 -40
  427. package/select/index.mjs.map +1 -1
  428. package/select/style/index.mjs +7 -5
  429. package/select/style/index.mjs.map +1 -1
  430. package/selectbutton/BaseSelectButton.vue +6 -8
  431. package/selectbutton/SelectButton.vue +9 -8
  432. package/selectbutton/index.d.ts +23 -2
  433. package/selectbutton/index.mjs +15 -16
  434. package/selectbutton/index.mjs.map +1 -1
  435. package/selectbutton/style/index.mjs +3 -3
  436. package/selectbutton/style/index.mjs.map +1 -1
  437. package/sidebar/index.d.ts +2 -2
  438. package/sidebar/index.mjs.map +1 -1
  439. package/sidebar/style/index.mjs.map +1 -1
  440. package/skeleton/index.d.ts +2 -2
  441. package/skeleton/index.mjs.map +1 -1
  442. package/skeleton/style/index.mjs +1 -1
  443. package/skeleton/style/index.mjs.map +1 -1
  444. package/slider/BaseSlider.vue +2 -7
  445. package/slider/Slider.vue +94 -38
  446. package/slider/index.d.ts +24 -2
  447. package/slider/index.mjs +145 -72
  448. package/slider/index.mjs.map +1 -1
  449. package/slider/style/index.mjs +4 -2
  450. package/slider/style/index.mjs.map +1 -1
  451. package/speeddial/index.d.ts +2 -2
  452. package/speeddial/index.mjs.map +1 -1
  453. package/speeddial/style/index.mjs +1 -1
  454. package/speeddial/style/index.mjs.map +1 -1
  455. package/splitbutton/index.d.ts +2 -2
  456. package/splitbutton/index.mjs.map +1 -1
  457. package/splitbutton/style/index.mjs +1 -1
  458. package/splitbutton/style/index.mjs.map +1 -1
  459. package/splitter/Splitter.vue +31 -3
  460. package/splitter/index.d.ts +2 -2
  461. package/splitter/index.mjs +50 -20
  462. package/splitter/index.mjs.map +1 -1
  463. package/splitter/style/index.mjs.map +1 -1
  464. package/splitterpanel/index.d.ts +2 -2
  465. package/splitterpanel/index.mjs.map +1 -1
  466. package/splitterpanel/style/index.mjs.map +1 -1
  467. package/step/index.d.ts +2 -2
  468. package/step/index.mjs.map +1 -1
  469. package/step/style/index.mjs.map +1 -1
  470. package/stepitem/index.d.ts +2 -2
  471. package/stepitem/index.mjs.map +1 -1
  472. package/stepitem/style/index.mjs.map +1 -1
  473. package/steplist/index.d.ts +2 -2
  474. package/steplist/index.mjs.map +1 -1
  475. package/steplist/style/index.mjs.map +1 -1
  476. package/steppanel/index.d.ts +2 -2
  477. package/steppanel/index.mjs.map +1 -1
  478. package/steppanel/style/index.mjs.map +1 -1
  479. package/steppanels/index.d.ts +2 -2
  480. package/steppanels/index.mjs.map +1 -1
  481. package/steppanels/style/index.mjs.map +1 -1
  482. package/stepper/index.d.ts +2 -2
  483. package/stepper/index.mjs.map +1 -1
  484. package/stepper/style/index.mjs +1 -1
  485. package/stepper/style/index.mjs.map +1 -1
  486. package/steps/index.d.ts +2 -2
  487. package/steps/index.mjs.map +1 -1
  488. package/steps/style/index.mjs +1 -1
  489. package/steps/style/index.mjs.map +1 -1
  490. package/styleclass/index.mjs.map +1 -1
  491. package/styleclass/style/index.mjs.map +1 -1
  492. package/tab/index.d.ts +2 -2
  493. package/tab/index.mjs.map +1 -1
  494. package/tab/style/index.mjs.map +1 -1
  495. package/tablist/TabList.vue +40 -5
  496. package/tablist/index.d.ts +2 -2
  497. package/tablist/index.mjs +38 -5
  498. package/tablist/index.mjs.map +1 -1
  499. package/tablist/style/index.mjs.map +1 -1
  500. package/tabmenu/index.d.ts +2 -2
  501. package/tabmenu/index.mjs.map +1 -1
  502. package/tabmenu/style/index.mjs.map +1 -1
  503. package/tabpanel/index.d.ts +2 -2
  504. package/tabpanel/index.mjs.map +1 -1
  505. package/tabpanel/style/index.mjs.map +1 -1
  506. package/tabpanels/index.d.ts +2 -2
  507. package/tabpanels/index.mjs.map +1 -1
  508. package/tabpanels/style/index.mjs.map +1 -1
  509. package/tabs/index.d.ts +2 -2
  510. package/tabs/index.mjs.map +1 -1
  511. package/tabs/style/index.mjs +1 -1
  512. package/tabs/style/index.mjs.map +1 -1
  513. package/tabview/index.d.ts +2 -2
  514. package/tabview/index.mjs.map +1 -1
  515. package/tabview/style/index.mjs.map +1 -1
  516. package/tag/index.d.ts +2 -2
  517. package/tag/index.mjs.map +1 -1
  518. package/tag/style/index.mjs.map +1 -1
  519. package/terminal/index.d.ts +2 -2
  520. package/terminal/index.mjs.map +1 -1
  521. package/terminal/style/index.mjs +1 -1
  522. package/terminal/style/index.mjs.map +1 -1
  523. package/textarea/BaseTextarea.vue +3 -16
  524. package/textarea/Textarea.vue +13 -19
  525. package/textarea/index.d.ts +23 -2
  526. package/textarea/index.mjs +14 -38
  527. package/textarea/index.mjs.map +1 -1
  528. package/textarea/style/index.mjs +7 -5
  529. package/textarea/style/index.mjs.map +1 -1
  530. package/tieredmenu/TieredMenu.vue +8 -3
  531. package/tieredmenu/index.d.ts +2 -2
  532. package/tieredmenu/index.mjs +6 -3
  533. package/tieredmenu/index.mjs.map +1 -1
  534. package/tieredmenu/style/index.mjs +1 -1
  535. package/tieredmenu/style/index.mjs.map +1 -1
  536. package/timeline/index.d.ts +2 -2
  537. package/timeline/index.mjs.map +1 -1
  538. package/timeline/style/index.mjs.map +1 -1
  539. package/toast/Toast.vue +0 -1
  540. package/toast/index.d.ts +2 -2
  541. package/toast/index.mjs.map +1 -1
  542. package/toast/style/index.mjs +1 -1
  543. package/toast/style/index.mjs.map +1 -1
  544. package/toastservice/index.mjs.map +1 -1
  545. package/togglebutton/BaseToggleButton.vue +6 -11
  546. package/togglebutton/ToggleButton.vue +11 -7
  547. package/togglebutton/index.d.ts +23 -2
  548. package/togglebutton/index.mjs +20 -18
  549. package/togglebutton/index.mjs.map +1 -1
  550. package/togglebutton/style/index.mjs +4 -2
  551. package/togglebutton/style/index.mjs.map +1 -1
  552. package/toggleswitch/BaseToggleSwitch.vue +2 -14
  553. package/toggleswitch/ToggleSwitch.vue +4 -3
  554. package/toggleswitch/index.d.ts +19 -2
  555. package/toggleswitch/index.mjs +7 -17
  556. package/toggleswitch/index.mjs.map +1 -1
  557. package/toggleswitch/style/index.mjs +2 -2
  558. package/toggleswitch/style/index.mjs.map +1 -1
  559. package/toolbar/index.d.ts +2 -2
  560. package/toolbar/index.mjs.map +1 -1
  561. package/toolbar/style/index.mjs.map +1 -1
  562. package/tooltip/index.mjs.map +1 -1
  563. package/tooltip/style/index.mjs +1 -1
  564. package/tooltip/style/index.mjs.map +1 -1
  565. package/tree/Tree.vue +1 -1
  566. package/tree/TreeNode.vue +1 -1
  567. package/tree/index.d.ts +2 -2
  568. package/tree/index.mjs +5 -4
  569. package/tree/index.mjs.map +1 -1
  570. package/tree/style/index.mjs +2 -1
  571. package/tree/style/index.mjs.map +1 -1
  572. package/treeselect/BaseTreeSelect.vue +18 -19
  573. package/treeselect/TreeSelect.vue +61 -18
  574. package/treeselect/index.d.ts +82 -28
  575. package/treeselect/index.mjs +87 -38
  576. package/treeselect/index.mjs.map +1 -1
  577. package/treeselect/style/index.d.ts +4 -0
  578. package/treeselect/style/index.mjs +8 -5
  579. package/treeselect/style/index.mjs.map +1 -1
  580. package/treetable/BodyCell.vue +21 -12
  581. package/treetable/FooterCell.vue +15 -6
  582. package/treetable/HeaderCell.vue +15 -6
  583. package/treetable/TreeTable.vue +57 -2
  584. package/treetable/index.d.ts +14 -10
  585. package/treetable/index.mjs +146 -59
  586. package/treetable/index.mjs.map +1 -1
  587. package/treetable/style/index.mjs +1 -1
  588. package/treetable/style/index.mjs.map +1 -1
  589. package/umd/primevue.min.js +1 -1
  590. package/useconfirm/index.mjs.map +1 -1
  591. package/usedialog/index.mjs.map +1 -1
  592. package/usetoast/index.mjs.map +1 -1
  593. package/virtualscroller/index.d.ts +2 -2
  594. package/virtualscroller/index.mjs.map +1 -1
  595. package/virtualscroller/style/index.mjs.map +1 -1
  596. package/web-types.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/tree/style/TreeStyle.js"],"sourcesContent":["import BaseStyle from '@primevue/core/base/style';\n\nconst theme = ({ dt }) => `\n.p-tree {\n background: ${dt('tree.background')};\n color: ${dt('tree.color')};\n padding: ${dt('tree.padding')};\n}\n\n.p-tree-root-children,\n.p-tree-node-children {\n display: flex;\n list-style-type: none;\n flex-direction: column;\n margin: 0;\n gap: ${dt('tree.gap')};\n}\n\n.p-tree-root-children {\n padding: ${dt('tree.gap')} 0 0 0;\n}\n\n.p-tree-node-children {\n padding: ${dt('tree.gap')} 0 0 ${dt('tree.indent')};\n}\n\n.p-tree-node {\n padding: 0;\n outline: 0 none;\n}\n\n.p-tree-node-content {\n border-radius: ${dt('tree.node.border.radius')};\n padding: ${dt('tree.node.padding')};\n display: flex;\n align-items: center;\n outline-color: transparent;\n color: ${dt('tree.node.color')};\n gap: ${dt('tree.node.gap')};\n transition: background ${dt('tree.transition.duration')}, color ${dt('tree.transition.duration')}, outline-color ${dt('tree.transition.duration')}, box-shadow ${dt('tree.transition.duration')};\n}\n\n.p-tree-node:focus-visible > .p-tree-node-content {\n box-shadow: ${dt('tree.node.focus.ring.shadow')};\n outline: ${dt('tree.node.focus.ring.width')} ${dt('tree.node.focus.ring.style')} ${dt('tree.node.focus.ring.color')};\n outline-offset: ${dt('tree.node.focus.ring.offset')};\n}\n\n.p-tree-node-content.p-tree-node-selectable:not(.p-tree-node-selected):hover {\n background: ${dt('tree.node.hover.background')};\n color: ${dt('tree.node.hover.color')};\n}\n\n.p-tree-node-content.p-tree-node-selectable:not(.p-tree-node-selected):hover .p-tree-node-icon {\n color: ${dt('tree.node.icon.hover.color')};\n}\n\n.p-tree-node-content.p-tree-node-selected {\n background: ${dt('tree.node.selected.background')};\n color: ${dt('tree.node.selected.color')};\n}\n\n.p-tree-node-content.p-tree-node-selected .p-tree-node-toggle-button {\n color: inherit;\n}\n\n.p-tree-node-toggle-button {\n cursor: pointer;\n user-select: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n flex-shrink: 0;\n width: ${dt('tree.node.toggle.button.size')};\n height: ${dt('tree.node.toggle.button.size')};\n color: ${dt('tree.node.toggle.button.color')};\n border: 0 none;\n background: transparent;\n border-radius: ${dt('tree.node.toggle.button.border.radius')};\n transition: background ${dt('tree.transition.duration')}, color ${dt('tree.transition.duration')}, border-color ${dt('tree.transition.duration')}, outline-color ${dt('tree.transition.duration')}, box-shadow ${dt('tree.transition.duration')};\n outline-color: transparent;\n padding: 0;\n}\n\n.p-tree-node-toggle-button:enabled:hover {\n background: ${dt('tree.node.toggle.button.hover.background')};\n color: ${dt('tree.node.toggle.button.hover.color')};\n}\n\n.p-tree-node-content.p-tree-node-selected .p-tree-node-toggle-button:hover {\n background: ${dt('tree.node.toggle.button.selected.hover.background')};\n color: ${dt('tree.node.toggle.button.selected.hover.color')};\n}\n\n.p-tree-root {\n overflow: auto;\n}\n\n.p-tree-node-selectable {\n cursor: pointer;\n user-select: none;\n}\n\n.p-tree-node-leaf > .p-tree-node-content .p-tree-node-toggle-button {\n visibility: hidden;\n}\n\n.p-tree-node-icon {\n color: ${dt('tree.node.icon.color')};\n transition: color ${dt('tree.transition.duration')};\n}\n\n.p-tree-node-content.p-tree-node-selected .p-tree-node-icon {\n color: ${dt('tree.node.icon.selected.color')};\n}\n\n.p-tree-filter-input {\n width: 100%;\n}\n\n.p-tree-loading {\n position: relative;\n height: 100%;\n}\n\n.p-tree-loading-icon {\n font-size: ${dt('tree.loading.icon.size')};\n width: ${dt('tree.loading.icon.size')};\n height: ${dt('tree.loading.icon.size')};\n}\n\n.p-tree .p-tree-mask {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-tree-flex-scrollable {\n display: flex;\n flex: 1;\n height: 100%;\n flex-direction: column;\n}\n\n.p-tree-flex-scrollable .p-tree-root {\n flex: 1;\n}\n`;\n\nconst classes = {\n root: ({ props }) => [\n 'p-tree p-component',\n {\n 'p-tree-selectable': props.selectionMode != null,\n 'p-tree-loading': props.loading,\n 'p-tree-flex-scrollable': props.scrollHeight === 'flex'\n }\n ],\n mask: 'p-tree-mask p-overlay-mask',\n loadingIcon: 'p-tree-loading-icon',\n pcFilterInput: 'p-tree-filter-input',\n wrapper: 'p-tree-root', //TODO: discuss\n rootChildren: 'p-tree-root-children',\n node: ({ instance }) => ['p-tree-node', { 'p-tree-node-leaf': instance.leaf }],\n nodeContent: ({ instance }) => [\n 'p-tree-node-content',\n instance.node.styleClass,\n {\n 'p-tree-node-selectable': instance.selectable,\n 'p-tree-node-selected': instance.checkboxMode && instance.$parentInstance.highlightOnSelect ? instance.checked : instance.selected\n }\n ],\n nodeToggleButton: 'p-tree-node-toggle-button',\n nodeToggleIcon: 'p-tree-node-toggle-icon',\n nodeCheckbox: 'p-tree-node-checkbox',\n nodeIcon: 'p-tree-node-icon',\n nodeLabel: 'p-tree-node-label',\n nodeChildren: 'p-tree-node-children'\n};\n\nexport default BaseStyle.extend({\n name: 'tree',\n theme,\n classes\n});\n"],"names":["theme","_ref","dt","concat","classes","root","_ref2","props","selectionMode","loading","scrollHeight","mask","loadingIcon","pcFilterInput","wrapper","rootChildren","node","_ref3","instance","leaf","nodeContent","_ref4","styleClass","selectable","checkboxMode","$parentInstance","highlightOnSelect","checked","selected","nodeToggleButton","nodeToggleIcon","nodeCheckbox","nodeIcon","nodeLabel","nodeChildren","BaseStyle","extend","name"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/tree/style/TreeStyle.js"],"sourcesContent":["import BaseStyle from '@primevue/core/base/style';\n\nconst theme = ({ dt }) => `\n.p-tree {\n background: ${dt('tree.background')};\n color: ${dt('tree.color')};\n padding: ${dt('tree.padding')};\n}\n\n.p-tree-root-children,\n.p-tree-node-children {\n display: flex;\n list-style-type: none;\n flex-direction: column;\n margin: 0;\n gap: ${dt('tree.gap')};\n}\n\n.p-tree-root-children {\n padding: 0;\n padding-block-start: ${dt('tree.gap')};\n}\n\n.p-tree-node-children {\n padding: 0;\n padding-block-start: ${dt('tree.gap')};\n padding-inline-start: ${dt('tree.indent')};\n}\n\n.p-tree-node {\n padding: 0;\n outline: 0 none;\n}\n\n.p-tree-node-content {\n border-radius: ${dt('tree.node.border.radius')};\n padding: ${dt('tree.node.padding')};\n display: flex;\n align-items: center;\n outline-color: transparent;\n color: ${dt('tree.node.color')};\n gap: ${dt('tree.node.gap')};\n transition: background ${dt('tree.transition.duration')}, color ${dt('tree.transition.duration')}, outline-color ${dt('tree.transition.duration')}, box-shadow ${dt('tree.transition.duration')};\n}\n\n.p-tree-node:focus-visible > .p-tree-node-content {\n box-shadow: ${dt('tree.node.focus.ring.shadow')};\n outline: ${dt('tree.node.focus.ring.width')} ${dt('tree.node.focus.ring.style')} ${dt('tree.node.focus.ring.color')};\n outline-offset: ${dt('tree.node.focus.ring.offset')};\n}\n\n.p-tree-node-content.p-tree-node-selectable:not(.p-tree-node-selected):hover {\n background: ${dt('tree.node.hover.background')};\n color: ${dt('tree.node.hover.color')};\n}\n\n.p-tree-node-content.p-tree-node-selectable:not(.p-tree-node-selected):hover .p-tree-node-icon {\n color: ${dt('tree.node.icon.hover.color')};\n}\n\n.p-tree-node-content.p-tree-node-selected {\n background: ${dt('tree.node.selected.background')};\n color: ${dt('tree.node.selected.color')};\n}\n\n.p-tree-node-content.p-tree-node-selected .p-tree-node-toggle-button {\n color: inherit;\n}\n\n.p-tree-node-toggle-button {\n cursor: pointer;\n user-select: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n flex-shrink: 0;\n width: ${dt('tree.node.toggle.button.size')};\n height: ${dt('tree.node.toggle.button.size')};\n color: ${dt('tree.node.toggle.button.color')};\n border: 0 none;\n background: transparent;\n border-radius: ${dt('tree.node.toggle.button.border.radius')};\n transition: background ${dt('tree.transition.duration')}, color ${dt('tree.transition.duration')}, border-color ${dt('tree.transition.duration')}, outline-color ${dt('tree.transition.duration')}, box-shadow ${dt('tree.transition.duration')};\n outline-color: transparent;\n padding: 0;\n}\n\n.p-tree-node-toggle-button:enabled:hover {\n background: ${dt('tree.node.toggle.button.hover.background')};\n color: ${dt('tree.node.toggle.button.hover.color')};\n}\n\n.p-tree-node-content.p-tree-node-selected .p-tree-node-toggle-button:hover {\n background: ${dt('tree.node.toggle.button.selected.hover.background')};\n color: ${dt('tree.node.toggle.button.selected.hover.color')};\n}\n\n.p-tree-root {\n overflow: auto;\n}\n\n.p-tree-node-selectable {\n cursor: pointer;\n user-select: none;\n}\n\n.p-tree-node-leaf > .p-tree-node-content .p-tree-node-toggle-button {\n visibility: hidden;\n}\n\n.p-tree-node-icon {\n color: ${dt('tree.node.icon.color')};\n transition: color ${dt('tree.transition.duration')};\n}\n\n.p-tree-node-content.p-tree-node-selected .p-tree-node-icon {\n color: ${dt('tree.node.icon.selected.color')};\n}\n\n.p-tree-filter {\n margin: ${dt('tree.filter.margin')};\n}\n\n.p-tree-filter-input {\n width: 100%;\n}\n\n.p-tree-loading {\n position: relative;\n height: 100%;\n}\n\n.p-tree-loading-icon {\n font-size: ${dt('tree.loading.icon.size')};\n width: ${dt('tree.loading.icon.size')};\n height: ${dt('tree.loading.icon.size')};\n}\n\n.p-tree .p-tree-mask {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-tree-flex-scrollable {\n display: flex;\n flex: 1;\n height: 100%;\n flex-direction: column;\n}\n\n.p-tree-flex-scrollable .p-tree-root {\n flex: 1;\n}\n`;\n\nconst classes = {\n root: ({ props }) => [\n 'p-tree p-component',\n {\n 'p-tree-selectable': props.selectionMode != null,\n 'p-tree-loading': props.loading,\n 'p-tree-flex-scrollable': props.scrollHeight === 'flex'\n }\n ],\n mask: 'p-tree-mask p-overlay-mask',\n loadingIcon: 'p-tree-loading-icon',\n pcFilter: 'p-tree-filter',\n pcFilterInput: 'p-tree-filter-input',\n wrapper: 'p-tree-root', //TODO: discuss\n rootChildren: 'p-tree-root-children',\n node: ({ instance }) => ['p-tree-node', { 'p-tree-node-leaf': instance.leaf }],\n nodeContent: ({ instance }) => [\n 'p-tree-node-content',\n instance.node.styleClass,\n {\n 'p-tree-node-selectable': instance.selectable,\n 'p-tree-node-selected': instance.checkboxMode && instance.$parentInstance.highlightOnSelect ? instance.checked : instance.selected\n }\n ],\n nodeToggleButton: 'p-tree-node-toggle-button',\n nodeToggleIcon: 'p-tree-node-toggle-icon',\n nodeCheckbox: 'p-tree-node-checkbox',\n nodeIcon: 'p-tree-node-icon',\n nodeLabel: 'p-tree-node-label',\n nodeChildren: 'p-tree-node-children'\n};\n\nexport default BaseStyle.extend({\n name: 'tree',\n theme,\n classes\n});\n"],"names":["theme","_ref","dt","concat","classes","root","_ref2","props","selectionMode","loading","scrollHeight","mask","loadingIcon","pcFilter","pcFilterInput","wrapper","rootChildren","node","_ref3","instance","leaf","nodeContent","_ref4","styleClass","selectable","checkboxMode","$parentInstance","highlightOnSelect","checked","selected","nodeToggleButton","nodeToggleIcon","nodeCheckbox","nodeIcon","nodeLabel","nodeChildren","BaseStyle","extend","name"],"mappings":"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"}
@@ -1,12 +1,11 @@
1
1
  <script>
2
- import BaseComponent from '@primevue/core/basecomponent';
2
+ import BaseInput from '@primevue/core/baseinput';
3
3
  import TreeSelectStyle from 'primevue/treeselect/style';
4
4
 
5
5
  export default {
6
6
  name: 'BaseTreeSelect',
7
- extends: BaseComponent,
7
+ extends: BaseInput,
8
8
  props: {
9
- modelValue: null,
10
9
  options: Array,
11
10
  scrollHeight: {
12
11
  type: String,
@@ -16,18 +15,6 @@ export default {
16
15
  type: String,
17
16
  default: null
18
17
  },
19
- invalid: {
20
- type: Boolean,
21
- default: false
22
- },
23
- variant: {
24
- type: String,
25
- default: null
26
- },
27
- disabled: {
28
- type: Boolean,
29
- default: false
30
- },
31
18
  tabindex: {
32
19
  type: Number,
33
20
  default: null
@@ -36,6 +23,14 @@ export default {
36
23
  type: String,
37
24
  default: 'single'
38
25
  },
26
+ selectedItemsLabel: {
27
+ type: String,
28
+ default: null
29
+ },
30
+ maxSelectedLabels: {
31
+ type: Number,
32
+ default: null
33
+ },
39
34
  appendTo: {
40
35
  type: [String, Object],
41
36
  default: 'body'
@@ -52,10 +47,6 @@ export default {
52
47
  type: Boolean,
53
48
  default: false
54
49
  },
55
- fluid: {
56
- type: Boolean,
57
- default: null
58
- },
59
50
  loading: {
60
51
  type: Boolean,
61
52
  default: false
@@ -68,6 +59,14 @@ export default {
68
59
  type: String,
69
60
  default: 'mask'
70
61
  },
62
+ showClear: {
63
+ type: Boolean,
64
+ default: false
65
+ },
66
+ clearIcon: {
67
+ type: String,
68
+ default: undefined
69
+ },
71
70
  filter: {
72
71
  type: Boolean,
73
72
  default: false
@@ -29,14 +29,22 @@
29
29
  {{ label || 'empty' }}
30
30
  </template>
31
31
  <template v-else-if="display === 'chip'">
32
- <div v-for="node of selectedNodes" :key="node.key" :class="cx('chipItem')" v-bind="ptm('chipItem')">
33
- <Chip :class="cx('pcChip')" :label="node.label" :unstyled="unstyled" :pt="ptm('pcChip')" />
34
- </div>
35
- <template v-if="emptyValue">{{ placeholder || 'empty' }}</template>
32
+ <template v-if="chipSelectedItems">
33
+ <span>{{ label }}</span>
34
+ </template>
35
+ <template v-else>
36
+ <div v-for="node of selectedNodes" :key="node.key" :class="cx('chipItem')" v-bind="ptm('chipItem')">
37
+ <Chip :class="cx('pcChip')" :label="node.label" :unstyled="unstyled" :pt="ptm('pcChip')" />
38
+ </div>
39
+ <template v-if="emptyValue">{{ placeholder || 'empty' }}</template>
40
+ </template>
36
41
  </template>
37
42
  </slot>
38
43
  </div>
39
44
  </div>
45
+ <slot v-if="isClearIconVisible" name="clearicon" :class="cx('clearIcon')" :clearCallback="onClearClick">
46
+ <component :is="clearIcon ? 'i' : 'TimesIcon'" ref="clearIcon" :class="[cx('clearIcon'), clearIcon]" @click="onClearClick" v-bind="ptm('clearIcon')" data-pc-section="clearicon" />
47
+ </slot>
40
48
  <div :class="cx('dropdown')" role="button" aria-haspopup="tree" :aria-expanded="overlayVisible" v-bind="ptm('dropdown')">
41
49
  <!-- TODO: triggericon is deprecated since v4.0 -->
42
50
  <slot :name="$slots.dropdownicon ? 'dropdownicon' : 'triggericon'" :class="cx('dropdownIcon')">
@@ -56,7 +64,7 @@
56
64
  :data-p-hidden-accessible="true"
57
65
  :data-p-hidden-focusable="true"
58
66
  ></span>
59
- <slot name="header" :value="modelValue" :options="options"></slot>
67
+ <slot name="header" :value="d_value" :options="options"></slot>
60
68
  <div :class="cx('treeContainer')" :style="{ 'max-height': scrollHeight }" v-bind="ptm('treeContainer')">
61
69
  <TSTree
62
70
  ref="tree"
@@ -72,7 +80,7 @@
72
80
  :filterPlaceholder="filterPlaceholder"
73
81
  :filterLocale="filterLocale"
74
82
  @update:selectionKeys="onSelectionChange"
75
- :selectionKeys="modelValue"
83
+ :selectionKeys="d_value"
76
84
  :expandedKeys="d_expandedKeys"
77
85
  @update:expandedKeys="onNodeToggle"
78
86
  :metaKeySelection="metaKeySelection"
@@ -102,7 +110,7 @@
102
110
  <slot name="empty">{{ emptyMessageText }}</slot>
103
111
  </div>
104
112
  </div>
105
- <slot name="footer" :value="modelValue" :options="options"></slot>
113
+ <slot name="footer" :value="d_value" :options="options"></slot>
106
114
  <span
107
115
  ref="lastHiddenFocusableElementOnOverlay"
108
116
  role="presentation"
@@ -121,7 +129,7 @@
121
129
 
122
130
  <script>
123
131
  import { absolutePosition, addStyle, find, findSingle, focus, getFirstFocusableElement, getFocusableElements, getLastFocusableElement, getOuterWidth, isTouchDevice, relativePosition } from '@primeuix/utils/dom';
124
- import { isEmpty } from '@primeuix/utils/object';
132
+ import { isEmpty, isNotEmpty } from '@primeuix/utils/object';
125
133
  import { ZIndex } from '@primeuix/utils/zindex';
126
134
  import { ConnectedOverlayScrollHandler, UniqueComponentId } from '@primevue/core/utils';
127
135
  import ChevronDownIcon from '@primevue/icons/chevrondown';
@@ -131,12 +139,13 @@ import Portal from 'primevue/portal';
131
139
  import Ripple from 'primevue/ripple';
132
140
  import Tree from 'primevue/tree';
133
141
  import BaseTreeSelect from './BaseTreeSelect.vue';
142
+ import TimesIcon from '@primevue/icons/times';
134
143
 
135
144
  export default {
136
145
  name: 'TreeSelect',
137
146
  extends: BaseTreeSelect,
138
147
  inheritAttrs: false,
139
- emits: ['update:modelValue', 'before-show', 'before-hide', 'change', 'show', 'hide', 'node-select', 'node-unselect', 'node-expand', 'node-collapse', 'focus', 'blur', 'update:expandedKeys'],
148
+ emits: ['before-show', 'before-hide', 'change', 'show', 'hide', 'node-select', 'node-unselect', 'node-expand', 'node-collapse', 'focus', 'blur', 'update:expandedKeys'],
140
149
  inject: {
141
150
  $pcFluid: { default: null }
142
151
  },
@@ -210,22 +219,28 @@ export default {
210
219
  onBlur(event) {
211
220
  this.focused = false;
212
221
  this.$emit('blur', event);
222
+ this.formField.onBlur?.();
213
223
  },
214
224
  onClick(event) {
215
225
  if (this.disabled) {
216
226
  return;
217
227
  }
218
228
 
219
- if (!this.disabled && (!this.overlay || !this.overlay.contains(event.target))) {
229
+ if (event.target.tagName === 'INPUT' || event.target.getAttribute('data-pc-section') === 'clearicon' || event.target.closest('[data-pc-section="clearicon"]')) {
230
+ return;
231
+ } else if (!this.disabled && (!this.overlay || !this.overlay.contains(event.target))) {
220
232
  if (this.overlayVisible) this.hide();
221
233
  else this.show();
222
234
 
223
235
  focus(this.$refs.focusInput);
224
236
  }
225
237
  },
238
+ onClearClick(event) {
239
+ this.onSelectionChange(null);
240
+ },
226
241
  onSelectionChange(keys) {
227
242
  this.selfChange = true;
228
- this.$emit('update:modelValue', keys);
243
+ this.writeValue(keys);
229
244
  this.$emit('change', keys);
230
245
  },
231
246
  onNodeSelect(node) {
@@ -243,6 +258,16 @@ export default {
243
258
 
244
259
  this.$emit('update:expandedKeys', this.d_expandedKeys);
245
260
  },
261
+ getSelectedItemsLabel() {
262
+ let pattern = /{(.*?)}/;
263
+ const selectedItemsLabel = this.selectedItemsLabel || this.$primevue.config.locale.selectionMessage;
264
+
265
+ if (pattern.test(selectedItemsLabel)) {
266
+ return selectedItemsLabel.replace(selectedItemsLabel.match(pattern)[0], Object.keys(this.d_value).length + '');
267
+ }
268
+
269
+ return selectedItemsLabel;
270
+ },
246
271
  onFirstHiddenFocus(event) {
247
272
  const focusableEl = event.relatedTarget === this.$refs.focusInput ? getFirstFocusableElement(this.overlay, ':not([data-p-hidden-focusable="true"])') : this.$refs.focusInput;
248
273
 
@@ -448,7 +473,7 @@ export default {
448
473
  return this.selectionMode === 'checkbox' ? keys[node.key] && keys[node.key].checked : keys[node.key];
449
474
  },
450
475
  updateTreeState() {
451
- let keys = { ...this.modelValue };
476
+ let keys = { ...this.d_value };
452
477
 
453
478
  if (keys && this.options) {
454
479
  this.updateTreeBranchState(null, null, keys);
@@ -497,8 +522,8 @@ export default {
497
522
  selectedNodes() {
498
523
  let selectedNodes = [];
499
524
 
500
- if (this.modelValue && this.options) {
501
- let keys = { ...this.modelValue };
525
+ if (this.d_value && this.options) {
526
+ let keys = { ...this.d_value };
502
527
 
503
528
  this.findSelectedNodes(null, keys, selectedNodes);
504
529
  }
@@ -507,14 +532,28 @@ export default {
507
532
  },
508
533
  label() {
509
534
  let value = this.selectedNodes;
535
+ let label;
510
536
 
511
- return value.length ? value.map((node) => node.label).join(', ') : this.placeholder;
537
+ if (value.length) {
538
+ if (isNotEmpty(this.maxSelectedLabels) && value.length > this.maxSelectedLabels) {
539
+ label = this.getSelectedItemsLabel();
540
+ } else {
541
+ label = value.map((node) => node.label).join(', ');
542
+ }
543
+ } else {
544
+ label = this.placeholder;
545
+ }
546
+
547
+ return label;
548
+ },
549
+ chipSelectedItems() {
550
+ return isNotEmpty(this.maxSelectedLabels) && this.d_value && Object.keys(this.d_value).length > this.maxSelectedLabels;
512
551
  },
513
552
  emptyMessageText() {
514
553
  return this.emptyMessage || this.$primevue.config.locale.emptyMessage;
515
554
  },
516
555
  emptyValue() {
517
- return !this.modelValue || Object.keys(this.modelValue).length === 0;
556
+ return !this.$filled;
518
557
  },
519
558
  emptyOptions() {
520
559
  return !this.options || this.options.length === 0;
@@ -524,13 +563,17 @@ export default {
524
563
  },
525
564
  hasFluid() {
526
565
  return isEmpty(this.fluid) ? !!this.$pcFluid : this.fluid;
566
+ },
567
+ isClearIconVisible() {
568
+ return this.showClear && this.d_value != null && isNotEmpty(this.options);
527
569
  }
528
570
  },
529
571
  components: {
530
572
  TSTree: Tree,
531
573
  Chip,
532
- Portal: Portal,
533
- ChevronDownIcon: ChevronDownIcon
574
+ Portal,
575
+ ChevronDownIcon,
576
+ TimesIcon
534
577
  },
535
578
  directives: {
536
579
  ripple: Ripple
@@ -7,7 +7,7 @@
7
7
  * @module treeselect
8
8
  *
9
9
  */
10
- import type { DefineComponent, DesignToken, EmitFn, GlobalComponentConstructor, HintedString, PassThrough } from '@primevue/core';
10
+ import type { DefineComponent, DesignToken, EmitFn, HintedString, PassThrough } from '@primevue/core';
11
11
  import type { ComponentHooks } from '@primevue/core/basecomponent';
12
12
  import type { ChipPassThroughOptions } from 'primevue/chip';
13
13
  import type { PassThroughOptions } from 'primevue/passthrough';
@@ -80,6 +80,10 @@ export interface TreeSelectPassThroughOptions {
80
80
  * Used to pass attributes to the label's DOM element.
81
81
  */
82
82
  label?: TreeSelectPassThroughOptionType;
83
+ /**
84
+ * Used to pass attributes to the clear icon's DOM element.
85
+ */
86
+ clearIcon?: TreeSelectPassThroughOptionType;
83
87
  /**
84
88
  * Used to pass attributes to the chip's DOM element.
85
89
  */
@@ -174,41 +178,35 @@ export interface TreeSelectProps {
174
178
  */
175
179
  modelValue?: TreeNode | any;
176
180
  /**
177
- * An array of treenodes.
178
- */
179
- options?: TreeNode[] | undefined;
180
- /**
181
- * A map of keys to represent the expansion state in controlled mode.
181
+ * The default value for the input when not controlled by `modelValue`.
182
182
  */
183
- expandedKeys?: TreeExpandedKeys;
183
+ defaultValue?: TreeNode | any;
184
184
  /**
185
- * Height of the viewport, a scrollbar is defined if height of list exceeds this value.
186
- * @defaultValue 20rem
185
+ * The name attribute for the element, typically used in form submissions.
187
186
  */
188
- scrollHeight?: string | undefined;
187
+ name?: string | undefined;
189
188
  /**
190
- * Label to display when there are no selections.
189
+ * An array of treenodes.
191
190
  */
192
- placeholder?: string | undefined;
191
+ options?: TreeNode[] | undefined;
193
192
  /**
194
- * When present, it specifies that the component should have invalid state style.
195
- * @defaultValue false
193
+ * A map of keys to represent the expansion state in controlled mode.
196
194
  */
197
- invalid?: boolean | undefined;
195
+ expandedKeys?: TreeExpandedKeys;
198
196
  /**
199
- * When present, it specifies that the component should be disabled.
197
+ * When enabled, a clear icon is displayed to clear the value.
200
198
  * @defaultValue false
201
199
  */
202
- disabled?: boolean | undefined;
200
+ showClear?: boolean | undefined;
203
201
  /**
204
- * Specifies the input variant of the component.
205
- * @defaultValue outlined
202
+ * Icon to display in clear button.
206
203
  */
207
- variant?: 'outlined' | 'filled' | undefined;
204
+ clearIcon?: string | undefined;
208
205
  /**
209
- * Index of the element in tabbing order.
206
+ * Height of the viewport, a scrollbar is defined if height of list exceeds this value.
207
+ * @defaultValue 20rem
210
208
  */
211
- tabindex?: string | undefined;
209
+ scrollHeight?: string | undefined;
212
210
  /**
213
211
  * Defines the selection mode.
214
212
  */
@@ -223,16 +221,20 @@ export interface TreeSelectProps {
223
221
  * @defaultValue body
224
222
  */
225
223
  appendTo?: HintedString<'body' | 'self'> | undefined | HTMLElement;
226
- /**
227
- * Text to display when there are no options available. Defaults to value from PrimeVue locale configuration.
228
- * @defaultValue No available options
229
- */
230
- emptyMessage?: string | undefined;
231
224
  /**
232
225
  * Defines how the selected items are displayed.
233
226
  * @defaultValue comma
234
227
  */
235
228
  display?: 'comma' | 'chip' | undefined;
229
+ /**
230
+ * Label to display after exceeding max selected labels.
231
+ * @defaultValue null
232
+ */
233
+ selectedItemsLabel?: string | undefined;
234
+ /**
235
+ * Decides how many selected item labels to show at most.
236
+ */
237
+ maxSelectedLabels?: number | undefined;
236
238
  /**
237
239
  * Defines how multiple items can be selected, when true metaKey needs to be pressed to select or unselect an item and when set to false selection of each item can be toggled individually.
238
240
  * On touch enabled devices, metaKeySelection is turned off automatically.
@@ -276,6 +278,38 @@ export interface TreeSelectProps {
276
278
  * Locale to use in filtering. The default locale is the host environment's current locale.
277
279
  */
278
280
  filterLocale?: string | undefined;
281
+ /**
282
+ * Text to display when there are no options available. Defaults to value from PrimeVue locale configuration.
283
+ * @defaultValue No available options
284
+ */
285
+ emptyMessage?: string | undefined;
286
+ /**
287
+ * Label to display when there are no selections.
288
+ */
289
+ placeholder?: string | undefined;
290
+ /**
291
+ * Defines the size of the component.
292
+ */
293
+ size?: 'small' | 'large' | undefined;
294
+ /**
295
+ * When present, it specifies that the component should have invalid state style.
296
+ * @defaultValue false
297
+ */
298
+ invalid?: boolean | undefined;
299
+ /**
300
+ * When present, it specifies that the component should be disabled.
301
+ * @defaultValue false
302
+ */
303
+ disabled?: boolean | undefined;
304
+ /**
305
+ * Specifies the input variant of the component.
306
+ * @defaultValue outlined
307
+ */
308
+ variant?: 'outlined' | 'filled' | undefined;
309
+ /**
310
+ * Index of the element in tabbing order.
311
+ */
312
+ tabindex?: string | undefined;
279
313
  /**
280
314
  * Identifier of the underlying input element.
281
315
  */
@@ -304,6 +338,10 @@ export interface TreeSelectProps {
304
338
  * Establishes a string value that labels the component.
305
339
  */
306
340
  ariaLabel?: string | undefined;
341
+ /**
342
+ * Form control object, typically used for handling validation and form state.
343
+ */
344
+ formControl?: Record<string, any> | undefined;
307
345
  /**
308
346
  * It generates scoped CSS variables using design tokens for the component.
309
347
  */
@@ -457,6 +495,17 @@ export interface TreeSelectSlots {
457
495
  */
458
496
  partialChecked: boolean;
459
497
  }): VNode[];
498
+ /**
499
+ * Custom clear icon template.
500
+ * @param {Object} scope - clear icon slot's params.
501
+ */
502
+ clearicon(scope: {
503
+ /**
504
+ * Clear icon click function.
505
+ * @param {Event} event - Browser event
506
+ */
507
+ clearCallback: (event: Event) => void;
508
+ }): VNode[];
460
509
  }
461
510
 
462
511
  /**
@@ -468,6 +517,11 @@ export interface TreeSelectEmitsOptions {
468
517
  * @param {*} value - New value.
469
518
  */
470
519
  'update:modelValue'(value: any): void;
520
+ /**
521
+ * Emitted when the value changes in uncontrolled mode.
522
+ * @param {*} value - New value.
523
+ */
524
+ 'value-change'(value: any): void;
471
525
  /**
472
526
  * Emitted when the expanded keys change.
473
527
  * @param {TreeNode} value - New expanded keys.
@@ -549,7 +603,7 @@ declare const TreeSelect: DefineComponent<TreeSelectProps, TreeSelectSlots, Tree
549
603
 
550
604
  declare module 'vue' {
551
605
  export interface GlobalComponents {
552
- TreeSelect: GlobalComponentConstructor<TreeSelectProps, TreeSelectSlots, TreeSelectEmits, TreeSelectMethods>;
606
+ TreeSelect: DefineComponent<TreeSelectProps, TreeSelectSlots, TreeSelectEmits, TreeSelectMethods>;
553
607
  }
554
608
  }
555
609