primevue 3.28.0 → 3.29.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 (420) hide show
  1. package/README.md +3 -3
  2. package/autocomplete/AutoComplete.d.ts +153 -1
  3. package/autocomplete/AutoComplete.vue +46 -17
  4. package/autocomplete/autocomplete.cjs.js +80 -74
  5. package/autocomplete/autocomplete.cjs.min.js +1 -1
  6. package/autocomplete/autocomplete.esm.js +80 -75
  7. package/autocomplete/autocomplete.esm.min.js +1 -1
  8. package/autocomplete/autocomplete.js +81 -76
  9. package/autocomplete/autocomplete.min.js +1 -1
  10. package/basecomponent/BaseComponent.vue +19 -5
  11. package/basecomponent/basecomponent.cjs.js +19 -5
  12. package/basecomponent/basecomponent.cjs.min.js +1 -1
  13. package/basecomponent/basecomponent.esm.js +19 -5
  14. package/basecomponent/basecomponent.esm.min.js +1 -1
  15. package/basecomponent/basecomponent.js +20 -7
  16. package/basecomponent/basecomponent.min.js +1 -1
  17. package/calendar/Calendar.d.ts +269 -0
  18. package/calendar/Calendar.vue +75 -59
  19. package/calendar/calendar.cjs.js +223 -259
  20. package/calendar/calendar.cjs.min.js +1 -1
  21. package/calendar/calendar.esm.js +223 -260
  22. package/calendar/calendar.esm.min.js +1 -1
  23. package/calendar/calendar.js +224 -261
  24. package/calendar/calendar.min.js +1 -1
  25. package/carousel/Carousel.d.ts +154 -0
  26. package/carousel/Carousel.vue +27 -14
  27. package/carousel/carousel.cjs.js +64 -65
  28. package/carousel/carousel.cjs.min.js +1 -1
  29. package/carousel/carousel.esm.js +64 -66
  30. package/carousel/carousel.esm.min.js +1 -1
  31. package/carousel/carousel.js +65 -67
  32. package/carousel/carousel.min.js +1 -1
  33. package/cascadeselect/CascadeSelect.d.ts +133 -0
  34. package/cascadeselect/CascadeSelect.vue +15 -12
  35. package/cascadeselect/CascadeSelectSub.vue +7 -3
  36. package/cascadeselect/cascadeselect.cjs.js +63 -66
  37. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  38. package/cascadeselect/cascadeselect.esm.js +63 -67
  39. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  40. package/cascadeselect/cascadeselect.js +64 -68
  41. package/cascadeselect/cascadeselect.min.js +1 -1
  42. package/checkbox/Checkbox.d.ts +60 -0
  43. package/checkbox/Checkbox.vue +7 -5
  44. package/checkbox/checkbox.cjs.js +17 -15
  45. package/checkbox/checkbox.cjs.min.js +1 -1
  46. package/checkbox/checkbox.esm.js +17 -16
  47. package/checkbox/checkbox.esm.min.js +1 -1
  48. package/checkbox/checkbox.js +18 -17
  49. package/checkbox/checkbox.min.js +1 -1
  50. package/chips/Chips.d.ts +80 -0
  51. package/chips/Chips.vue +9 -5
  52. package/chips/chips.cjs.js +23 -24
  53. package/chips/chips.cjs.min.js +1 -1
  54. package/chips/chips.esm.js +23 -25
  55. package/chips/chips.esm.min.js +1 -1
  56. package/chips/chips.js +24 -26
  57. package/chips/chips.min.js +1 -1
  58. package/colorpicker/ColorPicker.d.ts +76 -0
  59. package/colorpicker/ColorPicker.vue +11 -9
  60. package/colorpicker/colorpicker.cjs.js +28 -27
  61. package/colorpicker/colorpicker.cjs.min.js +1 -1
  62. package/colorpicker/colorpicker.esm.js +28 -28
  63. package/colorpicker/colorpicker.esm.min.js +1 -1
  64. package/colorpicker/colorpicker.js +29 -29
  65. package/colorpicker/colorpicker.min.js +1 -1
  66. package/column/Column.d.ts +303 -2
  67. package/column/Column.vue +3 -0
  68. package/column/column.cjs.js +7 -0
  69. package/column/column.cjs.min.js +1 -1
  70. package/column/column.esm.js +3 -0
  71. package/column/column.esm.min.js +1 -1
  72. package/column/column.js +7 -2
  73. package/column/column.min.js +1 -1
  74. package/columngroup/ColumnGroup.d.ts +34 -0
  75. package/columngroup/ColumnGroup.vue +3 -0
  76. package/columngroup/columngroup.cjs.js +7 -0
  77. package/columngroup/columngroup.cjs.min.js +1 -1
  78. package/columngroup/columngroup.esm.js +3 -0
  79. package/columngroup/columngroup.esm.min.js +1 -1
  80. package/columngroup/columngroup.js +7 -2
  81. package/columngroup/columngroup.min.js +1 -1
  82. package/config/PrimeVue.d.ts +163 -2
  83. package/confirmdialog/ConfirmDialog.d.ts +14 -7
  84. package/contextmenu/ContextMenu.d.ts +1 -1
  85. package/core/core.js +448 -331
  86. package/core/core.min.js +9 -9
  87. package/datatable/BodyCell.vue +29 -13
  88. package/datatable/ColumnFilter.vue +49 -20
  89. package/datatable/DataTable.d.ts +188 -1
  90. package/datatable/DataTable.vue +25 -14
  91. package/datatable/FooterCell.vue +15 -1
  92. package/datatable/HeaderCell.vue +31 -6
  93. package/datatable/HeaderCheckbox.vue +35 -5
  94. package/datatable/RowCheckbox.vue +36 -5
  95. package/datatable/RowRadioButton.vue +26 -6
  96. package/datatable/TableBody.vue +41 -11
  97. package/datatable/TableFooter.vue +31 -5
  98. package/datatable/TableHeader.vue +53 -6
  99. package/datatable/datatable.cjs.js +559 -376
  100. package/datatable/datatable.cjs.min.js +1 -1
  101. package/datatable/datatable.esm.js +559 -377
  102. package/datatable/datatable.esm.min.js +1 -1
  103. package/datatable/datatable.js +560 -378
  104. package/datatable/datatable.min.js +1 -1
  105. package/dataview/DataView.d.ts +72 -0
  106. package/dataview/DataView.vue +13 -8
  107. package/dataview/dataview.cjs.js +33 -37
  108. package/dataview/dataview.cjs.min.js +1 -1
  109. package/dataview/dataview.esm.js +33 -38
  110. package/dataview/dataview.esm.min.js +1 -1
  111. package/dataview/dataview.js +33 -38
  112. package/dataview/dataview.min.js +1 -1
  113. package/dataviewlayoutoptions/DataViewLayoutOptions.d.ts +65 -0
  114. package/dataviewlayoutoptions/DataViewLayoutOptions.vue +7 -5
  115. package/dataviewlayoutoptions/dataviewlayoutoptions.cjs.js +19 -17
  116. package/dataviewlayoutoptions/dataviewlayoutoptions.cjs.min.js +1 -1
  117. package/dataviewlayoutoptions/dataviewlayoutoptions.esm.js +19 -18
  118. package/dataviewlayoutoptions/dataviewlayoutoptions.esm.min.js +1 -1
  119. package/dataviewlayoutoptions/dataviewlayoutoptions.js +20 -19
  120. package/dataviewlayoutoptions/dataviewlayoutoptions.min.js +1 -1
  121. package/dialog/Dialog.d.ts +6 -4
  122. package/dialog/Dialog.vue +2 -3
  123. package/dialog/dialog.cjs.js +4 -5
  124. package/dialog/dialog.cjs.min.js +1 -1
  125. package/dialog/dialog.esm.js +4 -5
  126. package/dialog/dialog.esm.min.js +1 -1
  127. package/dialog/dialog.js +4 -5
  128. package/dialog/dialog.min.js +1 -1
  129. package/dropdown/Dropdown.d.ts +162 -1
  130. package/dropdown/Dropdown.vue +44 -25
  131. package/dropdown/dropdown.cjs.js +97 -93
  132. package/dropdown/dropdown.cjs.min.js +1 -1
  133. package/dropdown/dropdown.esm.js +97 -94
  134. package/dropdown/dropdown.esm.min.js +1 -1
  135. package/dropdown/dropdown.js +98 -95
  136. package/dropdown/dropdown.min.js +1 -1
  137. package/editor/Editor.d.ts +67 -0
  138. package/editor/Editor.vue +35 -33
  139. package/editor/editor.cjs.js +88 -73
  140. package/editor/editor.cjs.min.js +1 -1
  141. package/editor/editor.esm.js +85 -74
  142. package/editor/editor.esm.min.js +1 -1
  143. package/editor/editor.js +89 -75
  144. package/editor/editor.min.js +1 -1
  145. package/fileupload/FileUpload.d.ts +23 -23
  146. package/fileupload/FileUpload.vue +3 -3
  147. package/fileupload/fileupload.cjs.js +4 -4
  148. package/fileupload/fileupload.cjs.min.js +1 -1
  149. package/fileupload/fileupload.esm.js +4 -4
  150. package/fileupload/fileupload.esm.min.js +1 -1
  151. package/fileupload/fileupload.js +4 -4
  152. package/fileupload/fileupload.min.js +1 -1
  153. package/galleria/Galleria.d.ts +196 -0
  154. package/galleria/Galleria.vue +5 -3
  155. package/galleria/GalleriaContent.vue +10 -6
  156. package/galleria/GalleriaItem.vue +12 -9
  157. package/galleria/GalleriaThumbnails.vue +46 -9
  158. package/galleria/galleria.cjs.js +106 -104
  159. package/galleria/galleria.cjs.min.js +1 -1
  160. package/galleria/galleria.esm.js +106 -105
  161. package/galleria/galleria.esm.min.js +1 -1
  162. package/galleria/galleria.js +107 -106
  163. package/galleria/galleria.min.js +1 -1
  164. package/image/Image.d.ts +170 -0
  165. package/image/Image.vue +49 -21
  166. package/image/image.cjs.js +94 -59
  167. package/image/image.cjs.min.js +1 -1
  168. package/image/image.esm.js +94 -60
  169. package/image/image.esm.min.js +1 -1
  170. package/image/image.js +95 -61
  171. package/image/image.min.js +1 -1
  172. package/inputmask/InputMask.d.ts +25 -0
  173. package/inputmask/InputMask.vue +3 -1
  174. package/inputmask/inputmask.cjs.js +9 -3
  175. package/inputmask/inputmask.cjs.min.js +1 -1
  176. package/inputmask/inputmask.esm.js +6 -4
  177. package/inputmask/inputmask.esm.min.js +1 -1
  178. package/inputmask/inputmask.js +10 -5
  179. package/inputmask/inputmask.min.js +1 -1
  180. package/inputnumber/InputNumber.d.ts +69 -0
  181. package/inputnumber/InputNumber.vue +13 -11
  182. package/inputnumber/inputnumber.cjs.js +19 -28
  183. package/inputnumber/inputnumber.cjs.min.js +1 -1
  184. package/inputnumber/inputnumber.esm.js +19 -29
  185. package/inputnumber/inputnumber.esm.min.js +1 -1
  186. package/inputnumber/inputnumber.js +20 -30
  187. package/inputnumber/inputnumber.min.js +1 -1
  188. package/inputswitch/InputSwitch.d.ts +51 -0
  189. package/inputswitch/InputSwitch.vue +7 -4
  190. package/inputswitch/inputswitch.cjs.js +15 -11
  191. package/inputswitch/inputswitch.cjs.min.js +1 -1
  192. package/inputswitch/inputswitch.esm.js +12 -12
  193. package/inputswitch/inputswitch.esm.min.js +1 -1
  194. package/inputswitch/inputswitch.js +16 -13
  195. package/inputswitch/inputswitch.min.js +1 -1
  196. package/inputtext/InputText.d.ts +25 -0
  197. package/inputtext/InputText.vue +4 -1
  198. package/inputtext/inputtext.cjs.js +9 -3
  199. package/inputtext/inputtext.cjs.min.js +1 -1
  200. package/inputtext/inputtext.esm.js +6 -4
  201. package/inputtext/inputtext.esm.min.js +1 -1
  202. package/inputtext/inputtext.js +10 -5
  203. package/inputtext/inputtext.min.js +1 -1
  204. package/knob/Knob.d.ts +78 -0
  205. package/knob/Knob.vue +8 -4
  206. package/knob/knob.cjs.js +17 -13
  207. package/knob/knob.cjs.min.js +1 -1
  208. package/knob/knob.esm.js +14 -14
  209. package/knob/knob.esm.min.js +1 -1
  210. package/knob/knob.js +18 -15
  211. package/knob/knob.min.js +1 -1
  212. package/listbox/Listbox.d.ts +137 -1
  213. package/listbox/Listbox.vue +28 -15
  214. package/listbox/listbox.cjs.js +83 -78
  215. package/listbox/listbox.cjs.min.js +1 -1
  216. package/listbox/listbox.esm.js +83 -79
  217. package/listbox/listbox.esm.min.js +1 -1
  218. package/listbox/listbox.js +84 -80
  219. package/listbox/listbox.min.js +1 -1
  220. package/megamenu/MegaMenu.d.ts +5 -5
  221. package/menu/Menu.d.ts +4 -4
  222. package/menubar/Menubar.d.ts +1 -1
  223. package/multiselect/MultiSelect.d.ts +223 -1
  224. package/multiselect/MultiSelect.vue +72 -41
  225. package/multiselect/multiselect.cjs.js +156 -151
  226. package/multiselect/multiselect.cjs.min.js +1 -1
  227. package/multiselect/multiselect.esm.js +156 -152
  228. package/multiselect/multiselect.esm.min.js +1 -1
  229. package/multiselect/multiselect.js +157 -153
  230. package/multiselect/multiselect.min.js +1 -1
  231. package/orderlist/OrderList.d.ts +94 -0
  232. package/orderlist/OrderList.vue +38 -18
  233. package/orderlist/orderlist.cjs.js +50 -36
  234. package/orderlist/orderlist.cjs.min.js +1 -1
  235. package/orderlist/orderlist.esm.js +50 -37
  236. package/orderlist/orderlist.esm.min.js +1 -1
  237. package/orderlist/orderlist.js +51 -38
  238. package/orderlist/orderlist.min.js +1 -1
  239. package/organizationchart/OrganizationChart.d.ts +129 -0
  240. package/organizationchart/OrganizationChart.vue +14 -2
  241. package/organizationchart/OrganizationChartNode.vue +37 -16
  242. package/organizationchart/organizationchart.cjs.js +77 -61
  243. package/organizationchart/organizationchart.cjs.min.js +1 -1
  244. package/organizationchart/organizationchart.esm.js +77 -62
  245. package/organizationchart/organizationchart.esm.min.js +1 -1
  246. package/organizationchart/organizationchart.js +78 -63
  247. package/organizationchart/organizationchart.min.js +1 -1
  248. package/package.json +1 -1
  249. package/paginator/CurrentPageReport.vue +5 -1
  250. package/paginator/FirstPageLink.vue +13 -2
  251. package/paginator/JumpToPageDropdown.vue +3 -1
  252. package/paginator/JumpToPageInput.vue +3 -1
  253. package/paginator/LastPageLink.vue +13 -2
  254. package/paginator/NextPageLink.vue +13 -2
  255. package/paginator/PageLinks.vue +12 -2
  256. package/paginator/Paginator.d.ts +133 -0
  257. package/paginator/Paginator.vue +23 -12
  258. package/paginator/PrevPageLink.vue +13 -2
  259. package/paginator/RowsPerPageDropdown.vue +3 -1
  260. package/paginator/paginator.cjs.js +135 -76
  261. package/paginator/paginator.cjs.min.js +1 -1
  262. package/paginator/paginator.esm.js +135 -77
  263. package/paginator/paginator.esm.min.js +1 -1
  264. package/paginator/paginator.js +136 -78
  265. package/paginator/paginator.min.js +1 -1
  266. package/panelmenu/PanelMenu.d.ts +4 -8
  267. package/password/Password.d.ts +104 -0
  268. package/password/Password.vue +11 -9
  269. package/password/password.cjs.js +26 -28
  270. package/password/password.cjs.min.js +1 -1
  271. package/password/password.esm.js +26 -29
  272. package/password/password.esm.min.js +1 -1
  273. package/password/password.js +27 -30
  274. package/password/password.min.js +1 -1
  275. package/picklist/PickList.d.ts +160 -0
  276. package/picklist/PickList.vue +46 -34
  277. package/picklist/picklist.cjs.js +111 -85
  278. package/picklist/picklist.cjs.min.js +1 -1
  279. package/picklist/picklist.esm.js +111 -86
  280. package/picklist/picklist.esm.min.js +1 -1
  281. package/picklist/picklist.js +112 -87
  282. package/picklist/picklist.min.js +1 -1
  283. package/radiobutton/RadioButton.d.ts +55 -0
  284. package/radiobutton/RadioButton.vue +7 -5
  285. package/radiobutton/radiobutton.cjs.js +19 -16
  286. package/radiobutton/radiobutton.cjs.min.js +1 -1
  287. package/radiobutton/radiobutton.esm.js +16 -17
  288. package/radiobutton/radiobutton.esm.min.js +1 -1
  289. package/radiobutton/radiobutton.js +20 -18
  290. package/radiobutton/radiobutton.min.js +1 -1
  291. package/rating/Rating.d.ts +96 -0
  292. package/rating/Rating.vue +32 -9
  293. package/rating/rating.cjs.js +41 -34
  294. package/rating/rating.cjs.min.js +1 -1
  295. package/rating/rating.esm.js +41 -35
  296. package/rating/rating.esm.min.js +1 -1
  297. package/rating/rating.js +42 -36
  298. package/rating/rating.min.js +1 -1
  299. package/row/Row.d.ts +29 -0
  300. package/row/Row.vue +3 -0
  301. package/row/row.cjs.js +7 -0
  302. package/row/row.cjs.min.js +1 -1
  303. package/row/row.esm.js +3 -0
  304. package/row/row.esm.min.js +1 -1
  305. package/row/row.js +7 -2
  306. package/row/row.min.js +1 -1
  307. package/selectbutton/SelectButton.d.ts +68 -0
  308. package/selectbutton/SelectButton.vue +13 -2
  309. package/selectbutton/selectbutton.cjs.js +20 -10
  310. package/selectbutton/selectbutton.cjs.min.js +1 -1
  311. package/selectbutton/selectbutton.esm.js +20 -11
  312. package/selectbutton/selectbutton.esm.min.js +1 -1
  313. package/selectbutton/selectbutton.js +21 -12
  314. package/selectbutton/selectbutton.min.js +1 -1
  315. package/slider/Slider.d.ts +48 -0
  316. package/slider/Slider.vue +7 -2
  317. package/slider/slider.cjs.js +22 -16
  318. package/slider/slider.cjs.min.js +1 -1
  319. package/slider/slider.esm.js +19 -17
  320. package/slider/slider.esm.min.js +1 -1
  321. package/slider/slider.js +23 -18
  322. package/slider/slider.min.js +1 -1
  323. package/splitbutton/SplitButton.d.ts +0 -4
  324. package/splitbutton/SplitButton.vue +2 -2
  325. package/splitbutton/splitbutton.cjs.js +7 -6
  326. package/splitbutton/splitbutton.cjs.min.js +1 -1
  327. package/splitbutton/splitbutton.esm.js +7 -6
  328. package/splitbutton/splitbutton.esm.min.js +1 -1
  329. package/splitbutton/splitbutton.js +7 -6
  330. package/splitbutton/splitbutton.min.js +1 -1
  331. package/splitter/Splitter.d.ts +3 -3
  332. package/textarea/Textarea.d.ts +32 -0
  333. package/textarea/Textarea.vue +4 -1
  334. package/textarea/textarea.cjs.js +9 -3
  335. package/textarea/textarea.cjs.min.js +1 -1
  336. package/textarea/textarea.esm.js +6 -4
  337. package/textarea/textarea.esm.min.js +1 -1
  338. package/textarea/textarea.js +10 -5
  339. package/textarea/textarea.min.js +1 -1
  340. package/timeline/Timeline.d.ts +49 -0
  341. package/timeline/Timeline.vue +9 -7
  342. package/timeline/timeline.cjs.js +19 -21
  343. package/timeline/timeline.cjs.min.js +1 -1
  344. package/timeline/timeline.esm.js +16 -22
  345. package/timeline/timeline.esm.min.js +1 -1
  346. package/timeline/timeline.js +20 -23
  347. package/timeline/timeline.min.js +1 -1
  348. package/toast/Toast.d.ts +4 -0
  349. package/toast/Toast.vue +1 -1
  350. package/toast/toast.cjs.js +3 -3
  351. package/toast/toast.cjs.min.js +1 -1
  352. package/toast/toast.esm.js +3 -3
  353. package/toast/toast.esm.min.js +1 -1
  354. package/toast/toast.js +3 -3
  355. package/toast/toast.min.js +1 -1
  356. package/togglebutton/ToggleButton.d.ts +59 -0
  357. package/togglebutton/ToggleButton.vue +7 -5
  358. package/togglebutton/togglebutton.cjs.js +15 -14
  359. package/togglebutton/togglebutton.cjs.min.js +1 -1
  360. package/togglebutton/togglebutton.esm.js +15 -15
  361. package/togglebutton/togglebutton.esm.min.js +1 -1
  362. package/togglebutton/togglebutton.js +16 -16
  363. package/togglebutton/togglebutton.min.js +1 -1
  364. package/tooltip/Tooltip.d.ts +10 -0
  365. package/tooltip/tooltip.cjs.js +51 -9
  366. package/tooltip/tooltip.cjs.min.js +1 -1
  367. package/tooltip/tooltip.esm.js +52 -10
  368. package/tooltip/tooltip.esm.min.js +1 -1
  369. package/tooltip/tooltip.js +51 -9
  370. package/tooltip/tooltip.min.js +1 -1
  371. package/tree/Tree.d.ts +137 -0
  372. package/tree/Tree.vue +12 -9
  373. package/tree/TreeNode.vue +23 -10
  374. package/tree/tree.cjs.js +85 -79
  375. package/tree/tree.cjs.min.js +1 -1
  376. package/tree/tree.esm.js +85 -80
  377. package/tree/tree.esm.min.js +1 -1
  378. package/tree/tree.js +86 -81
  379. package/tree/tree.min.js +1 -1
  380. package/treeselect/TreeSelect.d.ts +103 -1
  381. package/treeselect/TreeSelect.vue +15 -12
  382. package/treeselect/treeselect.cjs.js +37 -39
  383. package/treeselect/treeselect.cjs.min.js +1 -1
  384. package/treeselect/treeselect.esm.js +37 -40
  385. package/treeselect/treeselect.esm.min.js +1 -1
  386. package/treeselect/treeselect.js +38 -41
  387. package/treeselect/treeselect.min.js +1 -1
  388. package/treetable/BodyCell.vue +38 -10
  389. package/treetable/FooterCell.vue +15 -1
  390. package/treetable/HeaderCell.vue +28 -5
  391. package/treetable/TreeTable.d.ts +162 -0
  392. package/treetable/TreeTable.vue +25 -19
  393. package/treetable/TreeTableRow.vue +5 -0
  394. package/treetable/treetable.cjs.js +205 -158
  395. package/treetable/treetable.cjs.min.js +1 -1
  396. package/treetable/treetable.esm.js +205 -159
  397. package/treetable/treetable.esm.min.js +1 -1
  398. package/treetable/treetable.js +206 -160
  399. package/treetable/treetable.min.js +1 -1
  400. package/tristatecheckbox/TriStateCheckbox.d.ts +93 -0
  401. package/tristatecheckbox/TriStateCheckbox.vue +19 -8
  402. package/tristatecheckbox/tristatecheckbox.cjs.js +31 -22
  403. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  404. package/tristatecheckbox/tristatecheckbox.esm.js +31 -23
  405. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  406. package/tristatecheckbox/tristatecheckbox.js +32 -24
  407. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  408. package/ts-helpers.d.ts +3 -1
  409. package/vetur-attributes.json +180 -0
  410. package/vetur-tags.json +94 -39
  411. package/virtualscroller/VirtualScroller.d.ts +97 -0
  412. package/virtualscroller/VirtualScroller.vue +7 -5
  413. package/virtualscroller/virtualscroller.cjs.js +22 -19
  414. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  415. package/virtualscroller/virtualscroller.esm.js +22 -20
  416. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  417. package/virtualscroller/virtualscroller.js +23 -21
  418. package/virtualscroller/virtualscroller.min.js +1 -1
  419. package/web-types.json +467 -3
  420. package/datatable/TableLoadingBody.vue +0 -25
