primereact 9.3.1 → 9.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (502) hide show
  1. package/README.md +18 -31
  2. package/accordion/accordion.cjs.js +88 -90
  3. package/accordion/accordion.cjs.min.js +1 -1
  4. package/accordion/accordion.d.ts +90 -1
  5. package/accordion/accordion.esm.js +89 -91
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +89 -92
  8. package/accordion/accordion.min.js +1 -1
  9. package/autocomplete/autocomplete.cjs.js +9 -5
  10. package/autocomplete/autocomplete.cjs.min.js +1 -1
  11. package/autocomplete/autocomplete.esm.js +9 -5
  12. package/autocomplete/autocomplete.esm.min.js +1 -1
  13. package/autocomplete/autocomplete.js +8 -4
  14. package/autocomplete/autocomplete.min.js +1 -1
  15. package/avatar/avatar.cjs.js +71 -22
  16. package/avatar/avatar.cjs.min.js +1 -1
  17. package/avatar/avatar.d.ts +37 -1
  18. package/avatar/avatar.esm.js +72 -23
  19. package/avatar/avatar.esm.min.js +1 -1
  20. package/avatar/avatar.js +72 -24
  21. package/avatar/avatar.min.js +1 -1
  22. package/avatargroup/avatargroup.cjs.js +26 -42
  23. package/avatargroup/avatargroup.cjs.min.js +1 -1
  24. package/avatargroup/avatargroup.d.ts +24 -0
  25. package/avatargroup/avatargroup.esm.js +13 -29
  26. package/avatargroup/avatargroup.esm.min.js +1 -1
  27. package/avatargroup/avatargroup.js +52 -69
  28. package/avatargroup/avatargroup.min.js +1 -1
  29. package/badge/badge.cjs.js +12 -28
  30. package/badge/badge.cjs.min.js +1 -1
  31. package/badge/badge.d.ts +26 -0
  32. package/badge/badge.esm.js +13 -29
  33. package/badge/badge.esm.min.js +1 -1
  34. package/badge/badge.js +13 -30
  35. package/badge/badge.min.js +1 -1
  36. package/blockui/blockui.cjs.js +12 -28
  37. package/blockui/blockui.cjs.min.js +1 -1
  38. package/blockui/blockui.d.ts +38 -0
  39. package/blockui/blockui.esm.js +13 -29
  40. package/blockui/blockui.esm.min.js +1 -1
  41. package/blockui/blockui.js +13 -30
  42. package/blockui/blockui.min.js +1 -1
  43. package/button/button.cjs.js +49 -42
  44. package/button/button.cjs.min.js +1 -1
  45. package/button/button.d.ts +42 -1
  46. package/button/button.esm.js +50 -43
  47. package/button/button.esm.min.js +1 -1
  48. package/button/button.js +49 -43
  49. package/button/button.min.js +1 -1
  50. package/calendar/calendar.cjs.js +29 -22
  51. package/calendar/calendar.cjs.min.js +1 -1
  52. package/calendar/calendar.esm.js +29 -22
  53. package/calendar/calendar.esm.min.js +1 -1
  54. package/calendar/calendar.js +26 -19
  55. package/calendar/calendar.min.js +1 -1
  56. package/card/card.cjs.js +52 -63
  57. package/card/card.cjs.min.js +1 -1
  58. package/card/card.d.ts +56 -0
  59. package/card/card.esm.js +39 -50
  60. package/card/card.esm.min.js +1 -1
  61. package/card/card.js +86 -98
  62. package/card/card.min.js +1 -1
  63. package/carousel/carousel.cjs.js +16 -28
  64. package/carousel/carousel.cjs.min.js +1 -1
  65. package/carousel/carousel.esm.js +16 -28
  66. package/carousel/carousel.esm.min.js +1 -1
  67. package/carousel/carousel.js +14 -26
  68. package/carousel/carousel.min.js +1 -1
  69. package/chart/chart.cjs.js +5 -1
  70. package/chart/chart.cjs.min.js +1 -1
  71. package/chart/chart.d.ts +5 -0
  72. package/chart/chart.esm.js +5 -1
  73. package/chart/chart.esm.min.js +1 -1
  74. package/chart/chart.js +5 -1
  75. package/chart/chart.min.js +1 -1
  76. package/checkbox/checkbox.cjs.js +22 -7
  77. package/checkbox/checkbox.cjs.min.js +1 -1
  78. package/checkbox/checkbox.d.ts +14 -1
  79. package/checkbox/checkbox.esm.js +22 -7
  80. package/checkbox/checkbox.esm.min.js +1 -1
  81. package/checkbox/checkbox.js +23 -8
  82. package/checkbox/checkbox.min.js +1 -1
  83. package/chip/chip.cjs.js +45 -42
  84. package/chip/chip.cjs.min.js +1 -1
  85. package/chip/chip.d.ts +53 -1
  86. package/chip/chip.esm.js +46 -43
  87. package/chip/chip.esm.min.js +1 -1
  88. package/chip/chip.js +46 -44
  89. package/chip/chip.min.js +1 -1
  90. package/chips/chips.cjs.js +13 -5
  91. package/chips/chips.cjs.min.js +1 -1
  92. package/chips/chips.esm.js +13 -5
  93. package/chips/chips.esm.min.js +1 -1
  94. package/chips/chips.js +14 -6
  95. package/chips/chips.min.js +1 -1
  96. package/colorpicker/colorpicker.cjs.js +7 -4
  97. package/colorpicker/colorpicker.cjs.min.js +1 -1
  98. package/colorpicker/colorpicker.d.ts +8 -0
  99. package/colorpicker/colorpicker.esm.js +7 -4
  100. package/colorpicker/colorpicker.esm.min.js +1 -1
  101. package/colorpicker/colorpicker.js +7 -4
  102. package/colorpicker/colorpicker.min.js +1 -1
  103. package/column/column.d.ts +6 -2
  104. package/componentbase/componentbase.cjs.js +105 -0
  105. package/componentbase/componentbase.cjs.min.js +1 -0
  106. package/componentbase/componentbase.esm.js +101 -0
  107. package/componentbase/componentbase.esm.min.js +1 -0
  108. package/componentbase/componentbase.js +109 -0
  109. package/componentbase/componentbase.min.js +1 -0
  110. package/componentbase/package.json +6 -0
  111. package/confirmdialog/confirmdialog.cjs.js +44 -27
  112. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  113. package/confirmdialog/confirmdialog.d.ts +90 -2
  114. package/confirmdialog/confirmdialog.esm.js +45 -28
  115. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  116. package/confirmdialog/confirmdialog.js +45 -29
  117. package/confirmdialog/confirmdialog.min.js +1 -1
  118. package/confirmpopup/confirmpopup.cjs.js +53 -50
  119. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  120. package/confirmpopup/confirmpopup.d.ts +70 -1
  121. package/confirmpopup/confirmpopup.esm.js +54 -51
  122. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  123. package/confirmpopup/confirmpopup.js +54 -52
  124. package/confirmpopup/confirmpopup.min.js +1 -1
  125. package/core/core.js +1159 -966
  126. package/core/core.min.js +13 -11
  127. package/datatable/datatable.cjs.js +72 -35
  128. package/datatable/datatable.cjs.min.js +1 -1
  129. package/datatable/datatable.d.ts +20 -7
  130. package/datatable/datatable.esm.js +72 -35
  131. package/datatable/datatable.esm.min.js +1 -1
  132. package/datatable/datatable.js +65 -28
  133. package/datatable/datatable.min.js +1 -1
  134. package/deferredcontent/deferredcontent.cjs.js +13 -26
  135. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  136. package/deferredcontent/deferredcontent.d.ts +38 -0
  137. package/deferredcontent/deferredcontent.esm.js +14 -27
  138. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  139. package/deferredcontent/deferredcontent.js +14 -28
  140. package/deferredcontent/deferredcontent.min.js +1 -1
  141. package/dialog/dialog.cjs.js +83 -83
  142. package/dialog/dialog.cjs.min.js +1 -1
  143. package/dialog/dialog.d.ts +85 -3
  144. package/dialog/dialog.esm.js +83 -83
  145. package/dialog/dialog.esm.min.js +1 -1
  146. package/dialog/dialog.js +81 -82
  147. package/dialog/dialog.min.js +1 -1
  148. package/divider/divider.cjs.js +35 -51
  149. package/divider/divider.cjs.min.js +1 -1
  150. package/divider/divider.d.ts +30 -0
  151. package/divider/divider.esm.js +22 -38
  152. package/divider/divider.esm.min.js +1 -1
  153. package/divider/divider.js +66 -83
  154. package/divider/divider.min.js +1 -1
  155. package/dropdown/dropdown.cjs.js +45 -19
  156. package/dropdown/dropdown.cjs.min.js +1 -1
  157. package/dropdown/dropdown.d.ts +6 -1
  158. package/dropdown/dropdown.esm.js +45 -19
  159. package/dropdown/dropdown.esm.min.js +1 -1
  160. package/dropdown/dropdown.js +45 -19
  161. package/dropdown/dropdown.min.js +1 -1
  162. package/fieldset/fieldset.cjs.js +55 -54
  163. package/fieldset/fieldset.cjs.min.js +1 -1
  164. package/fieldset/fieldset.d.ts +77 -1
  165. package/fieldset/fieldset.esm.js +56 -55
  166. package/fieldset/fieldset.esm.min.js +1 -1
  167. package/fieldset/fieldset.js +56 -56
  168. package/fieldset/fieldset.min.js +1 -1
  169. package/fileupload/fileupload.cjs.js +13 -14
  170. package/fileupload/fileupload.cjs.min.js +1 -1
  171. package/fileupload/fileupload.esm.js +14 -15
  172. package/fileupload/fileupload.esm.min.js +1 -1
  173. package/fileupload/fileupload.js +14 -16
  174. package/fileupload/fileupload.min.js +1 -1
  175. package/galleria/galleria.cjs.js +5 -0
  176. package/galleria/galleria.cjs.min.js +1 -1
  177. package/galleria/galleria.esm.js +5 -0
  178. package/galleria/galleria.esm.min.js +1 -1
  179. package/galleria/galleria.js +5 -0
  180. package/galleria/galleria.min.js +1 -1
  181. package/hooks/hooks.cjs.js +15 -2
  182. package/hooks/hooks.cjs.min.js +1 -1
  183. package/hooks/hooks.esm.js +15 -2
  184. package/hooks/hooks.esm.min.js +1 -1
  185. package/hooks/hooks.js +15 -2
  186. package/hooks/hooks.min.js +1 -1
  187. package/image/image.cjs.js +41 -32
  188. package/image/image.cjs.min.js +1 -1
  189. package/image/image.esm.js +41 -32
  190. package/image/image.esm.min.js +1 -1
  191. package/image/image.js +39 -30
  192. package/image/image.min.js +1 -1
  193. package/inplace/inplace.cjs.js +33 -51
  194. package/inplace/inplace.cjs.min.js +1 -1
  195. package/inplace/inplace.d.ts +51 -1
  196. package/inplace/inplace.esm.js +33 -51
  197. package/inplace/inplace.esm.min.js +1 -1
  198. package/inplace/inplace.js +33 -52
  199. package/inplace/inplace.min.js +1 -1
  200. package/inputmask/inputmask.cjs.js +6 -2
  201. package/inputmask/inputmask.cjs.min.js +1 -1
  202. package/inputmask/inputmask.esm.js +6 -2
  203. package/inputmask/inputmask.esm.min.js +1 -1
  204. package/inputmask/inputmask.js +6 -2
  205. package/inputmask/inputmask.min.js +1 -1
  206. package/inputnumber/inputnumber.cjs.js +8 -4
  207. package/inputnumber/inputnumber.cjs.min.js +1 -1
  208. package/inputnumber/inputnumber.esm.js +8 -4
  209. package/inputnumber/inputnumber.esm.min.js +1 -1
  210. package/inputnumber/inputnumber.js +8 -4
  211. package/inputnumber/inputnumber.min.js +1 -1
  212. package/inputswitch/inputswitch.cjs.js +6 -2
  213. package/inputswitch/inputswitch.cjs.min.js +1 -1
  214. package/inputswitch/inputswitch.esm.js +6 -2
  215. package/inputswitch/inputswitch.esm.min.js +1 -1
  216. package/inputswitch/inputswitch.js +6 -2
  217. package/inputswitch/inputswitch.min.js +1 -1
  218. package/inputtext/inputtext.cjs.js +7 -8
  219. package/inputtext/inputtext.cjs.min.js +1 -1
  220. package/inputtext/inputtext.esm.js +7 -8
  221. package/inputtext/inputtext.esm.min.js +1 -1
  222. package/inputtext/inputtext.js +7 -8
  223. package/inputtext/inputtext.min.js +1 -1
  224. package/inputtextarea/inputtextarea.cjs.js +3 -4
  225. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  226. package/inputtextarea/inputtextarea.esm.js +3 -4
  227. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  228. package/inputtextarea/inputtextarea.js +3 -4
  229. package/inputtextarea/inputtextarea.min.js +1 -1
  230. package/listbox/listbox.cjs.js +12 -4
  231. package/listbox/listbox.cjs.min.js +1 -1
  232. package/listbox/listbox.esm.js +12 -4
  233. package/listbox/listbox.esm.min.js +1 -1
  234. package/listbox/listbox.js +12 -4
  235. package/listbox/listbox.min.js +1 -1
  236. package/mention/mention.cjs.js +3 -4
  237. package/mention/mention.cjs.min.js +1 -1
  238. package/mention/mention.esm.js +3 -4
  239. package/mention/mention.esm.min.js +1 -1
  240. package/mention/mention.js +3 -4
  241. package/mention/mention.min.js +1 -1
  242. package/menuitem/menuitem.d.ts +0 -2
  243. package/messages/messages.cjs.js +15 -12
  244. package/messages/messages.cjs.min.js +1 -1
  245. package/messages/messages.esm.js +15 -12
  246. package/messages/messages.esm.min.js +1 -1
  247. package/messages/messages.js +15 -12
  248. package/messages/messages.min.js +1 -1
  249. package/multiselect/multiselect.cjs.js +46 -22
  250. package/multiselect/multiselect.cjs.min.js +1 -1
  251. package/multiselect/multiselect.d.ts +4 -0
  252. package/multiselect/multiselect.esm.js +46 -22
  253. package/multiselect/multiselect.esm.min.js +1 -1
  254. package/multiselect/multiselect.js +45 -21
  255. package/multiselect/multiselect.min.js +1 -1
  256. package/multistatecheckbox/multistatecheckbox.cjs.js +6 -2
  257. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  258. package/multistatecheckbox/multistatecheckbox.esm.js +6 -2
  259. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  260. package/multistatecheckbox/multistatecheckbox.js +6 -2
  261. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  262. package/organizationchart/organizationchart.d.ts +18 -2
  263. package/overlaypanel/overlaypanel.cjs.js +40 -46
  264. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  265. package/overlaypanel/overlaypanel.d.ts +45 -1
  266. package/overlaypanel/overlaypanel.esm.js +41 -47
  267. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  268. package/overlaypanel/overlaypanel.js +41 -48
  269. package/overlaypanel/overlaypanel.min.js +1 -1
  270. package/package.json +1 -1
  271. package/panel/panel.cjs.js +78 -63
  272. package/panel/panel.cjs.min.js +1 -1
  273. package/panel/panel.d.ts +100 -1
  274. package/panel/panel.esm.js +79 -64
  275. package/panel/panel.esm.min.js +1 -1
  276. package/panel/panel.js +79 -65
  277. package/panel/panel.min.js +1 -1
  278. package/primereact.all.cjs.js +2222 -1712
  279. package/primereact.all.cjs.min.js +1 -1
  280. package/primereact.all.esm.js +2222 -1713
  281. package/primereact.all.esm.min.js +1 -1
  282. package/primereact.all.js +2222 -1712
  283. package/primereact.all.min.js +1 -1
  284. package/progressbar/progressbar.cjs.js +45 -57
  285. package/progressbar/progressbar.cjs.min.js +1 -1
  286. package/progressbar/progressbar.d.ts +38 -0
  287. package/progressbar/progressbar.esm.js +32 -44
  288. package/progressbar/progressbar.esm.min.js +1 -1
  289. package/progressbar/progressbar.js +105 -118
  290. package/progressbar/progressbar.min.js +1 -1
  291. package/progressspinner/progressspinner.cjs.js +37 -51
  292. package/progressspinner/progressspinner.cjs.min.js +1 -1
  293. package/progressspinner/progressspinner.d.ts +34 -0
  294. package/progressspinner/progressspinner.esm.js +24 -38
  295. package/progressspinner/progressspinner.esm.min.js +1 -1
  296. package/progressspinner/progressspinner.js +75 -90
  297. package/progressspinner/progressspinner.min.js +1 -1
  298. package/radiobutton/radiobutton.cjs.js +29 -14
  299. package/radiobutton/radiobutton.cjs.min.js +1 -1
  300. package/radiobutton/radiobutton.d.ts +14 -1
  301. package/radiobutton/radiobutton.esm.js +29 -14
  302. package/radiobutton/radiobutton.esm.min.js +1 -1
  303. package/radiobutton/radiobutton.js +29 -14
  304. package/radiobutton/radiobutton.min.js +1 -1
  305. package/rating/rating.cjs.js +15 -7
  306. package/rating/rating.cjs.min.js +1 -1
  307. package/rating/rating.esm.js +15 -7
  308. package/rating/rating.esm.min.js +1 -1
  309. package/rating/rating.js +14 -6
  310. package/rating/rating.min.js +1 -1
  311. package/resources/primereact.css +72 -72
  312. package/resources/primereact.min.css +1 -1
  313. package/resources/themes/arya-blue/theme.css +3 -0
  314. package/resources/themes/arya-green/theme.css +3 -0
  315. package/resources/themes/arya-orange/theme.css +3 -0
  316. package/resources/themes/arya-purple/theme.css +3 -0
  317. package/resources/themes/bootstrap4-dark-blue/theme.css +3 -0
  318. package/resources/themes/bootstrap4-dark-purple/theme.css +3 -0
  319. package/resources/themes/bootstrap4-light-blue/theme.css +3 -0
  320. package/resources/themes/bootstrap4-light-purple/theme.css +3 -0
  321. package/resources/themes/fluent-light/theme.css +3 -0
  322. package/resources/themes/lara-dark-blue/theme.css +3 -0
  323. package/resources/themes/lara-dark-indigo/theme.css +3 -0
  324. package/resources/themes/lara-dark-purple/theme.css +3 -0
  325. package/resources/themes/lara-dark-teal/theme.css +3 -0
  326. package/resources/themes/lara-light-blue/theme.css +3 -0
  327. package/resources/themes/lara-light-indigo/theme.css +3 -0
  328. package/resources/themes/lara-light-purple/theme.css +3 -0
  329. package/resources/themes/lara-light-teal/theme.css +3 -0
  330. package/resources/themes/luna-amber/theme.css +3 -0
  331. package/resources/themes/luna-blue/theme.css +3 -0
  332. package/resources/themes/luna-green/theme.css +3 -0
  333. package/resources/themes/luna-pink/theme.css +3 -0
  334. package/resources/themes/md-dark-deeppurple/theme.css +3 -0
  335. package/resources/themes/md-dark-indigo/theme.css +3 -0
  336. package/resources/themes/md-light-deeppurple/theme.css +3 -0
  337. package/resources/themes/md-light-indigo/theme.css +3 -0
  338. package/resources/themes/mdc-dark-deeppurple/theme.css +3 -0
  339. package/resources/themes/mdc-dark-indigo/theme.css +3 -0
  340. package/resources/themes/mdc-light-deeppurple/theme.css +3 -0
  341. package/resources/themes/mdc-light-indigo/theme.css +3 -0
  342. package/resources/themes/mira/theme.css +3 -0
  343. package/resources/themes/nano/theme.css +3 -0
  344. package/resources/themes/nova/theme.css +3 -0
  345. package/resources/themes/nova-accent/theme.css +3 -0
  346. package/resources/themes/nova-alt/theme.css +3 -0
  347. package/resources/themes/rhea/theme.css +3 -0
  348. package/resources/themes/saga-blue/theme.css +3 -0
  349. package/resources/themes/saga-green/theme.css +3 -0
  350. package/resources/themes/saga-orange/theme.css +3 -0
  351. package/resources/themes/saga-purple/theme.css +3 -0
  352. package/resources/themes/soho-dark/theme.css +3 -0
  353. package/resources/themes/soho-light/theme.css +3 -0
  354. package/resources/themes/tailwind-light/theme.css +3 -0
  355. package/resources/themes/vela-blue/theme.css +3 -0
  356. package/resources/themes/vela-green/theme.css +3 -0
  357. package/resources/themes/vela-orange/theme.css +3 -0
  358. package/resources/themes/vela-purple/theme.css +3 -0
  359. package/resources/themes/viva-dark/theme.css +3 -0
  360. package/resources/themes/viva-light/theme.css +3 -0
  361. package/scrollpanel/scrollpanel.cjs.js +39 -52
  362. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  363. package/scrollpanel/scrollpanel.d.ts +42 -0
  364. package/scrollpanel/scrollpanel.esm.js +26 -39
  365. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  366. package/scrollpanel/scrollpanel.js +193 -207
  367. package/scrollpanel/scrollpanel.min.js +1 -1
  368. package/scrolltop/scrolltop.cjs.js +64 -36
  369. package/scrolltop/scrolltop.cjs.min.js +1 -1
  370. package/scrolltop/scrolltop.d.ts +42 -1
  371. package/scrolltop/scrolltop.esm.js +65 -37
  372. package/scrolltop/scrolltop.esm.min.js +1 -1
  373. package/scrolltop/scrolltop.js +65 -38
  374. package/scrolltop/scrolltop.min.js +1 -1
  375. package/selectbutton/selectbutton.cjs.js +6 -2
  376. package/selectbutton/selectbutton.cjs.min.js +1 -1
  377. package/selectbutton/selectbutton.esm.js +6 -2
  378. package/selectbutton/selectbutton.esm.min.js +1 -1
  379. package/selectbutton/selectbutton.js +6 -2
  380. package/selectbutton/selectbutton.min.js +1 -1
  381. package/sidebar/sidebar.cjs.js +88 -52
  382. package/sidebar/sidebar.cjs.min.js +1 -1
  383. package/sidebar/sidebar.d.ts +58 -1
  384. package/sidebar/sidebar.esm.js +89 -53
  385. package/sidebar/sidebar.esm.min.js +1 -1
  386. package/sidebar/sidebar.js +89 -54
  387. package/sidebar/sidebar.min.js +1 -1
  388. package/skeleton/skeleton.cjs.js +26 -42
  389. package/skeleton/skeleton.cjs.min.js +1 -1
  390. package/skeleton/skeleton.d.ts +26 -0
  391. package/skeleton/skeleton.esm.js +13 -29
  392. package/skeleton/skeleton.esm.min.js +1 -1
  393. package/skeleton/skeleton.js +70 -87
  394. package/skeleton/skeleton.min.js +1 -1
  395. package/speeddial/speeddial.cjs.js +63 -56
  396. package/speeddial/speeddial.cjs.min.js +1 -1
  397. package/speeddial/speeddial.d.ts +64 -1
  398. package/speeddial/speeddial.esm.js +64 -57
  399. package/speeddial/speeddial.esm.min.js +1 -1
  400. package/speeddial/speeddial.js +62 -56
  401. package/speeddial/speeddial.min.js +1 -1
  402. package/splitbutton/splitbutton.cjs.js +50 -40
  403. package/splitbutton/splitbutton.cjs.min.js +1 -1
  404. package/splitbutton/splitbutton.d.ts +59 -1
  405. package/splitbutton/splitbutton.esm.js +51 -41
  406. package/splitbutton/splitbutton.esm.min.js +1 -1
  407. package/splitbutton/splitbutton.js +50 -41
  408. package/splitbutton/splitbutton.min.js +1 -1
  409. package/splitter/splitter.cjs.js +68 -70
  410. package/splitter/splitter.cjs.min.js +1 -1
  411. package/splitter/splitter.d.ts +60 -0
  412. package/splitter/splitter.esm.js +69 -71
  413. package/splitter/splitter.esm.min.js +1 -1
  414. package/splitter/splitter.js +69 -72
  415. package/splitter/splitter.min.js +1 -1
  416. package/styleclass/styleclass.cjs.js +9 -7
  417. package/styleclass/styleclass.cjs.min.js +1 -1
  418. package/styleclass/styleclass.esm.js +9 -7
  419. package/styleclass/styleclass.esm.min.js +1 -1
  420. package/styleclass/styleclass.js +9 -7
  421. package/styleclass/styleclass.min.js +1 -1
  422. package/tabview/tabview.cjs.js +142 -122
  423. package/tabview/tabview.cjs.min.js +1 -1
  424. package/tabview/tabview.d.ts +132 -1
  425. package/tabview/tabview.esm.js +143 -123
  426. package/tabview/tabview.esm.min.js +1 -1
  427. package/tabview/tabview.js +143 -124
  428. package/tabview/tabview.min.js +1 -1
  429. package/tag/tag.cjs.js +18 -30
  430. package/tag/tag.cjs.min.js +1 -1
  431. package/tag/tag.d.ts +34 -1
  432. package/tag/tag.esm.js +19 -31
  433. package/tag/tag.esm.min.js +1 -1
  434. package/tag/tag.js +19 -32
  435. package/tag/tag.min.js +1 -1
  436. package/terminal/terminal.cjs.js +49 -52
  437. package/terminal/terminal.cjs.min.js +1 -1
  438. package/terminal/terminal.d.ts +73 -0
  439. package/terminal/terminal.esm.js +50 -53
  440. package/terminal/terminal.esm.min.js +1 -1
  441. package/terminal/terminal.js +50 -54
  442. package/terminal/terminal.min.js +1 -1
  443. package/terminalservice/terminalservice.d.ts +1 -1
  444. package/timeline/timeline.d.ts +1 -1
  445. package/toast/toast.cjs.js +13 -10
  446. package/toast/toast.cjs.min.js +1 -1
  447. package/toast/toast.d.ts +4 -0
  448. package/toast/toast.esm.js +13 -10
  449. package/toast/toast.esm.min.js +1 -1
  450. package/toast/toast.js +13 -10
  451. package/toast/toast.min.js +1 -1
  452. package/togglebutton/togglebutton.cjs.js +6 -2
  453. package/togglebutton/togglebutton.cjs.min.js +1 -1
  454. package/togglebutton/togglebutton.esm.js +6 -2
  455. package/togglebutton/togglebutton.esm.min.js +1 -1
  456. package/togglebutton/togglebutton.js +6 -2
  457. package/togglebutton/togglebutton.min.js +1 -1
  458. package/toolbar/toolbar.cjs.js +35 -49
  459. package/toolbar/toolbar.cjs.min.js +1 -1
  460. package/toolbar/toolbar.d.ts +44 -0
  461. package/toolbar/toolbar.esm.js +22 -36
  462. package/toolbar/toolbar.esm.min.js +1 -1
  463. package/toolbar/toolbar.js +72 -87
  464. package/toolbar/toolbar.min.js +1 -1
  465. package/tooltip/tooltip.cjs.js +31 -37
  466. package/tooltip/tooltip.cjs.min.js +1 -1
  467. package/tooltip/tooltip.d.ts +55 -0
  468. package/tooltip/tooltip.esm.js +32 -38
  469. package/tooltip/tooltip.esm.min.js +1 -1
  470. package/tooltip/tooltip.js +32 -39
  471. package/tooltip/tooltip.min.js +1 -1
  472. package/tooltip/tooltipoptions.d.ts +5 -0
  473. package/tree/tree.d.ts +1 -1
  474. package/treenode/treenode.d.ts +5 -1
  475. package/treeselect/treeselect.cjs.js +9 -5
  476. package/treeselect/treeselect.cjs.min.js +1 -1
  477. package/treeselect/treeselect.d.ts +1 -1
  478. package/treeselect/treeselect.esm.js +9 -5
  479. package/treeselect/treeselect.esm.min.js +1 -1
  480. package/treeselect/treeselect.js +8 -4
  481. package/treeselect/treeselect.min.js +1 -1
  482. package/treetable/treetable.cjs.js +10 -3
  483. package/treetable/treetable.cjs.min.js +1 -1
  484. package/treetable/treetable.d.ts +1 -1
  485. package/treetable/treetable.esm.js +10 -3
  486. package/treetable/treetable.esm.min.js +1 -1
  487. package/treetable/treetable.js +10 -3
  488. package/treetable/treetable.min.js +1 -1
  489. package/tristatecheckbox/tristatecheckbox.cjs.js +8 -4
  490. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  491. package/tristatecheckbox/tristatecheckbox.esm.js +8 -4
  492. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  493. package/tristatecheckbox/tristatecheckbox.js +8 -4
  494. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  495. package/utils/utils.cjs.js +710 -672
  496. package/utils/utils.cjs.min.js +1 -1
  497. package/utils/utils.d.ts +4 -0
  498. package/utils/utils.esm.js +710 -673
  499. package/utils/utils.esm.min.js +1 -1
  500. package/utils/utils.js +710 -672
  501. package/utils/utils.min.js +1 -1
  502. package/web-types.json +13 -1
