primereact 10.0.0 → 10.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (483) hide show
  1. package/README.md +1 -1
  2. package/accordion/accordion.esm.js +0 -1
  3. package/api/api.esm.js +0 -1
  4. package/autocomplete/autocomplete.esm.js +8 -7
  5. package/autocomplete/autocomplete.esm.min.js +1 -1
  6. package/avatar/avatar.esm.js +0 -1
  7. package/avatargroup/avatargroup.esm.js +0 -1
  8. package/badge/badge.esm.js +0 -1
  9. package/blockui/blockui.esm.js +3 -1
  10. package/blockui/blockui.esm.min.js +1 -1
  11. package/breadcrumb/breadcrumb.esm.js +0 -1
  12. package/button/button.esm.js +0 -1
  13. package/calendar/calendar.esm.js +2 -1
  14. package/calendar/calendar.esm.min.js +1 -1
  15. package/card/card.esm.js +0 -1
  16. package/carousel/carousel.esm.js +7 -8
  17. package/carousel/carousel.esm.min.js +1 -1
  18. package/cascadeselect/cascadeselect.esm.js +0 -1
  19. package/chart/chart.esm.js +0 -1
  20. package/checkbox/checkbox.esm.js +0 -1
  21. package/chip/chip.esm.js +0 -1
  22. package/chips/chips.esm.js +0 -1
  23. package/colorpicker/colorpicker.esm.js +0 -1
  24. package/column/column.esm.js +0 -1
  25. package/columngroup/columngroup.esm.js +0 -1
  26. package/componentbase/componentbase.cjs.js +12 -7
  27. package/componentbase/componentbase.cjs.min.js +1 -1
  28. package/componentbase/componentbase.esm.js +23 -13
  29. package/componentbase/componentbase.esm.min.js +1 -1
  30. package/componentbase/componentbase.js +12 -7
  31. package/componentbase/componentbase.min.js +1 -1
  32. package/confirmdialog/confirmdialog.esm.js +0 -1
  33. package/confirmpopup/confirmpopup.esm.js +0 -1
  34. package/contextmenu/contextmenu.esm.js +0 -1
  35. package/core/core.js +12 -7
  36. package/core/core.min.js +1 -1
  37. package/csstransition/csstransition.esm.js +0 -1
  38. package/datascroller/datascroller.esm.js +0 -1
  39. package/datatable/datatable.esm.js +0 -1
  40. package/dataview/dataview.esm.js +0 -1
  41. package/deferredcontent/deferredcontent.esm.js +0 -1
  42. package/dialog/dialog.esm.js +2 -1
  43. package/dialog/dialog.esm.min.js +1 -1
  44. package/divider/divider.esm.js +0 -1
  45. package/dock/dock.esm.js +0 -1
  46. package/dropdown/dropdown.esm.js +0 -1
  47. package/editor/editor.esm.js +0 -1
  48. package/fieldset/fieldset.esm.js +0 -1
  49. package/fileupload/fileupload.esm.js +0 -1
  50. package/galleria/galleria.esm.js +11 -7
  51. package/galleria/galleria.esm.min.js +1 -1
  52. package/hooks/hooks.esm.js +0 -6
  53. package/iconbase/iconbase.esm.js +0 -1
  54. package/icons/angledoubledown/index.esm.js +0 -1
  55. package/icons/angledoubleleft/index.esm.js +0 -1
  56. package/icons/angledoubleright/index.esm.js +0 -1
  57. package/icons/angledoubleup/index.esm.js +0 -1
  58. package/icons/angledown/index.esm.js +0 -1
  59. package/icons/angleleft/index.esm.js +0 -1
  60. package/icons/angleright/index.esm.js +0 -1
  61. package/icons/angleup/index.esm.js +0 -1
  62. package/icons/arrowdown/index.esm.js +0 -1
  63. package/icons/arrowup/index.esm.js +0 -1
  64. package/icons/ban/index.esm.js +0 -1
  65. package/icons/bars/index.esm.js +0 -1
  66. package/icons/calendar/index.esm.js +0 -1
  67. package/icons/check/index.esm.js +0 -1
  68. package/icons/chevrondown/index.esm.js +0 -1
  69. package/icons/chevronleft/index.esm.js +0 -1
  70. package/icons/chevronright/index.esm.js +0 -1
  71. package/icons/chevronup/index.esm.js +0 -1
  72. package/icons/download/index.esm.js +0 -1
  73. package/icons/exclamationtriangle/index.esm.js +0 -1
  74. package/icons/eye/index.esm.js +0 -1
  75. package/icons/eyeslash/index.esm.js +0 -1
  76. package/icons/filter/index.esm.js +0 -1
  77. package/icons/filterslash/index.esm.js +0 -1
  78. package/icons/infocircle/index.esm.js +0 -1
  79. package/icons/minus/index.esm.js +0 -1
  80. package/icons/pencil/index.esm.js +0 -1
  81. package/icons/plus/index.esm.js +0 -1
  82. package/icons/refresh/index.esm.js +0 -1
  83. package/icons/search/index.esm.js +0 -1
  84. package/icons/searchminus/index.esm.js +0 -1
  85. package/icons/searchplus/index.esm.js +0 -1
  86. package/icons/sortalt/index.esm.js +0 -1
  87. package/icons/sortamountdown/index.esm.js +0 -1
  88. package/icons/sortamountupalt/index.esm.js +0 -1
  89. package/icons/spinner/index.esm.js +0 -1
  90. package/icons/star/index.esm.js +0 -1
  91. package/icons/starfill/index.esm.js +0 -1
  92. package/icons/thlarge/index.esm.js +0 -1
  93. package/icons/times/index.esm.js +0 -1
  94. package/icons/timescircle/index.esm.js +0 -1
  95. package/icons/trash/index.esm.js +0 -1
  96. package/icons/undo/index.esm.js +0 -1
  97. package/icons/upload/index.esm.js +0 -1
  98. package/icons/windowmaximize/index.esm.js +0 -1
  99. package/icons/windowminimize/index.esm.js +0 -1
  100. package/image/image.esm.js +2 -1
  101. package/image/image.esm.min.js +1 -1
  102. package/inplace/inplace.esm.js +0 -1
  103. package/inputmask/inputmask.esm.js +0 -1
  104. package/inputnumber/inputnumber.esm.js +0 -1
  105. package/inputswitch/inputswitch.esm.js +0 -1
  106. package/inputtext/inputtext.esm.js +0 -1
  107. package/inputtextarea/inputtextarea.esm.js +0 -1
  108. package/keyfilter/keyfilter.esm.js +0 -1
  109. package/knob/knob.esm.js +0 -1
  110. package/listbox/listbox.esm.js +0 -1
  111. package/megamenu/megamenu.esm.js +0 -1
  112. package/mention/mention.esm.js +0 -1
  113. package/menu/menu.esm.js +0 -1
  114. package/menubar/menubar.esm.js +0 -1
  115. package/message/message.esm.js +0 -1
  116. package/messages/messages.esm.js +1 -2
  117. package/messages/messages.esm.min.js +1 -1
  118. package/multiselect/multiselect.esm.js +0 -1
  119. package/multistatecheckbox/multistatecheckbox.esm.js +0 -1
  120. package/orderlist/orderlist.esm.js +9 -5
  121. package/orderlist/orderlist.esm.min.js +1 -1
  122. package/organizationchart/organizationchart.esm.js +0 -1
  123. package/overlaypanel/overlaypanel.esm.js +0 -1
  124. package/overlayservice/overlayservice.esm.js +0 -1
  125. package/package.json +2 -2
  126. package/paginator/paginator.esm.js +0 -1
  127. package/panel/panel.esm.js +0 -1
  128. package/panelmenu/panelmenu.esm.js +0 -1
  129. package/passthrough/index.esm.js +0 -1
  130. package/passthrough/tailwind/index.cjs.js +2 -4
  131. package/passthrough/tailwind/index.cjs.min.js +1 -1
  132. package/passthrough/tailwind/index.esm.js +149 -148
  133. package/passthrough/tailwind/index.esm.min.js +1 -1
  134. package/passthrough/tailwind/index.js +2 -4
  135. package/passthrough/tailwind/index.min.js +1 -1
  136. package/password/password.esm.js +0 -1
  137. package/picklist/picklist.esm.js +0 -1
  138. package/portal/portal.esm.js +0 -1
  139. package/primereact.all.cjs.js +12 -7
  140. package/primereact.all.cjs.min.js +1 -1
  141. package/primereact.all.esm.js +70 -42
  142. package/primereact.all.esm.min.js +1 -1
  143. package/primereact.all.js +12 -7
  144. package/primereact.all.min.js +1 -1
  145. package/progressbar/progressbar.esm.js +0 -1
  146. package/progressspinner/progressspinner.esm.js +0 -1
  147. package/radiobutton/radiobutton.esm.js +0 -1
  148. package/rating/rating.esm.js +0 -1
  149. package/ripple/ripple.esm.js +0 -1
  150. package/row/row.esm.js +0 -1
  151. package/scrollpanel/scrollpanel.esm.js +0 -1
  152. package/scrolltop/scrolltop.esm.js +0 -1
  153. package/selectbutton/selectbutton.esm.js +0 -1
  154. package/sidebar/sidebar.esm.js +2 -1
  155. package/sidebar/sidebar.esm.min.js +1 -1
  156. package/skeleton/skeleton.esm.js +0 -1
  157. package/slidemenu/slidemenu.esm.js +0 -1
  158. package/slider/slider.esm.js +0 -1
  159. package/speeddial/speeddial.esm.js +0 -1
  160. package/splitbutton/splitbutton.esm.js +0 -1
  161. package/splitter/splitter.esm.js +0 -1
  162. package/steps/steps.esm.js +0 -1
  163. package/styleclass/styleclass.esm.js +0 -1
  164. package/tabmenu/tabmenu.esm.js +0 -1
  165. package/tabview/tabview.esm.js +0 -1
  166. package/tag/tag.esm.js +0 -1
  167. package/terminal/terminal.esm.js +0 -1
  168. package/terminalservice/terminalservice.esm.js +0 -1
  169. package/tieredmenu/tieredmenu.esm.js +0 -1
  170. package/timeline/timeline.esm.js +0 -1
  171. package/toast/toast.esm.js +0 -1
  172. package/togglebutton/togglebutton.esm.js +0 -1
  173. package/toolbar/toolbar.esm.js +0 -1
  174. package/tooltip/tooltip.esm.js +0 -1
  175. package/tree/tree.esm.js +0 -1
  176. package/treeselect/treeselect.esm.js +0 -1
  177. package/treetable/treetable.esm.js +0 -1
  178. package/tristatecheckbox/tristatecheckbox.esm.js +0 -1
  179. package/utils/utils.esm.js +0 -1
  180. package/virtualscroller/virtualscroller.esm.js +0 -1
  181. package/web-types.json +1 -1
  182. package/accordion/accordion.esm.min.mjs +0 -1
  183. package/accordion/accordion.esm.mjs +0 -420
  184. package/api/api.esm.min.mjs +0 -1
  185. package/api/api.esm.mjs +0 -943
  186. package/autocomplete/autocomplete.esm.min.mjs +0 -1
  187. package/autocomplete/autocomplete.esm.mjs +0 -1128
  188. package/avatar/avatar.esm.min.mjs +0 -1
  189. package/avatar/avatar.esm.mjs +0 -244
  190. package/avatargroup/avatargroup.esm.min.mjs +0 -1
  191. package/avatargroup/avatargroup.esm.mjs +0 -54
  192. package/badge/badge.esm.min.mjs +0 -1
  193. package/badge/badge.esm.mjs +0 -109
  194. package/blockui/blockui.esm.min.mjs +0 -1
  195. package/blockui/blockui.esm.mjs +0 -267
  196. package/breadcrumb/breadcrumb.esm.min.mjs +0 -1
  197. package/breadcrumb/breadcrumb.esm.mjs +0 -350
  198. package/button/button.esm.min.mjs +0 -1
  199. package/button/button.esm.mjs +0 -294
  200. package/calendar/calendar.esm.min.mjs +0 -1
  201. package/calendar/calendar.esm.mjs +0 -3474
  202. package/card/card.esm.min.mjs +0 -1
  203. package/card/card.esm.mjs +0 -97
  204. package/carousel/carousel.esm.min.mjs +0 -1
  205. package/carousel/carousel.esm.mjs +0 -800
  206. package/cascadeselect/cascadeselect.esm.min.mjs +0 -1
  207. package/cascadeselect/cascadeselect.esm.mjs +0 -818
  208. package/chart/chart.esm.min.mjs +0 -1
  209. package/chart/chart.esm.mjs +0 -154
  210. package/checkbox/checkbox.esm.min.mjs +0 -1
  211. package/checkbox/checkbox.esm.mjs +0 -356
  212. package/chip/chip.esm.min.mjs +0 -1
  213. package/chip/chip.esm.mjs +0 -247
  214. package/chips/chips.esm.min.mjs +0 -1
  215. package/chips/chips.esm.mjs +0 -500
  216. package/colorpicker/colorpicker.esm.min.mjs +0 -1
  217. package/colorpicker/colorpicker.esm.mjs +0 -787
  218. package/column/column.esm.min.mjs +0 -1
  219. package/column/column.esm.mjs +0 -7
  220. package/columngroup/columngroup.esm.min.mjs +0 -1
  221. package/columngroup/columngroup.esm.mjs +0 -5
  222. package/componentbase/componentbase.esm.min.mjs +0 -1
  223. package/componentbase/componentbase.esm.mjs +0 -328
  224. package/confirmdialog/confirmdialog.esm.min.mjs +0 -1
  225. package/confirmdialog/confirmdialog.esm.mjs +0 -375
  226. package/confirmpopup/confirmpopup.esm.min.mjs +0 -1
  227. package/confirmpopup/confirmpopup.esm.mjs +0 -609
  228. package/contextmenu/contextmenu.esm.min.mjs +0 -1
  229. package/contextmenu/contextmenu.esm.mjs +0 -663
  230. package/csstransition/csstransition.esm.min.mjs +0 -1
  231. package/csstransition/csstransition.esm.mjs +0 -137
  232. package/datascroller/datascroller.esm.min.mjs +0 -1
  233. package/datascroller/datascroller.esm.mjs +0 -319
  234. package/datatable/datatable.esm.min.mjs +0 -1
  235. package/datatable/datatable.esm.mjs +0 -6635
  236. package/dataview/dataview.esm.min.mjs +0 -1
  237. package/dataview/dataview.esm.mjs +0 -505
  238. package/deferredcontent/deferredcontent.esm.min.mjs +0 -1
  239. package/deferredcontent/deferredcontent.esm.mjs +0 -132
  240. package/dialog/dialog.esm.min.mjs +0 -1
  241. package/dialog/dialog.esm.mjs +0 -984
  242. package/divider/divider.esm.min.mjs +0 -1
  243. package/divider/divider.esm.mjs +0 -78
  244. package/dock/dock.esm.min.mjs +0 -1
  245. package/dock/dock.esm.mjs +0 -347
  246. package/dropdown/dropdown.esm.min.mjs +0 -1
  247. package/dropdown/dropdown.esm.mjs +0 -1379
  248. package/editor/editor.esm.min.mjs +0 -1
  249. package/editor/editor.esm.mjs +0 -337
  250. package/fieldset/fieldset.esm.min.mjs +0 -1
  251. package/fieldset/fieldset.esm.mjs +0 -269
  252. package/fileupload/fileupload.esm.min.mjs +0 -1
  253. package/fileupload/fileupload.esm.mjs +0 -1004
  254. package/galleria/galleria.esm.min.mjs +0 -1
  255. package/galleria/galleria.esm.mjs +0 -1094
  256. package/hooks/hooks.esm.min.mjs +0 -1
  257. package/hooks/hooks.esm.mjs +0 -1036
  258. package/iconbase/iconbase.esm.min.mjs +0 -1
  259. package/iconbase/iconbase.esm.mjs +0 -32
  260. package/icons/angledoubledown/index.esm.min.mjs +0 -1
  261. package/icons/angledoubledown/index.esm.mjs +0 -38
  262. package/icons/angledoubleleft/index.esm.min.mjs +0 -1
  263. package/icons/angledoubleleft/index.esm.mjs +0 -38
  264. package/icons/angledoubleright/index.esm.min.mjs +0 -1
  265. package/icons/angledoubleright/index.esm.mjs +0 -38
  266. package/icons/angledoubleup/index.esm.min.mjs +0 -1
  267. package/icons/angledoubleup/index.esm.mjs +0 -38
  268. package/icons/angledown/index.esm.min.mjs +0 -1
  269. package/icons/angledown/index.esm.mjs +0 -36
  270. package/icons/angleleft/index.esm.min.mjs +0 -1
  271. package/icons/angleleft/index.esm.mjs +0 -36
  272. package/icons/angleright/index.esm.min.mjs +0 -1
  273. package/icons/angleright/index.esm.mjs +0 -36
  274. package/icons/angleup/index.esm.min.mjs +0 -1
  275. package/icons/angleup/index.esm.mjs +0 -36
  276. package/icons/arrowdown/index.esm.min.mjs +0 -1
  277. package/icons/arrowdown/index.esm.mjs +0 -660
  278. package/icons/arrowup/index.esm.min.mjs +0 -1
  279. package/icons/arrowup/index.esm.mjs +0 -660
  280. package/icons/ban/index.esm.min.mjs +0 -1
  281. package/icons/ban/index.esm.mjs +0 -658
  282. package/icons/bars/index.esm.min.mjs +0 -1
  283. package/icons/bars/index.esm.mjs +0 -38
  284. package/icons/calendar/index.esm.min.mjs +0 -1
  285. package/icons/calendar/index.esm.mjs +0 -36
  286. package/icons/check/index.esm.min.mjs +0 -1
  287. package/icons/check/index.esm.mjs +0 -36
  288. package/icons/chevrondown/index.esm.min.mjs +0 -1
  289. package/icons/chevrondown/index.esm.mjs +0 -36
  290. package/icons/chevronleft/index.esm.min.mjs +0 -1
  291. package/icons/chevronleft/index.esm.mjs +0 -36
  292. package/icons/chevronright/index.esm.min.mjs +0 -1
  293. package/icons/chevronright/index.esm.mjs +0 -36
  294. package/icons/chevronup/index.esm.min.mjs +0 -1
  295. package/icons/chevronup/index.esm.mjs +0 -36
  296. package/icons/download/index.esm.min.mjs +0 -1
  297. package/icons/download/index.esm.mjs +0 -660
  298. package/icons/exclamationtriangle/index.esm.min.mjs +0 -1
  299. package/icons/exclamationtriangle/index.esm.mjs +0 -664
  300. package/icons/eye/index.esm.min.mjs +0 -1
  301. package/icons/eye/index.esm.mjs +0 -38
  302. package/icons/eyeslash/index.esm.min.mjs +0 -1
  303. package/icons/eyeslash/index.esm.mjs +0 -660
  304. package/icons/filter/index.esm.min.mjs +0 -1
  305. package/icons/filter/index.esm.mjs +0 -658
  306. package/icons/filterslash/index.esm.min.mjs +0 -1
  307. package/icons/filterslash/index.esm.mjs +0 -660
  308. package/icons/infocircle/index.esm.min.mjs +0 -1
  309. package/icons/infocircle/index.esm.mjs +0 -660
  310. package/icons/minus/index.esm.min.mjs +0 -1
  311. package/icons/minus/index.esm.mjs +0 -36
  312. package/icons/pencil/index.esm.min.mjs +0 -1
  313. package/icons/pencil/index.esm.mjs +0 -658
  314. package/icons/plus/index.esm.min.mjs +0 -1
  315. package/icons/plus/index.esm.mjs +0 -658
  316. package/icons/refresh/index.esm.min.mjs +0 -1
  317. package/icons/refresh/index.esm.mjs +0 -660
  318. package/icons/search/index.esm.min.mjs +0 -1
  319. package/icons/search/index.esm.mjs +0 -660
  320. package/icons/searchminus/index.esm.min.mjs +0 -1
  321. package/icons/searchminus/index.esm.mjs +0 -660
  322. package/icons/searchplus/index.esm.min.mjs +0 -1
  323. package/icons/searchplus/index.esm.mjs +0 -660
  324. package/icons/sortalt/index.esm.min.mjs +0 -1
  325. package/icons/sortalt/index.esm.mjs +0 -667
  326. package/icons/sortamountdown/index.esm.min.mjs +0 -1
  327. package/icons/sortamountdown/index.esm.mjs +0 -673
  328. package/icons/sortamountupalt/index.esm.min.mjs +0 -1
  329. package/icons/sortamountupalt/index.esm.mjs +0 -673
  330. package/icons/spinner/index.esm.min.mjs +0 -1
  331. package/icons/spinner/index.esm.mjs +0 -658
  332. package/icons/star/index.esm.min.mjs +0 -1
  333. package/icons/star/index.esm.mjs +0 -658
  334. package/icons/starfill/index.esm.min.mjs +0 -1
  335. package/icons/starfill/index.esm.mjs +0 -658
  336. package/icons/thlarge/index.esm.min.mjs +0 -1
  337. package/icons/thlarge/index.esm.mjs +0 -660
  338. package/icons/times/index.esm.min.mjs +0 -1
  339. package/icons/times/index.esm.mjs +0 -36
  340. package/icons/timescircle/index.esm.min.mjs +0 -1
  341. package/icons/timescircle/index.esm.mjs +0 -660
  342. package/icons/trash/index.esm.min.mjs +0 -1
  343. package/icons/trash/index.esm.mjs +0 -660
  344. package/icons/undo/index.esm.min.mjs +0 -1
  345. package/icons/undo/index.esm.mjs +0 -660
  346. package/icons/upload/index.esm.min.mjs +0 -1
  347. package/icons/upload/index.esm.mjs +0 -660
  348. package/icons/windowmaximize/index.esm.min.mjs +0 -1
  349. package/icons/windowmaximize/index.esm.mjs +0 -660
  350. package/icons/windowminimize/index.esm.min.mjs +0 -1
  351. package/icons/windowminimize/index.esm.mjs +0 -660
  352. package/image/image.esm.min.mjs +0 -1
  353. package/image/image.esm.mjs +0 -1163
  354. package/inplace/inplace.esm.min.mjs +0 -1
  355. package/inplace/inplace.esm.mjs +0 -242
  356. package/inputmask/inputmask.esm.min.mjs +0 -1
  357. package/inputmask/inputmask.esm.mjs +0 -559
  358. package/inputnumber/inputnumber.esm.min.mjs +0 -1
  359. package/inputnumber/inputnumber.esm.mjs +0 -1208
  360. package/inputswitch/inputswitch.esm.min.mjs +0 -1
  361. package/inputswitch/inputswitch.esm.mjs +0 -290
  362. package/inputtext/inputtext.esm.min.mjs +0 -1
  363. package/inputtext/inputtext.esm.mjs +0 -170
  364. package/inputtextarea/inputtextarea.esm.min.mjs +0 -1
  365. package/inputtextarea/inputtextarea.esm.mjs +0 -219
  366. package/keyfilter/keyfilter.esm.min.mjs +0 -1
  367. package/keyfilter/keyfilter.esm.mjs +0 -107
  368. package/knob/knob.esm.min.mjs +0 -1
  369. package/knob/knob.esm.mjs +0 -317
  370. package/listbox/listbox.esm.min.mjs +0 -1
  371. package/listbox/listbox.esm.mjs +0 -809
  372. package/megamenu/megamenu.esm.min.mjs +0 -1
  373. package/megamenu/megamenu.esm.mjs +0 -715
  374. package/mention/mention.esm.min.mjs +0 -1
  375. package/mention/mention.esm.mjs +0 -770
  376. package/menu/menu.esm.min.mjs +0 -1
  377. package/menu/menu.esm.mjs +0 -484
  378. package/menubar/menubar.esm.min.mjs +0 -1
  379. package/menubar/menubar.esm.mjs +0 -583
  380. package/message/message.esm.min.mjs +0 -1
  381. package/message/message.esm.mjs +0 -168
  382. package/messages/messages.esm.min.mjs +0 -1
  383. package/messages/messages.esm.mjs +0 -438
  384. package/multiselect/multiselect.esm.min.mjs +0 -1
  385. package/multiselect/multiselect.esm.mjs +0 -1723
  386. package/multistatecheckbox/multistatecheckbox.esm.min.mjs +0 -1
  387. package/multistatecheckbox/multistatecheckbox.esm.mjs +0 -351
  388. package/orderlist/orderlist.esm.min.mjs +0 -1
  389. package/orderlist/orderlist.esm.mjs +0 -820
  390. package/organizationchart/organizationchart.esm.min.mjs +0 -1
  391. package/organizationchart/organizationchart.esm.mjs +0 -479
  392. package/overlaypanel/overlaypanel.esm.min.mjs +0 -1
  393. package/overlaypanel/overlaypanel.esm.mjs +0 -515
  394. package/overlayservice/overlayservice.esm.min.mjs +0 -1
  395. package/overlayservice/overlayservice.esm.mjs +0 -6
  396. package/paginator/paginator.esm.min.mjs +0 -1
  397. package/paginator/paginator.esm.mjs +0 -932
  398. package/panel/panel.esm.min.mjs +0 -1
  399. package/panel/panel.esm.mjs +0 -315
  400. package/panelmenu/panelmenu.esm.min.mjs +0 -1
  401. package/panelmenu/panelmenu.esm.mjs +0 -644
  402. package/passthrough/index.esm.min.mjs +0 -1
  403. package/passthrough/index.esm.mjs +0 -70
  404. package/passthrough/tailwind/index.esm.min.mjs +0 -1
  405. package/passthrough/tailwind/index.esm.mjs +0 -3513
  406. package/password/password.esm.min.mjs +0 -1
  407. package/password/password.esm.mjs +0 -566
  408. package/picklist/picklist.esm.min.mjs +0 -1
  409. package/picklist/picklist.esm.mjs +0 -1118
  410. package/portal/portal.esm.min.mjs +0 -1
  411. package/portal/portal.esm.mjs +0 -109
  412. package/primereact.all.esm.min.mjs +0 -1
  413. package/primereact.all.esm.mjs +0 -51669
  414. package/progressbar/progressbar.esm.min.mjs +0 -1
  415. package/progressbar/progressbar.esm.mjs +0 -189
  416. package/progressspinner/progressspinner.esm.min.mjs +0 -1
  417. package/progressspinner/progressspinner.esm.mjs +0 -87
  418. package/radiobutton/radiobutton.esm.min.mjs +0 -1
  419. package/radiobutton/radiobutton.esm.mjs +0 -328
  420. package/rating/rating.esm.min.mjs +0 -1
  421. package/rating/rating.esm.mjs +0 -272
  422. package/ripple/ripple.esm.min.mjs +0 -1
  423. package/ripple/ripple.esm.mjs +0 -99
  424. package/row/row.esm.min.mjs +0 -1
  425. package/row/row.esm.mjs +0 -35
  426. package/scrollpanel/scrollpanel.esm.min.mjs +0 -1
  427. package/scrollpanel/scrollpanel.esm.mjs +0 -209
  428. package/scrolltop/scrolltop.esm.min.mjs +0 -1
  429. package/scrolltop/scrolltop.esm.mjs +0 -268
  430. package/selectbutton/selectbutton.esm.min.mjs +0 -1
  431. package/selectbutton/selectbutton.esm.mjs +0 -326
  432. package/sidebar/sidebar.esm.min.mjs +0 -1
  433. package/sidebar/sidebar.esm.mjs +0 -544
  434. package/skeleton/skeleton.esm.min.mjs +0 -1
  435. package/skeleton/skeleton.esm.mjs +0 -124
  436. package/slidemenu/slidemenu.esm.min.mjs +0 -1
  437. package/slidemenu/slidemenu.esm.mjs +0 -688
  438. package/slider/slider.esm.min.mjs +0 -1
  439. package/slider/slider.esm.mjs +0 -477
  440. package/speeddial/speeddial.esm.min.mjs +0 -1
  441. package/speeddial/speeddial.esm.mjs +0 -520
  442. package/splitbutton/splitbutton.esm.min.mjs +0 -1
  443. package/splitbutton/splitbutton.esm.mjs +0 -544
  444. package/splitter/splitter.esm.min.mjs +0 -1
  445. package/splitter/splitter.esm.mjs +0 -465
  446. package/steps/steps.esm.min.mjs +0 -1
  447. package/steps/steps.esm.mjs +0 -293
  448. package/styleclass/styleclass.esm.min.mjs +0 -1
  449. package/styleclass/styleclass.esm.mjs +0 -268
  450. package/tabmenu/tabmenu.esm.min.mjs +0 -1
  451. package/tabmenu/tabmenu.esm.mjs +0 -331
  452. package/tabview/tabview.esm.min.mjs +0 -1
  453. package/tabview/tabview.esm.mjs +0 -677
  454. package/tag/tag.esm.min.mjs +0 -1
  455. package/tag/tag.esm.mjs +0 -116
  456. package/terminal/terminal.esm.min.mjs +0 -1
  457. package/terminal/terminal.esm.mjs +0 -279
  458. package/terminalservice/terminalservice.esm.min.mjs +0 -1
  459. package/terminalservice/terminalservice.esm.mjs +0 -6
  460. package/tieredmenu/tieredmenu.esm.min.mjs +0 -1
  461. package/tieredmenu/tieredmenu.esm.mjs +0 -698
  462. package/timeline/timeline.esm.min.mjs +0 -1
  463. package/timeline/timeline.esm.mjs +0 -163
  464. package/toast/toast.esm.min.mjs +0 -1
  465. package/toast/toast.esm.mjs +0 -738
  466. package/togglebutton/togglebutton.esm.min.mjs +0 -1
  467. package/togglebutton/togglebutton.esm.mjs +0 -216
  468. package/toolbar/toolbar.esm.min.mjs +0 -1
  469. package/toolbar/toolbar.esm.mjs +0 -78
  470. package/tooltip/tooltip.esm.min.mjs +0 -1
  471. package/tooltip/tooltip.esm.mjs +0 -695
  472. package/tree/tree.esm.min.mjs +0 -1
  473. package/tree/tree.esm.mjs +0 -1402
  474. package/treeselect/treeselect.esm.min.mjs +0 -1
  475. package/treeselect/treeselect.esm.mjs +0 -929
  476. package/treetable/treetable.esm.min.mjs +0 -1
  477. package/treetable/treetable.esm.mjs +0 -3093
  478. package/tristatecheckbox/tristatecheckbox.esm.min.mjs +0 -1
  479. package/tristatecheckbox/tristatecheckbox.esm.mjs +0 -291
  480. package/utils/utils.esm.min.mjs +0 -1
  481. package/utils/utils.esm.mjs +0 -2382
  482. package/virtualscroller/virtualscroller.esm.min.mjs +0 -1
  483. package/virtualscroller/virtualscroller.esm.mjs +0 -971
