primereact 8.1.0 → 8.3.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 (691) hide show
  1. package/README.md +6 -0
  2. package/accordion/accordion.cjs.js +9 -0
  3. package/accordion/accordion.cjs.min.js +1 -1
  4. package/accordion/accordion.d.ts +4 -5
  5. package/accordion/accordion.esm.js +9 -0
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +9 -0
  8. package/accordion/accordion.min.js +1 -1
  9. package/autocomplete/autocomplete.cjs.js +65 -36
  10. package/autocomplete/autocomplete.cjs.min.js +1 -1
  11. package/autocomplete/autocomplete.d.ts +5 -1
  12. package/autocomplete/autocomplete.esm.js +66 -37
  13. package/autocomplete/autocomplete.esm.min.js +1 -1
  14. package/autocomplete/autocomplete.js +65 -36
  15. package/autocomplete/autocomplete.min.js +1 -1
  16. package/avatar/avatar.cjs.js +35 -7
  17. package/avatar/avatar.cjs.min.js +1 -1
  18. package/avatar/avatar.d.ts +4 -4
  19. package/avatar/avatar.esm.js +35 -7
  20. package/avatar/avatar.esm.min.js +1 -1
  21. package/avatar/avatar.js +35 -7
  22. package/avatar/avatar.min.js +1 -1
  23. package/avatargroup/avatargroup.cjs.js +27 -0
  24. package/avatargroup/avatargroup.cjs.min.js +1 -1
  25. package/avatargroup/avatargroup.d.ts +4 -4
  26. package/avatargroup/avatargroup.esm.js +27 -0
  27. package/avatargroup/avatargroup.esm.min.js +1 -1
  28. package/avatargroup/avatargroup.js +27 -0
  29. package/avatargroup/avatargroup.min.js +1 -1
  30. package/badge/badge.cjs.js +14 -2
  31. package/badge/badge.cjs.min.js +1 -1
  32. package/badge/badge.d.ts +5 -5
  33. package/badge/badge.esm.js +14 -2
  34. package/badge/badge.esm.min.js +1 -1
  35. package/badge/badge.js +14 -2
  36. package/badge/badge.min.js +1 -1
  37. package/blockui/blockui.cjs.js +26 -3
  38. package/blockui/blockui.cjs.min.js +1 -1
  39. package/blockui/blockui.d.ts +2 -4
  40. package/blockui/blockui.esm.js +26 -3
  41. package/blockui/blockui.esm.min.js +1 -1
  42. package/blockui/blockui.js +26 -3
  43. package/blockui/blockui.min.js +1 -1
  44. package/breadcrumb/breadcrumb.cjs.js +28 -0
  45. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  46. package/breadcrumb/breadcrumb.d.ts +4 -5
  47. package/breadcrumb/breadcrumb.esm.js +28 -0
  48. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  49. package/breadcrumb/breadcrumb.js +28 -0
  50. package/breadcrumb/breadcrumb.min.js +1 -1
  51. package/button/button.d.ts +3 -1
  52. package/calendar/calendar.cjs.js +138 -46
  53. package/calendar/calendar.cjs.min.js +1 -1
  54. package/calendar/calendar.d.ts +4 -0
  55. package/calendar/calendar.esm.js +138 -46
  56. package/calendar/calendar.esm.min.js +1 -1
  57. package/calendar/calendar.js +138 -46
  58. package/calendar/calendar.min.js +1 -1
  59. package/captcha/captcha.cjs.js +24 -3
  60. package/captcha/captcha.cjs.min.js +1 -1
  61. package/captcha/captcha.d.ts +2 -3
  62. package/captcha/captcha.esm.js +24 -3
  63. package/captcha/captcha.esm.min.js +1 -1
  64. package/captcha/captcha.js +24 -3
  65. package/captcha/captcha.min.js +1 -1
  66. package/card/card.d.ts +1 -4
  67. package/carousel/carousel.cjs.js +25 -0
  68. package/carousel/carousel.cjs.min.js +1 -1
  69. package/carousel/carousel.d.ts +4 -5
  70. package/carousel/carousel.esm.js +25 -0
  71. package/carousel/carousel.esm.min.js +1 -1
  72. package/carousel/carousel.js +25 -0
  73. package/carousel/carousel.min.js +1 -1
  74. package/cascadeselect/cascadeselect.cjs.js +38 -3
  75. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  76. package/cascadeselect/cascadeselect.d.ts +7 -2
  77. package/cascadeselect/cascadeselect.esm.js +38 -3
  78. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  79. package/cascadeselect/cascadeselect.js +38 -3
  80. package/cascadeselect/cascadeselect.min.js +1 -1
  81. package/chart/chart.cjs.js +72 -25
  82. package/chart/chart.cjs.min.js +1 -1
  83. package/chart/chart.d.ts +1 -0
  84. package/chart/chart.esm.js +72 -25
  85. package/chart/chart.esm.min.js +1 -1
  86. package/chart/chart.js +72 -25
  87. package/chart/chart.min.js +1 -1
  88. package/checkbox/checkbox.cjs.js +30 -1
  89. package/checkbox/checkbox.cjs.min.js +1 -1
  90. package/checkbox/checkbox.d.ts +4 -1
  91. package/checkbox/checkbox.esm.js +31 -2
  92. package/checkbox/checkbox.esm.min.js +1 -1
  93. package/checkbox/checkbox.js +30 -1
  94. package/checkbox/checkbox.min.js +1 -1
  95. package/chip/chip.cjs.js +28 -0
  96. package/chip/chip.cjs.min.js +1 -1
  97. package/chip/chip.d.ts +4 -4
  98. package/chip/chip.esm.js +28 -0
  99. package/chip/chip.esm.min.js +1 -1
  100. package/chip/chip.js +28 -0
  101. package/chip/chip.min.js +1 -1
  102. package/chips/chips.cjs.js +56 -2
  103. package/chips/chips.cjs.min.js +1 -1
  104. package/chips/chips.d.ts +9 -5
  105. package/chips/chips.esm.js +57 -3
  106. package/chips/chips.esm.min.js +1 -1
  107. package/chips/chips.js +57 -4
  108. package/chips/chips.min.js +1 -1
  109. package/colorpicker/colorpicker.cjs.js +33 -0
  110. package/colorpicker/colorpicker.cjs.min.js +1 -1
  111. package/colorpicker/colorpicker.d.ts +7 -1
  112. package/colorpicker/colorpicker.esm.js +33 -0
  113. package/colorpicker/colorpicker.esm.min.js +1 -1
  114. package/colorpicker/colorpicker.js +33 -0
  115. package/colorpicker/colorpicker.min.js +1 -1
  116. package/column/column.d.ts +1 -0
  117. package/confirmdialog/confirmdialog.cjs.js +3 -3
  118. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  119. package/confirmdialog/confirmdialog.d.ts +1 -6
  120. package/confirmdialog/confirmdialog.esm.js +3 -3
  121. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  122. package/confirmdialog/confirmdialog.js +3 -3
  123. package/confirmdialog/confirmdialog.min.js +1 -1
  124. package/confirmpopup/confirmpopup.cjs.js +2 -2
  125. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  126. package/confirmpopup/confirmpopup.esm.js +2 -2
  127. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  128. package/confirmpopup/confirmpopup.js +2 -2
  129. package/confirmpopup/confirmpopup.min.js +1 -1
  130. package/contextmenu/contextmenu.cjs.js +25 -3
  131. package/contextmenu/contextmenu.cjs.min.js +1 -1
  132. package/contextmenu/contextmenu.d.ts +2 -4
  133. package/contextmenu/contextmenu.esm.js +25 -3
  134. package/contextmenu/contextmenu.esm.min.js +1 -1
  135. package/contextmenu/contextmenu.js +25 -3
  136. package/contextmenu/contextmenu.min.js +1 -1
  137. package/core/core.js +599 -180
  138. package/core/core.min.js +12 -12
  139. package/datascroller/datascroller.cjs.js +29 -3
  140. package/datascroller/datascroller.cjs.min.js +1 -1
  141. package/datascroller/datascroller.d.ts +2 -4
  142. package/datascroller/datascroller.esm.js +29 -3
  143. package/datascroller/datascroller.esm.min.js +1 -1
  144. package/datascroller/datascroller.js +29 -3
  145. package/datascroller/datascroller.min.js +1 -1
  146. package/datatable/datatable.cjs.js +92 -30
  147. package/datatable/datatable.cjs.min.js +1 -1
  148. package/datatable/datatable.d.ts +5 -1
  149. package/datatable/datatable.esm.js +93 -31
  150. package/datatable/datatable.esm.min.js +1 -1
  151. package/datatable/datatable.js +92 -30
  152. package/datatable/datatable.min.js +1 -1
  153. package/dataview/dataview.cjs.js +12 -0
  154. package/dataview/dataview.cjs.min.js +1 -1
  155. package/dataview/dataview.d.ts +4 -5
  156. package/dataview/dataview.esm.js +12 -0
  157. package/dataview/dataview.esm.min.js +1 -1
  158. package/dataview/dataview.js +12 -0
  159. package/dataview/dataview.min.js +1 -1
  160. package/deferredcontent/deferredcontent.cjs.js +25 -0
  161. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  162. package/deferredcontent/deferredcontent.d.ts +4 -2
  163. package/deferredcontent/deferredcontent.esm.js +25 -0
  164. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  165. package/deferredcontent/deferredcontent.js +25 -0
  166. package/deferredcontent/deferredcontent.min.js +1 -1
  167. package/dialog/dialog.cjs.js +46 -6
  168. package/dialog/dialog.cjs.min.js +1 -1
  169. package/dialog/dialog.d.ts +8 -0
  170. package/dialog/dialog.esm.js +46 -6
  171. package/dialog/dialog.esm.min.js +1 -1
  172. package/dialog/dialog.js +46 -6
  173. package/dialog/dialog.min.js +1 -1
  174. package/divider/divider.cjs.js +27 -0
  175. package/divider/divider.cjs.min.js +1 -1
  176. package/divider/divider.d.ts +4 -4
  177. package/divider/divider.esm.js +27 -0
  178. package/divider/divider.esm.min.js +1 -1
  179. package/divider/divider.js +27 -0
  180. package/divider/divider.min.js +1 -1
  181. package/dock/dock.cjs.js +28 -0
  182. package/dock/dock.cjs.min.js +1 -1
  183. package/dock/dock.d.ts +4 -5
  184. package/dock/dock.esm.js +28 -0
  185. package/dock/dock.esm.min.js +1 -1
  186. package/dock/dock.js +28 -0
  187. package/dock/dock.min.js +1 -1
  188. package/dropdown/dropdown.cjs.js +85 -23
  189. package/dropdown/dropdown.cjs.min.js +1 -1
  190. package/dropdown/dropdown.d.ts +15 -2
  191. package/dropdown/dropdown.esm.js +85 -23
  192. package/dropdown/dropdown.esm.min.js +1 -1
  193. package/dropdown/dropdown.js +85 -23
  194. package/dropdown/dropdown.min.js +1 -1
  195. package/editor/editor.cjs.js +27 -11
  196. package/editor/editor.cjs.min.js +1 -1
  197. package/editor/editor.d.ts +3 -0
  198. package/editor/editor.esm.js +27 -11
  199. package/editor/editor.esm.min.js +1 -1
  200. package/editor/editor.js +27 -11
  201. package/editor/editor.min.js +1 -1
  202. package/fieldset/fieldset.cjs.js +30 -0
  203. package/fieldset/fieldset.cjs.min.js +1 -1
  204. package/fieldset/fieldset.d.ts +5 -5
  205. package/fieldset/fieldset.esm.js +30 -0
  206. package/fieldset/fieldset.esm.min.js +1 -1
  207. package/fieldset/fieldset.js +30 -0
  208. package/fieldset/fieldset.min.js +1 -1
  209. package/fileupload/fileupload.cjs.js +28 -3
  210. package/fileupload/fileupload.cjs.min.js +1 -1
  211. package/fileupload/fileupload.d.ts +2 -0
  212. package/fileupload/fileupload.esm.js +28 -3
  213. package/fileupload/fileupload.esm.min.js +1 -1
  214. package/fileupload/fileupload.js +28 -3
  215. package/fileupload/fileupload.min.js +1 -1
  216. package/fullcalendar/fullcalendar.cjs.js +25 -0
  217. package/fullcalendar/fullcalendar.cjs.min.js +1 -1
  218. package/fullcalendar/fullcalendar.d.ts +3 -1
  219. package/fullcalendar/fullcalendar.esm.js +25 -0
  220. package/fullcalendar/fullcalendar.esm.min.js +1 -1
  221. package/fullcalendar/fullcalendar.js +25 -0
  222. package/fullcalendar/fullcalendar.min.js +1 -1
  223. package/galleria/galleria.cjs.js +27 -3
  224. package/galleria/galleria.cjs.min.js +1 -1
  225. package/galleria/galleria.d.ts +2 -4
  226. package/galleria/galleria.esm.js +27 -3
  227. package/galleria/galleria.esm.min.js +1 -1
  228. package/galleria/galleria.js +27 -3
  229. package/galleria/galleria.min.js +1 -1
  230. package/gmap/gmap.cjs.js +25 -3
  231. package/gmap/gmap.cjs.min.js +1 -1
  232. package/gmap/gmap.d.ts +5 -4
  233. package/gmap/gmap.esm.js +25 -3
  234. package/gmap/gmap.esm.min.js +1 -1
  235. package/gmap/gmap.js +25 -3
  236. package/gmap/gmap.min.js +1 -1
  237. package/hooks/hooks.cjs.js +48 -2
  238. package/hooks/hooks.cjs.min.js +1 -1
  239. package/hooks/hooks.d.ts +3 -1
  240. package/hooks/hooks.esm.js +47 -3
  241. package/hooks/hooks.esm.min.js +1 -1
  242. package/hooks/hooks.js +48 -2
  243. package/hooks/hooks.min.js +1 -1
  244. package/image/image.cjs.js +35 -5
  245. package/image/image.cjs.min.js +1 -1
  246. package/image/image.d.ts +5 -4
  247. package/image/image.esm.js +35 -5
  248. package/image/image.esm.min.js +1 -1
  249. package/image/image.js +35 -5
  250. package/image/image.min.css +1 -1
  251. package/image/image.min.js +1 -1
  252. package/inplace/inplace.cjs.js +28 -1
  253. package/inplace/inplace.cjs.min.js +1 -1
  254. package/inplace/inplace.d.ts +4 -5
  255. package/inplace/inplace.esm.js +28 -1
  256. package/inplace/inplace.esm.min.js +1 -1
  257. package/inplace/inplace.js +28 -1
  258. package/inplace/inplace.min.js +1 -1
  259. package/inputmask/inputmask.cjs.js +32 -5
  260. package/inputmask/inputmask.cjs.min.js +1 -1
  261. package/inputmask/inputmask.d.ts +5 -13
  262. package/inputmask/inputmask.esm.js +32 -5
  263. package/inputmask/inputmask.esm.min.js +1 -1
  264. package/inputmask/inputmask.js +32 -5
  265. package/inputmask/inputmask.min.js +1 -1
  266. package/inputnumber/inputnumber.cjs.js +11 -5
  267. package/inputnumber/inputnumber.cjs.min.js +1 -1
  268. package/inputnumber/inputnumber.d.ts +4 -4
  269. package/inputnumber/inputnumber.esm.js +11 -5
  270. package/inputnumber/inputnumber.esm.min.js +1 -1
  271. package/inputnumber/inputnumber.js +11 -5
  272. package/inputnumber/inputnumber.min.js +1 -1
  273. package/inputswitch/inputswitch.cjs.js +29 -1
  274. package/inputswitch/inputswitch.cjs.min.js +1 -1
  275. package/inputswitch/inputswitch.d.ts +4 -1
  276. package/inputswitch/inputswitch.esm.js +30 -2
  277. package/inputswitch/inputswitch.esm.min.js +1 -1
  278. package/inputswitch/inputswitch.js +29 -1
  279. package/inputswitch/inputswitch.min.css +1 -1
  280. package/inputswitch/inputswitch.min.js +1 -1
  281. package/inputtext/inputtext.d.ts +4 -1
  282. package/inputtext/inputtext.min.css +1 -1
  283. package/inputtextarea/inputtextarea.d.ts +4 -1
  284. package/knob/knob.cjs.js +25 -0
  285. package/knob/knob.cjs.min.js +1 -1
  286. package/knob/knob.d.ts +3 -1
  287. package/knob/knob.esm.js +25 -0
  288. package/knob/knob.esm.min.js +1 -1
  289. package/knob/knob.js +25 -0
  290. package/knob/knob.min.js +1 -1
  291. package/listbox/listbox.cjs.js +128 -20
  292. package/listbox/listbox.cjs.min.js +1 -1
  293. package/listbox/listbox.d.ts +14 -7
  294. package/listbox/listbox.esm.js +129 -21
  295. package/listbox/listbox.esm.min.js +1 -1
  296. package/listbox/listbox.js +129 -22
  297. package/listbox/listbox.min.js +1 -1
  298. package/megamenu/megamenu.cjs.js +57 -12
  299. package/megamenu/megamenu.cjs.min.js +1 -1
  300. package/megamenu/megamenu.d.ts +11 -5
  301. package/megamenu/megamenu.esm.js +57 -12
  302. package/megamenu/megamenu.esm.min.js +1 -1
  303. package/megamenu/megamenu.js +57 -12
  304. package/megamenu/megamenu.min.css +1 -1
  305. package/megamenu/megamenu.min.js +1 -1
  306. package/mention/mention.cjs.js +16 -1
  307. package/mention/mention.cjs.min.js +1 -1
  308. package/mention/mention.d.ts +7 -5
  309. package/mention/mention.esm.js +16 -1
  310. package/mention/mention.esm.min.js +1 -1
  311. package/mention/mention.js +16 -1
  312. package/mention/mention.min.js +1 -1
  313. package/menu/menu.cjs.js +27 -3
  314. package/menu/menu.cjs.min.js +1 -1
  315. package/menu/menu.d.ts +3 -4
  316. package/menu/menu.esm.js +27 -3
  317. package/menu/menu.esm.min.js +1 -1
  318. package/menu/menu.js +27 -3
  319. package/menu/menu.min.js +1 -1
  320. package/menubar/menubar.cjs.js +32 -3
  321. package/menubar/menubar.cjs.min.js +1 -1
  322. package/menubar/menubar.d.ts +6 -5
  323. package/menubar/menubar.esm.js +32 -3
  324. package/menubar/menubar.esm.min.js +1 -1
  325. package/menubar/menubar.js +32 -3
  326. package/menubar/menubar.min.js +1 -1
  327. package/menuitem/menuitem.d.ts +2 -0
  328. package/message/message.cjs.js +28 -0
  329. package/message/message.cjs.min.js +1 -1
  330. package/message/message.d.ts +5 -6
  331. package/message/message.esm.js +28 -0
  332. package/message/message.esm.min.js +1 -1
  333. package/message/message.js +28 -0
  334. package/message/message.min.js +1 -1
  335. package/messages/messages.cjs.js +30 -5
  336. package/messages/messages.cjs.min.js +1 -1
  337. package/messages/messages.d.ts +3 -5
  338. package/messages/messages.esm.js +30 -5
  339. package/messages/messages.esm.min.js +1 -1
  340. package/messages/messages.js +30 -5
  341. package/messages/messages.min.js +1 -1
  342. package/multiselect/multiselect.cjs.js +78 -12
  343. package/multiselect/multiselect.cjs.min.js +1 -1
  344. package/multiselect/multiselect.d.ts +16 -2
  345. package/multiselect/multiselect.esm.js +78 -12
  346. package/multiselect/multiselect.esm.min.js +1 -1
  347. package/multiselect/multiselect.js +78 -12
  348. package/multiselect/multiselect.min.js +1 -1
  349. package/multistatecheckbox/multistatecheckbox.cjs.js +10 -0
  350. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  351. package/multistatecheckbox/multistatecheckbox.d.ts +4 -6
  352. package/multistatecheckbox/multistatecheckbox.esm.js +10 -0
  353. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  354. package/multistatecheckbox/multistatecheckbox.js +10 -0
  355. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  356. package/orderlist/orderlist.cjs.js +145 -4
  357. package/orderlist/orderlist.cjs.min.js +1 -1
  358. package/orderlist/orderlist.d.ts +17 -6
  359. package/orderlist/orderlist.esm.js +145 -4
  360. package/orderlist/orderlist.esm.min.js +1 -1
  361. package/orderlist/orderlist.js +146 -6
  362. package/orderlist/orderlist.min.css +1 -1
  363. package/orderlist/orderlist.min.js +1 -1
  364. package/organizationchart/organizationchart.cjs.js +27 -0
  365. package/organizationchart/organizationchart.cjs.min.js +1 -1
  366. package/organizationchart/organizationchart.d.ts +4 -5
  367. package/organizationchart/organizationchart.esm.js +27 -0
  368. package/organizationchart/organizationchart.esm.min.js +1 -1
  369. package/organizationchart/organizationchart.js +27 -0
  370. package/organizationchart/organizationchart.min.js +1 -1
  371. package/overlaypanel/overlaypanel.cjs.js +25 -4
  372. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  373. package/overlaypanel/overlaypanel.d.ts +2 -4
  374. package/overlaypanel/overlaypanel.esm.js +25 -4
  375. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  376. package/overlaypanel/overlaypanel.js +25 -4
  377. package/overlaypanel/overlaypanel.min.js +1 -1
  378. package/package.json +1 -1
  379. package/paginator/paginator.cjs.js +15 -3
  380. package/paginator/paginator.cjs.min.js +1 -1
  381. package/paginator/paginator.d.ts +4 -4
  382. package/paginator/paginator.esm.js +15 -3
  383. package/paginator/paginator.esm.min.js +1 -1
  384. package/paginator/paginator.js +15 -3
  385. package/paginator/paginator.min.js +1 -1
  386. package/panel/panel.cjs.js +28 -0
  387. package/panel/panel.cjs.min.js +1 -1
  388. package/panel/panel.d.ts +5 -5
  389. package/panel/panel.esm.js +28 -0
  390. package/panel/panel.esm.min.js +1 -1
  391. package/panel/panel.js +28 -0
  392. package/panel/panel.min.js +1 -1
  393. package/panelmenu/panelmenu.cjs.js +28 -0
  394. package/panelmenu/panelmenu.cjs.min.js +1 -1
  395. package/panelmenu/panelmenu.d.ts +4 -5
  396. package/panelmenu/panelmenu.esm.js +28 -0
  397. package/panelmenu/panelmenu.esm.min.js +1 -1
  398. package/panelmenu/panelmenu.js +28 -0
  399. package/panelmenu/panelmenu.min.js +1 -1
  400. package/password/password.cjs.js +31 -0
  401. package/password/password.cjs.min.js +1 -1
  402. package/password/password.d.ts +6 -4
  403. package/password/password.esm.js +31 -0
  404. package/password/password.esm.min.js +1 -1
  405. package/password/password.js +31 -0
  406. package/password/password.min.js +1 -1
  407. package/picklist/picklist.cjs.js +196 -14
  408. package/picklist/picklist.cjs.min.js +1 -1
  409. package/picklist/picklist.d.ts +32 -1
  410. package/picklist/picklist.esm.js +196 -14
  411. package/picklist/picklist.esm.min.js +1 -1
  412. package/picklist/picklist.js +197 -16
  413. package/picklist/picklist.min.css +1 -1
  414. package/picklist/picklist.min.js +1 -1
  415. package/primereact.all.cjs.js +2483 -655
  416. package/primereact.all.cjs.min.js +1 -1
  417. package/primereact.all.esm.js +2481 -655
  418. package/primereact.all.esm.min.js +1 -1
  419. package/primereact.all.js +2483 -655
  420. package/primereact.all.min.js +1 -1
  421. package/progressbar/progressbar.cjs.js +29 -0
  422. package/progressbar/progressbar.cjs.min.js +1 -1
  423. package/progressbar/progressbar.d.ts +4 -5
  424. package/progressbar/progressbar.esm.js +29 -0
  425. package/progressbar/progressbar.esm.min.js +1 -1
  426. package/progressbar/progressbar.js +29 -0
  427. package/progressbar/progressbar.min.js +1 -1
  428. package/progressspinner/progressspinner.cjs.js +27 -0
  429. package/progressspinner/progressspinner.cjs.min.js +1 -1
  430. package/progressspinner/progressspinner.d.ts +4 -5
  431. package/progressspinner/progressspinner.esm.js +27 -0
  432. package/progressspinner/progressspinner.esm.min.js +1 -1
  433. package/progressspinner/progressspinner.js +27 -0
  434. package/progressspinner/progressspinner.min.js +1 -1
  435. package/radiobutton/radiobutton.cjs.js +29 -4
  436. package/radiobutton/radiobutton.cjs.min.js +1 -1
  437. package/radiobutton/radiobutton.d.ts +2 -4
  438. package/radiobutton/radiobutton.esm.js +30 -5
  439. package/radiobutton/radiobutton.esm.min.js +1 -1
  440. package/radiobutton/radiobutton.js +29 -4
  441. package/radiobutton/radiobutton.min.js +1 -1
  442. package/rating/rating.cjs.js +25 -0
  443. package/rating/rating.cjs.min.js +1 -1
  444. package/rating/rating.d.ts +3 -4
  445. package/rating/rating.esm.js +25 -0
  446. package/rating/rating.esm.min.js +1 -1
  447. package/rating/rating.js +25 -0
  448. package/rating/rating.min.js +1 -1
  449. package/resources/primereact.css +213 -145
  450. package/resources/primereact.min.css +1 -1
  451. package/resources/themes/arya-blue/theme.css +39 -6
  452. package/resources/themes/arya-green/theme.css +39 -6
  453. package/resources/themes/arya-orange/theme.css +39 -6
  454. package/resources/themes/arya-purple/theme.css +39 -6
  455. package/resources/themes/bootstrap4-dark-blue/theme.css +39 -6
  456. package/resources/themes/bootstrap4-dark-purple/theme.css +39 -6
  457. package/resources/themes/bootstrap4-light-blue/theme.css +38 -5
  458. package/resources/themes/bootstrap4-light-purple/theme.css +38 -5
  459. package/resources/themes/fluent-light/theme.css +39 -6
  460. package/resources/themes/lara-dark-blue/theme.css +39 -6
  461. package/resources/themes/lara-dark-indigo/theme.css +39 -6
  462. package/resources/themes/lara-dark-purple/theme.css +39 -6
  463. package/resources/themes/lara-dark-teal/theme.css +39 -6
  464. package/resources/themes/lara-light-blue/theme.css +39 -6
  465. package/resources/themes/lara-light-indigo/theme.css +39 -6
  466. package/resources/themes/lara-light-purple/theme.css +39 -6
  467. package/resources/themes/lara-light-teal/theme.css +39 -6
  468. package/resources/themes/luna-amber/theme.css +39 -6
  469. package/resources/themes/luna-blue/theme.css +39 -6
  470. package/resources/themes/luna-green/theme.css +39 -6
  471. package/resources/themes/luna-pink/theme.css +39 -6
  472. package/resources/themes/md-dark-deeppurple/theme.css +39 -6
  473. package/resources/themes/md-dark-indigo/theme.css +39 -6
  474. package/resources/themes/md-light-deeppurple/theme.css +39 -6
  475. package/resources/themes/md-light-indigo/theme.css +39 -6
  476. package/resources/themes/mdc-dark-deeppurple/theme.css +39 -6
  477. package/resources/themes/mdc-dark-indigo/theme.css +39 -6
  478. package/resources/themes/mdc-light-deeppurple/theme.css +39 -6
  479. package/resources/themes/mdc-light-indigo/theme.css +39 -6
  480. package/resources/themes/nova/theme.css +39 -6
  481. package/resources/themes/nova-accent/theme.css +39 -6
  482. package/resources/themes/nova-alt/theme.css +39 -6
  483. package/resources/themes/rhea/theme.css +39 -6
  484. package/resources/themes/saga-blue/theme.css +39 -6
  485. package/resources/themes/saga-green/theme.css +39 -6
  486. package/resources/themes/saga-orange/theme.css +39 -6
  487. package/resources/themes/saga-purple/theme.css +39 -6
  488. package/resources/themes/tailwind-light/theme.css +39 -6
  489. package/resources/themes/vela-blue/theme.css +39 -6
  490. package/resources/themes/vela-green/theme.css +39 -6
  491. package/resources/themes/vela-orange/theme.css +39 -6
  492. package/resources/themes/vela-purple/theme.css +39 -6
  493. package/scrollpanel/scrollpanel.cjs.js +33 -3
  494. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  495. package/scrollpanel/scrollpanel.d.ts +7 -5
  496. package/scrollpanel/scrollpanel.esm.js +33 -3
  497. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  498. package/scrollpanel/scrollpanel.js +33 -3
  499. package/scrollpanel/scrollpanel.min.js +1 -1
  500. package/scrolltop/scrolltop.cjs.js +25 -0
  501. package/scrolltop/scrolltop.cjs.min.js +1 -1
  502. package/scrolltop/scrolltop.d.ts +3 -1
  503. package/scrolltop/scrolltop.esm.js +25 -0
  504. package/scrolltop/scrolltop.esm.min.js +1 -1
  505. package/scrolltop/scrolltop.js +25 -0
  506. package/scrolltop/scrolltop.min.js +1 -1
  507. package/selectbutton/selectbutton.cjs.js +25 -0
  508. package/selectbutton/selectbutton.cjs.min.js +1 -1
  509. package/selectbutton/selectbutton.d.ts +4 -5
  510. package/selectbutton/selectbutton.esm.js +25 -0
  511. package/selectbutton/selectbutton.esm.min.js +1 -1
  512. package/selectbutton/selectbutton.js +25 -0
  513. package/selectbutton/selectbutton.min.js +1 -1
  514. package/sidebar/sidebar.cjs.js +31 -0
  515. package/sidebar/sidebar.cjs.min.js +1 -1
  516. package/sidebar/sidebar.d.ts +6 -5
  517. package/sidebar/sidebar.esm.js +31 -0
  518. package/sidebar/sidebar.esm.min.js +1 -1
  519. package/sidebar/sidebar.js +31 -0
  520. package/sidebar/sidebar.min.js +1 -1
  521. package/skeleton/skeleton.cjs.js +27 -0
  522. package/skeleton/skeleton.cjs.min.js +1 -1
  523. package/skeleton/skeleton.d.ts +4 -4
  524. package/skeleton/skeleton.esm.js +27 -0
  525. package/skeleton/skeleton.esm.min.js +1 -1
  526. package/skeleton/skeleton.js +27 -0
  527. package/skeleton/skeleton.min.js +1 -1
  528. package/slidemenu/slidemenu.cjs.js +28 -21
  529. package/slidemenu/slidemenu.cjs.min.js +1 -1
  530. package/slidemenu/slidemenu.d.ts +2 -4
  531. package/slidemenu/slidemenu.esm.js +28 -21
  532. package/slidemenu/slidemenu.esm.min.js +1 -1
  533. package/slidemenu/slidemenu.js +28 -21
  534. package/slidemenu/slidemenu.min.js +1 -1
  535. package/slider/slider.cjs.js +25 -0
  536. package/slider/slider.cjs.min.js +1 -1
  537. package/slider/slider.d.ts +4 -6
  538. package/slider/slider.esm.js +25 -0
  539. package/slider/slider.esm.min.js +1 -1
  540. package/slider/slider.js +25 -0
  541. package/slider/slider.min.js +1 -1
  542. package/speeddial/speeddial.cjs.js +6 -3
  543. package/speeddial/speeddial.cjs.min.js +1 -1
  544. package/speeddial/speeddial.d.ts +2 -4
  545. package/speeddial/speeddial.esm.js +6 -3
  546. package/speeddial/speeddial.esm.min.js +1 -1
  547. package/speeddial/speeddial.js +6 -3
  548. package/speeddial/speeddial.min.js +1 -1
  549. package/splitbutton/splitbutton.cjs.js +28 -3
  550. package/splitbutton/splitbutton.cjs.min.js +1 -1
  551. package/splitbutton/splitbutton.d.ts +4 -5
  552. package/splitbutton/splitbutton.esm.js +28 -3
  553. package/splitbutton/splitbutton.esm.min.js +1 -1
  554. package/splitbutton/splitbutton.js +28 -3
  555. package/splitbutton/splitbutton.min.js +1 -1
  556. package/splitter/splitter.cjs.js +34 -5
  557. package/splitter/splitter.cjs.min.js +1 -1
  558. package/splitter/splitter.d.ts +4 -5
  559. package/splitter/splitter.esm.js +35 -6
  560. package/splitter/splitter.esm.min.js +1 -1
  561. package/splitter/splitter.js +34 -5
  562. package/splitter/splitter.min.js +1 -1
  563. package/steps/steps.cjs.js +29 -0
  564. package/steps/steps.cjs.min.js +1 -1
  565. package/steps/steps.d.ts +4 -5
  566. package/steps/steps.esm.js +29 -0
  567. package/steps/steps.esm.min.js +1 -1
  568. package/steps/steps.js +29 -0
  569. package/steps/steps.min.js +1 -1
  570. package/styleclass/styleclass.cjs.js +40 -17
  571. package/styleclass/styleclass.cjs.min.js +1 -1
  572. package/styleclass/styleclass.d.ts +5 -2
  573. package/styleclass/styleclass.esm.js +40 -17
  574. package/styleclass/styleclass.esm.min.js +1 -1
  575. package/styleclass/styleclass.js +40 -17
  576. package/styleclass/styleclass.min.js +1 -1
  577. package/tabmenu/tabmenu.cjs.js +27 -0
  578. package/tabmenu/tabmenu.cjs.min.js +1 -1
  579. package/tabmenu/tabmenu.d.ts +4 -5
  580. package/tabmenu/tabmenu.esm.js +27 -0
  581. package/tabmenu/tabmenu.esm.min.js +1 -1
  582. package/tabmenu/tabmenu.js +27 -0
  583. package/tabmenu/tabmenu.min.js +1 -1
  584. package/tabview/tabview.cjs.js +8 -3
  585. package/tabview/tabview.cjs.min.js +1 -1
  586. package/tabview/tabview.d.ts +2 -4
  587. package/tabview/tabview.esm.js +8 -3
  588. package/tabview/tabview.esm.min.js +1 -1
  589. package/tabview/tabview.js +8 -3
  590. package/tabview/tabview.min.js +1 -1
  591. package/tag/tag.cjs.js +12 -0
  592. package/tag/tag.cjs.min.js +1 -1
  593. package/tag/tag.d.ts +5 -5
  594. package/tag/tag.esm.js +12 -0
  595. package/tag/tag.esm.min.js +1 -1
  596. package/tag/tag.js +12 -0
  597. package/tag/tag.min.js +1 -1
  598. package/terminal/terminal.cjs.js +26 -1
  599. package/terminal/terminal.cjs.min.js +1 -1
  600. package/terminal/terminal.d.ts +4 -5
  601. package/terminal/terminal.esm.js +27 -2
  602. package/terminal/terminal.esm.min.js +1 -1
  603. package/terminal/terminal.js +26 -1
  604. package/terminal/terminal.min.js +1 -1
  605. package/tieredmenu/tieredmenu.cjs.js +27 -4
  606. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  607. package/tieredmenu/tieredmenu.d.ts +2 -4
  608. package/tieredmenu/tieredmenu.esm.js +27 -4
  609. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  610. package/tieredmenu/tieredmenu.js +27 -4
  611. package/tieredmenu/tieredmenu.min.js +1 -1
  612. package/timeline/timeline.cjs.js +13 -0
  613. package/timeline/timeline.cjs.min.js +1 -1
  614. package/timeline/timeline.d.ts +4 -5
  615. package/timeline/timeline.esm.js +13 -0
  616. package/timeline/timeline.esm.min.js +1 -1
  617. package/timeline/timeline.js +13 -0
  618. package/timeline/timeline.min.js +1 -1
  619. package/toast/toast.cjs.js +18 -17
  620. package/toast/toast.cjs.min.js +1 -1
  621. package/toast/toast.d.ts +4 -5
  622. package/toast/toast.esm.js +18 -17
  623. package/toast/toast.esm.min.js +1 -1
  624. package/toast/toast.js +18 -17
  625. package/toast/toast.min.css +1 -1
  626. package/toast/toast.min.js +1 -1
  627. package/togglebutton/togglebutton.cjs.js +25 -0
  628. package/togglebutton/togglebutton.cjs.min.js +1 -1
  629. package/togglebutton/togglebutton.d.ts +4 -6
  630. package/togglebutton/togglebutton.esm.js +25 -0
  631. package/togglebutton/togglebutton.esm.min.js +1 -1
  632. package/togglebutton/togglebutton.js +25 -0
  633. package/togglebutton/togglebutton.min.js +1 -1
  634. package/toolbar/toolbar.cjs.js +27 -0
  635. package/toolbar/toolbar.cjs.min.js +1 -1
  636. package/toolbar/toolbar.d.ts +4 -5
  637. package/toolbar/toolbar.esm.js +27 -0
  638. package/toolbar/toolbar.esm.min.js +1 -1
  639. package/toolbar/toolbar.js +27 -0
  640. package/toolbar/toolbar.min.js +1 -1
  641. package/tooltip/tooltip.cjs.js +76 -53
  642. package/tooltip/tooltip.cjs.min.js +1 -1
  643. package/tooltip/tooltip.d.ts +2 -0
  644. package/tooltip/tooltip.esm.js +76 -53
  645. package/tooltip/tooltip.esm.min.js +1 -1
  646. package/tooltip/tooltip.js +76 -53
  647. package/tooltip/tooltip.min.js +1 -1
  648. package/tree/tree.cjs.js +51 -9
  649. package/tree/tree.cjs.min.js +1 -1
  650. package/tree/tree.d.ts +9 -0
  651. package/tree/tree.esm.js +51 -9
  652. package/tree/tree.esm.min.js +1 -1
  653. package/tree/tree.js +51 -9
  654. package/tree/tree.min.js +1 -1
  655. package/treeselect/treeselect.cjs.js +34 -5
  656. package/treeselect/treeselect.cjs.min.js +1 -1
  657. package/treeselect/treeselect.d.ts +11 -5
  658. package/treeselect/treeselect.esm.js +34 -5
  659. package/treeselect/treeselect.esm.min.js +1 -1
  660. package/treeselect/treeselect.js +34 -5
  661. package/treeselect/treeselect.min.js +1 -1
  662. package/treetable/treetable.cjs.js +12 -8
  663. package/treetable/treetable.cjs.min.js +1 -1
  664. package/treetable/treetable.d.ts +4 -3
  665. package/treetable/treetable.esm.js +12 -8
  666. package/treetable/treetable.esm.min.js +1 -1
  667. package/treetable/treetable.js +12 -8
  668. package/treetable/treetable.min.js +1 -1
  669. package/tristatecheckbox/tristatecheckbox.cjs.js +25 -0
  670. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  671. package/tristatecheckbox/tristatecheckbox.d.ts +3 -5
  672. package/tristatecheckbox/tristatecheckbox.esm.js +25 -0
  673. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  674. package/tristatecheckbox/tristatecheckbox.js +25 -0
  675. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  676. package/utils/utils.cjs.js +21 -5
  677. package/utils/utils.cjs.min.js +1 -1
  678. package/utils/utils.d.ts +1 -0
  679. package/utils/utils.esm.js +21 -5
  680. package/utils/utils.esm.min.js +1 -1
  681. package/utils/utils.js +21 -5
  682. package/utils/utils.min.js +1 -1
  683. package/virtualscroller/virtualscroller.cjs.js +157 -68
  684. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  685. package/virtualscroller/virtualscroller.d.ts +12 -0
  686. package/virtualscroller/virtualscroller.esm.js +159 -70
  687. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  688. package/virtualscroller/virtualscroller.js +157 -68
  689. package/virtualscroller/virtualscroller.min.css +1 -1
  690. package/virtualscroller/virtualscroller.min.js +1 -1
  691. package/web-types.json +301 -5