@@ -6,12 +6,13 @@ var React = require('react');
6
6
  var PrimeReact = require('primereact/api');
7
7
  var button = require('primereact/button');
8
8
  var hooks = require('primereact/hooks');
9
+ var chevrondown = require('primereact/icons/chevrondown');
9
10
  var overlayservice = require('primereact/overlayservice');
10
11
  var tooltip = require('primereact/tooltip');
11
12
  var utils = require('primereact/utils');
13
+ var componentbase = require('primereact/componentbase');
12
14
  var csstransition = require('primereact/csstransition');
13
15
  var portal = require('primereact/portal');
14
- var chevrondown = require('primereact/icons/chevrondown');
15
16
 
16
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
18
 
@@ -147,7 +148,7 @@ function _slicedToArray(arr, i) {
147
148
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
148
149
  }
149
150
 
150
- var SplitButtonBase = {
151
+ var SplitButtonBase = componentbase.ComponentBase.extend({
151
152
  defaultProps: {
152
153
  __TYPE: 'SplitButton',
153
154
  id: null,
@@ -182,14 +183,8 @@ var SplitButtonBase = {
182
183
  onShow: null,
183
184
  onHide: null,
184
185
  children: undefined
185
- },
186
- getProps: function getProps(props) {
187
- return utils.ObjectUtils.getMergedProps(props, SplitButtonBase.defaultProps);
188
- },
189
- getOtherProps: function getOtherProps(props) {
190
- return utils.ObjectUtils.getDiffProps(props, SplitButtonBase.defaultProps);
191
186
  }
192
- };
187
+ });
193
188
 
194
189
  var SplitButtonItem = /*#__PURE__*/React__namespace.memo(function (props) {
195
190
  var onClick = function onClick(e) {
@@ -302,6 +297,8 @@ var SplitButtonPanel = /*#__PURE__*/React__namespace.forwardRef(function (props,
302
297
  });
303
298
  SplitButtonPanel.displayName = 'SplitButtonPanel';
304
299
 
300
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
301
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
305
302
  var SplitButton = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
306
303
  var _classNames;
307
304
  var props = SplitButtonBase.getProps(inProps);
@@ -316,6 +313,14 @@ var SplitButton = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
316
313
  var elementRef = React__namespace.useRef(null);
317
314
  var defaultButtonRef = React__namespace.useRef(null);
318
315
  var overlayRef = React__namespace.useRef(null);
316
+ var _SplitButtonBase$setM = SplitButtonBase.setMetaData({
317
+ props: props,
318
+ state: {
319
+ id: idState,
320
+ overlayVisible: overlayVisibleState
321
+ }
322
+ }),
323
+ ptm = _SplitButtonBase$setM.ptm;
319
324
  var _useOverlayListener = hooks.useOverlayListener({
320
325
  target: elementRef,
321
326
  overlay: overlayRef,
@@ -399,7 +404,6 @@ var SplitButton = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
399
404
  return null;
400
405
  }
401
406
  var hasTooltip = utils.ObjectUtils.isNotEmpty(props.tooltip);
402
- var otherProps = SplitButtonBase.getOtherProps(props);
403
407
  var sizeMapping = {
404
408
  large: 'lg',
405
409
  small: 'sm'
@@ -415,43 +419,28 @@ var SplitButton = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
415
419
  var items = createItems();
416
420
  var menuId = idState + '_menu';
417
421
  var dropdownIcon = function dropdownIcon() {
418
- var iconClassName = 'p-button-icon p-c';
419
- var icon = props.dropdownIcon || /*#__PURE__*/React__namespace.createElement(chevrondown.ChevronDownIcon, {
420
- className: iconClassName
421
- });
422
- var dropdownIcon = utils.IconUtils.getJSXIcon(icon, {
423
- className: iconClassName
424
- }, {
422
+ var iconProps = utils.mergeProps({
423
+ className: 'p-button-icon p-c'
424
+ }, ptm('icon'));
425
+ var icon = props.dropdownIcon || /*#__PURE__*/React__namespace.createElement(chevrondown.ChevronDownIcon, iconProps);
426
+ var dropdownIcon = utils.IconUtils.getJSXIcon(icon, _objectSpread({}, iconProps), {
425
427
  props: props
426
428
  });
427
429
  return dropdownIcon;
428
430
  };
429
- return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", _extends({
430
- ref: elementRef,
431
- id: idState,
432
- className: className,
433
- style: props.style
434
- }, otherProps), /*#__PURE__*/React__namespace.createElement(button.Button, _extends({
435
- ref: defaultButtonRef,
436
- type: "button",
437
- className: buttonClassName,
438
- icon: props.icon,
439
- loading: props.loading,
440
- loadingIcon: props.loadingIcon,
441
- label: props.label,
442
- onClick: props.onClick,
443
- disabled: props.disabled,
444
- tabIndex: props.tabIndex
445
- }, props.buttonProps), buttonContent), /*#__PURE__*/React__namespace.createElement(button.Button, _extends({
446
- type: "button",
431
+ var menuButtonProps = utils.mergeProps(_objectSpread(_objectSpread({
432
+ type: 'button',
447
433
  className: menuButtonClassName,
448
434
  icon: dropdownIcon,
449
435
  onClick: onDropdownButtonClick,
450
436
  disabled: props.disabled,
451
- "aria-expanded": overlayVisibleState,
452
- "aria-haspopup": "true",
453
- "aria-controls": overlayVisibleState ? menuId : null
454
- }, props.menuButtonProps)), /*#__PURE__*/React__namespace.createElement(SplitButtonPanel, {
437
+ 'aria-expanded': overlayVisibleState,
438
+ 'aria-haspopup': true,
439
+ 'aria-controls': overlayVisibleState ? menuId : null
440
+ }, props.menuButtonProps), {}, {
441
+ pt: ptm('menuButton')
442
+ }));
443
+ var menuProps = utils.mergeProps({
455
444
  ref: overlayRef,
456
445
  appendTo: props.appendTo,
457
446
  menuId: menuId,
@@ -464,7 +453,28 @@ var SplitButton = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
464
453
  onExit: onOverlayExit,
465
454
  onExited: onOverlayExited,
466
455
  transitionOptions: props.transitionOptions
467
- }, items)), hasTooltip && /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, _extends({
456
+ }, ptm('menu'));
457
+ var splitButtonProps = utils.mergeProps(_objectSpread(_objectSpread({
458
+ ref: defaultButtonRef,
459
+ type: 'button',
460
+ className: buttonClassName,
461
+ icon: props.icon,
462
+ loading: props.loading,
463
+ loadingIcon: props.loadingIcon,
464
+ label: props.label,
465
+ onClick: props.onClick,
466
+ disabled: props.disabled,
467
+ tabIndex: props.tabIndex
468
+ }, props.buttonProps), {}, {
469
+ pt: ptm('button')
470
+ }));
471
+ var rootProps = utils.mergeProps({
472
+ ref: elementRef,
473
+ id: idState,
474
+ className: className,
475
+ style: props.style
476
+ }, SplitButtonBase.getOtherProps(props), ptm('root'));
477
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", rootProps, /*#__PURE__*/React__namespace.createElement(button.Button, splitButtonProps, buttonContent), /*#__PURE__*/React__namespace.createElement(button.Button, menuButtonProps), /*#__PURE__*/React__namespace.createElement(SplitButtonPanel, menuProps, items)), hasTooltip && /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, _extends({
468
478
  target: elementRef,
469
479
  content: props.tooltip
470
480
  }, props.tooltipOptions)));
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/button"),r=require("primereact/hooks"),o=require("primereact/overlayservice"),l=require("primereact/tooltip"),i=require("primereact/utils"),a=require("primereact/csstransition"),u=require("primereact/portal"),s=require("primereact/icons/chevrondown");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function m(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var p=m(e),d=c(t);function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},f.apply(this,arguments)}function b(e){return b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},b(e)}function y(e,t){if("object"!==b(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==b(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function v(e){var t=y(e,"string");return"symbol"===b(t)?t:String(t)}function g(e,t,n){return(t=v(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e){if(Array.isArray(e))return e}function N(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],u=!0,s=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){s=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw o}}return a}}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function O(e,t){if(e){if("string"==typeof e)return S(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?S(e,t):void 0}}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function I(e,t){return E(e)||N(e,t)||O(e,t)||h()}var C={defaultProps:{__TYPE:"SplitButton",id:null,label:null,icon:null,loading:!1,loadingIcon:null,model:null,disabled:null,style:null,className:null,buttonClassName:null,menuStyle:null,menuClassName:null,menuButtonClassName:null,buttonProps:null,menuButtonProps:null,tabIndex:null,severity:null,rounded:!1,raised:!1,outlined:!1,text:!1,size:null,appendTo:null,tooltip:null,tooltipOptions:null,buttonTemplate:null,transitionOptions:null,dropdownIcon:null,onClick:null,onShow:null,onHide:null,children:void 0},getProps:function(e){return i.ObjectUtils.getMergedProps(e,C.defaultProps)},getOtherProps:function(e){return i.ObjectUtils.getDiffProps(e,C.defaultProps)}},x=p.memo((function(e){var t=function(t){e.menuitem.command&&e.menuitem.command({originalEvent:t,item:e.menuitem}),e.onItemClick&&e.onItemClick(t),t.preventDefault()},n=function(){if(!1===e.menuitem.visible)return null;var n=e.menuitem,r=n.icon,o=n.label,l=n.template,a=n.url,u=n.target,s=i.classNames("p-menuitem-link",n.className,{"p-disabled":n.disabled}),c=i.classNames("p-menuitem-icon",r),m=i.IconUtils.getJSXIcon(r,{className:"p-menuitem-icon"},{props:e.splitButtonProps}),d=p.createElement("a",{href:a||"#",role:"menuitem",className:s,target:u,onClick:t,"aria-label":o},m,o&&p.createElement("span",{className:"p-menuitem-text"},o));l&&(d=i.ObjectUtils.getJSXElement(l,e.menuitem,{onClick:t,className:s,labelClassName:"p-menuitem-text",iconClassName:c,element:d,props:e}));return p.createElement("li",{className:"p-menuitem",role:"none"},d)};return e.menuitem.separator?p.createElement("li",{className:"p-menu-separator",role:"separator"}):n()}));x.displayName="SplitButtonItem";var P=p.forwardRef((function(e,t){var n,r=(n=i.classNames("p-menu p-menu-overlay p-component",e.menuClassName),p.createElement(a.CSSTransition,{nodeRef:t,classNames:"p-connected-overlay",in:e.in,timeout:{enter:120,exit:100},options:e.transitionOptions,unmountOnExit:!0,onEnter:e.onEnter,onEntered:e.onEntered,onExit:e.onExit,onExited:e.onExited},p.createElement("div",{ref:t,className:n,style:e.menuStyle,onClick:e.onClick},p.createElement("ul",{id:e.menuId,className:"p-menu-list p-reset",role:"menu"},e.children))));return p.createElement(u.Portal,{element:r,appendTo:e.appendTo})}));P.displayName="SplitButtonPanel";var j=p.memo(p.forwardRef((function(e,t){var a,u=C.getProps(e),c=I(p.useState(u.id),2),m=c[0],b=c[1],y=I(p.useState(!1),2),v=y[0],E=y[1],N=p.useRef(null),S=p.useRef(null),O=p.useRef(null),h=I(r.useOverlayListener({target:N,overlay:O,listener:function(e,t){t.valid&&B()},when:v}),2),j=h[0],w=h[1],k=function(){B()},T=function(){E(!0)},B=function(){E(!1)},U=function(){i.DomHandler.alignOverlay(O.current,S.current.parentElement,u.appendTo||d.default.appendTo)};r.useMountEffect((function(){m||b(i.UniqueComponentId())})),r.useUnmountEffect((function(){i.ZIndexUtils.clear(O.current)})),p.useImperativeHandle(t,(function(){return{props:u,show:T,hide:B,getElement:function(){return N.current}}}));if(!1===u.visible)return null;var q=i.ObjectUtils.isNotEmpty(u.tooltip),_=C.getOtherProps(u),A={large:"lg",small:"sm"}[u.size],R=i.classNames("p-splitbutton p-component",u.className,(g(a={"p-disabled":u.disabled,"p-button-loading-label-only":u.loading&&!u.icon&&u.label},"p-button-".concat(u.severity),u.severity),g(a,"p-button-raised",u.raised),g(a,"p-button-rounded",u.rounded),g(a,"p-button-text",u.text),g(a,"p-button-outlined",u.outlined),g(a,"p-button-".concat(A),A),a)),D=i.classNames("p-splitbutton-defaultbutton",u.buttonClassName),H=i.classNames("p-splitbutton-menubutton",u.menuButtonClassName),M=u.buttonTemplate?i.ObjectUtils.getJSXElement(u.buttonTemplate,u):null,z=u.model?u.model.map((function(e,t){return p.createElement(x,{splitButtonProps:u,menuitem:e,key:t,onItemClick:k})})):null,J=m+"_menu";return p.createElement(p.Fragment,null,p.createElement("div",f({ref:N,id:m,className:R,style:u.style},_),p.createElement(n.Button,f({ref:S,type:"button",className:D,icon:u.icon,loading:u.loading,loadingIcon:u.loadingIcon,label:u.label,onClick:u.onClick,disabled:u.disabled,tabIndex:u.tabIndex},u.buttonProps),M),p.createElement(n.Button,f({type:"button",className:H,icon:function(){var e="p-button-icon p-c",t=i.IconUtils.getJSXIcon(u.dropdownIcon||p.createElement(s.ChevronDownIcon,{className:e}),{className:e},{props:u});return t},onClick:function(){v?B():T()},disabled:u.disabled,"aria-expanded":v,"aria-haspopup":"true","aria-controls":v?J:null},u.menuButtonProps)),p.createElement(P,{ref:O,appendTo:u.appendTo,menuId:J,menuStyle:u.menuStyle,menuClassName:u.menuClassName,onClick:function(e){o.OverlayService.emit("overlay-click",{originalEvent:e,target:N.current})},in:v,onEnter:function(){i.ZIndexUtils.set("overlay",O.current,d.default.autoZIndex,d.default.zIndex.overlay),U()},onEntered:function(){j(),u.onShow&&u.onShow()},onExit:function(){w()},onExited:function(){i.ZIndexUtils.clear(O.current),u.onHide&&u.onHide()},transitionOptions:u.transitionOptions},z)),q&&p.createElement(l.Tooltip,f({target:N,content:u.tooltip},u.tooltipOptions)))})));j.displayName="SplitButton",exports.SplitButton=j;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/button"),r=require("primereact/hooks"),o=require("primereact/icons/chevrondown"),l=require("primereact/overlayservice"),i=require("primereact/tooltip"),a=require("primereact/utils"),u=require("primereact/componentbase"),c=require("primereact/csstransition"),s=require("primereact/portal");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function p(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var d=p(e),f=m(t);function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},b.apply(this,arguments)}function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function v(e,t){if("object"!==y(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function g(e){var t=v(e,"string");return"symbol"===y(t)?t:String(t)}function O(e,t,n){return(t=g(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e){if(Array.isArray(e))return e}function N(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],u=!0,c=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){c=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return a}}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function h(e,t){if(e){if("string"==typeof e)return S(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?S(e,t):void 0}}function j(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e,t){return E(e)||N(e,t)||h(e,t)||j()}var I=u.ComponentBase.extend({defaultProps:{__TYPE:"SplitButton",id:null,label:null,icon:null,loading:!1,loadingIcon:null,model:null,disabled:null,style:null,className:null,buttonClassName:null,menuStyle:null,menuClassName:null,menuButtonClassName:null,buttonProps:null,menuButtonProps:null,tabIndex:null,severity:null,rounded:!1,raised:!1,outlined:!1,text:!1,size:null,appendTo:null,tooltip:null,tooltipOptions:null,buttonTemplate:null,transitionOptions:null,dropdownIcon:null,onClick:null,onShow:null,onHide:null,children:void 0}}),C=d.memo((function(e){var t=function(t){e.menuitem.command&&e.menuitem.command({originalEvent:t,item:e.menuitem}),e.onItemClick&&e.onItemClick(t),t.preventDefault()},n=function(){if(!1===e.menuitem.visible)return null;var n=e.menuitem,r=n.icon,o=n.label,l=n.template,i=n.url,u=n.target,c=a.classNames("p-menuitem-link",n.className,{"p-disabled":n.disabled}),s=a.classNames("p-menuitem-icon",r),m=a.IconUtils.getJSXIcon(r,{className:"p-menuitem-icon"},{props:e.splitButtonProps}),p=d.createElement("a",{href:i||"#",role:"menuitem",className:c,target:u,onClick:t,"aria-label":o},m,o&&d.createElement("span",{className:"p-menuitem-text"},o));l&&(p=a.ObjectUtils.getJSXElement(l,e.menuitem,{onClick:t,className:c,labelClassName:"p-menuitem-text",iconClassName:s,element:p,props:e}));return d.createElement("li",{className:"p-menuitem",role:"none"},p)};return e.menuitem.separator?d.createElement("li",{className:"p-menu-separator",role:"separator"}):n()}));C.displayName="SplitButtonItem";var w=d.forwardRef((function(e,t){var n,r=(n=a.classNames("p-menu p-menu-overlay p-component",e.menuClassName),d.createElement(c.CSSTransition,{nodeRef:t,classNames:"p-connected-overlay",in:e.in,timeout:{enter:120,exit:100},options:e.transitionOptions,unmountOnExit:!0,onEnter:e.onEnter,onEntered:e.onEntered,onExit:e.onExit,onExited:e.onExited},d.createElement("div",{ref:t,className:n,style:e.menuStyle,onClick:e.onClick},d.createElement("ul",{id:e.menuId,className:"p-menu-list p-reset",role:"menu"},e.children))));return d.createElement(s.Portal,{element:r,appendTo:e.appendTo})}));function x(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function k(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?x(Object(n),!0).forEach((function(t){O(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):x(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}w.displayName="SplitButtonPanel";var B=d.memo(d.forwardRef((function(e,t){var u,c=I.getProps(e),s=P(d.useState(c.id),2),m=s[0],p=s[1],y=P(d.useState(!1),2),v=y[0],g=y[1],E=d.useRef(null),N=d.useRef(null),S=d.useRef(null),h=I.setMetaData({props:c,state:{id:m,overlayVisible:v}}).ptm,j=P(r.useOverlayListener({target:E,overlay:S,listener:function(e,t){t.valid&&U()},when:v}),2),x=j[0],B=j[1],T=function(){U()},q=function(){g(!0)},U=function(){g(!1)},D=function(){a.DomHandler.alignOverlay(S.current,N.current.parentElement,c.appendTo||f.default.appendTo)};r.useMountEffect((function(){m||p(a.UniqueComponentId())})),r.useUnmountEffect((function(){a.ZIndexUtils.clear(S.current)})),d.useImperativeHandle(t,(function(){return{props:c,show:q,hide:U,getElement:function(){return E.current}}}));if(!1===c.visible)return null;var _=a.ObjectUtils.isNotEmpty(c.tooltip),A={large:"lg",small:"sm"}[c.size],R=a.classNames("p-splitbutton p-component",c.className,(O(u={"p-disabled":c.disabled,"p-button-loading-label-only":c.loading&&!c.icon&&c.label},"p-button-".concat(c.severity),c.severity),O(u,"p-button-raised",c.raised),O(u,"p-button-rounded",c.rounded),O(u,"p-button-text",c.text),O(u,"p-button-outlined",c.outlined),O(u,"p-button-".concat(A),A),u)),H=a.classNames("p-splitbutton-defaultbutton",c.buttonClassName),M=a.classNames("p-splitbutton-menubutton",c.menuButtonClassName),z=c.buttonTemplate?a.ObjectUtils.getJSXElement(c.buttonTemplate,c):null,J=c.model?c.model.map((function(e,t){return d.createElement(C,{splitButtonProps:c,menuitem:e,key:t,onItemClick:T})})):null,X=m+"_menu",Z=a.mergeProps(k(k({type:"button",className:M,icon:function(){var e=a.mergeProps({className:"p-button-icon p-c"},h("icon")),t=a.IconUtils.getJSXIcon(c.dropdownIcon||d.createElement(o.ChevronDownIcon,e),k({},e),{props:c});return t},onClick:function(){v?U():q()},disabled:c.disabled,"aria-expanded":v,"aria-haspopup":!0,"aria-controls":v?X:null},c.menuButtonProps),{},{pt:h("menuButton")})),F=a.mergeProps({ref:S,appendTo:c.appendTo,menuId:X,menuStyle:c.menuStyle,menuClassName:c.menuClassName,onClick:function(e){l.OverlayService.emit("overlay-click",{originalEvent:e,target:E.current})},in:v,onEnter:function(){a.ZIndexUtils.set("overlay",S.current,f.default.autoZIndex,f.default.zIndex.overlay),D()},onEntered:function(){x(),c.onShow&&c.onShow()},onExit:function(){B()},onExited:function(){a.ZIndexUtils.clear(S.current),c.onHide&&c.onHide()},transitionOptions:c.transitionOptions},h("menu")),L=a.mergeProps(k(k({ref:N,type:"button",className:H,icon:c.icon,loading:c.loading,loadingIcon:c.loadingIcon,label:c.label,onClick:c.onClick,disabled:c.disabled,tabIndex:c.tabIndex},c.buttonProps),{},{pt:h("button")})),V=a.mergeProps({ref:E,id:m,className:R,style:c.style},I.getOtherProps(c),h("root"));return d.createElement(d.Fragment,null,d.createElement("div",V,d.createElement(n.Button,L,z),d.createElement(n.Button,Z),d.createElement(w,F,J)),_&&d.createElement(i.Tooltip,b({target:E,content:c.tooltip},c.tooltipOptions)))})));B.displayName="SplitButton",exports.SplitButton=B;
@@ -11,7 +11,46 @@ import * as React from 'react';
11
11
  import { CSSTransitionProps } from '../csstransition';
12
12
  import { MenuItem } from '../menuitem';
13
13
  import { TooltipOptions } from '../tooltip/tooltipoptions';
14
- import { IconType, TemplateType } from '../utils';
14
+ import { IconType, PassThroughType, TemplateType } from '../utils';
15
+ import { ButtonPassThroughOptions } from '../button/button';
16
+
17
+ export declare type SplitButtonPassThroughType<T> = PassThroughType<T, SplitButtonPassThroughMethodOptions>;
18
+
19
+ /**
20
+ * Custom passthrough(pt) option method.
21
+ */
22
+ export interface SplitButtonPassThroughMethodOptions {
23
+ props: SplitButtonProps;
24
+ }
25
+
26
+ /**
27
+ * Custom passthrough(pt) options.
28
+ * @see {@link SplitButtonProps.pt}
29
+ */
30
+ export interface SplitButtonPassThroughOptions {
31
+ /**
32
+ * Uses to pass attributes to the root's DOM element.
33
+ */
34
+ root?: SplitButtonPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
35
+ /**
36
+ * Uses to pass attributes to the button's DOM element.
37
+ */
38
+ button?: SplitButtonPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
39
+ /**
40
+ * Uses to pass attributes to the icon's DOM element.
41
+ */
42
+ icon?: SplitButtonPassThroughType<React.SVGProps<SVGSVGElement> | React.HTMLAttributes<HTMLSpanElement | SVGSVGElement>>;
43
+ /**
44
+ * Uses to pass attributes to the Button component.
45
+ * @see {@link ButtonPassThroughOptions}
46
+ */
47
+ menuButton?: ButtonPassThroughOptions;
48
+ // /**
49
+ // * Uses to pass attributes to the TieredMenu component.
50
+ // * @see {@link TieredMenuPassThroughOptions}
51
+ // */
52
+ // menu?: TieredMenuPassThroughOptions; @TODO
53
+ }
15
54
 
16
55
  /**
17
56
  * Defines valid properties in SplitButton component. In addition to these, all properties of HTMLDivElement can be used in this component.
@@ -144,6 +183,25 @@ export interface SplitButtonProps extends Omit<React.DetailedHTMLProps<React.HTM
144
183
  * @readonly
145
184
  */
146
185
  children?: React.ReactNode | undefined;
186
+ /**
187
+ * Uses to pass attributes to DOM elements inside the component.
188
+ * @type {SplitButtonPassThroughOptions}
189
+ */
190
+ pt?: SplitButtonPassThroughOptions;
191
+ }
192
+
193
+ /**
194
+ * Defines current inline state in SplitButton component.
195
+ */
196
+ export interface SplitButtonState {
197
+ /**
198
+ * Current id state as a boolean.
199
+ */
200
+ id: string;
201
+ /**
202
+ * Current overlay visible state as a boolean.
203
+ */
204
+ overlayVisible: boolean;
147
205
  }
148
206
 
149
207
  /**
@@ -2,12 +2,13 @@ import * as React from 'react';
2
2
  import PrimeReact from 'primereact/api';
3
3
  import { Button } from 'primereact/button';
4
4
  import { useOverlayListener, useMountEffect, useUnmountEffect } from 'primereact/hooks';
5
+ import { ChevronDownIcon } from 'primereact/icons/chevrondown';
5
6
  import { OverlayService } from 'primereact/overlayservice';
6
7
  import { Tooltip } from 'primereact/tooltip';
7
- import { ObjectUtils, classNames, IconUtils, UniqueComponentId, ZIndexUtils, DomHandler } from 'primereact/utils';
8
+ import { classNames, IconUtils, ObjectUtils, UniqueComponentId, ZIndexUtils, mergeProps, DomHandler } from 'primereact/utils';
9
+ import { ComponentBase } from 'primereact/componentbase';
8
10
  import { CSSTransition } from 'primereact/csstransition';
9
11
  import { Portal } from 'primereact/portal';
10
- import { ChevronDownIcon } from 'primereact/icons/chevrondown';
11
12
 
12
13
  function _extends() {
13
14
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -120,7 +121,7 @@ function _slicedToArray(arr, i) {
120
121
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
121
122
  }
122
123
 
123
- var SplitButtonBase = {
124
+ var SplitButtonBase = ComponentBase.extend({
124
125
  defaultProps: {
125
126
  __TYPE: 'SplitButton',
126
127
  id: null,
@@ -155,14 +156,8 @@ var SplitButtonBase = {
155
156
  onShow: null,
156
157
  onHide: null,
157
158
  children: undefined
158
- },
159
- getProps: function getProps(props) {
160
- return ObjectUtils.getMergedProps(props, SplitButtonBase.defaultProps);
161
- },
162
- getOtherProps: function getOtherProps(props) {
163
- return ObjectUtils.getDiffProps(props, SplitButtonBase.defaultProps);
164
159
  }
165
- };
160
+ });
166
161
 
167
162
  var SplitButtonItem = /*#__PURE__*/React.memo(function (props) {
168
163
  var onClick = function onClick(e) {
@@ -275,6 +270,8 @@ var SplitButtonPanel = /*#__PURE__*/React.forwardRef(function (props, ref) {
275
270
  });
276
271
  SplitButtonPanel.displayName = 'SplitButtonPanel';
277
272
 
273
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
274
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
278
275
  var SplitButton = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
279
276
  var _classNames;
280
277
  var props = SplitButtonBase.getProps(inProps);
@@ -289,6 +286,14 @@ var SplitButton = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
289
286
  var elementRef = React.useRef(null);
290
287
  var defaultButtonRef = React.useRef(null);
291
288
  var overlayRef = React.useRef(null);
289
+ var _SplitButtonBase$setM = SplitButtonBase.setMetaData({
290
+ props: props,
291
+ state: {
292
+ id: idState,
293
+ overlayVisible: overlayVisibleState
294
+ }
295
+ }),
296
+ ptm = _SplitButtonBase$setM.ptm;
292
297
  var _useOverlayListener = useOverlayListener({
293
298
  target: elementRef,
294
299
  overlay: overlayRef,
@@ -372,7 +377,6 @@ var SplitButton = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
372
377
  return null;
373
378
  }
374
379
  var hasTooltip = ObjectUtils.isNotEmpty(props.tooltip);
375
- var otherProps = SplitButtonBase.getOtherProps(props);
376
380
  var sizeMapping = {
377
381
  large: 'lg',
378
382
  small: 'sm'
@@ -388,43 +392,28 @@ var SplitButton = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
388
392
  var items = createItems();
389
393
  var menuId = idState + '_menu';
390
394
  var dropdownIcon = function dropdownIcon() {
391
- var iconClassName = 'p-button-icon p-c';
392
- var icon = props.dropdownIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, {
393
- className: iconClassName
394
- });
395
- var dropdownIcon = IconUtils.getJSXIcon(icon, {
396
- className: iconClassName
397
- }, {
395
+ var iconProps = mergeProps({
396
+ className: 'p-button-icon p-c'
397
+ }, ptm('icon'));
398
+ var icon = props.dropdownIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, iconProps);
399
+ var dropdownIcon = IconUtils.getJSXIcon(icon, _objectSpread({}, iconProps), {
398
400
  props: props
399
401
  });
400
402
  return dropdownIcon;
401
403
  };
402
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", _extends({
403
- ref: elementRef,
404
- id: idState,
405
- className: className,
406
- style: props.style
407
- }, otherProps), /*#__PURE__*/React.createElement(Button, _extends({
408
- ref: defaultButtonRef,
409
- type: "button",
410
- className: buttonClassName,
411
- icon: props.icon,
412
- loading: props.loading,
413
- loadingIcon: props.loadingIcon,
414
- label: props.label,
415
- onClick: props.onClick,
416
- disabled: props.disabled,
417
- tabIndex: props.tabIndex
418
- }, props.buttonProps), buttonContent), /*#__PURE__*/React.createElement(Button, _extends({
419
- type: "button",
404
+ var menuButtonProps = mergeProps(_objectSpread(_objectSpread({
405
+ type: 'button',
420
406
  className: menuButtonClassName,
421
407
  icon: dropdownIcon,
422
408
  onClick: onDropdownButtonClick,
423
409
  disabled: props.disabled,
424
- "aria-expanded": overlayVisibleState,
425
- "aria-haspopup": "true",
426
- "aria-controls": overlayVisibleState ? menuId : null
427
- }, props.menuButtonProps)), /*#__PURE__*/React.createElement(SplitButtonPanel, {
410
+ 'aria-expanded': overlayVisibleState,
411
+ 'aria-haspopup': true,
412
+ 'aria-controls': overlayVisibleState ? menuId : null
413
+ }, props.menuButtonProps), {}, {
414
+ pt: ptm('menuButton')
415
+ }));
416
+ var menuProps = mergeProps({
428
417
  ref: overlayRef,
429
418
  appendTo: props.appendTo,
430
419
  menuId: menuId,
@@ -437,7 +426,28 @@ var SplitButton = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
437
426
  onExit: onOverlayExit,
438
427
  onExited: onOverlayExited,
439
428
  transitionOptions: props.transitionOptions
440
- }, items)), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
429
+ }, ptm('menu'));
430
+ var splitButtonProps = mergeProps(_objectSpread(_objectSpread({
431
+ ref: defaultButtonRef,
432
+ type: 'button',
433
+ className: buttonClassName,
434
+ icon: props.icon,
435
+ loading: props.loading,
436
+ loadingIcon: props.loadingIcon,
437
+ label: props.label,
438
+ onClick: props.onClick,
439
+ disabled: props.disabled,
440
+ tabIndex: props.tabIndex
441
+ }, props.buttonProps), {}, {
442
+ pt: ptm('button')
443
+ }));
444
+ var rootProps = mergeProps({
445
+ ref: elementRef,
446
+ id: idState,
447
+ className: className,
448
+ style: props.style
449
+ }, SplitButtonBase.getOtherProps(props), ptm('root'));
450
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", rootProps, /*#__PURE__*/React.createElement(Button, splitButtonProps, buttonContent), /*#__PURE__*/React.createElement(Button, menuButtonProps), /*#__PURE__*/React.createElement(SplitButtonPanel, menuProps, items)), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
441
451
  target: elementRef,
442
452
  content: props.tooltip
443
453
  }, props.tooltipOptions)));