package/tree/tree.esm.js CHANGED
@@ -1,3 +1,4 @@
1
+ import BaseComponent from 'primevue/basecomponent';
1
2
  import SearchIcon from 'primevue/icons/search';
2
3
  import SpinnerIcon from 'primevue/icons/spinner';
3
4
  import { DomHandler, ObjectUtils } from 'primevue/utils';
@@ -6,10 +7,11 @@ import ChevronDownIcon from 'primevue/icons/chevrondown';
6
7
  import ChevronRightIcon from 'primevue/icons/chevronright';
7
8
  import MinusIcon from 'primevue/icons/minus';
8
9
  import Ripple from 'primevue/ripple';
9
- import { resolveComponent, resolveDirective, openBlock, createElementBlock, normalizeClass, createElementVNode, normalizeStyle, withDirectives, createBlock, resolveDynamicComponent, createCommentVNode, Fragment, createTextVNode, toDisplayString, renderList, renderSlot, vModelText, createVNode } from 'vue';
10
+ import { resolveComponent, resolveDirective, openBlock, createElementBlock, mergeProps, createElementVNode, withDirectives, createBlock, resolveDynamicComponent, createCommentVNode, Fragment, createTextVNode, toDisplayString, renderList, renderSlot, vModelText, createVNode } from 'vue';
10
11
 