package/knob/knob.esm.js CHANGED
@@ -20,6 +20,21 @@ function _extends() {
20
20
  return _extends.apply(this, arguments);
21
21
  }
22
22
 
23
+ function _defineProperty(obj, key, value) {
24
+ if (key in obj) {
25
+ Object.defineProperty(obj, key, {
26
+ value: value,
27
+ enumerable: true,
28
+ configurable: true,
29
+ writable: true
30
+ });
31
+ } else {
32
+ obj[key] = value;
33
+ }
34
+
35
+ return obj;
36
+ }
37
+
23
38
  function _arrayWithHoles(arr) {
24
39
  if (Array.isArray(arr)) return arr;
25
40
  }
@@ -81,6 +96,9 @@ function _slicedToArray(arr, i) {
81
96
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
82
97
  }
83
98
 
99
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
100
+
101
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
84
102
  var radius = 40;
85
103
  var midX = 50;
86
104
  var midY = 50;
@@ -254,6 +272,13 @@ var Knob = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (prop
254
272
  unbindWindowTouchEndListener();
255
273
  };
256
274
 
275
+ React.useImperativeHandle(ref, function () {
276
+ return _objectSpread({
277
+ getElement: function getElement() {
278
+ return elementRef.current;
279
+ }
280
+ }, props);
281
+ });
257
282
  var otherProps = ObjectUtils.findDiffKeys(props, Knob.defaultProps);