@@ -1 +1 @@
1
- import*as e from"react";import t from"primereact/api";import{Button as n}from"primereact/button";import{useOverlayListener as o,useMountEffect as r,useUnmountEffect as l}from"primereact/hooks";import{OverlayService as i}from"primereact/overlayservice";import{Tooltip as a}from"primereact/tooltip";import{ObjectUtils as u,classNames as m,IconUtils as c,UniqueComponentId as s,ZIndexUtils as p,DomHandler as d}from"primereact/utils";import{CSSTransition as f}from"primereact/csstransition";import{Portal as b}from"primereact/portal";import{ChevronDownIcon as y}from"primereact/icons/chevrondown";function v(){return v=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},v.apply(this,arguments)}function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function E(e,t){if("object"!==g(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!==g(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function N(e){var t=E(e,"string");return"symbol"===g(t)?t:String(t)}function S(e,t,n){return(t=N(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function h(e){if(Array.isArray(e))return e}function C(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,l,i,a=[],u=!0,m=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(o=l.call(n)).done)&&(a.push(o.value),a.length!==t);u=!0);}catch(e){m=!0,r=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(m)throw r}}return a}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}function x(e,t){if(e){if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?I(e,t):void 0}}function P(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function O(e,t){return h(e)||C(e,t)||x(e,t)||P()}var w={defaultProps:{__TYPE:"SplitButton",id:null,label:null,icon:null,loading:!1,loadingIcon:null,model:null,disabled:null,style:null,className:null,buttonClassName:null,menuStyle:null,menuClassName:null,menuButtonClassName:null,buttonProps:null,menuButtonProps:null,tabIndex:null,severity:null,rounded:!1,raised:!1,outlined:!1,text:!1,size:null,appendTo:null,tooltip:null,tooltipOptions:null,buttonTemplate:null,transitionOptions:null,dropdownIcon:null,onClick:null,onShow:null,onHide:null,children:void 0},getProps:function(e){return u.getMergedProps(e,w.defaultProps)},getOtherProps:function(e){return u.getDiffProps(e,w.defaultProps)}},k=e.memo((function(t){var n=function(e){t.menuitem.command&&t.menuitem.command({originalEvent:e,item:t.menuitem}),t.onItemClick&&t.onItemClick(e),e.preventDefault()},o=function(){if(!1===t.menuitem.visible)return null;var o=t.menuitem,r=o.icon,l=o.label,i=o.template,a=o.url,s=o.target,p=m("p-menuitem-link",o.className,{"p-disabled":o.disabled}),d=m("p-menuitem-icon",r),f=c.getJSXIcon(r,{className:"p-menuitem-icon"},{props:t.splitButtonProps}),b=e.createElement("a",{href:a||"#",role:"menuitem",className:p,target:s,onClick:n,"aria-label":l},f,l&&e.createElement("span",{className:"p-menuitem-text"},l));i&&(b=u.getJSXElement(i,t.menuitem,{onClick:n,className:p,labelClassName:"p-menuitem-text",iconClassName:d,element:b,props:t}));return e.createElement("li",{className:"p-menuitem",role:"none"},b)};return t.menuitem.separator?e.createElement("li",{className:"p-menu-separator",role:"separator"}):o()}));k.displayName="SplitButtonItem";var T=e.forwardRef((function(t,n){var o,r=(o=m("p-menu p-menu-overlay p-component",t.menuClassName),e.createElement(f,{nodeRef:n,classNames:"p-connected-overlay",in:t.in,timeout:{enter:120,exit:100},options:t.transitionOptions,unmountOnExit:!0,onEnter:t.onEnter,onEntered:t.onEntered,onExit:t.onExit,onExited:t.onExited},e.createElement("div",{ref:n,className:o,style:t.menuStyle,onClick:t.onClick},e.createElement("ul",{id:t.menuId,className:"p-menu-list p-reset",role:"menu"},t.children))));return e.createElement(b,{element:r,appendTo:t.appendTo})}));T.displayName="SplitButtonPanel";var j=e.memo(e.forwardRef((function(f,b){var g,E=w.getProps(f),N=O(e.useState(E.id),2),h=N[0],C=N[1],I=O(e.useState(!1),2),x=I[0],P=I[1],j=e.useRef(null),B=e.useRef(null),A=e.useRef(null),R=O(o({target:j,overlay:A,listener:function(e,t){t.valid&&_()},when:x}),2),H=R[0],J=R[1],X=function(){_()},z=function(){P(!0)},_=function(){P(!1)},D=function(){d.alignOverlay(A.current,B.current.parentElement,E.appendTo||t.appendTo)};r((function(){h||C(s())})),l((function(){p.clear(A.current)})),e.useImperativeHandle(b,(function(){return{props:E,show:z,hide:_,getElement:function(){return j.current}}}));if(!1===E.visible)return null;var M=u.isNotEmpty(E.tooltip),F=w.getOtherProps(E),U={large:"lg",small:"sm"}[E.size],Y=m("p-splitbutton p-component",E.className,(S(g={"p-disabled":E.disabled,"p-button-loading-label-only":E.loading&&!E.icon&&E.label},"p-button-".concat(E.severity),E.severity),S(g,"p-button-raised",E.raised),S(g,"p-button-rounded",E.rounded),S(g,"p-button-text",E.text),S(g,"p-button-outlined",E.outlined),S(g,"p-button-".concat(U),U),g)),Z=m("p-splitbutton-defaultbutton",E.buttonClassName),$=m("p-splitbutton-menubutton",E.menuButtonClassName),q=E.buttonTemplate?u.getJSXElement(E.buttonTemplate,E):null,G=E.model?E.model.map((function(t,n){return e.createElement(k,{splitButtonProps:E,menuitem:t,key:n,onItemClick:X})})):null,K=h+"_menu";return e.createElement(e.Fragment,null,e.createElement("div",v({ref:j,id:h,className:Y,style:E.style},F),e.createElement(n,v({ref:B,type:"button",className:Z,icon:E.icon,loading:E.loading,loadingIcon:E.loadingIcon,label:E.label,onClick:E.onClick,disabled:E.disabled,tabIndex:E.tabIndex},E.buttonProps),q),e.createElement(n,v({type:"button",className:$,icon:function(){var t="p-button-icon p-c",n=c.getJSXIcon(E.dropdownIcon||e.createElement(y,{className:t}),{className:t},{props:E});return n},onClick:function(){x?_():z()},disabled:E.disabled,"aria-expanded":x,"aria-haspopup":"true","aria-controls":x?K:null},E.menuButtonProps)),e.createElement(T,{ref:A,appendTo:E.appendTo,menuId:K,menuStyle:E.menuStyle,menuClassName:E.menuClassName,onClick:function(e){i.emit("overlay-click",{originalEvent:e,target:j.current})},in:x,onEnter:function(){p.set("overlay",A.current,t.autoZIndex,t.zIndex.overlay),D()},onEntered:function(){H(),E.onShow&&E.onShow()},onExit:function(){J()},onExited:function(){p.clear(A.current),E.onHide&&E.onHide()},transitionOptions:E.transitionOptions},G)),M&&e.createElement(a,v({target:j,content:E.tooltip},E.tooltipOptions)))})));j.displayName="SplitButton";export{j as SplitButton};
1
+ import*as e from"react";import t from"primereact/api";import{Button as n}from"primereact/button";import{useOverlayListener as r,useMountEffect as o,useUnmountEffect as l}from"primereact/hooks";import{ChevronDownIcon as i}from"primereact/icons/chevrondown";import{OverlayService as a}from"primereact/overlayservice";import{Tooltip as u}from"primereact/tooltip";import{classNames as m,IconUtils as c,ObjectUtils as s,UniqueComponentId as p,ZIndexUtils as d,mergeProps as f,DomHandler as b}from"primereact/utils";import{ComponentBase as y}from"primereact/componentbase";import{CSSTransition as v}from"primereact/csstransition";import{Portal as g}from"primereact/portal";function E(){return E=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},E.apply(this,arguments)}function O(e){return O="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},O(e)}function S(e,t){if("object"!==O(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==O(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function N(e){var t=S(e,"string");return"symbol"===O(t)?t:String(t)}function h(e,t,n){return(t=N(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function w(e){if(Array.isArray(e))return e}function C(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],u=!0,m=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){m=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(m)throw o}}return a}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t){if(e){if("string"==typeof e)return P(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?P(e,t):void 0}}function x(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function I(e,t){return w(e)||C(e,t)||j(e,t)||x()}var k=y.extend({defaultProps:{__TYPE:"SplitButton",id:null,label:null,icon:null,loading:!1,loadingIcon:null,model:null,disabled:null,style:null,className:null,buttonClassName:null,menuStyle:null,menuClassName:null,menuButtonClassName:null,buttonProps:null,menuButtonProps:null,tabIndex:null,severity:null,rounded:!1,raised:!1,outlined:!1,text:!1,size:null,appendTo:null,tooltip:null,tooltipOptions:null,buttonTemplate:null,transitionOptions:null,dropdownIcon:null,onClick:null,onShow:null,onHide:null,children:void 0}}),T=e.memo((function(t){var n=function(e){t.menuitem.command&&t.menuitem.command({originalEvent:e,item:t.menuitem}),t.onItemClick&&t.onItemClick(e),e.preventDefault()},r=function(){if(!1===t.menuitem.visible)return null;var r=t.menuitem,o=r.icon,l=r.label,i=r.template,a=r.url,u=r.target,p=m("p-menuitem-link",r.className,{"p-disabled":r.disabled}),d=m("p-menuitem-icon",o),f=c.getJSXIcon(o,{className:"p-menuitem-icon"},{props:t.splitButtonProps}),b=e.createElement("a",{href:a||"#",role:"menuitem",className:p,target:u,onClick:n,"aria-label":l},f,l&&e.createElement("span",{className:"p-menuitem-text"},l));i&&(b=s.getJSXElement(i,t.menuitem,{onClick:n,className:p,labelClassName:"p-menuitem-text",iconClassName:d,element:b,props:t}));return e.createElement("li",{className:"p-menuitem",role:"none"},b)};return t.menuitem.separator?e.createElement("li",{className:"p-menu-separator",role:"separator"}):r()}));T.displayName="SplitButtonItem";var B=e.forwardRef((function(t,n){var r,o=(r=m("p-menu p-menu-overlay p-component",t.menuClassName),e.createElement(v,{nodeRef:n,classNames:"p-connected-overlay",in:t.in,timeout:{enter:120,exit:100},options:t.transitionOptions,unmountOnExit:!0,onEnter:t.onEnter,onEntered:t.onEntered,onExit:t.onExit,onExited:t.onExited},e.createElement("div",{ref:n,className:r,style:t.menuStyle,onClick:t.onClick},e.createElement("ul",{id:t.menuId,className:"p-menu-list p-reset",role:"menu"},t.children))));return e.createElement(g,{element:o,appendTo:t.appendTo})}));function A(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function D(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?A(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):A(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}B.displayName="SplitButtonPanel";var R=e.memo(e.forwardRef((function(y,v){var g,O=k.getProps(y),S=I(e.useState(O.id),2),N=S[0],w=S[1],C=I(e.useState(!1),2),P=C[0],j=C[1],x=e.useRef(null),A=e.useRef(null),R=e.useRef(null),H=k.setMetaData({props:O,state:{id:N,overlayVisible:P}}).ptm,J=I(r({target:x,overlay:R,listener:function(e,t){t.valid&&F()},when:P}),2),X=J[0],z=J[1],_=function(){F()},M=function(){j(!0)},F=function(){j(!1)},U=function(){b.alignOverlay(R.current,A.current.parentElement,O.appendTo||t.appendTo)};o((function(){N||w(p())})),l((function(){d.clear(R.current)})),e.useImperativeHandle(v,(function(){return{props:O,show:M,hide:F,getElement:function(){return x.current}}}));if(!1===O.visible)return null;var V=s.isNotEmpty(O.tooltip),Y={large:"lg",small:"sm"}[O.size],Z=m("p-splitbutton p-component",O.className,(h(g={"p-disabled":O.disabled,"p-button-loading-label-only":O.loading&&!O.icon&&O.label},"p-button-".concat(O.severity),O.severity),h(g,"p-button-raised",O.raised),h(g,"p-button-rounded",O.rounded),h(g,"p-button-text",O.text),h(g,"p-button-outlined",O.outlined),h(g,"p-button-".concat(Y),Y),g)),$=m("p-splitbutton-defaultbutton",O.buttonClassName),q=m("p-splitbutton-menubutton",O.menuButtonClassName),G=O.buttonTemplate?s.getJSXElement(O.buttonTemplate,O):null,K=O.model?O.model.map((function(t,n){return e.createElement(T,{splitButtonProps:O,menuitem:t,key:n,onItemClick:_})})):null,L=N+"_menu",Q=f(D(D({type:"button",className:q,icon:function(){var t=f({className:"p-button-icon p-c"},H("icon")),n=c.getJSXIcon(O.dropdownIcon||e.createElement(i,t),D({},t),{props:O});return n},onClick:function(){P?F():M()},disabled:O.disabled,"aria-expanded":P,"aria-haspopup":!0,"aria-controls":P?L:null},O.menuButtonProps),{},{pt:H("menuButton")})),W=f({ref:R,appendTo:O.appendTo,menuId:L,menuStyle:O.menuStyle,menuClassName:O.menuClassName,onClick:function(e){a.emit("overlay-click",{originalEvent:e,target:x.current})},in:P,onEnter:function(){d.set("overlay",R.current,t.autoZIndex,t.zIndex.overlay),U()},onEntered:function(){X(),O.onShow&&O.onShow()},onExit:function(){z()},onExited:function(){d.clear(R.current),O.onHide&&O.onHide()},transitionOptions:O.transitionOptions},H("menu")),ee=f(D(D({ref:A,type:"button",className:$,icon:O.icon,loading:O.loading,loadingIcon:O.loadingIcon,label:O.label,onClick:O.onClick,disabled:O.disabled,tabIndex:O.tabIndex},O.buttonProps),{},{pt:H("button")})),te=f({ref:x,id:N,className:Z,style:O.style},k.getOtherProps(O),H("root"));return e.createElement(e.Fragment,null,e.createElement("div",te,e.createElement(n,ee,G),e.createElement(n,Q),e.createElement(B,W,K)),V&&e.createElement(u,E({target:x,content:O.tooltip},O.tooltipOptions)))})));R.displayName="SplitButton";export{R as SplitButton};