11
12
  var script$1 = {
12
13
  name: 'TreeNode',
14
+ extends: BaseComponent,
13
15
  emits: ['node-toggle', 'node-click', 'checkbox-change'],
14
16
  props: {
15
17
  node: {
@@ -61,6 +63,15 @@ var script$1 = {
61
63
  onChildNodeToggle(node) {
62
64
  this.$emit('node-toggle', node);
63
65
  },
66
+ getPTOptions(key) {
67
+ return this.ptm(key, {
68
+ context: {
69
+ expanded: this.expanded,
70
+ selected: this.selected,
71
+ checked: this.checked
72
+ }
73
+ });
74
+ },
64
75
  onClick(event) {
65
76
  if (this.toggleClicked || DomHandler.hasClass(event.target, 'p-tree-toggler') || DomHandler.hasClass(event.target.parentElement, 'p-tree-toggler')) {
66
77
  this.toggleClicked = false;
@@ -398,25 +409,14 @@ var script$1 = {
398
409
  };
399
410
 
400
411
  const _hoisted_1$1 = ["aria-label", "aria-selected", "aria-expanded", "aria-setsize", "aria-posinset", "aria-level", "aria-checked", "tabindex"];
401
- const _hoisted_2$1 = {
402
- key: 0,
403
- class: "p-checkbox p-component",
404
- "aria-hidden": "true"
405
- };
406
- const _hoisted_3$1 = { class: "p-treenode-label" };
407
- const _hoisted_4$1 = {
408
- key: 0,
409
- class: "p-treenode-children",
410
- role: "group"
411
- };
412
412
 
413
413
  function render$1(_ctx, _cache, $props, $setup, $data, $options) {
414
414
  const _component_TreeNode = resolveComponent("TreeNode", true);
415
415
  const _directive_ripple = resolveDirective("ripple");
416
416
 
417
- return (openBlock(), createElementBlock("li", {
417
+ return (openBlock(), createElementBlock("li", mergeProps({
418
418
  ref: "currentNode",
419
- class: normalizeClass($options.containerClass),
419
+ class: $options.containerClass,
420
420
  role: "treeitem",
421
421
  "aria-label": $options.label($props.node),
422
422
  "aria-selected": $options.ariaSelected,
@@ -427,20 +427,20 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
427
427
  "aria-checked": $options.ariaChecked,
428
428
  tabindex: $props.index === 0 ? 0 : -1,
429
429
  onKeydown: _cache[3] || (_cache[3] = (...args) => ($options.onKeyDown && $options.onKeyDown(...args)))
430
- }, [
431
- createElementVNode("div", {
432
- class: normalizeClass($options.contentClass),
430
+ }, $options.getPTOptions('node')), [
431
+ createElementVNode("div", mergeProps({
432
+ class: $options.contentClass,
433
433
  onClick: _cache[1] || (_cache[1] = (...args) => ($options.onClick && $options.onClick(...args))),
434
434
  onTouchend: _cache[2] || (_cache[2] = (...args) => ($options.onTouchEnd && $options.onTouchEnd(...args))),
435
- style: normalizeStyle($props.node.style)
436
- }, [
437
- withDirectives((openBlock(), createElementBlock("button", {
435
+ style: $props.node.style
436
+ }, $options.getPTOptions('content')), [
437
+ withDirectives((openBlock(), createElementBlock("button", mergeProps({
438
438
  type: "button",
439
439
  class: "p-tree-toggler p-link",
440
440
  onClick: _cache[0] || (_cache[0] = (...args) => ($options.toggle && $options.toggle(...args))),
441
441
  tabindex: "-1",
442
442
  "aria-hidden": "true"
443
- }, [
443
+ }, $options.getPTOptions('toggler')), [
444
444
  ($props.templates['togglericon'])
445
445
  ? (openBlock(), createBlock(resolveDynamicComponent($props.templates['togglericon']), {
446
446
  key: 0,
@@ -449,23 +449,27 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
449
449
  class: "p-tree-toggler-icon"
450
450
  }, null, 8, ["node", "expanded"]))
451
451
  : ($options.expanded)
452
- ? (openBlock(), createBlock(resolveDynamicComponent($props.node.expandedIcon ? 'span' : 'ChevronDownIcon'), {
452
+ ? (openBlock(), createBlock(resolveDynamicComponent($props.node.expandedIcon ? 'span' : 'ChevronDownIcon'), mergeProps({
453
453
  key: 1,
454
454
  class: "p-tree-toggler-icon"
455
- }))
456
- : (openBlock(), createBlock(resolveDynamicComponent($props.node.collapsedIcon ? 'span' : 'ChevronRightIcon'), {
455
+ }, $options.getPTOptions('togglerIcon')), null, 16))
456
+ : (openBlock(), createBlock(resolveDynamicComponent($props.node.collapsedIcon ? 'span' : 'ChevronRightIcon'), mergeProps({
457
457
  key: 2,
458
458
  class: "p-tree-toggler-icon"
459
- }))
460
- ])), [
459
+ }, $options.getPTOptions('togglerIcon')), null, 16))
460
+ ], 16)), [
461
461
  [_directive_ripple]
462
462
  ]),
463
463
  ($options.checkboxMode)
464
- ? (openBlock(), createElementBlock("div", _hoisted_2$1, [
465
- createElementVNode("div", {
466
- class: normalizeClass($options.checkboxClass),
464
+ ? (openBlock(), createElementBlock("div", mergeProps({
465
+ key: 0,
466
+ class: "p-checkbox p-component",
467
+ "aria-hidden": "true"
468
+ }, $options.getPTOptions('checkboxContainer')), [
469
+ createElementVNode("div", mergeProps({
470
+ class: $options.checkboxClass,
467
471
  role: "checkbox"
468
- }, [
472
+ }, $options.getPTOptions('checkbox')), [
469
473
  ($props.templates['checkboxicon'])
470
474
  ? (openBlock(), createBlock(resolveDynamicComponent($props.templates['checkboxicon']), {
471
475
  key: 0,
@@ -473,17 +477,15 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
473
477
  partialChecked: $options.partialChecked,
474
478
  class: "p-checkbox-icon"
475
479
  }, null, 8, ["checked", "partialChecked"]))
476
- : (openBlock(), createBlock(resolveDynamicComponent($options.checked ? 'CheckIcon' : $options.partialChecked ? 'MinusIcon' : null), {
480
+ : (openBlock(), createBlock(resolveDynamicComponent($options.checked ? 'CheckIcon' : $options.partialChecked ? 'MinusIcon' : null), mergeProps({
477
481
  key: 1,
478
482
  class: "p-checkbox-icon"
479
- }))
480
- ], 2)
481
- ]))
483
+ }, $options.getPTOptions('checkboxIcon')), null, 16))
484
+ ], 16)
485
+ ], 16))
482
486
  : createCommentVNode("", true),
483
- createElementVNode("span", {
484
- class: normalizeClass($options.icon)
485
- }, null, 2),
486
- createElementVNode("span", _hoisted_3$1, [
487
+ createElementVNode("span", mergeProps({ class: $options.icon }, $options.getPTOptions('nodeIcon')), null, 16),
488
+ createElementVNode("span", mergeProps({ class: "p-treenode-label" }, $options.getPTOptions('label')), [
487
489
  ($props.templates[$props.node.type] || $props.templates['default'])
488
490
  ? (openBlock(), createBlock(resolveDynamicComponent($props.templates[$props.node.type] || $props.templates['default']), {
489
491
  key: 0,
@@ -492,10 +494,14 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
492
494
  : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
493
495
  createTextVNode(toDisplayString($options.label($props.node)), 1)
494
496
  ], 64))
495
- ])
496
- ], 38),
497
+ ], 16)
498
+ ], 16),
497
499
  ($options.hasChildren && $options.expanded)
498
- ? (openBlock(), createElementBlock("ul", _hoisted_4$1, [
500
+ ? (openBlock(), createElementBlock("ul", mergeProps({
501
+ key: 0,
502
+ class: "p-treenode-children",
503
+ role: "group"
504
+ }, _ctx.ptm('subgroup')), [
499
505
  (openBlock(true), createElementBlock(Fragment, null, renderList($props.node.children, (childNode) => {
500
506
  return (openBlock(), createBlock(_component_TreeNode, {
501
507
  key: childNode.key,
@@ -507,18 +513,20 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
507
513
  onNodeClick: $options.onChildNodeClick,
508
514
  selectionMode: $props.selectionMode,
509
515
  selectionKeys: $props.selectionKeys,
510
- onCheckboxChange: $options.propagateUp
511
- }, null, 8, ["node", "templates", "level", "expandedKeys", "onNodeToggle", "onNodeClick", "selectionMode", "selectionKeys", "onCheckboxChange"]))
516
+ onCheckboxChange: $options.propagateUp,
517
+ pt: _ctx.pt
518
+ }, null, 8, ["node", "templates", "level", "expandedKeys", "onNodeToggle", "onNodeClick", "selectionMode", "selectionKeys", "onCheckboxChange", "pt"]))
512
519
  }), 128))
513
- ]))
520
+ ], 16))
514
521
  : createCommentVNode("", true)
515
- ], 42, _hoisted_1$1))
522
+ ], 16, _hoisted_1$1))
516
523
  }
517
524
 
518
525
  script$1.render = render$1;
519
526
 
520
527
  var script = {
521
528
  name: 'Tree',
529
+ extends: BaseComponent,
522
530
  emits: ['node-expand', 'node-collapse', 'update:expandedKeys', 'update:selectionKeys', 'node-select', 'node-unselect'],
523
531
  props: {
524
532
  value: {
@@ -790,68 +798,64 @@ var script = {
790
798
  }
791
799
  };
792
800
 
793
- const _hoisted_1 = {
794
- key: 0,
795
- class: "p-tree-loading-overlay p-component-overlay"
796
- };
797
- const _hoisted_2 = {
798
- key: 1,
799
- class: "p-tree-filter-container"
800
- };
801
- const _hoisted_3 = ["placeholder"];
802
- const _hoisted_4 = ["aria-labelledby", "aria-label"];
801
+ const _hoisted_1 = ["placeholder"];
802
+ const _hoisted_2 = ["aria-labelledby", "aria-label"];
803
803
 
804
804
  function render(_ctx, _cache, $props, $setup, $data, $options) {
805
805
  const _component_SpinnerIcon = resolveComponent("SpinnerIcon");
806
806
  const _component_SearchIcon = resolveComponent("SearchIcon");
807
807
  const _component_TreeNode = resolveComponent("TreeNode");
808
808
 
809
- return (openBlock(), createElementBlock("div", {
810
- class: normalizeClass($options.containerClass)
811
- }, [
809
+ return (openBlock(), createElementBlock("div", mergeProps({ class: $options.containerClass }, _ctx.ptm('root')), [
812
810
  ($props.loading)
813
- ? (openBlock(), createElementBlock("div", _hoisted_1, [
811
+ ? (openBlock(), createElementBlock("div", mergeProps({
812
+ key: 0,
813
+ class: "p-tree-loading-overlay p-component-overlay"
814
+ }, _ctx.ptm('loadingOverlay')), [
814
815
  renderSlot(_ctx.$slots, "loadingicon", {}, () => [
815
816
  ($props.loadingIcon)
816
- ? (openBlock(), createElementBlock("i", {
817
+ ? (openBlock(), createElementBlock("i", mergeProps({
817
818
  key: 0,
818
- class: normalizeClass(['p-tree-loading-icon pi-spin', $props.loadingIcon])
819
- }, null, 2))
820
- : (openBlock(), createBlock(_component_SpinnerIcon, {
819
+ class: ['p-tree-loading-icon pi-spin', $props.loadingIcon]
820
+ }, _ctx.ptm('loadingIcon')), null, 16))
821
+ : (openBlock(), createBlock(_component_SpinnerIcon, mergeProps({
821
822
  key: 1,
822
823
  spin: "",
823
824
  class: "p-tree-loading-icon"
824
- }))
825
+ }, _ctx.ptm('loadingIcon')), null, 16))
825
826
  ])
826
- ]))
827
+ ], 16))
827
828
  : createCommentVNode("", true),
828
829
  ($props.filter)
829
- ? (openBlock(), createElementBlock("div", _hoisted_2, [
830
- withDirectives(createElementVNode("input", {
830
+ ? (openBlock(), createElementBlock("div", mergeProps({
831
+ key: 1,
832
+ class: "p-tree-filter-container"
833
+ }, _ctx.ptm('filterContainer')), [
834
+ withDirectives(createElementVNode("input", mergeProps({
831
835
  "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => (($data.filterValue) = $event)),
832
836
  type: "text",
833
837
  autocomplete: "off",
834
838
  class: "p-tree-filter p-inputtext p-component",
835
839
  placeholder: $props.filterPlaceholder,
836
840
  onKeydown: _cache[1] || (_cache[1] = (...args) => ($options.onFilterKeydown && $options.onFilterKeydown(...args)))
837
- }, null, 40, _hoisted_3), [
841
+ }, _ctx.ptm('input')), null, 16, _hoisted_1), [
838
842
  [vModelText, $data.filterValue]
839
843
  ]),
840
844
  renderSlot(_ctx.$slots, "searchicon", {}, () => [
841
- createVNode(_component_SearchIcon, { class: "p-tree-filter-icon" })
845
+ createVNode(_component_SearchIcon, mergeProps({ class: "p-tree-filter-icon" }, _ctx.ptm('searchIcon')), null, 16)
842
846
  ])
843
- ]))
847
+ ], 16))
844
848
  : createCommentVNode("", true),
845
- createElementVNode("div", {
849
+ createElementVNode("div", mergeProps({
846
850
  class: "p-tree-wrapper",
847
- style: normalizeStyle({ maxHeight: $props.scrollHeight })
848
- }, [
849
- createElementVNode("ul", {
851
+ style: { maxHeight: $props.scrollHeight }
852
+ }, _ctx.ptm('wrapper')), [
853
+ createElementVNode("ul", mergeProps({
850
854
  class: "p-tree-container",
851
855
  role: "tree",
852
856
  "aria-labelledby": _ctx.ariaLabelledby,
853
857
  "aria-label": _ctx.ariaLabel
854
- }, [
858
+ }, _ctx.ptm('container')), [
855
859
  (openBlock(true), createElementBlock(Fragment, null, renderList($options.valueToRender, (node, index) => {
856
860
  return (openBlock(), createBlock(_component_TreeNode, {
857
861
  key: node.key,
@@ -864,12 +868,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
864
868
  onNodeClick: $options.onNodeClick,
865
869
  selectionMode: $props.selectionMode,
866
870
  selectionKeys: $props.selectionKeys,
867
- onCheckboxChange: $options.onCheckboxChange
868
- }, null, 8, ["node", "templates", "level", "index", "expandedKeys", "onNodeToggle", "onNodeClick", "selectionMode", "selectionKeys", "onCheckboxChange"]))
871
+ onCheckboxChange: $options.onCheckboxChange,
872
+ pt: _ctx.pt
873
+ }, null, 8, ["node", "templates", "level", "index", "expandedKeys", "onNodeToggle", "onNodeClick", "selectionMode", "selectionKeys", "onCheckboxChange", "pt"]))
869
874
  }), 128))
870
- ], 8, _hoisted_4)
871
- ], 4)
872
- ], 2))
875
+ ], 16, _hoisted_2)
876
+ ], 16)
877
+ ], 16))
873
878
  }
874
879
 
875
880
  function styleInject(css, ref) {
@@ -1 +1 @@
1
- import e from"primevue/icons/search";import t from"primevue/icons/spinner";import{DomHandler as n,ObjectUtils as i}from"primevue/utils";import l from"primevue/icons/check";import o from"primevue/icons/chevrondown";import s from"primevue/icons/chevronright";import d from"primevue/icons/minus";import r from"primevue/ripple";import{resolveComponent as c,resolveDirective as a,openBlock as h,createElementBlock as p,normalizeClass as u,createElementVNode as g,normalizeStyle as y,withDirectives as f,createBlock as k,resolveDynamicComponent as m,createCommentVNode as x,Fragment as b,createTextVNode as C,toDisplayString as K,renderList as v,renderSlot as S,vModelText as N,createVNode as w}from"vue";var T={name:"TreeNode",emits:["node-toggle","node-click","checkbox-change"],props:{node:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},templates:{type:null,default:null},level:{type:Number,default:null},index:{type:Number,default:null}},nodeTouched:!1,toggleClicked:!1,mounted(){this.$refs.currentNode.closest(".p-treeselect-items-wrapper")&&this.setAllNodesTabIndexes()},methods:{toggle(){this.$emit("node-toggle",this.node),this.toggleClicked=!0},label:e=>"function"==typeof e.label?e.label():e.label,onChildNodeToggle(e){this.$emit("node-toggle",e)},onClick(e){this.toggleClicked||n.hasClass(e.target,"p-tree-toggler")||n.hasClass(e.target.parentElement,"p-tree-toggler")?this.toggleClicked=!1:(this.isCheckboxSelectionMode()?this.toggleCheckbox():this.$emit("node-click",{originalEvent:e,nodeTouched:this.nodeTouched,node:this.node}),this.nodeTouched=!1)},onChildNodeClick(e){this.$emit("node-click",e)},onTouchEnd(){this.nodeTouched=!0},onKeyDown(e){if(this.isSameNode(e))switch(e.code){case"Tab":this.onTabKey(e);break;case"ArrowDown":this.onArrowDown(e);break;case"ArrowUp":this.onArrowUp(e);break;case"ArrowRight":this.onArrowRight(e);break;case"ArrowLeft":this.onArrowLeft(e);break;case"Enter":case"Space":this.onEnterKey(e)}},onArrowDown(e){const t=e.target,n=t.children[1];if(n)this.focusRowChange(t,n.children[0]);else if(t.nextElementSibling)this.focusRowChange(t,t.nextElementSibling);else{let e=this.findNextSiblingOfAncestor(t);e&&this.focusRowChange(t,e)}e.preventDefault()},onArrowUp(e){const t=e.target;if(t.previousElementSibling)this.focusRowChange(t,t.previousElementSibling,this.findLastVisibleDescendant(t.previousElementSibling));else{let e=this.getParentNodeElement(t);e&&this.focusRowChange(t,e)}e.preventDefault()},onArrowRight(e){this.leaf||this.expanded||(e.currentTarget.tabIndex=-1,this.$emit("node-toggle",this.node),this.$nextTick((()=>{this.onArrowDown(e)})))},onArrowLeft(e){const t=n.findSingle(e.currentTarget,".p-tree-toggler");if(0===this.level&&!this.expanded)return!1;if(this.expanded&&!this.leaf)return t.click(),!1;const i=this.findBeforeClickableNode(e.currentTarget);i&&this.focusRowChange(e.currentTarget,i)},onEnterKey(e){this.setTabIndexForSelectionMode(e,this.nodeTouched),this.onClick(e),e.preventDefault()},onTabKey(){this.setAllNodesTabIndexes()},setAllNodesTabIndexes(){const e=n.find(this.$refs.currentNode.closest(".p-tree-container"),".p-treenode"),t=[...e].some((e=>"true"===e.getAttribute("aria-selected")||"true"===e.getAttribute("aria-checked")));if([...e].forEach((e=>{e.tabIndex=-1})),t){[...e].filter((e=>"true"===e.getAttribute("aria-selected")||"true"===e.getAttribute("aria-checked")))[0].tabIndex=0}else[...e][0].tabIndex=0},setTabIndexForSelectionMode(e,t){if(null!==this.selectionMode){const i=[...n.find(this.$refs.currentNode.parentElement,".p-treenode")];e.currentTarget.tabIndex=!1===t?-1:0,i.every((e=>-1===e.tabIndex))&&(i[0].tabIndex=0)}},focusRowChange(e,t,n){e.tabIndex="-1",t.tabIndex="0",this.focusNode(n||t)},findBeforeClickableNode(e){const t=e.closest("ul").closest("li");if(t){const i=n.findSingle(t,"button");return i&&"hidden"!==i.style.visibility?t:this.findBeforeClickableNode(e.previousElementSibling)}return null},toggleCheckbox(){let e=this.selectionKeys?{...this.selectionKeys}:{};const t=!this.checked;this.propagateDown(this.node,t,e),this.$emit("checkbox-change",{node:this.node,check:t,selectionKeys:e})},propagateDown(e,t,n){if(t?n[e.key]={checked:!0,partialChecked:!1}:delete n[e.key],e.children&&e.children.length)for(let i of e.children)this.propagateDown(i,t,n)},propagateUp(e){let t=e.check,n={...e.selectionKeys},i=0,l=!1;for(let e of this.node.children)n[e.key]&&n[e.key].checked?i++:n[e.key]&&n[e.key].partialChecked&&(l=!0);t&&i===this.node.children.length?n[this.node.key]={checked:!0,partialChecked:!1}:(t||delete n[this.node.key],l||i>0&&i!==this.node.children.length?n[this.node.key]={checked:!1,partialChecked:!0}:delete n[this.node.key]),this.$emit("checkbox-change",{node:e.node,check:e.check,selectionKeys:n})},onChildCheckboxChange(e){this.$emit("checkbox-change",e)},findNextSiblingOfAncestor(e){let t=this.getParentNodeElement(e);return t?t.nextElementSibling?t.nextElementSibling:this.findNextSiblingOfAncestor(t):null},findLastVisibleDescendant(e){const t=e.children[1];if(t){const e=t.children[t.children.length-1];return this.findLastVisibleDescendant(e)}return e},getParentNodeElement(e){const t=e.parentElement.parentElement;return n.hasClass(t,"p-treenode")?t:null},focusNode(e){e.focus()},isCheckboxSelectionMode(){return"checkbox"===this.selectionMode},isSameNode:e=>e.currentTarget&&(e.currentTarget.isSameNode(e.target)||e.currentTarget.isSameNode(e.target.closest(".p-treenode")))},computed:{hasChildren(){return this.node.children&&this.node.children.length>0},expanded(){return this.expandedKeys&&!0===this.expandedKeys[this.node.key]},leaf(){return!1!==this.node.leaf&&!(this.node.children&&this.node.children.length)},selectable(){return!1!==this.node.selectable&&null!=this.selectionMode},selected(){return!(!this.selectionMode||!this.selectionKeys)&&!0===this.selectionKeys[this.node.key]},containerClass(){return["p-treenode",{"p-treenode-leaf":this.leaf}]},contentClass(){return["p-treenode-content",this.node.styleClass,{"p-treenode-selectable":this.selectable,"p-highlight":this.checkboxMode?this.checked:this.selected}]},icon(){return["p-treenode-icon",this.node.icon]},checkboxClass(){return["p-checkbox-box",{"p-highlight":this.checked,"p-indeterminate":this.partialChecked}]},checkboxMode(){return"checkbox"===this.selectionMode&&!1!==this.node.selectable},checked(){return!!this.selectionKeys&&(this.selectionKeys[this.node.key]&&this.selectionKeys[this.node.key].checked)},partialChecked(){return!!this.selectionKeys&&(this.selectionKeys[this.node.key]&&this.selectionKeys[this.node.key].partialChecked)},ariaChecked(){return"single"===this.selectionMode||"multiple"===this.selectionMode?this.selected:void 0},ariaSelected(){return this.checkboxMode?this.checked:void 0}},components:{ChevronDownIcon:o,ChevronRightIcon:s,CheckIcon:l,MinusIcon:d},directives:{ripple:r}};const M=["aria-label","aria-selected","aria-expanded","aria-setsize","aria-posinset","aria-level","aria-checked","tabindex"],I={key:0,class:"p-checkbox p-component","aria-hidden":"true"},$={class:"p-treenode-label"},E={key:0,class:"p-treenode-children",role:"group"};T.render=function(e,t,n,i,l,o){const s=c("TreeNode",!0),d=a("ripple");return h(),p("li",{ref:"currentNode",class:u(o.containerClass),role:"treeitem","aria-label":o.label(n.node),"aria-selected":o.ariaSelected,"aria-expanded":o.expanded,"aria-setsize":n.node.children?n.node.children.length:0,"aria-posinset":n.index+1,"aria-level":n.level,"aria-checked":o.ariaChecked,tabindex:0===n.index?0:-1,onKeydown:t[3]||(t[3]=(...e)=>o.onKeyDown&&o.onKeyDown(...e))},[g("div",{class:u(o.contentClass),onClick:t[1]||(t[1]=(...e)=>o.onClick&&o.onClick(...e)),onTouchend:t[2]||(t[2]=(...e)=>o.onTouchEnd&&o.onTouchEnd(...e)),style:y(n.node.style)},[f((h(),p("button",{type:"button",class:"p-tree-toggler p-link",onClick:t[0]||(t[0]=(...e)=>o.toggle&&o.toggle(...e)),tabindex:"-1","aria-hidden":"true"},[n.templates.togglericon?(h(),k(m(n.templates.togglericon),{key:0,node:n.node,expanded:o.expanded,class:"p-tree-toggler-icon"},null,8,["node","expanded"])):o.expanded?(h(),k(m(n.node.expandedIcon?"span":"ChevronDownIcon"),{key:1,class:"p-tree-toggler-icon"})):(h(),k(m(n.node.collapsedIcon?"span":"ChevronRightIcon"),{key:2,class:"p-tree-toggler-icon"}))])),[[d]]),o.checkboxMode?(h(),p("div",I,[g("div",{class:u(o.checkboxClass),role:"checkbox"},[n.templates.checkboxicon?(h(),k(m(n.templates.checkboxicon),{key:0,checked:o.checked,partialChecked:o.partialChecked,class:"p-checkbox-icon"},null,8,["checked","partialChecked"])):(h(),k(m(o.checked?"CheckIcon":o.partialChecked?"MinusIcon":null),{key:1,class:"p-checkbox-icon"}))],2)])):x("",!0),g("span",{class:u(o.icon)},null,2),g("span",$,[n.templates[n.node.type]||n.templates.default?(h(),k(m(n.templates[n.node.type]||n.templates.default),{key:0,node:n.node},null,8,["node"])):(h(),p(b,{key:1},[C(K(o.label(n.node)),1)],64))])],38),o.hasChildren&&o.expanded?(h(),p("ul",E,[(h(!0),p(b,null,v(n.node.children,(e=>(h(),k(s,{key:e.key,node:e,templates:n.templates,level:n.level+1,expandedKeys:n.expandedKeys,onNodeToggle:o.onChildNodeToggle,onNodeClick:o.onChildNodeClick,selectionMode:n.selectionMode,selectionKeys:n.selectionKeys,onCheckboxChange:o.propagateUp},null,8,["node","templates","level","expandedKeys","onNodeToggle","onNodeClick","selectionMode","selectionKeys","onCheckboxChange"])))),128))])):x("",!0)],42,M)};var A={name:"Tree",emits:["node-expand","node-collapse","update:expandedKeys","update:selectionKeys","node-select","node-unselect"],props:{value:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},metaKeySelection:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},loadingIcon:{type:String,default:void 0},filter:{type:Boolean,default:!1},filterBy:{type:String,default:"label"},filterMode:{type:String,default:"lenient"},filterPlaceholder:{type:String,default:null},filterLocale:{type:String,default:void 0},scrollHeight:{type:String,default:null},level:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},data(){return{d_expandedKeys:this.expandedKeys||{},filterValue:null}},watch:{expandedKeys(e){this.d_expandedKeys=e}},methods:{onNodeToggle(e){const t=e.key;this.d_expandedKeys[t]?(delete this.d_expandedKeys[t],this.$emit("node-collapse",e)):(this.d_expandedKeys[t]=!0,this.$emit("node-expand",e)),this.d_expandedKeys={...this.d_expandedKeys},this.$emit("update:expandedKeys",this.d_expandedKeys)},onNodeClick(e){if(null!=this.selectionMode&&!1!==e.node.selectable){const t=!e.nodeTouched&&this.metaKeySelection?this.handleSelectionWithMetaKey(e):this.handleSelectionWithoutMetaKey(e);this.$emit("update:selectionKeys",t)}},onCheckboxChange(e){this.$emit("update:selectionKeys",e.selectionKeys),e.check?this.$emit("node-select",e.node):this.$emit("node-unselect",e.node)},handleSelectionWithMetaKey(e){const t=e.originalEvent,n=e.node,i=t.metaKey||t.ctrlKey;let l;return this.isNodeSelected(n)&&i?(this.isSingleSelectionMode()?l={}:(l={...this.selectionKeys},delete l[n.key]),this.$emit("node-unselect",n)):(this.isSingleSelectionMode()?l={}:this.isMultipleSelectionMode()&&(l=i&&this.selectionKeys?{...this.selectionKeys}:{}),l[n.key]=!0,this.$emit("node-select",n)),l},handleSelectionWithoutMetaKey(e){const t=e.node,n=this.isNodeSelected(t);let i;return this.isSingleSelectionMode()?n?(i={},this.$emit("node-unselect",t)):(i={},i[t.key]=!0,this.$emit("node-select",t)):n?(i={...this.selectionKeys},delete i[t.key],this.$emit("node-unselect",t)):(i=this.selectionKeys?{...this.selectionKeys}:{},i[t.key]=!0,this.$emit("node-select",t)),i},isSingleSelectionMode(){return"single"===this.selectionMode},isMultipleSelectionMode(){return"multiple"===this.selectionMode},isNodeSelected(e){return!(!this.selectionMode||!this.selectionKeys)&&!0===this.selectionKeys[e.key]},isChecked(e){return!!this.selectionKeys&&(this.selectionKeys[e.key]&&this.selectionKeys[e.key].checked)},isNodeLeaf:e=>!1!==e.leaf&&!(e.children&&e.children.length),onFilterKeydown(e){13===e.which&&e.preventDefault()},findFilteredNodes(e,t){if(e){let n=!1;if(e.children){let i=[...e.children];e.children=[];for(let l of i){let i={...l};this.isFilterMatched(i,t)&&(n=!0,e.children.push(i))}}if(n)return!0}},isFilterMatched(e,{searchFields:t,filterText:n,strict:l}){let o=!1;for(let l of t){String(i.resolveFieldData(e,l)).toLocaleLowerCase(this.filterLocale).indexOf(n)>-1&&(o=!0)}return(!o||l&&!this.isNodeLeaf(e))&&(o=this.findFilteredNodes(e,{searchFields:t,filterText:n,strict:l})||o),o}},computed:{containerClass(){return["p-tree p-component",{"p-tree-selectable":null!=this.selectionMode,"p-tree-loading":this.loading,"p-tree-flex-scrollable":"flex"===this.scrollHeight}]},filteredValue(){let e=[];const t=this.filterBy.split(","),n=this.filterValue.trim().toLocaleLowerCase(this.filterLocale),i="strict"===this.filterMode;for(let l of this.value){let o={...l},s={searchFields:t,filterText:n,strict:i};(i&&(this.findFilteredNodes(o,s)||this.isFilterMatched(o,s))||!i&&(this.isFilterMatched(o,s)||this.findFilteredNodes(o,s)))&&e.push(o)}return e},valueToRender(){return this.filterValue&&this.filterValue.trim().length>0?this.filteredValue:this.value}},components:{TreeNode:T,SearchIcon:e,SpinnerIcon:t}};const D={key:0,class:"p-tree-loading-overlay p-component-overlay"},F={key:1,class:"p-tree-filter-container"},L=["placeholder"],R=["aria-labelledby","aria-label"];!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css","top"===n&&i.firstChild?i.insertBefore(l,i.firstChild):i.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}("\n.p-tree-container {\n margin: 0;\n padding: 0;\n list-style-type: none;\n overflow: auto;\n}\n.p-treenode-children {\n margin: 0;\n padding: 0;\n list-style-type: none;\n}\n.p-tree-wrapper {\n overflow: auto;\n}\n.p-treenode-selectable {\n cursor: pointer;\n user-select: none;\n}\n.p-tree-toggler {\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}\n.p-treenode-leaf > .p-treenode-content .p-tree-toggler {\n visibility: hidden;\n}\n.p-treenode-content {\n display: flex;\n align-items: center;\n}\n.p-tree-filter {\n width: 100%;\n}\n.p-tree-filter-container {\n position: relative;\n display: block;\n width: 100%;\n}\n.p-tree-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -0.5rem;\n}\n.p-tree-loading {\n position: relative;\n min-height: 4rem;\n}\n.p-tree .p-tree-loading-overlay {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-tree-flex-scrollable {\n display: flex;\n flex: 1;\n height: 100%;\n flex-direction: column;\n}\n.p-tree-flex-scrollable .p-tree-wrapper {\n flex: 1;\n}\n"),A.render=function(e,t,n,i,l,o){const s=c("SpinnerIcon"),d=c("SearchIcon"),r=c("TreeNode");return h(),p("div",{class:u(o.containerClass)},[n.loading?(h(),p("div",D,[S(e.$slots,"loadingicon",{},(()=>[n.loadingIcon?(h(),p("i",{key:0,class:u(["p-tree-loading-icon pi-spin",n.loadingIcon])},null,2)):(h(),k(s,{key:1,spin:"",class:"p-tree-loading-icon"}))]))])):x("",!0),n.filter?(h(),p("div",F,[f(g("input",{"onUpdate:modelValue":t[0]||(t[0]=e=>l.filterValue=e),type:"text",autocomplete:"off",class:"p-tree-filter p-inputtext p-component",placeholder:n.filterPlaceholder,onKeydown:t[1]||(t[1]=(...e)=>o.onFilterKeydown&&o.onFilterKeydown(...e))},null,40,L),[[N,l.filterValue]]),S(e.$slots,"searchicon",{},(()=>[w(d,{class:"p-tree-filter-icon"})]))])):x("",!0),g("div",{class:"p-tree-wrapper",style:y({maxHeight:n.scrollHeight})},[g("ul",{class:"p-tree-container",role:"tree","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},[(h(!0),p(b,null,v(o.valueToRender,((t,i)=>(h(),k(r,{key:t.key,node:t,templates:e.$slots,level:n.level+1,index:i,expandedKeys:l.d_expandedKeys,onNodeToggle:o.onNodeToggle,onNodeClick:o.onNodeClick,selectionMode:n.selectionMode,selectionKeys:n.selectionKeys,onCheckboxChange:o.onCheckboxChange},null,8,["node","templates","level","index","expandedKeys","onNodeToggle","onNodeClick","selectionMode","selectionKeys","onCheckboxChange"])))),128))],8,R)],4)],2)};export{A as default};
1
+ import e from"primevue/basecomponent";import t from"primevue/icons/search";import n from"primevue/icons/spinner";import{DomHandler as i,ObjectUtils as l}from"primevue/utils";import o from"primevue/icons/check";import s from"primevue/icons/chevrondown";import d from"primevue/icons/chevronright";import r from"primevue/icons/minus";import c from"primevue/ripple";import{resolveComponent as a,resolveDirective as h,openBlock as p,createElementBlock as u,mergeProps as g,createElementVNode as y,withDirectives as f,createBlock as k,resolveDynamicComponent as m,createCommentVNode as x,Fragment as b,createTextVNode as C,toDisplayString as K,renderList as v,renderSlot as S,vModelText as T,createVNode as N}from"vue";var w={name:"TreeNode",extends:e,emits:["node-toggle","node-click","checkbox-change"],props:{node:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},templates:{type:null,default:null},level:{type:Number,default:null},index:{type:Number,default:null}},nodeTouched:!1,toggleClicked:!1,mounted(){this.$refs.currentNode.closest(".p-treeselect-items-wrapper")&&this.setAllNodesTabIndexes()},methods:{toggle(){this.$emit("node-toggle",this.node),this.toggleClicked=!0},label:e=>"function"==typeof e.label?e.label():e.label,onChildNodeToggle(e){this.$emit("node-toggle",e)},getPTOptions(e){return this.ptm(e,{context:{expanded:this.expanded,selected:this.selected,checked:this.checked}})},onClick(e){this.toggleClicked||i.hasClass(e.target,"p-tree-toggler")||i.hasClass(e.target.parentElement,"p-tree-toggler")?this.toggleClicked=!1:(this.isCheckboxSelectionMode()?this.toggleCheckbox():this.$emit("node-click",{originalEvent:e,nodeTouched:this.nodeTouched,node:this.node}),this.nodeTouched=!1)},onChildNodeClick(e){this.$emit("node-click",e)},onTouchEnd(){this.nodeTouched=!0},onKeyDown(e){if(this.isSameNode(e))switch(e.code){case"Tab":this.onTabKey(e);break;case"ArrowDown":this.onArrowDown(e);break;case"ArrowUp":this.onArrowUp(e);break;case"ArrowRight":this.onArrowRight(e);break;case"ArrowLeft":this.onArrowLeft(e);break;case"Enter":case"Space":this.onEnterKey(e)}},onArrowDown(e){const t=e.target,n=t.children[1];if(n)this.focusRowChange(t,n.children[0]);else if(t.nextElementSibling)this.focusRowChange(t,t.nextElementSibling);else{let e=this.findNextSiblingOfAncestor(t);e&&this.focusRowChange(t,e)}e.preventDefault()},onArrowUp(e){const t=e.target;if(t.previousElementSibling)this.focusRowChange(t,t.previousElementSibling,this.findLastVisibleDescendant(t.previousElementSibling));else{let e=this.getParentNodeElement(t);e&&this.focusRowChange(t,e)}e.preventDefault()},onArrowRight(e){this.leaf||this.expanded||(e.currentTarget.tabIndex=-1,this.$emit("node-toggle",this.node),this.$nextTick((()=>{this.onArrowDown(e)})))},onArrowLeft(e){const t=i.findSingle(e.currentTarget,".p-tree-toggler");if(0===this.level&&!this.expanded)return!1;if(this.expanded&&!this.leaf)return t.click(),!1;const n=this.findBeforeClickableNode(e.currentTarget);n&&this.focusRowChange(e.currentTarget,n)},onEnterKey(e){this.setTabIndexForSelectionMode(e,this.nodeTouched),this.onClick(e),e.preventDefault()},onTabKey(){this.setAllNodesTabIndexes()},setAllNodesTabIndexes(){const e=i.find(this.$refs.currentNode.closest(".p-tree-container"),".p-treenode"),t=[...e].some((e=>"true"===e.getAttribute("aria-selected")||"true"===e.getAttribute("aria-checked")));if([...e].forEach((e=>{e.tabIndex=-1})),t){[...e].filter((e=>"true"===e.getAttribute("aria-selected")||"true"===e.getAttribute("aria-checked")))[0].tabIndex=0}else[...e][0].tabIndex=0},setTabIndexForSelectionMode(e,t){if(null!==this.selectionMode){const n=[...i.find(this.$refs.currentNode.parentElement,".p-treenode")];e.currentTarget.tabIndex=!1===t?-1:0,n.every((e=>-1===e.tabIndex))&&(n[0].tabIndex=0)}},focusRowChange(e,t,n){e.tabIndex="-1",t.tabIndex="0",this.focusNode(n||t)},findBeforeClickableNode(e){const t=e.closest("ul").closest("li");if(t){const n=i.findSingle(t,"button");return n&&"hidden"!==n.style.visibility?t:this.findBeforeClickableNode(e.previousElementSibling)}return null},toggleCheckbox(){let e=this.selectionKeys?{...this.selectionKeys}:{};const t=!this.checked;this.propagateDown(this.node,t,e),this.$emit("checkbox-change",{node:this.node,check:t,selectionKeys:e})},propagateDown(e,t,n){if(t?n[e.key]={checked:!0,partialChecked:!1}:delete n[e.key],e.children&&e.children.length)for(let i of e.children)this.propagateDown(i,t,n)},propagateUp(e){let t=e.check,n={...e.selectionKeys},i=0,l=!1;for(let e of this.node.children)n[e.key]&&n[e.key].checked?i++:n[e.key]&&n[e.key].partialChecked&&(l=!0);t&&i===this.node.children.length?n[this.node.key]={checked:!0,partialChecked:!1}:(t||delete n[this.node.key],l||i>0&&i!==this.node.children.length?n[this.node.key]={checked:!1,partialChecked:!0}:delete n[this.node.key]),this.$emit("checkbox-change",{node:e.node,check:e.check,selectionKeys:n})},onChildCheckboxChange(e){this.$emit("checkbox-change",e)},findNextSiblingOfAncestor(e){let t=this.getParentNodeElement(e);return t?t.nextElementSibling?t.nextElementSibling:this.findNextSiblingOfAncestor(t):null},findLastVisibleDescendant(e){const t=e.children[1];if(t){const e=t.children[t.children.length-1];return this.findLastVisibleDescendant(e)}return e},getParentNodeElement(e){const t=e.parentElement.parentElement;return i.hasClass(t,"p-treenode")?t:null},focusNode(e){e.focus()},isCheckboxSelectionMode(){return"checkbox"===this.selectionMode},isSameNode:e=>e.currentTarget&&(e.currentTarget.isSameNode(e.target)||e.currentTarget.isSameNode(e.target.closest(".p-treenode")))},computed:{hasChildren(){return this.node.children&&this.node.children.length>0},expanded(){return this.expandedKeys&&!0===this.expandedKeys[this.node.key]},leaf(){return!1!==this.node.leaf&&!(this.node.children&&this.node.children.length)},selectable(){return!1!==this.node.selectable&&null!=this.selectionMode},selected(){return!(!this.selectionMode||!this.selectionKeys)&&!0===this.selectionKeys[this.node.key]},containerClass(){return["p-treenode",{"p-treenode-leaf":this.leaf}]},contentClass(){return["p-treenode-content",this.node.styleClass,{"p-treenode-selectable":this.selectable,"p-highlight":this.checkboxMode?this.checked:this.selected}]},icon(){return["p-treenode-icon",this.node.icon]},checkboxClass(){return["p-checkbox-box",{"p-highlight":this.checked,"p-indeterminate":this.partialChecked}]},checkboxMode(){return"checkbox"===this.selectionMode&&!1!==this.node.selectable},checked(){return!!this.selectionKeys&&(this.selectionKeys[this.node.key]&&this.selectionKeys[this.node.key].checked)},partialChecked(){return!!this.selectionKeys&&(this.selectionKeys[this.node.key]&&this.selectionKeys[this.node.key].partialChecked)},ariaChecked(){return"single"===this.selectionMode||"multiple"===this.selectionMode?this.selected:void 0},ariaSelected(){return this.checkboxMode?this.checked:void 0}},components:{ChevronDownIcon:s,ChevronRightIcon:d,CheckIcon:o,MinusIcon:r},directives:{ripple:c}};const M=["aria-label","aria-selected","aria-expanded","aria-setsize","aria-posinset","aria-level","aria-checked","tabindex"];w.render=function(e,t,n,i,l,o){const s=a("TreeNode",!0),d=h("ripple");return p(),u("li",g({ref:"currentNode",class:o.containerClass,role:"treeitem","aria-label":o.label(n.node),"aria-selected":o.ariaSelected,"aria-expanded":o.expanded,"aria-setsize":n.node.children?n.node.children.length:0,"aria-posinset":n.index+1,"aria-level":n.level,"aria-checked":o.ariaChecked,tabindex:0===n.index?0:-1,onKeydown:t[3]||(t[3]=(...e)=>o.onKeyDown&&o.onKeyDown(...e))},o.getPTOptions("node")),[y("div",g({class:o.contentClass,onClick:t[1]||(t[1]=(...e)=>o.onClick&&o.onClick(...e)),onTouchend:t[2]||(t[2]=(...e)=>o.onTouchEnd&&o.onTouchEnd(...e)),style:n.node.style},o.getPTOptions("content")),[f((p(),u("button",g({type:"button",class:"p-tree-toggler p-link",onClick:t[0]||(t[0]=(...e)=>o.toggle&&o.toggle(...e)),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("toggler")),[n.templates.togglericon?(p(),k(m(n.templates.togglericon),{key:0,node:n.node,expanded:o.expanded,class:"p-tree-toggler-icon"},null,8,["node","expanded"])):o.expanded?(p(),k(m(n.node.expandedIcon?"span":"ChevronDownIcon"),g({key:1,class:"p-tree-toggler-icon"},o.getPTOptions("togglerIcon")),null,16)):(p(),k(m(n.node.collapsedIcon?"span":"ChevronRightIcon"),g({key:2,class:"p-tree-toggler-icon"},o.getPTOptions("togglerIcon")),null,16))],16)),[[d]]),o.checkboxMode?(p(),u("div",g({key:0,class:"p-checkbox p-component","aria-hidden":"true"},o.getPTOptions("checkboxContainer")),[y("div",g({class:o.checkboxClass,role:"checkbox"},o.getPTOptions("checkbox")),[n.templates.checkboxicon?(p(),k(m(n.templates.checkboxicon),{key:0,checked:o.checked,partialChecked:o.partialChecked,class:"p-checkbox-icon"},null,8,["checked","partialChecked"])):(p(),k(m(o.checked?"CheckIcon":o.partialChecked?"MinusIcon":null),g({key:1,class:"p-checkbox-icon"},o.getPTOptions("checkboxIcon")),null,16))],16)],16)):x("",!0),y("span",g({class:o.icon},o.getPTOptions("nodeIcon")),null,16),y("span",g({class:"p-treenode-label"},o.getPTOptions("label")),[n.templates[n.node.type]||n.templates.default?(p(),k(m(n.templates[n.node.type]||n.templates.default),{key:0,node:n.node},null,8,["node"])):(p(),u(b,{key:1},[C(K(o.label(n.node)),1)],64))],16)],16),o.hasChildren&&o.expanded?(p(),u("ul",g({key:0,class:"p-treenode-children",role:"group"},e.ptm("subgroup")),[(p(!0),u(b,null,v(n.node.children,(t=>(p(),k(s,{key:t.key,node:t,templates:n.templates,level:n.level+1,expandedKeys:n.expandedKeys,onNodeToggle:o.onChildNodeToggle,onNodeClick:o.onChildNodeClick,selectionMode:n.selectionMode,selectionKeys:n.selectionKeys,onCheckboxChange:o.propagateUp,pt:e.pt},null,8,["node","templates","level","expandedKeys","onNodeToggle","onNodeClick","selectionMode","selectionKeys","onCheckboxChange","pt"])))),128))],16)):x("",!0)],16,M)};var I={name:"Tree",extends:e,emits:["node-expand","node-collapse","update:expandedKeys","update:selectionKeys","node-select","node-unselect"],props:{value:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},metaKeySelection:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},loadingIcon:{type:String,default:void 0},filter:{type:Boolean,default:!1},filterBy:{type:String,default:"label"},filterMode:{type:String,default:"lenient"},filterPlaceholder:{type:String,default:null},filterLocale:{type:String,default:void 0},scrollHeight:{type:String,default:null},level:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},data(){return{d_expandedKeys:this.expandedKeys||{},filterValue:null}},watch:{expandedKeys(e){this.d_expandedKeys=e}},methods:{onNodeToggle(e){const t=e.key;this.d_expandedKeys[t]?(delete this.d_expandedKeys[t],this.$emit("node-collapse",e)):(this.d_expandedKeys[t]=!0,this.$emit("node-expand",e)),this.d_expandedKeys={...this.d_expandedKeys},this.$emit("update:expandedKeys",this.d_expandedKeys)},onNodeClick(e){if(null!=this.selectionMode&&!1!==e.node.selectable){const t=!e.nodeTouched&&this.metaKeySelection?this.handleSelectionWithMetaKey(e):this.handleSelectionWithoutMetaKey(e);this.$emit("update:selectionKeys",t)}},onCheckboxChange(e){this.$emit("update:selectionKeys",e.selectionKeys),e.check?this.$emit("node-select",e.node):this.$emit("node-unselect",e.node)},handleSelectionWithMetaKey(e){const t=e.originalEvent,n=e.node,i=t.metaKey||t.ctrlKey;let l;return this.isNodeSelected(n)&&i?(this.isSingleSelectionMode()?l={}:(l={...this.selectionKeys},delete l[n.key]),this.$emit("node-unselect",n)):(this.isSingleSelectionMode()?l={}:this.isMultipleSelectionMode()&&(l=i&&this.selectionKeys?{...this.selectionKeys}:{}),l[n.key]=!0,this.$emit("node-select",n)),l},handleSelectionWithoutMetaKey(e){const t=e.node,n=this.isNodeSelected(t);let i;return this.isSingleSelectionMode()?n?(i={},this.$emit("node-unselect",t)):(i={},i[t.key]=!0,this.$emit("node-select",t)):n?(i={...this.selectionKeys},delete i[t.key],this.$emit("node-unselect",t)):(i=this.selectionKeys?{...this.selectionKeys}:{},i[t.key]=!0,this.$emit("node-select",t)),i},isSingleSelectionMode(){return"single"===this.selectionMode},isMultipleSelectionMode(){return"multiple"===this.selectionMode},isNodeSelected(e){return!(!this.selectionMode||!this.selectionKeys)&&!0===this.selectionKeys[e.key]},isChecked(e){return!!this.selectionKeys&&(this.selectionKeys[e.key]&&this.selectionKeys[e.key].checked)},isNodeLeaf:e=>!1!==e.leaf&&!(e.children&&e.children.length),onFilterKeydown(e){13===e.which&&e.preventDefault()},findFilteredNodes(e,t){if(e){let n=!1;if(e.children){let i=[...e.children];e.children=[];for(let l of i){let i={...l};this.isFilterMatched(i,t)&&(n=!0,e.children.push(i))}}if(n)return!0}},isFilterMatched(e,{searchFields:t,filterText:n,strict:i}){let o=!1;for(let i of t){String(l.resolveFieldData(e,i)).toLocaleLowerCase(this.filterLocale).indexOf(n)>-1&&(o=!0)}return(!o||i&&!this.isNodeLeaf(e))&&(o=this.findFilteredNodes(e,{searchFields:t,filterText:n,strict:i})||o),o}},computed:{containerClass(){return["p-tree p-component",{"p-tree-selectable":null!=this.selectionMode,"p-tree-loading":this.loading,"p-tree-flex-scrollable":"flex"===this.scrollHeight}]},filteredValue(){let e=[];const t=this.filterBy.split(","),n=this.filterValue.trim().toLocaleLowerCase(this.filterLocale),i="strict"===this.filterMode;for(let l of this.value){let o={...l},s={searchFields:t,filterText:n,strict:i};(i&&(this.findFilteredNodes(o,s)||this.isFilterMatched(o,s))||!i&&(this.isFilterMatched(o,s)||this.findFilteredNodes(o,s)))&&e.push(o)}return e},valueToRender(){return this.filterValue&&this.filterValue.trim().length>0?this.filteredValue:this.value}},components:{TreeNode:w,SearchIcon:t,SpinnerIcon:n}};const $=["placeholder"],E=["aria-labelledby","aria-label"];!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css","top"===n&&i.firstChild?i.insertBefore(l,i.firstChild):i.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}("\n.p-tree-container {\n margin: 0;\n padding: 0;\n list-style-type: none;\n overflow: auto;\n}\n.p-treenode-children {\n margin: 0;\n padding: 0;\n list-style-type: none;\n}\n.p-tree-wrapper {\n overflow: auto;\n}\n.p-treenode-selectable {\n cursor: pointer;\n user-select: none;\n}\n.p-tree-toggler {\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}\n.p-treenode-leaf > .p-treenode-content .p-tree-toggler {\n visibility: hidden;\n}\n.p-treenode-content {\n display: flex;\n align-items: center;\n}\n.p-tree-filter {\n width: 100%;\n}\n.p-tree-filter-container {\n position: relative;\n display: block;\n width: 100%;\n}\n.p-tree-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -0.5rem;\n}\n.p-tree-loading {\n position: relative;\n min-height: 4rem;\n}\n.p-tree .p-tree-loading-overlay {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-tree-flex-scrollable {\n display: flex;\n flex: 1;\n height: 100%;\n flex-direction: column;\n}\n.p-tree-flex-scrollable .p-tree-wrapper {\n flex: 1;\n}\n"),I.render=function(e,t,n,i,l,o){const s=a("SpinnerIcon"),d=a("SearchIcon"),r=a("TreeNode");return p(),u("div",g({class:o.containerClass},e.ptm("root")),[n.loading?(p(),u("div",g({key:0,class:"p-tree-loading-overlay p-component-overlay"},e.ptm("loadingOverlay")),[S(e.$slots,"loadingicon",{},(()=>[n.loadingIcon?(p(),u("i",g({key:0,class:["p-tree-loading-icon pi-spin",n.loadingIcon]},e.ptm("loadingIcon")),null,16)):(p(),k(s,g({key:1,spin:"",class:"p-tree-loading-icon"},e.ptm("loadingIcon")),null,16))]))],16)):x("",!0),n.filter?(p(),u("div",g({key:1,class:"p-tree-filter-container"},e.ptm("filterContainer")),[f(y("input",g({"onUpdate:modelValue":t[0]||(t[0]=e=>l.filterValue=e),type:"text",autocomplete:"off",class:"p-tree-filter p-inputtext p-component",placeholder:n.filterPlaceholder,onKeydown:t[1]||(t[1]=(...e)=>o.onFilterKeydown&&o.onFilterKeydown(...e))},e.ptm("input")),null,16,$),[[T,l.filterValue]]),S(e.$slots,"searchicon",{},(()=>[N(d,g({class:"p-tree-filter-icon"},e.ptm("searchIcon")),null,16)]))],16)):x("",!0),y("div",g({class:"p-tree-wrapper",style:{maxHeight:n.scrollHeight}},e.ptm("wrapper")),[y("ul",g({class:"p-tree-container",role:"tree","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},e.ptm("container")),[(p(!0),u(b,null,v(o.valueToRender,((t,i)=>(p(),k(r,{key:t.key,node:t,templates:e.$slots,level:n.level+1,index:i,expandedKeys:l.d_expandedKeys,onNodeToggle:o.onNodeToggle,onNodeClick:o.onNodeClick,selectionMode:n.selectionMode,selectionKeys:n.selectionKeys,onCheckboxChange:o.onCheckboxChange,pt:e.pt},null,8,["node","templates","level","index","expandedKeys","onNodeToggle","onNodeClick","selectionMode","selectionKeys","onCheckboxChange","pt"])))),128))],16,E)],16)],16)};export{I as default};