258
283
  var className = classNames('p-knob p-component', {
259
284
  'p-disabled': props.disabled
@@ -1 +1 @@
1
- import*as t from"react";import{useEventListener as e}from"primereact/hooks";import{ObjectUtils as n,classNames as a}from"primereact/utils";function r(){return r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(t[a]=n[a])}return t},r.apply(this,arguments)}function o(t){if(Array.isArray(t))return t}function l(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var a,r,o=[],l=!0,i=!1;try{for(n=n.call(t);!(l=(a=n.next()).done)&&(o.push(a.value),!e||o.length!==e);l=!0);}catch(t){i=!0,r=t}finally{try{l||null==n.return||n.return()}finally{if(i)throw r}}return o}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,a=new Array(e);n<e;n++)a[n]=t[n];return a}function c(t,e){if(t){if("string"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(t,e):void 0}}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function s(t,e){return o(t)||l(t,e)||c(t,e)||u()}var f=4*Math.PI/3,m=-Math.PI/3,h=t.memo(t.forwardRef((function(o,l){var i=t.useRef(null),c=!o.disabled&&!o.readOnly,u=s(e({target:"window",type:"mousemove",listener:function(t){N(t.offsetX,t.offsetY),t.preventDefault()},when:c}),2),d=u[0],p=u[1],v=s(e({target:"window",type:"mouseup",listener:function(t){p(),g(),t.preventDefault()},when:c}),2),y=v[0],g=v[1],b=s(e({target:"window",type:"touchmove",listener:function(t){if(1===t.touches.length){var e=i.current.getBoundingClientRect(),n=t.targetTouches.item(0);N(n.clientX-e.left,n.clientY-e.top),t.preventDefault()}},when:c}),2),w=b[0],M=b[1],x=s(e({target:"window",type:"touchend",listener:function(){M(),C()},when:c}),2),k=x[0],C=x[1],E=function(t,e,n,a,r){return(t-e)*(r-a)/(n-e)+a},P=function(){return E(o.min>0&&o.max>0?o.min:0,o.min,o.max,f,m)},A=function(){return E(o.value,o.min,o.max,f,m)},I="M ".concat(50+40*Math.cos(f)," ").concat(50-40*Math.sin(f)," A ").concat(40," ").concat(40," 0 1 1 ").concat(50+40*Math.cos(m)," ").concat(50-40*Math.sin(m)),O="M ".concat(50+40*Math.cos(P())," ").concat(50-40*Math.sin(P())," A ").concat(40," ").concat(40," 0 ").concat(Math.abs(P()-A())<Math.PI?0:1," ").concat(A()>P()?0:1," ").concat(50+40*Math.cos(A())," ").concat(50-40*Math.sin(A())),N=function(t,e){var n=Math.atan2(o.size/2-e,t-o.size/2),a=-Math.PI/2-Math.PI/6;S(n,a)},S=function(t,e){var n;if(t>m)n=E(t,f,m,o.min,o.max);else{if(!(t<e))return;n=E(t+2*Math.PI,f,m,o.min,o.max)}o.onChange&&o.onChange({value:Math.round((n-o.min)/o.step)*o.step+o.min})},T=n.findDiffKeys(o,h.defaultProps),D=a("p-knob p-component",{"p-disabled":o.disabled},o.className),j=o.showValue&&t.createElement("text",{x:50,y:57,textAnchor:"middle",fill:o.textColor,className:"p-knob-text",name:o.name},o.valueTemplate.replace("{value}",o.value.toString()));return t.createElement("div",r({ref:i,id:o.id,className:D,style:o.style},T),t.createElement("svg",{viewBox:"0 0 100 100",width:o.size,height:o.size,onClick:function(t){o.disabled||o.readOnly||N(t.nativeEvent.offsetX,t.nativeEvent.offsetY)},onMouseDown:function(t){d(),y(),t.preventDefault()},onMouseUp:function(){p(),g()},onTouchStart:function(){w(),k()},onTouchEnd:function(){M(),C()}},t.createElement("path",{d:I,strokeWidth:o.strokeWidth,stroke:o.rangeColor,className:"p-knob-range"}),t.createElement("path",{d:O,strokeWidth:o.strokeWidth,stroke:o.valueColor,className:"p-knob-value"}),j))})));h.displayName="Knob",h.defaultProps={__TYPE:"Knob",id:null,style:null,className:null,value:null,size:100,disabled:!1,readOnly:!1,showValue:!0,step:1,min:0,max:100,strokeWidth:14,name:null,valueColor:"var(--primary-color, Black)",rangeColor:"var(--surface-border, LightGray)",textColor:"var(--text-color-secondary, Black)",valueTemplate:"{value}",onChange:null};export{h as Knob};
1
+ import*as e from"react";import{useEventListener as t}from"primereact/hooks";import{ObjectUtils as n,classNames as r}from"primereact/utils";function o(){return o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o.apply(this,arguments)}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e){if(Array.isArray(e))return e}function c(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,c=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){c=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(c)throw o}}return a}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function u(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e,t){return i(e)||c(e,t)||u(e,t)||s()}function p(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function m(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?p(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):p(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var h=4*Math.PI/3,d=-Math.PI/3,v=e.memo(e.forwardRef((function(a,i){var c=e.useRef(null),l=!a.disabled&&!a.readOnly,u=f(t({target:"window",type:"mousemove",listener:function(e){A(e.offsetX,e.offsetY),e.preventDefault()},when:l}),2),s=u[0],p=u[1],y=f(t({target:"window",type:"mouseup",listener:function(e){p(),g(),e.preventDefault()},when:l}),2),b=y[0],g=y[1],w=f(t({target:"window",type:"touchmove",listener:function(e){if(1===e.touches.length){var t=c.current.getBoundingClientRect(),n=e.targetTouches.item(0);A(n.clientX-t.left,n.clientY-t.top),e.preventDefault()}},when:l}),2),O=w[0],M=w[1],P=f(t({target:"window",type:"touchend",listener:function(){M(),k()},when:l}),2),j=P[0],k=P[1],x=function(e,t,n,r,o){return(e-t)*(o-r)/(n-t)+r},E=function(){return x(a.min>0&&a.max>0?a.min:0,a.min,a.max,h,d)},C=function(){return x(a.value,a.min,a.max,h,d)},D="M ".concat(50+40*Math.cos(h)," ").concat(50-40*Math.sin(h)," A ").concat(40," ").concat(40," 0 1 1 ").concat(50+40*Math.cos(d)," ").concat(50-40*Math.sin(d)),I="M ".concat(50+40*Math.cos(E())," ").concat(50-40*Math.sin(E())," A ").concat(40," ").concat(40," 0 ").concat(Math.abs(E()-C())<Math.PI?0:1," ").concat(C()>E()?0:1," ").concat(50+40*Math.cos(C())," ").concat(50-40*Math.sin(C())),A=function(e,t){var n=Math.atan2(a.size/2-t,e-a.size/2),r=-Math.PI/2-Math.PI/6;S(n,r)},S=function(e,t){var n;if(e>d)n=x(e,h,d,a.min,a.max);else{if(!(e<t))return;n=x(e+2*Math.PI,h,d,a.min,a.max)}a.onChange&&a.onChange({value:Math.round((n-a.min)/a.step)*a.step+a.min})};e.useImperativeHandle(i,(function(){return m({getElement:function(){return c.current}},a)}));var N=n.findDiffKeys(a,v.defaultProps),T=r("p-knob p-component",{"p-disabled":a.disabled},a.className),z=a.showValue&&e.createElement("text",{x:50,y:57,textAnchor:"middle",fill:a.textColor,className:"p-knob-text",name:a.name},a.valueTemplate.replace("{value}",a.value.toString()));return e.createElement("div",o({ref:c,id:a.id,className:T,style:a.style},N),e.createElement("svg",{viewBox:"0 0 100 100",width:a.size,height:a.size,onClick:function(e){a.disabled||a.readOnly||A(e.nativeEvent.offsetX,e.nativeEvent.offsetY)},onMouseDown:function(e){s(),b(),e.preventDefault()},onMouseUp:function(){p(),g()},onTouchStart:function(){O(),j()},onTouchEnd:function(){M(),k()}},e.createElement("path",{d:D,strokeWidth:a.strokeWidth,stroke:a.rangeColor,className:"p-knob-range"}),e.createElement("path",{d:I,strokeWidth:a.strokeWidth,stroke:a.valueColor,className:"p-knob-value"}),z))})));v.displayName="Knob",v.defaultProps={__TYPE:"Knob",id:null,style:null,className:null,value:null,size:100,disabled:!1,readOnly:!1,showValue:!0,step:1,min:0,max:100,strokeWidth:14,name:null,valueColor:"var(--primary-color, Black)",rangeColor:"var(--surface-border, LightGray)",textColor:"var(--text-color-secondary, Black)",valueTemplate:"{value}",onChange:null};export{v as Knob};
package/knob/knob.js CHANGED
@@ -40,6 +40,21 @@ this.primereact.knob = (function (exports, React, hooks, utils) {
40
40
  return _extends.apply(this, arguments);
41
41
  }
42
42
 
43
+ function _defineProperty(obj, key, value) {
44
+ if (key in obj) {
45
+ Object.defineProperty(obj, key, {
46
+ value: value,
47
+ enumerable: true,
48
+ configurable: true,
49
+ writable: true
50
+ });
51
+ } else {
52
+ obj[key] = value;
53
+ }
54
+
55
+ return obj;
56
+ }
57
+
43
58
  function _arrayWithHoles(arr) {
44
59
  if (Array.isArray(arr)) return arr;
45
60
  }
@@ -101,6 +116,9 @@ this.primereact.knob = (function (exports, React, hooks, utils) {
101
116
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
102
117
  }
103
118
 
119
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
120
+
121
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
104
122
  var radius = 40;
105
123
  var midX = 50;
106
124
  var midY = 50;
@@ -274,6 +292,13 @@ this.primereact.knob = (function (exports, React, hooks, utils) {
274
292
  unbindWindowTouchEndListener();
275
293
  };
276
294
 
295
+ React__namespace.useImperativeHandle(ref, function () {
296
+ return _objectSpread({
297
+ getElement: function getElement() {
298
+ return elementRef.current;
299
+ }
300
+ }, props);
301
+ });
277
302
  var otherProps = utils.ObjectUtils.findDiffKeys(props, Knob.defaultProps);
278
303
  var className = utils.classNames('p-knob p-component', {
279
304
  'p-disabled': props.disabled
package/knob/knob.min.js CHANGED
@@ -1 +1 @@
1
- this.primereact=this.primereact||{},this.primereact.knob=function(e,t,n,r){"use strict";function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var o=a(t);function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}function l(e){if(Array.isArray(e))return e}function c(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){l=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw a}}return o}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function f(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e,t){return l(e)||c(e,t)||s(e,t)||f()}var m=40,d=4*Math.PI/3,p=-Math.PI/3,v=o.memo(o.forwardRef((function(e,t){var a=o.useRef(null),l=!e.disabled&&!e.readOnly,c=h(n.useEventListener({target:"window",type:"mousemove",listener:function(e){I(e.offsetX,e.offsetY),e.preventDefault()},when:l}),2),u=c[0],s=c[1],f=h(n.useEventListener({target:"window",type:"mouseup",listener:function(e){s(),b(),e.preventDefault()},when:l}),2),y=f[0],b=f[1],g=h(n.useEventListener({target:"window",type:"touchmove",listener:function(e){if(1===e.touches.length){var t=a.current.getBoundingClientRect(),n=e.targetTouches.item(0);I(n.clientX-t.left,n.clientY-t.top),e.preventDefault()}},when:l}),2),w=g[0],M=g[1],k=h(n.useEventListener({target:"window",type:"touchend",listener:function(){M(),x()},when:l}),2),O=k[0],x=k[1],E=function(e,t,n,r,a){return(e-t)*(a-r)/(n-t)+r},P=function(){return E(e.min>0&&e.max>0?e.min:0,e.min,e.max,d,p)},j=function(){return E(e.value,e.min,e.max,d,p)},C="M ".concat(50+Math.cos(d)*m," ").concat(50-Math.sin(d)*m," A ").concat(m," ").concat(m," 0 1 1 ").concat(50+Math.cos(p)*m," ").concat(50-Math.sin(p)*m),A="M ".concat(50+Math.cos(P())*m," ").concat(50-Math.sin(P())*m," A ").concat(m," ").concat(m," 0 ").concat(Math.abs(P()-j())<Math.PI?0:1," ").concat(j()>P()?0:1," ").concat(50+Math.cos(j())*m," ").concat(50-Math.sin(j())*m),I=function(t,n){var r=Math.atan2(e.size/2-n,t-e.size/2),a=-Math.PI/2-Math.PI/6;N(r,a)},N=function(t,n){var r;if(t>p)r=E(t,d,p,e.min,e.max);else{if(!(t<n))return;r=E(t+2*Math.PI,d,p,e.min,e.max)}e.onChange&&e.onChange({value:Math.round((r-e.min)/e.step)*e.step+e.min})},D=r.ObjectUtils.findDiffKeys(e,v.defaultProps),S=r.classNames("p-knob p-component",{"p-disabled":e.disabled},e.className),T=e.showValue&&o.createElement("text",{x:50,y:57,textAnchor:"middle",fill:e.textColor,className:"p-knob-text",name:e.name},e.valueTemplate.replace("{value}",e.value.toString()));return o.createElement("div",i({ref:a,id:e.id,className:S,style:e.style},D),o.createElement("svg",{viewBox:"0 0 100 100",width:e.size,height:e.size,onClick:function(t){e.disabled||e.readOnly||I(t.nativeEvent.offsetX,t.nativeEvent.offsetY)},onMouseDown:function(e){u(),y(),e.preventDefault()},onMouseUp:function(){s(),b()},onTouchStart:function(){w(),O()},onTouchEnd:function(){M(),x()}},o.createElement("path",{d:C,strokeWidth:e.strokeWidth,stroke:e.rangeColor,className:"p-knob-range"}),o.createElement("path",{d:A,strokeWidth:e.strokeWidth,stroke:e.valueColor,className:"p-knob-value"}),T))})));return v.displayName="Knob",v.defaultProps={__TYPE:"Knob",id:null,style:null,className:null,value:null,size:100,disabled:!1,readOnly:!1,showValue:!0,step:1,min:0,max:100,strokeWidth:14,name:null,valueColor:"var(--primary-color, Black)",rangeColor:"var(--surface-border, LightGray)",textColor:"var(--text-color-secondary, Black)",valueTemplate:"{value}",onChange:null},e.Knob=v,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.hooks,primereact.utils);
1
+ this.primereact=this.primereact||{},this.primereact.knob=function(e,t,n,r){"use strict";function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var o=a(t);function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e){if(Array.isArray(e))return e}function u(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o=[],i=!0,c=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){c=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(c)throw a}}return o}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function f(e,t){if(e){if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(e,t):void 0}}function p(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e,t){return l(e)||u(e,t)||f(e,t)||p()}function m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function d(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?m(Object(n),!0).forEach((function(t){c(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):m(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var v=40,b=4*Math.PI/3,y=-Math.PI/3,g=o.memo(o.forwardRef((function(e,t){var a=o.useRef(null),c=!e.disabled&&!e.readOnly,l=h(n.useEventListener({target:"window",type:"mousemove",listener:function(e){A(e.offsetX,e.offsetY),e.preventDefault()},when:c}),2),u=l[0],s=l[1],f=h(n.useEventListener({target:"window",type:"mouseup",listener:function(e){s(),m(),e.preventDefault()},when:c}),2),p=f[0],m=f[1],O=h(n.useEventListener({target:"window",type:"touchmove",listener:function(e){if(1===e.touches.length){var t=a.current.getBoundingClientRect(),n=e.targetTouches.item(0);A(n.clientX-t.left,n.clientY-t.top),e.preventDefault()}},when:c}),2),w=O[0],j=O[1],M=h(n.useEventListener({target:"window",type:"touchend",listener:function(){j(),k()},when:c}),2),P=M[0],k=M[1],E=function(e,t,n,r,a){return(e-t)*(a-r)/(n-t)+r},x=function(){return E(e.min>0&&e.max>0?e.min:0,e.min,e.max,b,y)},C=function(){return E(e.value,e.min,e.max,b,y)},D="M ".concat(50+Math.cos(b)*v," ").concat(50-Math.sin(b)*v," A ").concat(v," ").concat(v," 0 1 1 ").concat(50+Math.cos(y)*v," ").concat(50-Math.sin(y)*v),I="M ".concat(50+Math.cos(x())*v," ").concat(50-Math.sin(x())*v," A ").concat(v," ").concat(v," 0 ").concat(Math.abs(x()-C())<Math.PI?0:1," ").concat(C()>x()?0:1," ").concat(50+Math.cos(C())*v," ").concat(50-Math.sin(C())*v),A=function(t,n){var r=Math.atan2(e.size/2-n,t-e.size/2),a=-Math.PI/2-Math.PI/6;S(r,a)},S=function(t,n){var r;if(t>y)r=E(t,b,y,e.min,e.max);else{if(!(t<n))return;r=E(t+2*Math.PI,b,y,e.min,e.max)}e.onChange&&e.onChange({value:Math.round((r-e.min)/e.step)*e.step+e.min})};o.useImperativeHandle(t,(function(){return d({getElement:function(){return a.current}},e)}));var N=r.ObjectUtils.findDiffKeys(e,g.defaultProps),T=r.classNames("p-knob p-component",{"p-disabled":e.disabled},e.className),z=e.showValue&&o.createElement("text",{x:50,y:57,textAnchor:"middle",fill:e.textColor,className:"p-knob-text",name:e.name},e.valueTemplate.replace("{value}",e.value.toString()));return o.createElement("div",i({ref:a,id:e.id,className:T,style:e.style},N),o.createElement("svg",{viewBox:"0 0 100 100",width:e.size,height:e.size,onClick:function(t){e.disabled||e.readOnly||A(t.nativeEvent.offsetX,t.nativeEvent.offsetY)},onMouseDown:function(e){u(),p(),e.preventDefault()},onMouseUp:function(){s(),m()},onTouchStart:function(){w(),P()},onTouchEnd:function(){j(),k()}},o.createElement("path",{d:D,strokeWidth:e.strokeWidth,stroke:e.rangeColor,className:"p-knob-range"}),o.createElement("path",{d:I,strokeWidth:e.strokeWidth,stroke:e.valueColor,className:"p-knob-value"}),z))})));return g.displayName="Knob",g.defaultProps={__TYPE:"Knob",id:null,style:null,className:null,value:null,size:100,disabled:!1,readOnly:!1,showValue:!0,step:1,min:0,max:100,strokeWidth:14,name:null,valueColor:"var(--primary-color, Black)",rangeColor:"var(--surface-border, LightGray)",textColor:"var(--text-color-secondary, Black)",valueTemplate:"{value}",onChange:null},e.Knob=g,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.hooks,primereact.utils);
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var api = require('primereact/api');
7
+ var hooks = require('primereact/hooks');
7
8
  var tooltip = require('primereact/tooltip');
8
9
  var utils = require('primereact/utils');
9
10
  var virtualscroller = require('primereact/virtualscroller');
@@ -141,6 +142,15 @@ function _slicedToArray(arr, i) {
141
142
  }
142
143
 
143
144
  var ListBoxHeader = /*#__PURE__*/React__namespace.memo(function (props) {
145
+ var filterOptions = {
146
+ filter: function filter(e) {
147
+ return onFilter(e);
148
+ },
149
+ reset: function reset() {
150
+ return props.resetFilter();
151
+ }
152
+ };
153
+
144
154
  var onFilter = function onFilter(event) {
145
155
  if (props.onFilter) {
146
156
  props.onFilter({
@@ -150,20 +160,39 @@ var ListBoxHeader = /*#__PURE__*/React__namespace.memo(function (props) {
150
160
  }
151
161
  };
152
162
 
153
- return /*#__PURE__*/React__namespace.createElement("div", {
154
- className: "p-listbox-header"
155
- }, /*#__PURE__*/React__namespace.createElement("div", {
156
- className: "p-listbox-filter-container"
157
- }, /*#__PURE__*/React__namespace.createElement(inputtext.InputText, _extends({
158
- type: "text",
159
- value: props.filter,
160
- onChange: onFilter,
161
- className: "p-listbox-filter",
162
- disabled: props.disabled,
163
- placeholder: props.filterPlaceholder
164
- }, props.filterInputProps)), /*#__PURE__*/React__namespace.createElement("span", {
165
- className: "p-listbox-filter-icon pi pi-search"
166
- })));
163
+ var createHeader = function createHeader() {
164
+ var content = /*#__PURE__*/React__namespace.createElement("div", {
165
+ className: "p-listbox-filter-container"
166
+ }, /*#__PURE__*/React__namespace.createElement(inputtext.InputText, _extends({
167
+ type: "text",
168
+ value: props.filter,
169
+ onChange: onFilter,
170
+ className: "p-listbox-filter",
171
+ disabled: props.disabled,
172
+ placeholder: props.filterPlaceholder
173
+ }, props.filterInputProps)), /*#__PURE__*/React__namespace.createElement("span", {
174
+ className: "p-listbox-filter-icon pi pi-search"
175
+ }));
176
+
177
+ if (props.filterTemplate) {
178
+ var defaultContentOptions = {
179
+ className: 'p-listbox-filter-container',
180
+ element: content,
181
+ filterOptions: filterOptions,
182
+ filterInputChange: onFilter,
183
+ filterIconClassName: 'p-dropdown-filter-icon pi pi-search',
184
+ props: props
185
+ };
186
+ content = utils.ObjectUtils.getJSXElement(props.filterTemplate, defaultContentOptions);
187
+ }
188
+
189
+ return /*#__PURE__*/React__namespace.createElement("div", {
190
+ className: "p-listbox-header"
191
+ }, content);
192
+ };
193
+
194
+ var content = createHeader();
195
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, content);
167
196
  });
168
197
  ListBoxHeader.displayName = 'ListBoxHeader';
169
198
 
@@ -231,6 +260,7 @@ var ListBoxItem = /*#__PURE__*/React__namespace.memo(function (props) {
231
260
  var content = props.template ? utils.ObjectUtils.getJSXElement(props.template, props.option) : props.label;
232
261
  return /*#__PURE__*/React__namespace.createElement("li", {
233
262
  className: className,
263
+ style: props.style,
234
264
  onClick: onClick,
235
265
  onTouchEnd: onTouchEnd,
236
266
  onKeyDown: onKeyDown,
@@ -350,6 +380,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
350
380
  };
351
381
 
352
382
  var onFilter = function onFilter(event) {
383
+ virtualScrollerRef.current && virtualScrollerRef.current.scrollToIndex(0);
353
384
  var originalEvent = event.originalEvent,
354
385
  value = event.value;
355
386
 
@@ -363,6 +394,13 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
363
394
  }
364
395
  };
365
396
 
397
+ var resetFilter = function resetFilter() {
398
+ setFilterValueState('');
399
+ props.onFilter && props.onFilter({
400
+ filter: ''
401
+ });
402
+ };
403
+
366
404
  var updateModel = function updateModel(event, value) {
367
405
  if (props.onChange) {
368
406
  props.onChange({
@@ -385,11 +423,44 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
385
423
  });
386
424
  };
387
425
 
426
+ var getSelectedOptionIndex = function getSelectedOptionIndex() {
427
+ if (props.value != null && visibleOptions) {
428
+ if (props.optionGroupLabel) {
429
+ for (var i = 0; i < visibleOptions.length; i++) {
430
+ var selectedOptionIndex = findOptionIndexInList(props.value, getOptionGroupChildren(visibleOptions[i]));
431
+
432
+ if (selectedOptionIndex !== -1) {
433
+ return {
434
+ group: i,
435
+ option: selectedOptionIndex
436
+ };
437
+ }
438
+ }
439
+ } else {
440
+ return findOptionIndexInList(props.value, visibleOptions);
441
+ }
442
+ }
443
+
444
+ return -1;
445
+ };
446
+
447
+ var equalityKey = function equalityKey() {
448
+ return props.optionValue ? null : props.dataKey;
449
+ };
450
+
451
+ var findOptionIndexInList = function findOptionIndexInList(value, list) {
452
+ var key = equalityKey();
453
+ return list.findIndex(function (item) {
454
+ return utils.ObjectUtils.equals(value, getOptionValue(item), key);
455
+ });
456
+ };
457
+
388
458
  var isSelected = function isSelected(option) {
389
459
  var optionValue = getOptionValue(option);
460
+ var key = equalityKey();
390
461
  return props.multiple && props.value ? props.value.some(function (val) {
391
- return utils.ObjectUtils.equals(val, optionValue, props.dataKey);
392
- }) : utils.ObjectUtils.equals(props.value, optionValue, props.dataKey);
462
+ return utils.ObjectUtils.equals(val, optionValue, key);
463
+ }) : utils.ObjectUtils.equals(props.value, optionValue, key);
393
464
  };
394
465
 
395
466
  var getOptionLabel = function getOptionLabel(option) {
@@ -461,17 +532,45 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
461
532
  }
462
533
  };
463
534
 
535
+ var scrollToSelectedIndex = function scrollToSelectedIndex() {
536
+ if (virtualScrollerRef.current) {
537
+ var selectedIndex = getSelectedOptionIndex();
538
+
539
+ if (selectedIndex !== -1) {
540
+ setTimeout(function () {
541
+ return virtualScrollerRef.current.scrollToIndex(selectedIndex);
542
+ }, 0);
543
+ }
544
+ }
545
+ };
546
+
547
+ React__namespace.useImperativeHandle(ref, function () {
548
+ return _objectSpread({
549
+ getElement: function getElement() {
550
+ return elementRef.current;
551
+ },
552
+ getVirtualScroller: function getVirtualScroller() {
553
+ return virtualScrollerRef.current;
554
+ }
555
+ }, props);
556
+ });
557
+ hooks.useMountEffect(function () {
558
+ scrollToSelectedIndex();
559
+ });
560
+
464
561
  var createHeader = function createHeader() {
465
562
  return props.filter ? /*#__PURE__*/React__namespace.createElement(ListBoxHeader, {
466
563
  filter: filteredValue,
467
564
  onFilter: onFilter,
565
+ resetFilter: resetFilter,
566
+ filterTemplate: props.filterTemplate,
468
567
  disabled: props.disabled,
469
568
  filterPlaceholder: props.filterPlaceholder,
470
569
  filterInputProps: props.filterInputProps
471
570
  }) : null;
472
571
  };
473
572
 
474
- var createGroupChildren = function createGroupChildren(optionGroup) {
573
+ var createGroupChildren = function createGroupChildren(optionGroup, style) {
475
574
  var groupChildren = getOptionGroupChildren(optionGroup);
476
575
  return groupChildren.map(function (option, j) {
477
576
  var optionLabel = getOptionLabel(option);
@@ -482,6 +581,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
482
581
  key: optionKey,
483
582
  label: optionLabel,
484
583
  option: option,
584
+ style: style,
485
585
  template: props.itemTemplate,
486
586
  selected: isSelected(option),
487
587
  onClick: onOptionSelect,
@@ -493,14 +593,20 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
493
593
  };
494
594
 
495
595
  var createItem = function createItem(option, index) {
596
+ var scrollerOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
597
+ var style = {
598
+ height: scrollerOptions.props ? scrollerOptions.props.itemSize : undefined
599
+ };
600
+
496
601
  if (props.optionGroupLabel) {
497
602
  var groupContent = props.optionGroupTemplate ? utils.ObjectUtils.getJSXElement(props.optionGroupTemplate, option, index) : getOptionGroupLabel(option);
498
- var groupChildrenContent = createGroupChildren(option);
603
+ var groupChildrenContent = createGroupChildren(option, style);
499
604
  var key = index + '_' + getOptionGroupRenderKey(option);
500
605
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
501
606
  key: key
502
607
  }, /*#__PURE__*/React__namespace.createElement("li", {
503
608
  className: "p-listbox-item-group",
609
+ style: style,
504
610
  role: "group"
505
611
  }, groupContent), groupChildrenContent);
506
612
  } else {
@@ -512,6 +618,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
512
618
  key: optionKey,
513
619
  label: optionLabel,
514
620
  option: option,
621
+ style: style,
515
622
  template: props.itemTemplate,
516
623
  selected: isSelected(option),
517
624
  onClick: onOptionSelect,
@@ -535,8 +642,8 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
535
642
  filter: visibleOptions
536
643
  }));
537
644
  },
538
- itemTemplate: function itemTemplate(item, option) {
539
- return item && createItem(item, option.index);
645
+ itemTemplate: function itemTemplate(item, options) {
646
+ return item && createItem(item, options.index, options);
540
647
  },
541
648
  contentTemplate: function contentTemplate(option) {
542
649
  var className = utils.classNames('p-listbox-list', option.className);
@@ -611,6 +718,7 @@ ListBox.defaultProps = {
611
718
  multiple: false,
612
719
  metaKeySelection: false,
613
720
  filter: false,
721
+ filterTemplate: null,
614
722
  filterBy: null,
615
723
  filterValue: null,
616
724
  filterMatchMode: 'contains',
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),l=require("primereact/tooltip"),r=require("primereact/utils"),n=require("primereact/virtualscroller"),a=require("primereact/inputtext"),i=require("primereact/ripple");function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(l){if("default"!==l){var r=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(t,l,r.get?r:{enumerable:!0,get:function(){return e[l]}})}})),t.default=e,Object.freeze(t)}var u=o(e);function c(){return c=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var l=arguments[t];for(var r in l)Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r])}return e},c.apply(this,arguments)}function s(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,r=new Array(t);l<t;l++)r[l]=e[l];return r}function f(e){if(Array.isArray(e))return p(e)}function d(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function b(e,t){if(e){if("string"==typeof e)return p(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?p(e,t):void 0}}function m(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(e){return f(e)||d(e)||b(e)||m()}function y(e){if(Array.isArray(e))return e}function h(e,t){var l=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var r,n,a=[],i=!0,o=!1;try{for(l=l.call(e);!(i=(r=l.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){o=!0,n=e}finally{try{i||null==l.return||l.return()}finally{if(o)throw n}}return a}}function g(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var O=u.memo((function(e){return u.createElement("div",{className:"p-listbox-header"},u.createElement("div",{className:"p-listbox-filter-container"},u.createElement(a.InputText,c({type:"text",value:e.filter,onChange:function(t){e.onFilter&&e.onFilter({originalEvent:t,value:t.target.value})},className:"p-listbox-filter",disabled:e.disabled,placeholder:e.filterPlaceholder},e.filterInputProps)),u.createElement("span",{className:"p-listbox-filter-icon pi pi-search"})))}));O.displayName="ListBoxHeader";var E=u.memo((function(e){var t=function(t){e.onClick&&e.onClick({originalEvent:t,option:e.option}),t.preventDefault()},l=function e(t){var l=t.nextElementSibling;return l?r.DomHandler.hasClass(l,"p-disabled")||r.DomHandler.hasClass(l,"p-listbox-item-group")?e(l):l:null},n=function e(t){var l=t.previousElementSibling;return l?r.DomHandler.hasClass(l,"p-disabled")||r.DomHandler.hasClass(l,"p-listbox-item-group")?e(l):l:null},a=r.classNames("p-listbox-item",{"p-highlight":e.selected,"p-disabled":e.disabled},e.option.className),o=e.template?r.ObjectUtils.getJSXElement(e.template,e.option):e.label;return u.createElement("li",{className:a,onClick:t,onTouchEnd:function(t){e.onTouchEnd&&e.onTouchEnd({originalEvent:t,option:e.option})},onKeyDown:function(e){var r=e.currentTarget;switch(e.which){case 40:var a=l(r);a&&a.focus(),e.preventDefault();break;case 38:var i=n(r);i&&i.focus(),e.preventDefault();break;case 13:t(e),e.preventDefault()}},tabIndex:"-1","aria-label":e.label,key:e.label,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled},o,u.createElement(i.Ripple,null))}));function j(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,r)}return l}function x(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?j(Object(l),!0).forEach((function(t){s(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):j(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function S(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=D(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var r=0,n=function(){};return{s:n,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==l.return||l.return()}finally{if(o)throw a}}}}function D(e,t){if(e){if("string"==typeof e)return w(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?w(e,t):void 0}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,r=new Array(t);l<t;l++)r[l]=e[l];return r}E.displayName="ListBoxItem";var P=u.memo(u.forwardRef((function(e,a){var i,o,s=u.useState(""),p=(o=2,y(i=s)||h(i,o)||b(i,o)||g()),f=p[0],d=p[1],m=u.useRef(null),j=u.useRef(null),D=u.useRef(!1),w=(e.onFilterValueChange?e.filterValue:f)||"",C=w&&w.trim().length>0,L=function(t){var l=t.option;e.disabled||M(l)||(e.multiple?T(t.originalEvent,l):I(t.originalEvent,l),D.current=!1)},N=function(){e.disabled||(D.current=!0)},I=function(t,l){var r=K(l),n=!1,a=null;!D.current&&e.metaKeySelection?r?(t.metaKey||t.ctrlKey)&&(a=null,n=!0):(a=q(l),n=!0):(a=r?null:q(l),n=!0);n&&U(t,a)},T=function(t,l){var r=K(l),n=!1,a=null;if(!D&&e.metaKeySelection){var i=t.metaKey||t.ctrlKey;r?(a=i?A(l):[q(l)],n=!0):(a=[].concat(v(a=i&&e.value||[]),[q(l)]),n=!0)}else a=r?A(l):[].concat(v(e.value||[]),[q(l)]),n=!0;n&&e.onChange({originalEvent:t,value:a,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:a}})},F=function(t){var l=t.value;e.onFilterValueChange?e.onFilterValueChange({originalEvent:t.originalEvent,value:l}):d(l)},U=function(t,l){e.onChange&&e.onChange({originalEvent:t,value:l,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:l}})},A=function(t){return e.value.filter((function(l){return!r.ObjectUtils.equals(l,q(t),e.dataKey)}))},K=function(t){var l=q(t);return e.multiple&&e.value?e.value.some((function(t){return r.ObjectUtils.equals(t,l,e.dataKey)})):r.ObjectUtils.equals(e.value,l,e.dataKey)},k=function(t){return e.optionLabel?r.ObjectUtils.resolveFieldData(t,e.optionLabel):t&&void 0!==t.label?t.label:t},q=function(t){return e.optionValue?r.ObjectUtils.resolveFieldData(t,e.optionValue):t&&void 0!==t.value?t.value:t},G=function(t){return e.dataKey?r.ObjectUtils.resolveFieldData(t,e.dataKey):k(t)},M=function(t){return e.optionDisabled?r.ObjectUtils.isFunction(e.optionDisabled)?e.optionDisabled(t):r.ObjectUtils.resolveFieldData(t,e.optionDisabled):!(!t||void 0===t.disabled)&&t.disabled},V=function(t){return r.ObjectUtils.resolveFieldData(t,e.optionGroupLabel)},_=function(t){return r.ObjectUtils.resolveFieldData(t,e.optionGroupChildren)},B=function(t){return _(t).map((function(t,l){var r=k(t),n=l+"_"+G(t),a=M(t),i=a?null:e.tabIndex||0;return u.createElement(E,{key:n,label:r,option:t,template:e.itemTemplate,selected:K(t),onClick:L,onTouchEnd:N,tabIndex:i,disabled:a})}))},R=function(t,l){if(e.optionGroupLabel){var n=e.optionGroupTemplate?r.ObjectUtils.getJSXElement(e.optionGroupTemplate,t,l):r.ObjectUtils.resolveFieldData(t,e.optionGroupLabel),a=B(t),i=l+"_"+V(t);return u.createElement(u.Fragment,{key:i},u.createElement("li",{className:"p-listbox-item-group",role:"group"},n),a)}var o=k(t),c=l+"_"+G(t),s=M(t),p=s?null:e.tabIndex||0;return u.createElement(E,{key:c,label:o,option:t,template:e.itemTemplate,selected:K(t),onClick:L,onTouchEnd:N,tabIndex:p,disabled:s})},H=function(){if(C){var l=w.trim().toLocaleLowerCase(e.filterLocale),r=e.filterBy?e.filterBy.split(","):[e.optionLabel||"label"];if(e.optionGroupLabel){var n,a=[],i=S(e.options);try{for(i.s();!(n=i.n()).done;){var o=n.value,u=t.FilterService.filter(_(o),r,l,e.filterMatchMode,e.filterLocale);u&&u.length&&a.push(x(x({},o),{items:u}))}}catch(e){i.e(e)}finally{i.f()}return a}return t.FilterService.filter(e.options,r,l,e.filterMatchMode,e.filterLocale)}return e.options}(),z=r.ObjectUtils.isNotEmpty(e.tooltip),J=r.ObjectUtils.findDiffKeys(e,P.defaultProps),X=r.classNames("p-listbox p-component",{"p-disabled":e.disabled},e.className),$=r.classNames("p-listbox-list-wrapper",e.listClassName),Y=function(){if(e.virtualScrollerOptions){var t=x(x({},e.virtualScrollerOptions),{items:H,onLazyLoad:function(t){return e.virtualScrollerOptions.onLazyLoad(x(x({},t),{filter:H}))},itemTemplate:function(e,t){return e&&R(e,t.index)},contentTemplate:function(t){var l=r.classNames("p-listbox-list",t.className);return u.createElement("ul",{ref:t.contentRef,className:l,role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},t.children)}});return u.createElement(n.VirtualScroller,c({ref:j},t))}var l=H?H.map(R):null;return u.createElement("ul",{className:"p-listbox-list",role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},l)}(),Q=e.filter?u.createElement(O,{filter:w,onFilter:F,disabled:e.disabled,filterPlaceholder:e.filterPlaceholder,filterInputProps:e.filterInputProps}):null;return u.createElement(u.Fragment,null,u.createElement("div",c({ref:m,id:e.id,className:X,style:e.style},J),Q,u.createElement("div",{className:$,style:e.listStyle},Y)),z&&u.createElement(l.Tooltip,c({target:m,content:e.tooltip},e.tooltipOptions)))})));P.displayName="ListBox",P.defaultProps={__TYPE:"ListBox",id:null,value:null,options:null,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,optionGroupTemplate:null,itemTemplate:null,style:null,listStyle:null,listClassName:null,className:null,virtualScrollerOptions:null,disabled:null,dataKey:null,multiple:!1,metaKeySelection:!1,filter:!1,filterBy:null,filterValue:null,filterMatchMode:"contains",filterPlaceholder:null,filterLocale:void 0,filterInputProps:null,tabIndex:0,tooltip:null,tooltipOptions:null,"aria-label":null,"aria-labelledby":null,onChange:null,onFilterValueChange:null},exports.ListBox=P;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),r=require("primereact/hooks"),l=require("primereact/tooltip"),n=require("primereact/utils"),i=require("primereact/virtualscroller"),a=require("primereact/inputtext"),o=require("primereact/ripple");function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var l=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,l.get?l:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=u(e);function s(){return s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(e[l]=r[l])}return e},s.apply(this,arguments)}function p(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,l=new Array(t);r<t;r++)l[r]=e[r];return l}function d(e){if(Array.isArray(e))return f(e)}function m(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function b(e,t){if(e){if("string"==typeof e)return f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}function v(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(e){return d(e)||m(e)||b(e)||v()}function h(e){if(Array.isArray(e))return e}function g(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var l,n,i=[],a=!0,o=!1;try{for(r=r.call(e);!(a=(l=r.next()).done)&&(i.push(l.value),!t||i.length!==t);a=!0);}catch(e){o=!0,n=e}finally{try{a||null==r.return||r.return()}finally{if(o)throw n}}return i}}function O(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var E=c.memo((function(e){var t={filter:function(e){return r(e)},reset:function(){return e.resetFilter()}},r=function(t){e.onFilter&&e.onFilter({originalEvent:t,value:t.target.value})},l=function(){var l=c.createElement("div",{className:"p-listbox-filter-container"},c.createElement(a.InputText,s({type:"text",value:e.filter,onChange:r,className:"p-listbox-filter",disabled:e.disabled,placeholder:e.filterPlaceholder},e.filterInputProps)),c.createElement("span",{className:"p-listbox-filter-icon pi pi-search"}));e.filterTemplate&&(l=n.ObjectUtils.getJSXElement(e.filterTemplate,{className:"p-listbox-filter-container",element:l,filterOptions:t,filterInputChange:r,filterIconClassName:"p-dropdown-filter-icon pi pi-search",props:e}));return c.createElement("div",{className:"p-listbox-header"},l)}();return c.createElement(c.Fragment,null,l)}));E.displayName="ListBoxHeader";var j=c.memo((function(e){var t=function(t){e.onClick&&e.onClick({originalEvent:t,option:e.option}),t.preventDefault()},r=function e(t){var r=t.nextElementSibling;return r?n.DomHandler.hasClass(r,"p-disabled")||n.DomHandler.hasClass(r,"p-listbox-item-group")?e(r):r:null},l=function e(t){var r=t.previousElementSibling;return r?n.DomHandler.hasClass(r,"p-disabled")||n.DomHandler.hasClass(r,"p-listbox-item-group")?e(r):r:null},i=n.classNames("p-listbox-item",{"p-highlight":e.selected,"p-disabled":e.disabled},e.option.className),a=e.template?n.ObjectUtils.getJSXElement(e.template,e.option):e.label;return c.createElement("li",{className:i,style:e.style,onClick:t,onTouchEnd:function(t){e.onTouchEnd&&e.onTouchEnd({originalEvent:t,option:e.option})},onKeyDown:function(e){var n=e.currentTarget;switch(e.which){case 40:var i=r(n);i&&i.focus(),e.preventDefault();break;case 38:var a=l(n);a&&a.focus(),e.preventDefault();break;case 13:t(e),e.preventDefault()}},tabIndex:"-1","aria-label":e.label,key:e.label,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled},a,c.createElement(o.Ripple,null))}));function x(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,l)}return r}function S(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?x(Object(r),!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):x(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function D(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=T(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var l=0,n=function(){};return{s:n,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(o)throw i}}}}function T(e,t){if(e){if("string"==typeof e)return w(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?w(e,t):void 0}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,l=new Array(t);r<t;r++)l[r]=e[r];return l}j.displayName="ListBoxItem";var C=c.memo(c.forwardRef((function(e,a){var o,u,p=c.useState(""),f=(u=2,h(o=p)||g(o,u)||b(o,u)||O()),d=f[0],m=f[1],v=c.useRef(null),x=c.useRef(null),T=c.useRef(!1),w=(e.onFilterValueChange?e.filterValue:d)||"",I=w&&w.trim().length>0,N=function(t){var r=t.option;e.disabled||R(r)||(e.multiple?F(t.originalEvent,r):L(t.originalEvent,r),T.current=!1)},P=function(){e.disabled||(T.current=!0)},L=function(t,r){var l=M(r),n=!1,i=null;!T.current&&e.metaKeySelection?l?(t.metaKey||t.ctrlKey)&&(i=null,n=!0):(i=B(r),n=!0):(i=l?null:B(r),n=!0);n&&k(t,i)},F=function(t,r){var l=M(r),n=!1,i=null;if(!T&&e.metaKeySelection){var a=t.metaKey||t.ctrlKey;l?(i=a?K(r):[B(r)],n=!0):(i=[].concat(y(i=a&&e.value||[]),[B(r)]),n=!0)}else i=l?K(r):[].concat(y(e.value||[]),[B(r)]),n=!0;n&&e.onChange({originalEvent:t,value:i,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:i}})},U=function(t){x.current&&x.current.scrollToIndex(0);var r=t.value;e.onFilterValueChange?e.onFilterValueChange({originalEvent:t.originalEvent,value:r}):m(r)},A=function(){m(""),e.onFilter&&e.onFilter({filter:""})},k=function(t,r){e.onChange&&e.onChange({originalEvent:t,value:r,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:r}})},K=function(t){return e.value.filter((function(r){return!n.ObjectUtils.equals(r,B(t),e.dataKey)}))},q=function(){if(null!=e.value&&W){if(!e.optionGroupLabel)return G(e.value,W);for(var t=0;t<W.length;t++){var r=G(e.value,X(W[t]));if(-1!==r)return{group:t,option:r}}}return-1},V=function(){return e.optionValue?null:e.dataKey},G=function(e,t){var r=V();return t.findIndex((function(t){return n.ObjectUtils.equals(e,B(t),r)}))},M=function(t){var r=B(t),l=V();return e.multiple&&e.value?e.value.some((function(e){return n.ObjectUtils.equals(e,r,l)})):n.ObjectUtils.equals(e.value,r,l)},_=function(t){return e.optionLabel?n.ObjectUtils.resolveFieldData(t,e.optionLabel):t&&void 0!==t.label?t.label:t},B=function(t){return e.optionValue?n.ObjectUtils.resolveFieldData(t,e.optionValue):t&&void 0!==t.value?t.value:t},H=function(t){return e.dataKey?n.ObjectUtils.resolveFieldData(t,e.dataKey):_(t)},R=function(t){return e.optionDisabled?n.ObjectUtils.isFunction(e.optionDisabled)?e.optionDisabled(t):n.ObjectUtils.resolveFieldData(t,e.optionDisabled):!(!t||void 0===t.disabled)&&t.disabled},z=function(t){return n.ObjectUtils.resolveFieldData(t,e.optionGroupLabel)},J=function(t){return n.ObjectUtils.resolveFieldData(t,e.optionGroupLabel)},X=function(t){return n.ObjectUtils.resolveFieldData(t,e.optionGroupChildren)},$=function(){if(x.current){var e=q();-1!==e&&setTimeout((function(){return x.current.scrollToIndex(e)}),0)}};c.useImperativeHandle(a,(function(){return S({getElement:function(){return v.current},getVirtualScroller:function(){return x.current}},e)})),r.useMountEffect((function(){$()}));var Y=function(t,r){return X(t).map((function(t,l){var n=_(t),i=l+"_"+H(t),a=R(t),o=a?null:e.tabIndex||0;return c.createElement(j,{key:i,label:n,option:t,style:r,template:e.itemTemplate,selected:M(t),onClick:N,onTouchEnd:P,tabIndex:o,disabled:a})}))},Q=function(t,r){var l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i={height:l.props?l.props.itemSize:void 0};if(e.optionGroupLabel){var a=e.optionGroupTemplate?n.ObjectUtils.getJSXElement(e.optionGroupTemplate,t,r):J(t),o=Y(t,i),u=r+"_"+z(t);return c.createElement(c.Fragment,{key:u},c.createElement("li",{className:"p-listbox-item-group",style:i,role:"group"},a),o)}var s=_(t),p=r+"_"+H(t),f=R(t),d=f?null:e.tabIndex||0;return c.createElement(j,{key:p,label:s,option:t,style:i,template:e.itemTemplate,selected:M(t),onClick:N,onTouchEnd:P,tabIndex:d,disabled:f})},W=function(){if(I){var r=w.trim().toLocaleLowerCase(e.filterLocale),l=e.filterBy?e.filterBy.split(","):[e.optionLabel||"label"];if(e.optionGroupLabel){var n,i=[],a=D(e.options);try{for(a.s();!(n=a.n()).done;){var o=n.value,u=t.FilterService.filter(X(o),l,r,e.filterMatchMode,e.filterLocale);u&&u.length&&i.push(S(S({},o),{items:u}))}}catch(e){a.e(e)}finally{a.f()}return i}return t.FilterService.filter(e.options,l,r,e.filterMatchMode,e.filterLocale)}return e.options}(),Z=n.ObjectUtils.isNotEmpty(e.tooltip),ee=n.ObjectUtils.findDiffKeys(e,C.defaultProps),te=n.classNames("p-listbox p-component",{"p-disabled":e.disabled},e.className),re=n.classNames("p-listbox-list-wrapper",e.listClassName),le=function(){if(e.virtualScrollerOptions){var t=S(S({},e.virtualScrollerOptions),{items:W,onLazyLoad:function(t){return e.virtualScrollerOptions.onLazyLoad(S(S({},t),{filter:W}))},itemTemplate:function(e,t){return e&&Q(e,t.index,t)},contentTemplate:function(t){var r=n.classNames("p-listbox-list",t.className);return c.createElement("ul",{ref:t.contentRef,className:r,role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},t.children)}});return c.createElement(i.VirtualScroller,s({ref:x},t))}var r=W?W.map(Q):null;return c.createElement("ul",{className:"p-listbox-list",role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},r)}(),ne=e.filter?c.createElement(E,{filter:w,onFilter:U,resetFilter:A,filterTemplate:e.filterTemplate,disabled:e.disabled,filterPlaceholder:e.filterPlaceholder,filterInputProps:e.filterInputProps}):null;return c.createElement(c.Fragment,null,c.createElement("div",s({ref:v,id:e.id,className:te,style:e.style},ee),ne,c.createElement("div",{className:re,style:e.listStyle},le)),Z&&c.createElement(l.Tooltip,s({target:v,content:e.tooltip},e.tooltipOptions)))})));C.displayName="ListBox",C.defaultProps={__TYPE:"ListBox",id:null,value:null,options:null,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,optionGroupTemplate:null,itemTemplate:null,style:null,listStyle:null,listClassName:null,className:null,virtualScrollerOptions:null,disabled:null,dataKey:null,multiple:!1,metaKeySelection:!1,filter:!1,filterTemplate:null,filterBy:null,filterValue:null,filterMatchMode:"contains",filterPlaceholder:null,filterLocale:void 0,filterInputProps:null,tabIndex:0,tooltip:null,tooltipOptions:null,"aria-label":null,"aria-labelledby":null,onChange:null,onFilterValueChange:null},exports.ListBox=C;
@@ -1,13 +1,15 @@
1
1
  import * as React from 'react';
2
- import { SelectItemOptionsType } from '../selectitem/SelectItem';
2
+ import { SelectItemOptionsType } from '../selectitem/selectitem';
3
3
  import TooltipOptions from '../tooltip/tooltipoptions';
4
- import { VirtualScrollerProps } from '../virtualscroller';
4
+ import { VirtualScrollerProps, VirtualScroller } from '../virtualscroller';
5
5
 
6
6
 
7
7
  type ListBoxOptionGroupTemplateType = React.ReactNode | ((option: any, index: number) => React.ReactNode);
8
8
 
9
9
  type ListBoxItemTemplateType = React.ReactNode | ((option: any) => React.ReactNode);
10
10
 
11
+ type ListBoxFilterTemplateType = React.ReactNode | ((options: ListBoxFilterOptions) => React.ReactNode);
12
+
11
13
  type ListBoxOptionDisabledType = string | ((option: any) => boolean);
12
14
 
13
15
  interface ListBoxChangeTargetOptions {
@@ -29,8 +31,12 @@ interface ListBoxFilterValueChangeParams {
29
31
  value: any;
30
32
  }
31
33
 
34
+ interface ListBoxFilterOptions {
35
+ filter?: (event?: KeyboardEvent) => void;
36
+ reset?: () => void;
37
+ }
38
+
32
39
  export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLDivElement>, HTMLDivElement>, 'onChange' | 'ref'> {
33
- id?: string;
34
40
  value?: any;
35
41
  options?: SelectItemOptionsType;
36
42
  optionLabel?: string;
@@ -40,10 +46,9 @@ export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHT
40
46
  optionGroupChildren?: string;
41
47
  optionGroupTemplate?: ListBoxOptionGroupTemplateType;
42
48
  itemTemplate?: ListBoxItemTemplateType;
43
- style?: object;
49
+ filterTemplate?: ListBoxFilterTemplateType;
44
50
  listStyle?: object;
45
51
  listClassName?: string;
46
- className?: string;
47
52
  virtualScrollerOptions?: VirtualScrollerProps;
48
53
  disabled?: boolean;
49
54
  dataKey?: string;
@@ -56,7 +61,6 @@ export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHT
56
61
  filterPlaceholder?: string;
57
62
  filterLocale?: string;
58
63
  filterInputProps?: any;
59
- tabIndex?: number;
60
64
  tooltip?: string;
61
65
  tooltipOptions?: TooltipOptions;
62
66
  ariaLabelledBy?: string;
@@ -65,4 +69,7 @@ export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHT
65
69
  children?: React.ReactNode;
66
70
  }
67
71
 
68
- export declare class ListBox extends React.Component<ListBoxProps, any> { }
72
+ export declare class ListBox extends React.Component<ListBoxProps, any> {
73
+ public getElement(): HTMLDivElement;
74
+ public getVirtualScroller(): VirtualScroller;
75
+ }