@@ -1,1723 +0,0 @@
1
- 'use client';
2
- import * as React from 'react';
3
- import PrimeReact, { PrimeReactContext, localeOption, FilterService } from 'primereact/api';
4
- import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
5
- import { useUpdateEffect, useMountEffect, useOverlayListener, useUnmountEffect } from 'primereact/hooks';
6
- import { ChevronDownIcon } from 'primereact/icons/chevrondown';
7
- import { TimesIcon } from 'primereact/icons/times';
8
- import { TimesCircleIcon } from 'primereact/icons/timescircle';
9
- import { OverlayService } from 'primereact/overlayservice';
10
- import { Tooltip } from 'primereact/tooltip';
11
- import { classNames, ObjectUtils, DomHandler, mergeProps, IconUtils, UniqueComponentId, ZIndexUtils } from 'primereact/utils';
12
- import { CSSTransition } from 'primereact/csstransition';
13
- import { Portal } from 'primereact/portal';
14
- import { VirtualScroller } from 'primereact/virtualscroller';
15
- import { CheckIcon } from 'primereact/icons/check';
16
- import { SearchIcon } from 'primereact/icons/search';
17
- import { InputText } from 'primereact/inputtext';
18
- import { Ripple } from 'primereact/ripple';
19
-
20
- function _extends() {
21
- _extends = Object.assign ? Object.assign.bind() : function (target) {
22
- for (var i = 1; i < arguments.length; i++) {
23
- var source = arguments[i];
24
- for (var key in source) {
25
- if (Object.prototype.hasOwnProperty.call(source, key)) {
26
- target[key] = source[key];
27
- }
28
- }
29
- }
30
- return target;
31
- };
32
- return _extends.apply(this, arguments);
33
- }
34
-
35
- function _typeof(o) {
36
- "@babel/helpers - typeof";
37
-
38
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
39
- return typeof o;
40
- } : function (o) {
41
- return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
42
- }, _typeof(o);
43
- }
44
-
45
- function _toPrimitive(input, hint) {
46
- if (_typeof(input) !== "object" || input === null) return input;
47
- var prim = input[Symbol.toPrimitive];
48
- if (prim !== undefined) {
49
- var res = prim.call(input, hint || "default");
50
- if (_typeof(res) !== "object") return res;
51
- throw new TypeError("@@toPrimitive must return a primitive value.");
52
- }
53
- return (hint === "string" ? String : Number)(input);
54
- }
55
-
56
- function _toPropertyKey(arg) {
57
- var key = _toPrimitive(arg, "string");
58
- return _typeof(key) === "symbol" ? key : String(key);
59
- }
60
-
61
- function _defineProperty(obj, key, value) {
62
- key = _toPropertyKey(key);
63
- if (key in obj) {
64
- Object.defineProperty(obj, key, {
65
- value: value,
66
- enumerable: true,
67
- configurable: true,
68
- writable: true
69
- });
70
- } else {
71
- obj[key] = value;
72
- }
73
- return obj;
74
- }
75
-
76
- function _arrayLikeToArray$1(arr, len) {
77
- if (len == null || len > arr.length) len = arr.length;
78
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
79
- return arr2;
80
- }
81
-
82
- function _arrayWithoutHoles(arr) {
83
- if (Array.isArray(arr)) return _arrayLikeToArray$1(arr);
84
- }
85
-
86
- function _iterableToArray(iter) {
87
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
88
- }
89
-
90
- function _unsupportedIterableToArray$1(o, minLen) {
91
- if (!o) return;
92
- if (typeof o === "string") return _arrayLikeToArray$1(o, minLen);
93
- var n = Object.prototype.toString.call(o).slice(8, -1);
94
- if (n === "Object" && o.constructor) n = o.constructor.name;
95
- if (n === "Map" || n === "Set") return Array.from(o);
96
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen);
97
- }
98
-
99
- function _nonIterableSpread() {
100
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
101
- }
102
-
103
- function _toConsumableArray(arr) {
104
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread();
105
- }
106
-
107
- function _arrayWithHoles(arr) {
108
- if (Array.isArray(arr)) return arr;
109
- }
110
-
111
- function _iterableToArrayLimit(r, l) {
112
- var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
113
- if (null != t) {
114
- var e,
115
- n,
116
- i,
117
- u,
118
- a = [],
119
- f = !0,
120
- o = !1;
121
- try {
122
- if (i = (t = t.call(r)).next, 0 === l) {
123
- if (Object(t) !== t) return;
124
- f = !1;
125
- } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
126
- } catch (r) {
127
- o = !0, n = r;
128
- } finally {
129
- try {
130
- if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
131
- } finally {
132
- if (o) throw n;
133
- }
134
- }
135
- return a;
136
- }
137
- }
138
-
139
- function _nonIterableRest() {
140
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
141
- }
142
-
143
- function _slicedToArray(arr, i) {
144
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray$1(arr, i) || _nonIterableRest();
145
- }
146
-
147
- var classes$1 = {
148
- root: function root(_ref) {
149
- var props = _ref.props,
150
- focusedState = _ref.focusedState,
151
- overlayVisibleState = _ref.overlayVisibleState;
152
- return classNames('p-multiselect p-component p-inputwrapper', {
153
- 'p-multiselect-chip': props.display === 'chip',
154
- 'p-disabled': props.disabled,
155
- 'p-multiselect-clearable': props.showClear && !props.disabled,
156
- 'p-focus': focusedState,
157
- 'p-inputwrapper-filled': ObjectUtils.isNotEmpty(props.value),
158
- 'p-inputwrapper-focus': focusedState || overlayVisibleState
159
- });
160
- },
161
- label: function label(_ref2) {
162
- var props = _ref2.props,
163
- empty = _ref2.empty;
164
- return classNames('p-multiselect-label', {
165
- 'p-placeholder': empty && props.placeholder,
166
- 'p-multiselect-label-empty': empty && !props.placeholder && !props.selectedItemTemplate,
167
- 'p-multiselect-items-label': !empty && props.display !== 'chip' && props.value.length > props.maxSelectedLabels
168
- });
169
- },
170
- panel: function panel(_ref3) {
171
- var props = _ref3.panelProps,
172
- context = _ref3.context,
173
- allowOptionSelect = _ref3.allowOptionSelect;
174
- return classNames('p-multiselect-panel p-component', {
175
- 'p-multiselect-inline': props.inline,
176
- 'p-multiselect-flex': props.flex,
177
- 'p-multiselect-limited': !allowOptionSelect,
178
- 'p-input-filled': context && context.inputStyle === 'filled' || PrimeReact.inputStyle === 'filled',
179
- 'p-ripple-disabled': context && context.ripple === false || PrimeReact.ripple === false
180
- });
181
- },
182
- list: function list(_ref4) {
183
- var virtualScrollerOptions = _ref4.virtualScrollerOptions;
184
- return virtualScrollerOptions ? 'p-multiselect-items p-component' : 'p-multiselect-items p-component';
185
- },
186
- labelContainer: 'p-multiselect-label-container',
187
- triggerIcon: 'p-multiselect-trigger-icon p-c',
188
- trigger: 'p-multiselect-trigger',
189
- clearIcon: 'p-multiselect-clear-icon',
190
- tokenLabel: 'p-multiselect-token-label',
191
- token: 'p-multiselect-token',
192
- removeTokenIcon: 'p-multiselect-token-icon',
193
- wrapper: 'p-multiselect-items-wrapper',
194
- emptyMessage: 'p-multiselect-empty-message',
195
- itemGroup: 'p-multiselect-item-group',
196
- closeButton: 'p-multiselect-close p-link',
197
- header: 'p-multiselect-header',
198
- closeIcon: 'p-multiselect-close-icon',
199
- headerCheckboxContainer: 'p-multiselect-select-all',
200
- headerCheckboxIcon: 'p-multiselect-select-all p-checkbox-icon p-c',
201
- headerSelectAllLabel: 'p-multiselect-select-all-label',
202
- filterContainer: 'p-multiselect-filter-container',
203
- filterIcon: 'p-multiselect-filter-icon',
204
- item: function item(_ref5) {
205
- var props = _ref5.itemProps;
206
- return classNames('p-multiselect-item', {
207
- 'p-highlight': props.selected,
208
- 'p-disabled': props.disabled
209
- });
210
- },
211
- checkboxContainer: 'p-checkbox p-component',
212
- checkboxIcon: 'p-checkbox-icon p-c',
213
- checkbox: function checkbox(_ref6) {
214
- var props = _ref6.itemProps;
215
- return classNames('p-checkbox-box', {
216
- 'p-highlight': props.selected
217
- });
218
- },
219
- transition: 'p-connected-overlay'
220
- };
221
- var styles$1 = "\n@layer primereact {\n .p-multiselect {\n display: inline-flex;\n user-select: none;\n cursor: pointer;\n }\n \n .p-multiselect-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n cursor: pointer;\n }\n \n .p-multiselect-label-container {\n overflow: hidden;\n flex: 1 1 auto;\n cursor: pointer;\n }\n \n .p-multiselect-label {\n display: block;\n white-space: nowrap;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .p-multiselect-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n .p-multiselect-token {\n cursor: default;\n display: inline-flex;\n align-items: center;\n flex: 0 0 auto;\n }\n \n .p-multiselect-token-icon {\n cursor: pointer;\n }\n \n .p-multiselect .p-multiselect-panel {\n min-width: 100%;\n }\n \n .p-multiselect-inline.p-multiselect-panel {\n border: none;\n position: initial;\n background: none;\n box-shadow: none;\n }\n \n .p-multiselect-inline.p-multiselect-panel .p-multiselect-items {\n padding: 0;\n }\n \n .p-multiselect-flex.p-multiselect-panel .p-multiselect-items {\n display: flex;\n flex-wrap: wrap;\n }\n \n .p-multiselect-items-wrapper {\n overflow: auto;\n }\n \n .p-multiselect-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-multiselect-item {\n cursor: pointer;\n display: flex;\n align-items: center;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n }\n \n .p-multiselect-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .p-multiselect-select-all-label {\n margin-left: 0.5rem;\n }\n \n .p-multiselect-filter-container {\n position: relative;\n flex: 1 1 auto;\n }\n \n .p-multiselect-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-multiselect-filter-container .p-inputtext {\n width: 100%;\n }\n \n .p-multiselect-close {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n position: relative;\n margin-left: auto;\n }\n \n .p-multiselect-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-fluid .p-multiselect {\n display: flex;\n }\n}\n";
222
- var inlineStyles = {
223
- itemGroup: function itemGroup(_ref7) {
224
- var scrollerOptions = _ref7.scrollerOptions;
225
- return {
226
- height: scrollerOptions.props ? scrollerOptions.props.itemSize : undefined
227
- };
228
- }
229
- };
230
- var MultiSelectBase = ComponentBase.extend({
231
- defaultProps: {
232
- __TYPE: 'MultiSelect',
233
- appendTo: null,
234
- ariaLabelledBy: null,
235
- className: null,
236
- closeIcon: null,
237
- checkboxIcon: null,
238
- dataKey: null,
239
- disabled: false,
240
- display: 'comma',
241
- dropdownIcon: null,
242
- emptyFilterMessage: null,
243
- filter: false,
244
- filterBy: null,
245
- filterInputAutoFocus: true,
246
- filterLocale: undefined,
247
- filterMatchMode: 'contains',
248
- filterPlaceholder: null,
249
- filterTemplate: null,
250
- fixedPlaceholder: false,
251
- flex: false,
252
- id: null,
253
- itemCheckboxIcon: null,
254
- inline: false,
255
- inputId: null,
256
- inputRef: null,
257
- itemClassName: null,
258
- itemTemplate: null,
259
- maxSelectedLabels: null,
260
- name: null,
261
- onClick: null,
262
- onBlur: null,
263
- onChange: null,
264
- onFilter: null,
265
- onFocus: null,
266
- onHide: null,
267
- onSelectAll: null,
268
- onShow: null,
269
- optionDisabled: null,
270
- optionGroupChildren: null,
271
- optionGroupLabel: null,
272
- optionGroupTemplate: null,
273
- optionLabel: null,
274
- optionValue: null,
275
- options: null,
276
- overlayVisible: false,
277
- panelClassName: null,
278
- panelFooterTemplate: null,
279
- panelHeaderTemplate: null,
280
- panelStyle: null,
281
- placeholder: null,
282
- removeIcon: null,
283
- resetFilterOnHide: false,
284
- scrollHeight: '200px',
285
- selectAll: false,
286
- selectedItemTemplate: null,
287
- selectedItemsLabel: '{0} items selected',
288
- selectionLimit: null,
289
- showClear: false,
290
- showSelectAll: true,
291
- style: null,
292
- tabIndex: 0,
293
- tooltip: null,
294
- tooltipOptions: null,
295
- transitionOptions: null,
296
- useOptionAsValue: false,
297
- value: null,
298
- virtualScrollerOptions: null,
299
- children: undefined
300
- },
301
- css: {
302
- classes: classes$1,
303
- styles: styles$1,
304
- inlineStyles: inlineStyles
305
- }
306
- });
307
-
308
- var classes = {
309
- icon: 'p-checkbox-icon p-c',
310
- input: function input(_ref) {
311
- var props = _ref.props,
312
- checked = _ref.checked,
313
- focusedState = _ref.focusedState;
314
- return classNames('p-checkbox-box', {
315
- 'p-highlight': checked,
316
- 'p-disabled': props.disabled,
317
- 'p-focus': focusedState
318
- });
319
- },
320
- root: function root(_ref2) {
321
- var props = _ref2.props,
322
- checked = _ref2.checked,
323
- focusedState = _ref2.focusedState;
324
- return classNames('p-checkbox p-component', {
325
- 'p-checkbox-checked': checked,
326
- 'p-checkbox-disabled': props.disabled,
327
- 'p-checkbox-focused': focusedState
328
- });
329
- }
330
- };
331
- var styles = "\n.p-checkbox {\n display: inline-flex;\n cursor: pointer;\n user-select: none;\n vertical-align: bottom;\n position: relative;\n}\n\n.p-checkbox.p-checkbox-disabled {\n cursor: auto;\n}\n\n.p-checkbox-box {\n display: flex;\n justify-content: center;\n align-items: center;\n} \n";
332
- var CheckboxBase = ComponentBase.extend({
333
- defaultProps: {
334
- __TYPE: 'Checkbox',
335
- autoFocus: false,
336
- checked: false,
337
- className: null,
338
- disabled: false,
339
- falseValue: false,
340
- icon: null,
341
- id: null,
342
- inputId: null,
343
- inputRef: null,
344
- name: null,
345
- onChange: null,
346
- onClick: null,
347
- onContextMenu: null,
348
- onMouseDown: null,
349
- readOnly: false,
350
- required: false,
351
- style: null,
352
- tabIndex: null,
353
- tooltip: null,
354
- tooltipOptions: null,
355
- trueValue: true,
356
- value: null,
357
- children: undefined
358
- },
359
- css: {
360
- classes: classes,
361
- styles: styles
362
- }
363
- });
364
-
365
- function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
366
- function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
367
- var Checkbox = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
368
- var context = React.useContext(PrimeReactContext);
369
- var props = CheckboxBase.getProps(inProps, context);
370
- var _React$useState = React.useState(false),
371
- _React$useState2 = _slicedToArray(_React$useState, 2),
372
- focusedState = _React$useState2[0],
373
- setFocusedState = _React$useState2[1];
374
- var _CheckboxBase$setMeta = CheckboxBase.setMetaData({
375
- props: props,
376
- state: {
377
- focused: focusedState
378
- },
379
- context: {
380
- checked: props.checked === props.trueValue,
381
- disabled: props.disabled
382
- }
383
- }),
384
- ptm = _CheckboxBase$setMeta.ptm,
385
- cx = _CheckboxBase$setMeta.cx,
386
- isUnstyled = _CheckboxBase$setMeta.isUnstyled;
387
- useHandleStyle(CheckboxBase.css.styles, isUnstyled, {
388
- name: 'checkbox',
389
- styled: true
390
- });
391
- var elementRef = React.useRef(null);
392
- var inputRef = React.useRef(props.inputRef);
393
- var _onClick = function onClick(event) {
394
- if (props.disabled || props.readOnly) {
395
- return;
396
- }
397
- if (props.onChange || props.onClick) {
398
- var _checked = isChecked();
399
- var checkboxClicked = event.target instanceof HTMLDivElement || event.target instanceof HTMLSpanElement || event.target instanceof Object;
400
- var isInputToggled = event.target === inputRef.current;
401
- var isCheckboxToggled = checkboxClicked && event.target.checked !== _checked;
402
- if (isInputToggled || isCheckboxToggled) {
403
- var value = _checked ? props.falseValue : props.trueValue;
404
- var eventData = {
405
- originalEvent: event,
406
- value: props.value,
407
- checked: value,
408
- stopPropagation: function stopPropagation() {
409
- event.stopPropagation();
410
- },
411
- preventDefault: function preventDefault() {
412
- event.preventDefault();
413
- },
414
- target: {
415
- type: 'checkbox',
416
- name: props.name,
417
- id: props.id,
418
- value: props.value,
419
- checked: value
420
- }
421
- };
422
- props.onClick && props.onClick(eventData);
423
-
424
- // do not continue if the user defined click wants to prevent
425
- if (event.defaultPrevented) {
426
- return;
427
- }
428
- props.onChange && props.onChange(eventData);
429
- }
430
- DomHandler.focus(inputRef.current);
431
- event.preventDefault();
432
- }
433
- };
434
- var _onFocus = function onFocus() {
435
- setFocusedState(true);
436
- };
437
- var _onBlur = function onBlur() {
438
- setFocusedState(false);
439
- };
440
- var _onKeyDown = function onKeyDown(event) {
441
- if (event.code === 'Space' || event.key === ' ') {
442
- // event.key is for Android support
443
- _onClick(event);
444
- }
445
- };
446
- var isChecked = function isChecked() {
447
- return props.checked === props.trueValue;
448
- };
449
- React.useImperativeHandle(ref, function () {
450
- return {
451
- props: props,
452
- focus: function focus() {
453
- return DomHandler.focus(inputRef.current);
454
- },
455
- getElement: function getElement() {
456
- return elementRef.current;
457
- },
458
- getInput: function getInput() {
459
- return inputRef.current;
460
- }
461
- };
462
- });
463
- React.useEffect(function () {
464
- ObjectUtils.combinedRefs(inputRef, props.inputRef);
465
- }, [inputRef, props.inputRef]);
466
- useUpdateEffect(function () {
467
- inputRef.current.checked = isChecked();
468
- }, [props.checked, props.trueValue]);
469
- useMountEffect(function () {
470
- if (props.autoFocus) {
471
- DomHandler.focus(inputRef.current, props.autoFocus);
472
- }
473
- });
474
- var checked = isChecked();
475
- var hasTooltip = ObjectUtils.isNotEmpty(props.tooltip);
476
- var otherProps = CheckboxBase.getOtherProps(props);
477
- var ariaProps = ObjectUtils.reduceKeys(otherProps, DomHandler.ARIA_PROPS);
478
- var iconProps = mergeProps({
479
- className: cx('icon')
480
- }, ptm('icon'));
481
- var icon = checked ? props.icon || /*#__PURE__*/React.createElement(CheckIcon, iconProps) : null;
482
- var checkboxIcon = IconUtils.getJSXIcon(icon, _objectSpread$4({}, iconProps), {
483
- props: props,
484
- checked: checked
485
- });
486
- var rootProps = mergeProps({
487
- id: props.id,
488
- className: classNames(props.className, cx('root', {
489
- checked: checked,
490
- focusedState: focusedState
491
- })),
492
- style: props.style,
493
- onClick: function onClick(e) {
494
- return _onClick(e);
495
- },
496
- onContextMenu: props.onContextMenu,
497
- onMouseDown: props.onMouseDown
498
- }, otherProps, ptm('root'));
499
- var hiddenInputWrapperProps = mergeProps({
500
- className: 'p-hidden-accessible'
501
- }, ptm('hiddenInputWrapper'));
502
- var hiddenInputProps = mergeProps(_objectSpread$4({
503
- id: props.inputId,
504
- type: 'checkbox',
505
- name: props.name,
506
- tabIndex: props.tabIndex,
507
- defaultChecked: checked,
508
- onFocus: function onFocus(e) {
509
- return _onFocus();
510
- },
511
- onBlur: function onBlur(e) {
512
- return _onBlur();
513
- },
514
- onKeyDown: function onKeyDown(e) {
515
- return _onKeyDown(e);
516
- },
517
- disabled: props.disabled,
518
- readOnly: props.readOnly,
519
- required: props.required
520
- }, ariaProps), ptm('hiddenInput'));
521
- var inputProps = mergeProps({
522
- className: cx('input', {
523
- checked: checked,
524
- focusedState: focusedState
525
- }),
526
- 'data-p-highlight': checked,
527
- 'data-p-disabled': props.disabled,
528
- 'data-p-focus': focusedState
529
- }, ptm('input'));
530
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", _extends({
531
- ref: elementRef
532
- }, rootProps), /*#__PURE__*/React.createElement("div", hiddenInputWrapperProps, /*#__PURE__*/React.createElement("input", _extends({
533
- ref: inputRef
534
- }, hiddenInputProps))), /*#__PURE__*/React.createElement("div", inputProps, checkboxIcon)), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
535
- target: elementRef,
536
- content: props.tooltip
537
- }, props.tooltipOptions, {
538
- pt: ptm('tooltip')
539
- })));
540
- }));
541
- Checkbox.displayName = 'Checkbox';
542
-
543
- function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
544
- function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
545
- var MultiSelectHeader = /*#__PURE__*/React.memo(function (props) {
546
- var ptm = props.ptm,
547
- cx = props.cx,
548
- isUnstyled = props.isUnstyled;
549
- var filterOptions = {
550
- filter: function filter(e) {
551
- return onFilter(e);
552
- },
553
- reset: function reset() {
554
- return props.resetFilter();
555
- }
556
- };
557
- var getPTOptions = function getPTOptions(key, options) {
558
- return ptm(key, _objectSpread$3({
559
- hostName: props.hostName
560
- }, options));
561
- };
562
- var onFilter = function onFilter(event) {
563
- if (props.onFilter) {
564
- props.onFilter({
565
- originalEvent: event,
566
- query: event.target.value
567
- });
568
- }
569
- };
570
- var onSelectAll = function onSelectAll(event) {
571
- if (props.onSelectAll) {
572
- props.onSelectAll({
573
- originalEvent: event,
574
- checked: props.selectAll
575
- });
576
- }
577
- event.preventDefault();
578
- };
579
- var createFilterElement = function createFilterElement() {
580
- var filterIconProps = mergeProps({
581
- className: cx('filterIcon')
582
- }, getPTOptions('filterIcon'));
583
- var icon = props.filterIcon || /*#__PURE__*/React.createElement(SearchIcon, filterIconProps);
584
- var filterIcon = IconUtils.getJSXIcon(icon, _objectSpread$3({}, filterIconProps), {
585
- props: props
586
- });
587
- if (props.filter) {
588
- var filterContainerProps = mergeProps({
589
- className: cx('filterContainer')
590
- }, getPTOptions('filterContainer'));
591
- var content = /*#__PURE__*/React.createElement("div", filterContainerProps, /*#__PURE__*/React.createElement(InputText, {
592
- ref: props.filterRef,
593
- type: "text",
594
- role: "textbox",
595
- value: props.filterValue,
596
- onChange: onFilter,
597
- className: "p-multiselect-filter",
598
- placeholder: props.filterPlaceholder,
599
- pt: ptm('filterInput'),
600
- __parentMetadata: {
601
- parent: props.metaData
602
- }
603
- }), filterIcon);
604
- if (props.filterTemplate) {
605
- var defaultContentOptions = {
606
- className: containerClassName,
607
- element: content,
608
- filterOptions: filterOptions,
609
- onFilter: onFilter,
610
- filterIconClassName: filterIconClassName,
611
- props: props
612
- };
613
- content = ObjectUtils.getJSXElement(props.filterTemplate, defaultContentOptions);
614
- }
615
- return /*#__PURE__*/React.createElement(React.Fragment, null, content);
616
- }
617
- return null;
618
- };
619
- var filterElement = createFilterElement();
620
- var selectAllId = props.id ? props.id + '_selectall' : UniqueComponentId();
621
- var headerSelectAllLabelProps = mergeProps({
622
- htmlFor: selectAllId,
623
- className: cx('headerSelectAllLabel')
624
- }, getPTOptions('headerSelectAllLabel'));
625
- var headerCheckboxIconProps = mergeProps({
626
- className: cx('headerCheckboxIcon')
627
- }, getPTOptions('headerCheckboxIcon'));
628
- var checkedIcon = props.itemCheckboxIcon || /*#__PURE__*/React.createElement(CheckIcon, headerCheckboxIconProps);
629
- var itemCheckboxIcon = IconUtils.getJSXIcon(checkedIcon, _objectSpread$3({}, headerCheckboxIconProps), {
630
- selected: props.selected
631
- });
632
- var checkboxElement = props.showSelectAll && /*#__PURE__*/React.createElement("div", {
633
- className: "p-multiselect-select-all"
634
- }, /*#__PURE__*/React.createElement(Checkbox, {
635
- id: selectAllId,
636
- checked: props.selectAll,
637
- onChange: onSelectAll,
638
- role: "checkbox",
639
- "aria-checked": props.selectAll,
640
- icon: itemCheckboxIcon,
641
- pt: ptm('headercheckbox'),
642
- unstyled: isUnstyled()
643
- }), !props.filter && /*#__PURE__*/React.createElement("label", headerSelectAllLabelProps, props.selectAllLabel));
644
- var iconProps = mergeProps({
645
- className: cx('closeIcon'),
646
- 'aria-hidden': true
647
- }, getPTOptions('closeIcon'));
648
- var icon = props.closeIcon || /*#__PURE__*/React.createElement(TimesIcon, iconProps);
649
- var closeIcon = IconUtils.getJSXIcon(icon, _objectSpread$3({}, iconProps), {
650
- props: props
651
- });
652
- var headerProps = mergeProps({
653
- className: cx('header')
654
- }, getPTOptions('header'));
655
- var closeButtonProps = mergeProps({
656
- type: 'button',
657
- className: cx('closeButton'),
658
- 'aria-label': localeOption('close'),
659
- onClick: props.onClose
660
- }, getPTOptions('closeButton'));
661
- var closeElement = /*#__PURE__*/React.createElement("button", closeButtonProps, closeIcon, /*#__PURE__*/React.createElement(Ripple, null));
662
- var element = /*#__PURE__*/React.createElement("div", headerProps, checkboxElement, filterElement, closeElement);
663
- if (props.template) {
664
- var defaultOptions = {
665
- className: 'p-multiselect-header',
666
- checkboxElement: checkboxElement,
667
- checked: props.selectAll,
668
- onChange: onSelectAll,
669
- filterElement: filterElement,
670
- closeElement: closeElement,
671
- closeElementClassName: 'p-multiselect-close p-link',
672
- closeIconClassName: 'p-multiselect-close-icon',
673
- onCloseClick: props.onClose,
674
- element: element,
675
- itemCheckboxIcon: itemCheckboxIcon,
676
- props: props
677
- };
678
- return ObjectUtils.getJSXElement(props.template, defaultOptions);
679
- }
680
- return element;
681
- });
682
- MultiSelectHeader.displayName = 'MultiSelectHeader';
683
-
684
- function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
685
- function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
686
- var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
687
- var ptm = props.ptm,
688
- cx = props.cx;
689
- var getPTOptions = function getPTOptions(key) {
690
- return ptm(key, {
691
- hostName: props.hostName,
692
- context: {
693
- selected: props.selected
694
- }
695
- });
696
- };
697
- var onClick = function onClick(event) {
698
- if (props.onClick) {
699
- props.onClick({
700
- originalEvent: event,
701
- option: props.option
702
- });
703
- }
704
- event.preventDefault();
705
- };
706
- var onKeyDown = function onKeyDown(event) {
707
- if (props.onKeyDown) {
708
- props.onKeyDown({
709
- originalEvent: event,
710
- option: props.option
711
- });
712
- }
713
- };
714
- var checkboxIconProps = mergeProps({
715
- className: cx('checkboxIcon')
716
- }, getPTOptions('checkboxIcon'));
717
- var icon = props.checkboxIcon || /*#__PURE__*/React.createElement(CheckIcon, checkboxIconProps);
718
- var checkboxIcon = props.selected ? IconUtils.getJSXIcon(icon, _objectSpread$2({}, checkboxIconProps), {
719
- selected: props.selected
720
- }) : null;
721
- var content = props.template ? ObjectUtils.getJSXElement(props.template, props.option) : props.label;
722
- var tabIndex = props.disabled ? null : props.tabIndex || 0;
723
- var checkboxContainerProps = mergeProps({
724
- className: cx('checkboxContainer')
725
- }, getPTOptions('checkboxContainer'));
726
- var checkboxProps = mergeProps({
727
- className: cx('checkbox', {
728
- itemProps: props
729
- }),
730
- 'data-p-highlight': props.selected
731
- }, getPTOptions('checkbox'));
732
- var itemProps = mergeProps({
733
- className: classNames(props.className, props.option.className, cx('item', {
734
- itemProps: props
735
- })),
736
- style: props.style,
737
- onClick: onClick,
738
- tabIndex: tabIndex,
739
- onKeyDown: onKeyDown,
740
- role: 'option',
741
- 'aria-selected': props.selected,
742
- 'data-p-highlight': props.selected,
743
- 'data-p-disabled': props.disabled
744
- }, getPTOptions('item'));
745
- return /*#__PURE__*/React.createElement("li", itemProps, /*#__PURE__*/React.createElement("div", checkboxContainerProps, /*#__PURE__*/React.createElement("div", checkboxProps, checkboxIcon)), /*#__PURE__*/React.createElement("span", null, content), /*#__PURE__*/React.createElement(Ripple, null));
746
- });
747
- MultiSelectItem.displayName = 'MultiSelectItem';
748
-
749
- function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
750
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
751
- var MultiSelectPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (props, ref) {
752
- var virtualScrollerRef = React.useRef(null);
753
- var filterInputRef = React.useRef(null);
754
- var context = React.useContext(PrimeReactContext);
755
- var ptm = props.ptm,
756
- cx = props.cx,
757
- sx = props.sx,
758
- isUnstyled = props.isUnstyled;
759
- var getPTOptions = function getPTOptions(key, options) {
760
- return ptm(key, _objectSpread$1({
761
- hostName: props.hostName
762
- }, options));
763
- };
764
- var onEnter = function onEnter() {
765
- props.onEnter(function () {
766
- if (virtualScrollerRef.current) {
767
- var selectedIndex = props.getSelectedOptionIndex();
768
- if (selectedIndex !== -1) {
769
- setTimeout(function () {
770
- return virtualScrollerRef.current.scrollToIndex(selectedIndex);
771
- }, 0);
772
- }
773
- }
774
- });
775
- };
776
- var onEntered = function onEntered() {
777
- props.onEntered(function () {
778
- if (props.filter && props.filterInputAutoFocus && filterInputRef.current) {
779
- DomHandler.focus(filterInputRef.current, false);
780
- }
781
- });
782
- };
783
- var onFilterInputChange = function onFilterInputChange(event) {
784
- if (virtualScrollerRef.current) {
785
- virtualScrollerRef.current.scrollToIndex(0);
786
- }
787
- props.onFilterInputChange && props.onFilterInputChange(event);
788
- };
789
- var isEmptyFilter = function isEmptyFilter() {
790
- return !(props.visibleOptions && props.visibleOptions.length) && props.hasFilter;
791
- };
792
- var createHeader = function createHeader() {
793
- return /*#__PURE__*/React.createElement(MultiSelectHeader, {
794
- hostName: props.hostName,
795
- id: props.id,
796
- filter: props.filter,
797
- filterRef: filterInputRef,
798
- filterValue: props.filterValue,
799
- filterTemplate: props.filterTemplate,
800
- onFilter: onFilterInputChange,
801
- filterPlaceholder: props.filterPlaceholder,
802
- onClose: props.onCloseClick,
803
- showSelectAll: props.showSelectAll,
804
- selectAll: props.isAllSelected(),
805
- selectAllLabel: props.selectAllLabel,
806
- onSelectAll: props.onSelectAll,
807
- template: props.panelHeaderTemplate,
808
- resetFilter: props.resetFilter,
809
- closeIcon: props.closeIcon,
810
- filterIcon: props.filterIcon,
811
- itemCheckboxIcon: props.itemCheckboxIcon,
812
- ptm: ptm,
813
- cx: cx,
814
- isUnstyled: isUnstyled,
815
- metaData: props.metaData
816
- });
817
- };
818
- var createFooter = function createFooter() {
819
- if (props.panelFooterTemplate) {
820
- var content = ObjectUtils.getJSXElement(props.panelFooterTemplate, props, props.onOverlayHide);
821
- return /*#__PURE__*/React.createElement("div", {
822
- className: "p-multiselect-footer"
823
- }, content);
824
- }
825
- return null;
826
- };
827
- var createGroupChildren = function createGroupChildren(optionGroup, style) {
828
- var groupChildren = props.getOptionGroupChildren(optionGroup);
829
- return groupChildren.map(function (option, j) {
830
- var optionLabel = props.getOptionLabel(option);
831
- var optionKey = j + '_' + props.getOptionRenderKey(option);
832
- var disabled = props.isOptionDisabled(option);
833
- var tabIndex = disabled ? null : props.tabIndex || 0;
834
- var selected = props.isSelected(option);
835
- return /*#__PURE__*/React.createElement(MultiSelectItem, {
836
- hostName: props.hostName,
837
- key: optionKey,
838
- label: optionLabel,
839
- option: option,
840
- style: style,
841
- template: props.itemTemplate,
842
- selected: selected,
843
- onClick: props.onOptionSelect,
844
- onKeyDown: props.onOptionKeyDown,
845
- tabIndex: tabIndex,
846
- disabled: disabled,
847
- className: props.itemClassName,
848
- checkboxIcon: props.checkboxIcon,
849
- ptm: ptm,
850
- cx: cx
851
- });
852
- });
853
- };
854
- var createEmptyFilter = function createEmptyFilter() {
855
- var emptyFilterMessage = ObjectUtils.getJSXElement(props.emptyFilterMessage, props) || localeOption('emptyFilterMessage');
856
- var emptyMessageProps = mergeProps({
857
- className: cx('emptyMessage')
858
- }, getPTOptions('emptyMessage'));
859
- return /*#__PURE__*/React.createElement("li", emptyMessageProps, emptyFilterMessage);
860
- };
861
- var createEmptyContent = function createEmptyContent() {
862
- var emptyMessage = ObjectUtils.getJSXElement(props.emptyMessage, props) || localeOption('emptyMessage');
863
- var emptyMessageProps = mergeProps({
864
- className: cx('emptyMessage')
865
- }, getPTOptions('emptyMessage'));
866
- return /*#__PURE__*/React.createElement("li", emptyMessageProps, emptyMessage);
867
- };
868
- var createItem = function createItem(option, index) {
869
- var scrollerOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
870
- var style = {
871
- height: scrollerOptions.props ? scrollerOptions.props.itemSize : undefined
872
- };
873
- if (props.optionGroupLabel) {
874
- var groupContent = props.optionGroupTemplate ? ObjectUtils.getJSXElement(props.optionGroupTemplate, option, index) : props.getOptionGroupLabel(option);
875
- var groupChildrenContent = createGroupChildren(option, style);
876
- var key = index + '_' + props.getOptionGroupRenderKey(option);
877
- var itemGroupProps = mergeProps({
878
- className: cx('itemGroup'),
879
- style: sx('itemGroup', {
880
- scrollerOptions: scrollerOptions
881
- })
882
- }, getPTOptions('itemGroup'));
883
- return /*#__PURE__*/React.createElement(React.Fragment, {
884
- key: key
885
- }, /*#__PURE__*/React.createElement("li", itemGroupProps, groupContent), groupChildrenContent);
886
- } else {
887
- var optionLabel = props.getOptionLabel(option);
888
- var optionKey = index + '_' + props.getOptionRenderKey(option);
889
- var disabled = props.isOptionDisabled(option);
890
- var tabIndex = disabled ? null : props.tabIndex || 0;
891
- var selected = props.isSelected(option);
892
- return /*#__PURE__*/React.createElement(MultiSelectItem, {
893
- hostName: props.hostName,
894
- key: optionKey,
895
- label: optionLabel,
896
- option: option,
897
- style: style,
898
- template: props.itemTemplate,
899
- selected: selected,
900
- onClick: props.onOptionSelect,
901
- onKeyDown: props.onOptionKeyDown,
902
- tabIndex: tabIndex,
903
- disabled: disabled,
904
- className: props.itemClassName,
905
- checkboxIcon: props.checkboxIcon,
906
- ptm: ptm,
907
- cx: cx
908
- });
909
- }
910
- };
911
- var createItems = function createItems() {
912
- if (ObjectUtils.isNotEmpty(props.visibleOptions)) {
913
- return props.visibleOptions.map(createItem);
914
- } else {
915
- return props.hasFilter ? createEmptyFilter() : createEmptyContent();
916
- }
917
- };
918
- var createContent = function createContent() {
919
- if (props.virtualScrollerOptions) {
920
- var virtualScrollerProps = _objectSpread$1(_objectSpread$1({}, props.virtualScrollerOptions), {
921
- style: _objectSpread$1(_objectSpread$1({}, props.virtualScrollerOptions.style), {
922
- height: props.scrollHeight
923
- }),
924
- className: classNames('p-multiselect-items-wrapper', props.virtualScrollerOptions.className),
925
- items: props.visibleOptions,
926
- autoSize: true,
927
- onLazyLoad: function onLazyLoad(event) {
928
- return props.virtualScrollerOptions.onLazyLoad(_objectSpread$1(_objectSpread$1({}, event), {
929
- filter: props.filterValue
930
- }));
931
- },
932
- itemTemplate: function itemTemplate(item, options) {
933
- return item && createItem(item, options.index, options);
934
- },
935
- contentTemplate: function contentTemplate(options) {
936
- var content = isEmptyFilter() ? createEmptyFilter() : options.children;
937
- var listProps = mergeProps({
938
- ref: options.contentRef,
939
- style: options.style,
940
- className: classNames(options.className, cx('list', {
941
- virtualScrollerProps: props.virtualScrollerOptions
942
- })),
943
- role: 'listbox',
944
- 'aria-multiselectable': true
945
- }, getPTOptions('list'));
946
- return /*#__PURE__*/React.createElement("ul", listProps, content);
947
- }
948
- });
949
- return /*#__PURE__*/React.createElement(VirtualScroller, _extends({
950
- ref: virtualScrollerRef
951
- }, virtualScrollerProps, {
952
- pt: ptm('virtualScroller'),
953
- __parentMetadata: {
954
- parent: props.metaData
955
- }
956
- }));
957
- } else {
958
- var items = createItems();
959
- var wrapperProps = mergeProps({
960
- className: cx('wrapper'),
961
- style: {
962
- maxHeight: props.scrollHeight
963
- }
964
- }, getPTOptions('wrapper'));
965
- var listProps = mergeProps({
966
- className: cx('list'),
967
- role: 'listbox',
968
- 'aria-multiselectable': true
969
- }, getPTOptions('list'));
970
- return /*#__PURE__*/React.createElement("div", wrapperProps, /*#__PURE__*/React.createElement("ul", listProps, items));
971
- }
972
- };
973
- var createElement = function createElement() {
974
- var allowOptionSelect = props.allowOptionSelect();
975
- var header = createHeader();
976
- var content = createContent();
977
- var footer = createFooter();
978
- var panelProps = mergeProps({
979
- className: classNames(props.panelClassName, cx('panel', {
980
- panelProps: props,
981
- context: context,
982
- allowOptionSelect: allowOptionSelect
983
- })),
984
- style: props.panelStyle,
985
- onClick: props.onClick
986
- }, getPTOptions('panel'));
987
- if (props.inline) {
988
- return /*#__PURE__*/React.createElement("div", _extends({
989
- ref: ref
990
- }, panelProps), content, footer);
991
- }
992
- var transitionProps = mergeProps({
993
- classNames: cx('transition'),
994
- "in": props["in"],
995
- timeout: {
996
- enter: 120,
997
- exit: 100
998
- },
999
- options: props.transitionOptions,
1000
- unmountOnExit: true,
1001
- onEnter: onEnter,
1002
- onEntered: onEntered,
1003
- onExit: props.onExit,
1004
- onExited: props.onExited
1005
- }, getPTOptions('transition'));
1006
- return /*#__PURE__*/React.createElement(CSSTransition, _extends({
1007
- nodeRef: ref
1008
- }, transitionProps), /*#__PURE__*/React.createElement("div", _extends({
1009
- ref: ref
1010
- }, panelProps), header, content, footer));
1011
- };
1012
- var element = createElement();
1013
- if (props.inline) return element;
1014
- return /*#__PURE__*/React.createElement(Portal, {
1015
- element: element,
1016
- appendTo: props.appendTo
1017
- });
1018
- }));
1019
- MultiSelectPanel.displayName = 'MultiSelectPanel';
1020
-
1021
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1022
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1023
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } 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 normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
1024
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
1025
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
1026
- var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
1027
- var context = React.useContext(PrimeReactContext);
1028
- var props = MultiSelectBase.getProps(inProps, context);
1029
- var _React$useState = React.useState(''),
1030
- _React$useState2 = _slicedToArray(_React$useState, 2),
1031
- filterState = _React$useState2[0],
1032
- setFilterState = _React$useState2[1];
1033
- var _React$useState3 = React.useState(false),
1034
- _React$useState4 = _slicedToArray(_React$useState3, 2),
1035
- focusedState = _React$useState4[0],
1036
- setFocusedState = _React$useState4[1];
1037
- var _React$useState5 = React.useState(props.inline),
1038
- _React$useState6 = _slicedToArray(_React$useState5, 2),
1039
- overlayVisibleState = _React$useState6[0],
1040
- setOverlayVisibleState = _React$useState6[1];
1041
- var elementRef = React.useRef(null);
1042
- var inputRef = React.useRef(props.inputRef);
1043
- var labelRef = React.useRef(null);
1044
- var overlayRef = React.useRef(null);
1045
- var hasFilter = filterState && filterState.trim().length > 0;
1046
- var empty = ObjectUtils.isEmpty(props.value);
1047
- var equalityKey = props.optionValue ? null : props.dataKey;
1048
- var metaData = {
1049
- props: props,
1050
- state: {
1051
- filterState: filterState,
1052
- focused: focusedState,
1053
- overlayVisible: overlayVisibleState
1054
- }
1055
- };
1056
- var _MultiSelectBase$setM = MultiSelectBase.setMetaData(metaData),
1057
- ptm = _MultiSelectBase$setM.ptm,
1058
- cx = _MultiSelectBase$setM.cx,
1059
- sx = _MultiSelectBase$setM.sx,
1060
- isUnstyled = _MultiSelectBase$setM.isUnstyled;
1061
- useHandleStyle(MultiSelectBase.css.styles, isUnstyled, {
1062
- name: 'multiselect'
1063
- });
1064
- var _useOverlayListener = useOverlayListener({
1065
- target: elementRef,
1066
- overlay: overlayRef,
1067
- listener: function listener(event, _ref) {
1068
- var type = _ref.type,
1069
- valid = _ref.valid;
1070
- if (valid) {
1071
- if (type === 'outside') {
1072
- !isClearClicked(event) && !isSelectAllClicked(event) && hide();
1073
- } else {
1074
- hide();
1075
- }
1076
- }
1077
- },
1078
- when: overlayVisibleState
1079
- }),
1080
- _useOverlayListener2 = _slicedToArray(_useOverlayListener, 2),
1081
- bindOverlayListener = _useOverlayListener2[0],
1082
- unbindOverlayListener = _useOverlayListener2[1];
1083
- var onPanelClick = function onPanelClick(event) {
1084
- OverlayService.emit('overlay-click', {
1085
- originalEvent: event,
1086
- target: elementRef.current
1087
- });
1088
- };
1089
- var allowOptionSelect = function allowOptionSelect() {
1090
- return !props.selectionLimit || !props.value || props.value && props.value.length < props.selectionLimit;
1091
- };
1092
- var onOptionSelect = function onOptionSelect(event) {
1093
- var originalEvent = event.originalEvent,
1094
- option = event.option;
1095
- if (props.disabled || isOptionDisabled(option)) {
1096
- return;
1097
- }
1098
- var optionValue = getOptionValue(option);
1099
- var isUsed = isOptionValueUsed(option);
1100
- var selected = isSelected(option);
1101
- var allowSelect = allowOptionSelect();
1102
- if (selected) {
1103
- updateModel(originalEvent, props.value.filter(function (val) {
1104
- return !ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
1105
- }), option);
1106
- } else if (allowSelect) {
1107
- updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]), option);
1108
- }
1109
- };
1110
- var onOptionKeyDown = function onOptionKeyDown(event) {
1111
- var originalEvent = event.originalEvent;
1112
- var listItem = originalEvent.currentTarget;
1113
- switch (originalEvent.which) {
1114
- //down
1115
- case 40:
1116
- var nextItem = findNextItem(listItem);
1117
- nextItem && nextItem.focus();
1118
- originalEvent.preventDefault();
1119
- break;
1120
-
1121
- //up
1122
- case 38:
1123
- var prevItem = findPrevItem(listItem);
1124
- prevItem && prevItem.focus();
1125
- originalEvent.preventDefault();
1126
- break;
1127
-
1128
- //enter and space
1129
- case 13:
1130
- case 32:
1131
- onOptionSelect(event);
1132
- originalEvent.preventDefault();
1133
- break;
1134
-
1135
- //escape
1136
- case 27:
1137
- hide();
1138
- DomHandler.focus(inputRef.current);
1139
- break;
1140
- }
1141
- };
1142
- var findNextItem = function findNextItem(item) {
1143
- var nextItem = item.nextElementSibling;
1144
- return nextItem ? DomHandler.getAttribute(nextItem, 'data-p-disabled') === true || DomHandler.getAttribute(nextItem, 'data-pc-section') === 'itemgroup' ? findNextItem(nextItem) : nextItem : null;
1145
- };
1146
- var findPrevItem = function findPrevItem(item) {
1147
- var prevItem = item.previousElementSibling;
1148
- return prevItem ? DomHandler.getAttribute(prevItem, 'data-p-disabled') === true || DomHandler.getAttribute(prevItem, 'data-pc-section') === 'itemgroup' ? findPrevItem(prevItem) : prevItem : null;
1149
- };
1150
- var onClick = function onClick(event) {
1151
- if (!props.inline && !props.disabled && !isPanelClicked(event) && DomHandler.getAttribute(event.target, 'data-pc-section') !== 'removetokenicon' && !isClearClicked(event)) {
1152
- overlayVisibleState ? hide() : show();
1153
- DomHandler.focus(inputRef.current);
1154
- event.preventDefault();
1155
- }
1156
- };
1157
- var onKeyDown = function onKeyDown(event) {
1158
- switch (event.which) {
1159
- //down
1160
- case 40:
1161
- if (props.inline) break;
1162
- if (!overlayVisibleState && event.altKey) {
1163
- show();
1164
- event.preventDefault();
1165
- }
1166
- break;
1167
-
1168
- //space
1169
- case 32:
1170
- if (props.inline) break;
1171
- overlayVisibleState ? hide() : show();
1172
- event.preventDefault();
1173
- break;
1174
-
1175
- //escape
1176
- case 27:
1177
- if (props.inline) break;
1178
- hide();
1179
- break;
1180
-
1181
- //tab
1182
- case 9:
1183
- if (overlayVisibleState) {
1184
- var firstFocusableElement = DomHandler.getFirstFocusableElement(overlayRef.current);
1185
- if (firstFocusableElement) {
1186
- firstFocusableElement.focus();
1187
- event.preventDefault();
1188
- }
1189
- }
1190
- break;
1191
- }
1192
- };
1193
- var onSelectAll = function onSelectAll(event) {
1194
- if (props.onSelectAll) {
1195
- props.onSelectAll(event);
1196
- } else {
1197
- var value = null;
1198
- if (event.checked) {
1199
- value = [];
1200
- if (visibleOptions) {
1201
- var selectedOptions = visibleOptions.filter(function (option) {
1202
- return isOptionDisabled(option) && isSelected(option);
1203
- });
1204
- value = selectedOptions.map(function (option) {
1205
- return getOptionValue(option);
1206
- });
1207
- }
1208
- } else if (visibleOptions) {
1209
- var options = visibleOptions.filter(function (option) {
1210
- return !isOptionDisabled(option) || isSelected(option);
1211
- });
1212
- if (props.optionGroupLabel) {
1213
- value = [];
1214
- options.forEach(function (optionGroup) {
1215
- return value = [].concat(_toConsumableArray(value), _toConsumableArray(getOptionGroupChildren(optionGroup).filter(function (option) {
1216
- return !isOptionDisabled(option);
1217
- }).map(function (option) {
1218
- return getOptionValue(option);
1219
- })));
1220
- });
1221
- } else {
1222
- value = options.map(function (option) {
1223
- return getOptionValue(option);
1224
- });
1225
- }
1226
- }
1227
- updateModel(event.originalEvent, value, value);
1228
- }
1229
- };
1230
- var updateModel = function updateModel(event, value, selectedOption) {
1231
- if (props.onChange) {
1232
- props.onChange({
1233
- originalEvent: event,
1234
- value: value,
1235
- selectedOption: selectedOption,
1236
- stopPropagation: function stopPropagation() {
1237
- event.stopPropagation();
1238
- },
1239
- preventDefault: function preventDefault() {
1240
- event.preventDefault();
1241
- },
1242
- target: {
1243
- name: props.name,
1244
- id: props.id,
1245
- value: value
1246
- }
1247
- });
1248
- }
1249
- };
1250
- var onFilterInputChange = function onFilterInputChange(event) {
1251
- var filter = event.query;
1252
- setFilterState(filter);
1253
- if (props.onFilter) {
1254
- props.onFilter({
1255
- originalEvent: event,
1256
- filter: filter
1257
- });
1258
- }
1259
- };
1260
- var resetFilter = function resetFilter() {
1261
- setFilterState('');
1262
- props.onFilter && props.onFilter({
1263
- filter: ''
1264
- });
1265
- };
1266
- var scrollInView = function scrollInView() {
1267
- var highlightItem = DomHandler.findSingle(overlayRef.current, 'li.p-highlight');
1268
- if (highlightItem && highlightItem.scrollIntoView) {
1269
- highlightItem.scrollIntoView({
1270
- block: 'nearest',
1271
- inline: 'nearest'
1272
- });
1273
- }
1274
- };
1275
- var show = function show() {
1276
- setOverlayVisibleState(true);
1277
- };
1278
- var hide = function hide() {
1279
- setOverlayVisibleState(false);
1280
- };
1281
- var onOverlayEnter = function onOverlayEnter(callback) {
1282
- ZIndexUtils.set('overlay', overlayRef.current, context && context.autoZIndex || PrimeReact.autoZIndex, context && context.zIndex['overlay'] || PrimeReact.zIndex['overlay']);
1283
- DomHandler.addStyles(overlayRef.current, {
1284
- position: 'absolute',
1285
- top: '0',
1286
- left: '0'
1287
- });
1288
- alignOverlay();
1289
- scrollInView();
1290
- callback && callback();
1291
- };
1292
- var onOverlayEntered = function onOverlayEntered(callback) {
1293
- callback && callback();
1294
- bindOverlayListener();
1295
- props.onShow && props.onShow();
1296
- };
1297
- var onOverlayExit = function onOverlayExit() {
1298
- unbindOverlayListener();
1299
- };
1300
- var onOverlayExited = function onOverlayExited() {
1301
- if (props.filter && props.resetFilterOnHide) {
1302
- resetFilter();
1303
- }
1304
- ZIndexUtils.clear(overlayRef.current);
1305
- props.onHide && props.onHide();
1306
- };
1307
- var alignOverlay = function alignOverlay() {
1308
- DomHandler.alignOverlay(overlayRef.current, labelRef.current.parentElement, props.appendTo || context && context.appendTo || PrimeReact.appendTo);
1309
- };
1310
- var isClearClicked = function isClearClicked(event) {
1311
- return DomHandler.getAttribute(event.target, 'data-pc-section') === 'clearicon';
1312
- };
1313
- var isSelectAllClicked = function isSelectAllClicked(event) {
1314
- return DomHandler.getAttribute(event.target, 'data-pc-section') === 'headercheckboxcontainer';
1315
- };
1316
- var isPanelClicked = function isPanelClicked(event) {
1317
- return overlayRef.current && overlayRef.current.contains(event.target);
1318
- };
1319
- var onCloseClick = function onCloseClick(event) {
1320
- hide();
1321
- DomHandler.focus(inputRef.current);
1322
- event.preventDefault();
1323
- event.stopPropagation();
1324
- };
1325
- var getSelectedOptionIndex = function getSelectedOptionIndex() {
1326
- if (props.value != null && props.options) {
1327
- if (props.optionGroupLabel) {
1328
- var groupIndex = 0;
1329
- var optionIndex = props.options.findIndex(function (optionGroup, i) {
1330
- return (groupIndex = i) && findOptionIndexInList(props.value, getOptionGroupChildren(optionGroup)) !== -1;
1331
- });
1332
- return optionIndex !== -1 ? {
1333
- group: groupIndex,
1334
- option: optionIndex
1335
- } : -1;
1336
- } else {
1337
- return findOptionIndexInList(props.value, props.options);
1338
- }
1339
- }
1340
- return -1;
1341
- };
1342
- var findOptionIndexInList = function findOptionIndexInList(value, list) {
1343
- return list.findIndex(function (item) {
1344
- return value.some(function (val) {
1345
- return ObjectUtils.equals(val, getOptionValue(item), equalityKey);
1346
- });
1347
- });
1348
- };
1349
- var isSelected = function isSelected(option) {
1350
- if (props.value) {
1351
- var optionValue = getOptionValue(option);
1352
- var isUsed = isOptionValueUsed(option);
1353
- return props.value.some(function (val) {
1354
- return ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
1355
- });
1356
- }
1357
- return false;
1358
- };
1359
- var getLabelByValue = function getLabelByValue(val) {
1360
- var option;
1361
- if (props.options) {
1362
- if (props.optionGroupLabel) {
1363
- var _iterator = _createForOfIteratorHelper(props.options),
1364
- _step;
1365
- try {
1366
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
1367
- var optionGroup = _step.value;
1368
- option = findOptionByValue(val, getOptionGroupChildren(optionGroup));
1369
- if (option) {
1370
- break;
1371
- }
1372
- }
1373
- } catch (err) {
1374
- _iterator.e(err);
1375
- } finally {
1376
- _iterator.f();
1377
- }
1378
- } else {
1379
- option = findOptionByValue(val, props.value);
1380
- }
1381
- }
1382
- return option ? getOptionLabel(option) : null;
1383
- };
1384
- var findOptionByValue = function findOptionByValue(val, list) {
1385
- return list.find(function (option) {
1386
- return ObjectUtils.equals(getOptionValue(option), val, equalityKey);
1387
- });
1388
- };
1389
- var onFocus = function onFocus(event) {
1390
- setFocusedState(true);
1391
- props.onFocus && props.onFocus(event);
1392
- };
1393
- var onBlur = function onBlur(event) {
1394
- setFocusedState(false);
1395
- props.onBlur && props.onBlur(event);
1396
- };
1397
- var isAllSelected = function isAllSelected() {
1398
- if (props.onSelectAll) {
1399
- return props.selectAll;
1400
- } else {
1401
- if (ObjectUtils.isEmpty(visibleOptions)) {
1402
- return false;
1403
- }
1404
- var options = visibleOptions.filter(function (option) {
1405
- return !isOptionDisabled(option);
1406
- });
1407
- if (props.optionGroupLabel) {
1408
- var areAllSelected = true;
1409
- var _iterator2 = _createForOfIteratorHelper(options),
1410
- _step2;
1411
- try {
1412
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1413
- var optionGroup = _step2.value;
1414
- var visibleOptionsGroupChildren = getOptionGroupChildren(optionGroup).filter(function (option) {
1415
- return !isOptionDisabled(option);
1416
- });
1417
- if (visibleOptionsGroupChildren.some(function (option) {
1418
- return !isSelected(option);
1419
- }) === true) {
1420
- areAllSelected = false;
1421
- }
1422
- }
1423
- } catch (err) {
1424
- _iterator2.e(err);
1425
- } finally {
1426
- _iterator2.f();
1427
- }
1428
- return areAllSelected;
1429
- } else {
1430
- return !options.some(function (option) {
1431
- return !isSelected(option);
1432
- });
1433
- }
1434
- }
1435
- };
1436
- var getOptionLabel = function getOptionLabel(option) {
1437
- return props.optionLabel ? ObjectUtils.resolveFieldData(option, props.optionLabel) : option && option['label'] !== undefined ? option['label'] : option;
1438
- };
1439
- var getOptionValue = function getOptionValue(option) {
1440
- if (props.useOptionAsValue) {
1441
- return option;
1442
- }
1443
- if (props.optionValue) {
1444
- var data = ObjectUtils.resolveFieldData(option, props.optionValue);
1445
- return data !== null ? data : option;
1446
- }
1447
- return option && option['value'] !== undefined ? option['value'] : option;
1448
- };
1449
- var getOptionRenderKey = function getOptionRenderKey(option) {
1450
- return props.dataKey ? ObjectUtils.resolveFieldData(option, props.dataKey) : getOptionLabel(option);
1451
- };
1452
- var getOptionGroupRenderKey = function getOptionGroupRenderKey(optionGroup) {
1453
- return ObjectUtils.resolveFieldData(optionGroup, props.optionGroupLabel);
1454
- };
1455
- var getOptionGroupLabel = function getOptionGroupLabel(optionGroup) {
1456
- return ObjectUtils.resolveFieldData(optionGroup, props.optionGroupLabel);
1457
- };
1458
- var getOptionGroupChildren = function getOptionGroupChildren(optionGroup) {
1459
- return ObjectUtils.resolveFieldData(optionGroup, props.optionGroupChildren);
1460
- };
1461
- var isOptionDisabled = function isOptionDisabled(option) {
1462
- if (props.optionDisabled) {
1463
- return ObjectUtils.isFunction(props.optionDisabled) ? props.optionDisabled(option) : ObjectUtils.resolveFieldData(option, props.optionDisabled);
1464
- }
1465
- return option && option['disabled'] !== undefined ? option['disabled'] : false;
1466
- };
1467
- var isOptionValueUsed = function isOptionValueUsed(option) {
1468
- return !props.useOptionAsValue && props.optionValue || option && option['value'] !== undefined;
1469
- };
1470
- var removeChip = function removeChip(event, item) {
1471
- var value = props.value.filter(function (val) {
1472
- return !ObjectUtils.equals(val, item, equalityKey);
1473
- });
1474
- updateModel(event, value, item);
1475
- };
1476
- var getSelectedItemsLabel = function getSelectedItemsLabel() {
1477
- var pattern = /{(.*?)}/;
1478
- if (pattern.test(props.selectedItemsLabel)) {
1479
- return props.selectedItemsLabel.replace(props.selectedItemsLabel.match(pattern)[0], props.value.length + '');
1480
- }
1481
- return props.selectedItemsLabel;
1482
- };
1483
- var getLabel = function getLabel() {
1484
- var label;
1485
- if (!empty && !props.fixedPlaceholder) {
1486
- if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && props.value.length > props.maxSelectedLabels) {
1487
- return getSelectedItemsLabel();
1488
- } else {
1489
- return props.value.reduce(function (acc, value, index) {
1490
- return acc + (index !== 0 ? ',' : '') + getLabelByValue(value);
1491
- }, '');
1492
- }
1493
- }
1494
- return label;
1495
- };
1496
- var getLabelContent = function getLabelContent() {
1497
- if (props.selectedItemTemplate) {
1498
- if (!empty) {
1499
- if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && props.value.length > props.maxSelectedLabels) {
1500
- return getSelectedItemsLabel();
1501
- } else {
1502
- return props.value.map(function (val, index) {
1503
- var item = ObjectUtils.getJSXElement(props.selectedItemTemplate, val);
1504
- return /*#__PURE__*/React.createElement(React.Fragment, {
1505
- key: index
1506
- }, item);
1507
- });
1508
- }
1509
- } else {
1510
- return ObjectUtils.getJSXElement(props.selectedItemTemplate);
1511
- }
1512
- } else {
1513
- if (props.display === 'chip' && !empty) {
1514
- var value = props.value.slice(0, props.maxSelectedLabels || props.value.length);
1515
- return value.map(function (val, i) {
1516
- var label = getLabelByValue(val);
1517
- var iconProps = mergeProps({
1518
- key: i,
1519
- className: cx('removeTokenIcon'),
1520
- onClick: function onClick(e) {
1521
- return removeChip(e, val);
1522
- }
1523
- }, ptm('removeTokenIcon'));
1524
- var icon = !props.disabled && (props.removeIcon ? IconUtils.getJSXIcon(props.removeIcon, _objectSpread({}, iconProps), {
1525
- props: props
1526
- }) : /*#__PURE__*/React.createElement(TimesCircleIcon, iconProps));
1527
- var tokenProps = mergeProps({
1528
- className: cx('token')
1529
- }, ptm('token'));
1530
- var tokenLabelProps = mergeProps({
1531
- key: label + i,
1532
- className: cx('tokenLabel')
1533
- }, ptm('tokenLabel'));
1534
- return /*#__PURE__*/React.createElement("div", _extends({}, tokenProps, {
1535
- key: label
1536
- }), /*#__PURE__*/React.createElement("span", tokenLabelProps, label), icon);
1537
- });
1538
- }
1539
- return getLabel();
1540
- }
1541
- };
1542
- var getVisibleOptions = function getVisibleOptions() {
1543
- if (hasFilter) {
1544
- var filterValue = filterState.trim().toLocaleLowerCase(props.filterLocale);
1545
- var searchFields = props.filterBy ? props.filterBy.split(',') : [props.optionLabel || 'label'];
1546
- if (props.optionGroupLabel) {
1547
- var filteredGroups = [];
1548
- var _iterator3 = _createForOfIteratorHelper(props.options),
1549
- _step3;
1550
- try {
1551
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
1552
- var optgroup = _step3.value;
1553
- var filteredSubOptions = FilterService.filter(getOptionGroupChildren(optgroup), searchFields, filterValue, props.filterMatchMode, props.filterLocale);
1554
- if (filteredSubOptions && filteredSubOptions.length) {
1555
- filteredGroups.push(_objectSpread(_objectSpread({}, optgroup), _defineProperty({}, props.optionGroupChildren, filteredSubOptions)));
1556
- }
1557
- }
1558
- } catch (err) {
1559
- _iterator3.e(err);
1560
- } finally {
1561
- _iterator3.f();
1562
- }
1563
- return filteredGroups;
1564
- } else {
1565
- return FilterService.filter(props.options, searchFields, filterValue, props.filterMatchMode, props.filterLocale);
1566
- }
1567
- } else {
1568
- return props.options;
1569
- }
1570
- };
1571
- React.useImperativeHandle(ref, function () {
1572
- return {
1573
- props: props,
1574
- show: show,
1575
- hide: hide,
1576
- focus: function focus() {
1577
- return DomHandler.focus(inputRef.current);
1578
- },
1579
- getElement: function getElement() {
1580
- return elementRef.current;
1581
- },
1582
- getOverlay: function getOverlay() {
1583
- return overlayRef.current;
1584
- },
1585
- getInput: function getInput() {
1586
- return inputRef.current;
1587
- }
1588
- };
1589
- });
1590
- React.useEffect(function () {
1591
- ObjectUtils.combinedRefs(inputRef, props.inputRef);
1592
- }, [inputRef, props.inputRef]);
1593
- React.useEffect(function () {
1594
- setTimeout(function () {
1595
- props.overlayVisible ? show() : hide();
1596
- }, 100);
1597
- }, [props.overlayVisible]);
1598
- useUpdateEffect(function () {
1599
- if (overlayVisibleState && hasFilter) {
1600
- alignOverlay();
1601
- }
1602
- }, [overlayVisibleState, hasFilter]);
1603
- useUnmountEffect(function () {
1604
- ZIndexUtils.clear(overlayRef.current);
1605
- });
1606
- var createClearIcon = function createClearIcon() {
1607
- var clearIconProps = mergeProps({
1608
- className: cx('clearIcon'),
1609
- onClick: function onClick(e) {
1610
- return updateModel(e, null, null);
1611
- }
1612
- }, ptm('clearIcon'));
1613
- var icon = props.clearIcon || /*#__PURE__*/React.createElement(TimesIcon, clearIconProps);
1614
- var clearIcon = IconUtils.getJSXIcon(icon, _objectSpread({}, clearIconProps), {
1615
- props: props
1616
- });
1617
- if (!empty && props.showClear && !props.disabled) {
1618
- return clearIcon;
1619
- }
1620
- return null;
1621
- };
1622
- var createLabel = function createLabel() {
1623
- var content = getLabelContent();
1624
- var labelContainerProps = mergeProps({
1625
- ref: labelRef,
1626
- className: cx('labelContainer')
1627
- }, ptm('labelContainer'));
1628
- var labelProps = mergeProps({
1629
- className: cx('label', {
1630
- empty: empty
1631
- })
1632
- }, ptm('label'));
1633
- return /*#__PURE__*/React.createElement("div", labelContainerProps, /*#__PURE__*/React.createElement("div", labelProps, content || props.placeholder || 'empty'));
1634
- };
1635
- var visibleOptions = getVisibleOptions();
1636
- var hasTooltip = ObjectUtils.isNotEmpty(props.tooltip);
1637
- var otherProps = MultiSelectBase.getOtherProps(props);
1638
- var ariaProps = ObjectUtils.reduceKeys(otherProps, DomHandler.ARIA_PROPS);
1639
- var triggerIconProps = mergeProps({
1640
- className: cx('triggerIcon')
1641
- }, ptm('triggerIcon'));
1642
- var triggerProps = mergeProps({
1643
- className: cx('trigger')
1644
- }, ptm('trigger'));
1645
- var dropdownIcon = /*#__PURE__*/React.createElement("div", triggerProps, props.dropdownIcon ? IconUtils.getJSXIcon(props.dropdownIcon, _objectSpread({}, triggerIconProps), {
1646
- props: props
1647
- }) : /*#__PURE__*/React.createElement(ChevronDownIcon, triggerIconProps));
1648
- var label = !props.inline && createLabel();
1649
- var clearIcon = !props.inline && createClearIcon();
1650
- var rootProps = mergeProps(_objectSpread(_objectSpread({
1651
- ref: elementRef,
1652
- id: props.id,
1653
- style: props.style,
1654
- className: classNames(props.className, cx('root', {
1655
- focusedState: focusedState,
1656
- overlayVisibleState: overlayVisibleState
1657
- }))
1658
- }, otherProps), {}, {
1659
- onClick: onClick
1660
- }), MultiSelectBase.getOtherProps(props), ptm('root'));
1661
- var hiddenInputWrapperProps = mergeProps({
1662
- className: 'p-hidden-accessible'
1663
- }, ptm('hiddenInputWrapper'));
1664
- var inputProps = mergeProps(_objectSpread({
1665
- ref: inputRef,
1666
- id: props.inputId,
1667
- name: props.name,
1668
- type: 'text',
1669
- onFocus: onFocus,
1670
- onBlur: onBlur,
1671
- onKeyDown: onKeyDown,
1672
- role: 'listbox',
1673
- 'aria-expanded': overlayVisibleState,
1674
- disabled: props.disabled,
1675
- tabIndex: props.tabIndex
1676
- }, ariaProps), ptm('input'));
1677
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", rootProps, /*#__PURE__*/React.createElement("div", hiddenInputWrapperProps, /*#__PURE__*/React.createElement("input", _extends({}, inputProps, {
1678
- readOnly: true
1679
- }))), !props.inline && /*#__PURE__*/React.createElement(React.Fragment, null, label, clearIcon, dropdownIcon), /*#__PURE__*/React.createElement(MultiSelectPanel, _extends({
1680
- hostName: "MultiSelect",
1681
- ref: overlayRef,
1682
- visibleOptions: visibleOptions
1683
- }, props, {
1684
- onClick: onPanelClick,
1685
- onOverlayHide: hide,
1686
- filterValue: filterState,
1687
- hasFilter: hasFilter,
1688
- onFilterInputChange: onFilterInputChange,
1689
- resetFilter: resetFilter,
1690
- onCloseClick: onCloseClick,
1691
- onSelectAll: onSelectAll,
1692
- getOptionLabel: getOptionLabel,
1693
- getOptionRenderKey: getOptionRenderKey,
1694
- isOptionDisabled: isOptionDisabled,
1695
- getOptionGroupChildren: getOptionGroupChildren,
1696
- getOptionGroupLabel: getOptionGroupLabel,
1697
- getOptionGroupRenderKey: getOptionGroupRenderKey,
1698
- isSelected: isSelected,
1699
- getSelectedOptionIndex: getSelectedOptionIndex,
1700
- isAllSelected: isAllSelected,
1701
- onOptionSelect: onOptionSelect,
1702
- allowOptionSelect: allowOptionSelect,
1703
- onOptionKeyDown: onOptionKeyDown,
1704
- "in": overlayVisibleState,
1705
- onEnter: onOverlayEnter,
1706
- onEntered: onOverlayEntered,
1707
- onExit: onOverlayExit,
1708
- onExited: onOverlayExited,
1709
- ptm: ptm,
1710
- cx: cx,
1711
- sx: sx,
1712
- isUnstyled: isUnstyled,
1713
- metaData: metaData
1714
- }))), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
1715
- target: elementRef,
1716
- content: props.tooltip
1717
- }, props.tooltipOptions, {
1718
- pt: ptm('tooltip')
1719
- })));
1720
- }));
1721
- MultiSelect.displayName = 'MultiSelect';
1722
-
1723
- export { MultiSelect };