primereact 9.3.0 → 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 (566) hide show
  1. package/README.md +21 -38
  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/api/api.cjs.js +1 -0
  10. package/api/api.cjs.min.js +1 -1
  11. package/api/api.esm.js +1 -0
  12. package/api/api.esm.min.js +1 -1
  13. package/api/api.js +1 -0
  14. package/api/api.min.js +1 -1
  15. package/autocomplete/autocomplete.cjs.js +9 -5
  16. package/autocomplete/autocomplete.cjs.min.js +1 -1
  17. package/autocomplete/autocomplete.esm.js +9 -5
  18. package/autocomplete/autocomplete.esm.min.js +1 -1
  19. package/autocomplete/autocomplete.js +8 -4
  20. package/autocomplete/autocomplete.min.js +1 -1
  21. package/avatar/avatar.cjs.js +71 -22
  22. package/avatar/avatar.cjs.min.js +1 -1
  23. package/avatar/avatar.d.ts +37 -1
  24. package/avatar/avatar.esm.js +72 -23
  25. package/avatar/avatar.esm.min.js +1 -1
  26. package/avatar/avatar.js +72 -24
  27. package/avatar/avatar.min.js +1 -1
  28. package/avatargroup/avatargroup.cjs.js +26 -42
  29. package/avatargroup/avatargroup.cjs.min.js +1 -1
  30. package/avatargroup/avatargroup.d.ts +24 -0
  31. package/avatargroup/avatargroup.esm.js +13 -29
  32. package/avatargroup/avatargroup.esm.min.js +1 -1
  33. package/avatargroup/avatargroup.js +52 -69
  34. package/avatargroup/avatargroup.min.js +1 -1
  35. package/badge/badge.cjs.js +12 -28
  36. package/badge/badge.cjs.min.js +1 -1
  37. package/badge/badge.d.ts +26 -0
  38. package/badge/badge.esm.js +13 -29
  39. package/badge/badge.esm.min.js +1 -1
  40. package/badge/badge.js +13 -30
  41. package/badge/badge.min.js +1 -1
  42. package/blockui/blockui.cjs.js +12 -28
  43. package/blockui/blockui.cjs.min.js +1 -1
  44. package/blockui/blockui.d.ts +38 -0
  45. package/blockui/blockui.esm.js +13 -29
  46. package/blockui/blockui.esm.min.js +1 -1
  47. package/blockui/blockui.js +13 -30
  48. package/blockui/blockui.min.js +1 -1
  49. package/breadcrumb/breadcrumb.js +1 -1
  50. package/breadcrumb/breadcrumb.min.js +1 -1
  51. package/button/button.cjs.js +49 -42
  52. package/button/button.cjs.min.js +1 -1
  53. package/button/button.d.ts +42 -1
  54. package/button/button.esm.js +50 -43
  55. package/button/button.esm.min.js +1 -1
  56. package/button/button.js +49 -43
  57. package/button/button.min.js +1 -1
  58. package/calendar/calendar.cjs.js +31 -23
  59. package/calendar/calendar.cjs.min.js +1 -1
  60. package/calendar/calendar.d.ts +1 -1
  61. package/calendar/calendar.esm.js +31 -23
  62. package/calendar/calendar.esm.min.js +1 -1
  63. package/calendar/calendar.js +28 -20
  64. package/calendar/calendar.min.js +1 -1
  65. package/card/card.cjs.js +52 -63
  66. package/card/card.cjs.min.js +1 -1
  67. package/card/card.d.ts +56 -0
  68. package/card/card.esm.js +39 -50
  69. package/card/card.esm.min.js +1 -1
  70. package/card/card.js +86 -98
  71. package/card/card.min.js +1 -1
  72. package/carousel/carousel.cjs.js +16 -28
  73. package/carousel/carousel.cjs.min.js +1 -1
  74. package/carousel/carousel.d.ts +2 -2
  75. package/carousel/carousel.esm.js +16 -28
  76. package/carousel/carousel.esm.min.js +1 -1
  77. package/carousel/carousel.js +14 -26
  78. package/carousel/carousel.min.js +1 -1
  79. package/cascadeselect/cascadeselect.js +1 -1
  80. package/cascadeselect/cascadeselect.min.js +1 -1
  81. package/chart/chart.cjs.js +5 -1
  82. package/chart/chart.cjs.min.js +1 -1
  83. package/chart/chart.d.ts +5 -0
  84. package/chart/chart.esm.js +5 -1
  85. package/chart/chart.esm.min.js +1 -1
  86. package/chart/chart.js +5 -1
  87. package/chart/chart.min.js +1 -1
  88. package/checkbox/checkbox.cjs.js +22 -7
  89. package/checkbox/checkbox.cjs.min.js +1 -1
  90. package/checkbox/checkbox.d.ts +14 -1
  91. package/checkbox/checkbox.esm.js +22 -7
  92. package/checkbox/checkbox.esm.min.js +1 -1
  93. package/checkbox/checkbox.js +23 -8
  94. package/checkbox/checkbox.min.js +1 -1
  95. package/chip/chip.cjs.js +45 -42
  96. package/chip/chip.cjs.min.js +1 -1
  97. package/chip/chip.d.ts +53 -1
  98. package/chip/chip.esm.js +46 -43
  99. package/chip/chip.esm.min.js +1 -1
  100. package/chip/chip.js +46 -44
  101. package/chip/chip.min.js +1 -1
  102. package/chips/chips.cjs.js +13 -5
  103. package/chips/chips.cjs.min.js +1 -1
  104. package/chips/chips.esm.js +13 -5
  105. package/chips/chips.esm.min.js +1 -1
  106. package/chips/chips.js +14 -6
  107. package/chips/chips.min.js +1 -1
  108. package/colorpicker/colorpicker.cjs.js +7 -4
  109. package/colorpicker/colorpicker.cjs.min.js +1 -1
  110. package/colorpicker/colorpicker.d.ts +8 -0
  111. package/colorpicker/colorpicker.esm.js +7 -4
  112. package/colorpicker/colorpicker.esm.min.js +1 -1
  113. package/colorpicker/colorpicker.js +7 -4
  114. package/colorpicker/colorpicker.min.js +1 -1
  115. package/column/column.d.ts +6 -2
  116. package/componentbase/componentbase.cjs.js +105 -0
  117. package/componentbase/componentbase.cjs.min.js +1 -0
  118. package/componentbase/componentbase.esm.js +101 -0
  119. package/componentbase/componentbase.esm.min.js +1 -0
  120. package/componentbase/componentbase.js +109 -0
  121. package/componentbase/componentbase.min.js +1 -0
  122. package/componentbase/package.json +6 -0
  123. package/confirmdialog/confirmdialog.cjs.js +44 -27
  124. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  125. package/confirmdialog/confirmdialog.d.ts +90 -2
  126. package/confirmdialog/confirmdialog.esm.js +45 -28
  127. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  128. package/confirmdialog/confirmdialog.js +45 -29
  129. package/confirmdialog/confirmdialog.min.js +1 -1
  130. package/confirmpopup/confirmpopup.cjs.js +53 -50
  131. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  132. package/confirmpopup/confirmpopup.d.ts +70 -1
  133. package/confirmpopup/confirmpopup.esm.js +54 -51
  134. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  135. package/confirmpopup/confirmpopup.js +54 -52
  136. package/confirmpopup/confirmpopup.min.js +1 -1
  137. package/contextmenu/contextmenu.js +1 -1
  138. package/contextmenu/contextmenu.min.js +1 -1
  139. package/core/core.js +1253 -1048
  140. package/core/core.min.js +17 -15
  141. package/datatable/datatable.cjs.js +82 -41
  142. package/datatable/datatable.cjs.min.js +1 -1
  143. package/datatable/datatable.d.ts +39 -10
  144. package/datatable/datatable.esm.js +82 -41
  145. package/datatable/datatable.esm.min.js +1 -1
  146. package/datatable/datatable.js +72 -31
  147. package/datatable/datatable.min.js +1 -1
  148. package/dataview/dataview.js +1 -1
  149. package/dataview/dataview.min.js +1 -1
  150. package/deferredcontent/deferredcontent.cjs.js +13 -26
  151. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  152. package/deferredcontent/deferredcontent.d.ts +38 -0
  153. package/deferredcontent/deferredcontent.esm.js +14 -27
  154. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  155. package/deferredcontent/deferredcontent.js +14 -28
  156. package/deferredcontent/deferredcontent.min.js +1 -1
  157. package/dialog/dialog.cjs.js +83 -83
  158. package/dialog/dialog.cjs.min.js +1 -1
  159. package/dialog/dialog.d.ts +85 -3
  160. package/dialog/dialog.esm.js +83 -83
  161. package/dialog/dialog.esm.min.js +1 -1
  162. package/dialog/dialog.js +81 -82
  163. package/dialog/dialog.min.js +1 -1
  164. package/divider/divider.cjs.js +35 -51
  165. package/divider/divider.cjs.min.js +1 -1
  166. package/divider/divider.d.ts +30 -0
  167. package/divider/divider.esm.js +22 -38
  168. package/divider/divider.esm.min.js +1 -1
  169. package/divider/divider.js +66 -83
  170. package/divider/divider.min.js +1 -1
  171. package/dropdown/dropdown.cjs.js +45 -19
  172. package/dropdown/dropdown.cjs.min.js +1 -1
  173. package/dropdown/dropdown.d.ts +6 -1
  174. package/dropdown/dropdown.esm.js +45 -19
  175. package/dropdown/dropdown.esm.min.js +1 -1
  176. package/dropdown/dropdown.js +45 -19
  177. package/dropdown/dropdown.min.js +1 -1
  178. package/fieldset/fieldset.cjs.js +55 -54
  179. package/fieldset/fieldset.cjs.min.js +1 -1
  180. package/fieldset/fieldset.d.ts +77 -1
  181. package/fieldset/fieldset.esm.js +56 -55
  182. package/fieldset/fieldset.esm.min.js +1 -1
  183. package/fieldset/fieldset.js +56 -56
  184. package/fieldset/fieldset.min.js +1 -1
  185. package/fileupload/fileupload.cjs.js +13 -14
  186. package/fileupload/fileupload.cjs.min.js +1 -1
  187. package/fileupload/fileupload.esm.js +14 -15
  188. package/fileupload/fileupload.esm.min.js +1 -1
  189. package/fileupload/fileupload.js +14 -16
  190. package/fileupload/fileupload.min.js +1 -1
  191. package/galleria/galleria.cjs.js +5 -0
  192. package/galleria/galleria.cjs.min.js +1 -1
  193. package/galleria/galleria.d.ts +4 -4
  194. package/galleria/galleria.esm.js +5 -0
  195. package/galleria/galleria.esm.min.js +1 -1
  196. package/galleria/galleria.js +6 -1
  197. package/galleria/galleria.min.js +1 -1
  198. package/hooks/hooks.cjs.js +15 -2
  199. package/hooks/hooks.cjs.min.js +1 -1
  200. package/hooks/hooks.esm.js +15 -2
  201. package/hooks/hooks.esm.min.js +1 -1
  202. package/hooks/hooks.js +15 -2
  203. package/hooks/hooks.min.js +1 -1
  204. package/image/image.cjs.js +63 -41
  205. package/image/image.cjs.min.js +1 -1
  206. package/image/image.d.ts +22 -6
  207. package/image/image.esm.js +63 -41
  208. package/image/image.esm.min.js +1 -1
  209. package/image/image.js +61 -39
  210. package/image/image.min.js +1 -1
  211. package/inplace/inplace.cjs.js +33 -51
  212. package/inplace/inplace.cjs.min.js +1 -1
  213. package/inplace/inplace.d.ts +51 -1
  214. package/inplace/inplace.esm.js +33 -51
  215. package/inplace/inplace.esm.min.js +1 -1
  216. package/inplace/inplace.js +33 -52
  217. package/inplace/inplace.min.js +1 -1
  218. package/inputmask/inputmask.cjs.js +6 -2
  219. package/inputmask/inputmask.cjs.min.js +1 -1
  220. package/inputmask/inputmask.d.ts +1 -1
  221. package/inputmask/inputmask.esm.js +6 -2
  222. package/inputmask/inputmask.esm.min.js +1 -1
  223. package/inputmask/inputmask.js +6 -2
  224. package/inputmask/inputmask.min.js +1 -1
  225. package/inputnumber/inputnumber.cjs.js +8 -4
  226. package/inputnumber/inputnumber.cjs.min.js +1 -1
  227. package/inputnumber/inputnumber.esm.js +8 -4
  228. package/inputnumber/inputnumber.esm.min.js +1 -1
  229. package/inputnumber/inputnumber.js +8 -4
  230. package/inputnumber/inputnumber.min.js +1 -1
  231. package/inputswitch/inputswitch.cjs.js +6 -2
  232. package/inputswitch/inputswitch.cjs.min.js +1 -1
  233. package/inputswitch/inputswitch.esm.js +6 -2
  234. package/inputswitch/inputswitch.esm.min.js +1 -1
  235. package/inputswitch/inputswitch.js +6 -2
  236. package/inputswitch/inputswitch.min.js +1 -1
  237. package/inputtext/inputtext.cjs.js +7 -8
  238. package/inputtext/inputtext.cjs.min.js +1 -1
  239. package/inputtext/inputtext.esm.js +7 -8
  240. package/inputtext/inputtext.esm.min.js +1 -1
  241. package/inputtext/inputtext.js +7 -8
  242. package/inputtext/inputtext.min.js +1 -1
  243. package/inputtextarea/inputtextarea.cjs.js +5 -6
  244. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  245. package/inputtextarea/inputtextarea.esm.js +5 -6
  246. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  247. package/inputtextarea/inputtextarea.js +5 -6
  248. package/inputtextarea/inputtextarea.min.js +1 -1
  249. package/listbox/listbox.cjs.js +12 -4
  250. package/listbox/listbox.cjs.min.js +1 -1
  251. package/listbox/listbox.esm.js +12 -4
  252. package/listbox/listbox.esm.min.js +1 -1
  253. package/listbox/listbox.js +13 -5
  254. package/listbox/listbox.min.js +1 -1
  255. package/megamenu/megamenu.js +1 -1
  256. package/megamenu/megamenu.min.js +1 -1
  257. package/mention/mention.cjs.js +6 -6
  258. package/mention/mention.cjs.min.js +1 -1
  259. package/mention/mention.esm.js +6 -6
  260. package/mention/mention.esm.min.js +1 -1
  261. package/mention/mention.js +6 -6
  262. package/mention/mention.min.js +1 -1
  263. package/menubar/menubar.js +1 -1
  264. package/menubar/menubar.min.js +1 -1
  265. package/menuitem/menuitem.d.ts +0 -2
  266. package/message/message.d.ts +1 -1
  267. package/message/message.js +1 -1
  268. package/message/message.min.js +1 -1
  269. package/messages/messages.cjs.js +64 -50
  270. package/messages/messages.cjs.min.js +1 -1
  271. package/messages/messages.d.ts +5 -0
  272. package/messages/messages.esm.js +64 -50
  273. package/messages/messages.esm.min.js +1 -1
  274. package/messages/messages.js +62 -48
  275. package/messages/messages.min.js +1 -1
  276. package/multiselect/multiselect.cjs.js +46 -22
  277. package/multiselect/multiselect.cjs.min.js +1 -1
  278. package/multiselect/multiselect.d.ts +4 -0
  279. package/multiselect/multiselect.esm.js +46 -22
  280. package/multiselect/multiselect.esm.min.js +1 -1
  281. package/multiselect/multiselect.js +45 -21
  282. package/multiselect/multiselect.min.js +1 -1
  283. package/multistatecheckbox/multistatecheckbox.cjs.js +6 -2
  284. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  285. package/multistatecheckbox/multistatecheckbox.esm.js +6 -2
  286. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  287. package/multistatecheckbox/multistatecheckbox.js +6 -2
  288. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  289. package/orderlist/orderlist.js +1 -1
  290. package/orderlist/orderlist.min.js +1 -1
  291. package/organizationchart/organizationchart.d.ts +18 -2
  292. package/organizationchart/organizationchart.js +1 -1
  293. package/organizationchart/organizationchart.min.js +1 -1
  294. package/overlaypanel/overlaypanel.cjs.js +40 -46
  295. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  296. package/overlaypanel/overlaypanel.d.ts +45 -1
  297. package/overlaypanel/overlaypanel.esm.js +41 -47
  298. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  299. package/overlaypanel/overlaypanel.js +41 -48
  300. package/overlaypanel/overlaypanel.min.js +1 -1
  301. package/package.json +1 -1
  302. package/paginator/paginator.cjs.js +1 -1
  303. package/paginator/paginator.cjs.min.js +1 -1
  304. package/paginator/paginator.esm.js +1 -1
  305. package/paginator/paginator.esm.min.js +1 -1
  306. package/paginator/paginator.js +2 -2
  307. package/paginator/paginator.min.js +1 -1
  308. package/panel/panel.cjs.js +78 -63
  309. package/panel/panel.cjs.min.js +1 -1
  310. package/panel/panel.d.ts +100 -1
  311. package/panel/panel.esm.js +79 -64
  312. package/panel/panel.esm.min.js +1 -1
  313. package/panel/panel.js +79 -65
  314. package/panel/panel.min.js +1 -1
  315. package/panelmenu/panelmenu.js +1 -1
  316. package/panelmenu/panelmenu.min.js +1 -1
  317. package/password/password.cjs.js +3 -9
  318. package/password/password.cjs.min.js +1 -1
  319. package/password/password.d.ts +1 -1
  320. package/password/password.esm.js +3 -9
  321. package/password/password.esm.min.js +1 -1
  322. package/password/password.js +4 -10
  323. package/password/password.min.js +1 -1
  324. package/picklist/picklist.cjs.js +2 -2
  325. package/picklist/picklist.cjs.min.js +1 -1
  326. package/picklist/picklist.esm.js +2 -2
  327. package/picklist/picklist.esm.min.js +1 -1
  328. package/picklist/picklist.js +3 -3
  329. package/picklist/picklist.min.js +1 -1
  330. package/primereact.all.cjs.js +2310 -1775
  331. package/primereact.all.cjs.min.js +1 -1
  332. package/primereact.all.esm.js +2310 -1776
  333. package/primereact.all.esm.min.js +1 -1
  334. package/primereact.all.js +2310 -1775
  335. package/primereact.all.min.js +1 -1
  336. package/progressbar/progressbar.cjs.js +45 -57
  337. package/progressbar/progressbar.cjs.min.js +1 -1
  338. package/progressbar/progressbar.d.ts +38 -0
  339. package/progressbar/progressbar.esm.js +32 -44
  340. package/progressbar/progressbar.esm.min.js +1 -1
  341. package/progressbar/progressbar.js +105 -118
  342. package/progressbar/progressbar.min.js +1 -1
  343. package/progressspinner/progressspinner.cjs.js +37 -51
  344. package/progressspinner/progressspinner.cjs.min.js +1 -1
  345. package/progressspinner/progressspinner.d.ts +34 -0
  346. package/progressspinner/progressspinner.esm.js +24 -38
  347. package/progressspinner/progressspinner.esm.min.js +1 -1
  348. package/progressspinner/progressspinner.js +75 -90
  349. package/progressspinner/progressspinner.min.js +1 -1
  350. package/radiobutton/radiobutton.cjs.js +29 -14
  351. package/radiobutton/radiobutton.cjs.min.js +1 -1
  352. package/radiobutton/radiobutton.d.ts +14 -1
  353. package/radiobutton/radiobutton.esm.js +29 -14
  354. package/radiobutton/radiobutton.esm.min.js +1 -1
  355. package/radiobutton/radiobutton.js +29 -14
  356. package/radiobutton/radiobutton.min.js +1 -1
  357. package/rating/rating.cjs.js +15 -7
  358. package/rating/rating.cjs.min.js +1 -1
  359. package/rating/rating.esm.js +15 -7
  360. package/rating/rating.esm.min.js +1 -1
  361. package/rating/rating.js +14 -6
  362. package/rating/rating.min.js +1 -1
  363. package/resources/primereact.css +538 -538
  364. package/resources/primereact.min.css +1 -1
  365. package/resources/themes/arya-blue/theme.css +3 -0
  366. package/resources/themes/arya-green/theme.css +3 -0
  367. package/resources/themes/arya-orange/theme.css +3 -0
  368. package/resources/themes/arya-purple/theme.css +3 -0
  369. package/resources/themes/bootstrap4-dark-blue/theme.css +3 -0
  370. package/resources/themes/bootstrap4-dark-purple/theme.css +3 -0
  371. package/resources/themes/bootstrap4-light-blue/theme.css +3 -0
  372. package/resources/themes/bootstrap4-light-purple/theme.css +3 -0
  373. package/resources/themes/fluent-light/theme.css +3 -0
  374. package/resources/themes/lara-dark-blue/theme.css +3 -0
  375. package/resources/themes/lara-dark-indigo/theme.css +3 -0
  376. package/resources/themes/lara-dark-purple/theme.css +3 -0
  377. package/resources/themes/lara-dark-teal/theme.css +3 -0
  378. package/resources/themes/lara-light-blue/theme.css +3 -0
  379. package/resources/themes/lara-light-indigo/theme.css +3 -0
  380. package/resources/themes/lara-light-purple/theme.css +3 -0
  381. package/resources/themes/lara-light-teal/theme.css +3 -0
  382. package/resources/themes/luna-amber/theme.css +3 -0
  383. package/resources/themes/luna-blue/theme.css +3 -0
  384. package/resources/themes/luna-green/theme.css +3 -0
  385. package/resources/themes/luna-pink/theme.css +3 -0
  386. package/resources/themes/md-dark-deeppurple/theme.css +3 -0
  387. package/resources/themes/md-dark-indigo/theme.css +3 -0
  388. package/resources/themes/md-light-deeppurple/theme.css +3 -0
  389. package/resources/themes/md-light-indigo/theme.css +3 -0
  390. package/resources/themes/mdc-dark-deeppurple/theme.css +3 -0
  391. package/resources/themes/mdc-dark-indigo/theme.css +3 -0
  392. package/resources/themes/mdc-light-deeppurple/theme.css +3 -0
  393. package/resources/themes/mdc-light-indigo/theme.css +3 -0
  394. package/resources/themes/mira/theme.css +3 -0
  395. package/resources/themes/nano/theme.css +3 -0
  396. package/resources/themes/nova/theme.css +3 -0
  397. package/resources/themes/nova-accent/theme.css +3 -0
  398. package/resources/themes/nova-alt/theme.css +3 -0
  399. package/resources/themes/rhea/theme.css +3 -0
  400. package/resources/themes/saga-blue/theme.css +3 -0
  401. package/resources/themes/saga-green/theme.css +3 -0
  402. package/resources/themes/saga-orange/theme.css +3 -0
  403. package/resources/themes/saga-purple/theme.css +3 -0
  404. package/resources/themes/soho-dark/theme.css +3 -0
  405. package/resources/themes/soho-light/theme.css +3 -0
  406. package/resources/themes/tailwind-light/theme.css +3 -0
  407. package/resources/themes/vela-blue/theme.css +3 -0
  408. package/resources/themes/vela-green/theme.css +3 -0
  409. package/resources/themes/vela-orange/theme.css +3 -0
  410. package/resources/themes/vela-purple/theme.css +3 -0
  411. package/resources/themes/viva-dark/theme.css +3 -0
  412. package/resources/themes/viva-light/theme.css +3 -0
  413. package/scrollpanel/scrollpanel.cjs.js +39 -52
  414. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  415. package/scrollpanel/scrollpanel.d.ts +42 -0
  416. package/scrollpanel/scrollpanel.esm.js +26 -39
  417. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  418. package/scrollpanel/scrollpanel.js +193 -207
  419. package/scrollpanel/scrollpanel.min.js +1 -1
  420. package/scrolltop/scrolltop.cjs.js +64 -36
  421. package/scrolltop/scrolltop.cjs.min.js +1 -1
  422. package/scrolltop/scrolltop.d.ts +42 -1
  423. package/scrolltop/scrolltop.esm.js +65 -37
  424. package/scrolltop/scrolltop.esm.min.js +1 -1
  425. package/scrolltop/scrolltop.js +65 -38
  426. package/scrolltop/scrolltop.min.js +1 -1
  427. package/selectbutton/selectbutton.cjs.js +6 -2
  428. package/selectbutton/selectbutton.cjs.min.js +1 -1
  429. package/selectbutton/selectbutton.esm.js +6 -2
  430. package/selectbutton/selectbutton.esm.min.js +1 -1
  431. package/selectbutton/selectbutton.js +6 -2
  432. package/selectbutton/selectbutton.min.js +1 -1
  433. package/sidebar/sidebar.cjs.js +88 -52
  434. package/sidebar/sidebar.cjs.min.js +1 -1
  435. package/sidebar/sidebar.d.ts +58 -1
  436. package/sidebar/sidebar.esm.js +89 -53
  437. package/sidebar/sidebar.esm.min.js +1 -1
  438. package/sidebar/sidebar.js +89 -54
  439. package/sidebar/sidebar.min.js +1 -1
  440. package/skeleton/skeleton.cjs.js +26 -42
  441. package/skeleton/skeleton.cjs.min.js +1 -1
  442. package/skeleton/skeleton.d.ts +26 -0
  443. package/skeleton/skeleton.esm.js +13 -29
  444. package/skeleton/skeleton.esm.min.js +1 -1
  445. package/skeleton/skeleton.js +70 -87
  446. package/skeleton/skeleton.min.js +1 -1
  447. package/slidemenu/slidemenu.js +1 -1
  448. package/slidemenu/slidemenu.min.js +1 -1
  449. package/speeddial/speeddial.cjs.js +63 -56
  450. package/speeddial/speeddial.cjs.min.js +1 -1
  451. package/speeddial/speeddial.d.ts +64 -1
  452. package/speeddial/speeddial.esm.js +64 -57
  453. package/speeddial/speeddial.esm.min.js +1 -1
  454. package/speeddial/speeddial.js +62 -56
  455. package/speeddial/speeddial.min.js +1 -1
  456. package/splitbutton/splitbutton.cjs.js +50 -40
  457. package/splitbutton/splitbutton.cjs.min.js +1 -1
  458. package/splitbutton/splitbutton.d.ts +59 -1
  459. package/splitbutton/splitbutton.esm.js +51 -41
  460. package/splitbutton/splitbutton.esm.min.js +1 -1
  461. package/splitbutton/splitbutton.js +50 -41
  462. package/splitbutton/splitbutton.min.js +1 -1
  463. package/splitter/splitter.cjs.js +68 -70
  464. package/splitter/splitter.cjs.min.js +1 -1
  465. package/splitter/splitter.d.ts +60 -0
  466. package/splitter/splitter.esm.js +69 -71
  467. package/splitter/splitter.esm.min.js +1 -1
  468. package/splitter/splitter.js +69 -72
  469. package/splitter/splitter.min.js +1 -1
  470. package/styleclass/styleclass.cjs.js +9 -7
  471. package/styleclass/styleclass.cjs.min.js +1 -1
  472. package/styleclass/styleclass.esm.js +9 -7
  473. package/styleclass/styleclass.esm.min.js +1 -1
  474. package/styleclass/styleclass.js +9 -7
  475. package/styleclass/styleclass.min.js +1 -1
  476. package/tabview/tabview.cjs.js +143 -123
  477. package/tabview/tabview.cjs.min.js +1 -1
  478. package/tabview/tabview.d.ts +135 -4
  479. package/tabview/tabview.esm.js +144 -124
  480. package/tabview/tabview.esm.min.js +1 -1
  481. package/tabview/tabview.js +144 -125
  482. package/tabview/tabview.min.js +1 -1
  483. package/tag/tag.cjs.js +18 -30
  484. package/tag/tag.cjs.min.js +1 -1
  485. package/tag/tag.d.ts +34 -1
  486. package/tag/tag.esm.js +19 -31
  487. package/tag/tag.esm.min.js +1 -1
  488. package/tag/tag.js +19 -32
  489. package/tag/tag.min.js +1 -1
  490. package/terminal/terminal.cjs.js +49 -52
  491. package/terminal/terminal.cjs.min.js +1 -1
  492. package/terminal/terminal.d.ts +73 -0
  493. package/terminal/terminal.esm.js +50 -53
  494. package/terminal/terminal.esm.min.js +1 -1
  495. package/terminal/terminal.js +50 -54
  496. package/terminal/terminal.min.js +1 -1
  497. package/terminalservice/terminalservice.d.ts +1 -1
  498. package/tieredmenu/tieredmenu.cjs.js +1 -1
  499. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  500. package/tieredmenu/tieredmenu.esm.js +1 -1
  501. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  502. package/tieredmenu/tieredmenu.js +2 -2
  503. package/tieredmenu/tieredmenu.min.js +1 -1
  504. package/timeline/timeline.d.ts +1 -1
  505. package/toast/toast.cjs.js +13 -10
  506. package/toast/toast.cjs.min.js +1 -1
  507. package/toast/toast.d.ts +4 -0
  508. package/toast/toast.esm.js +13 -10
  509. package/toast/toast.esm.min.js +1 -1
  510. package/toast/toast.js +14 -11
  511. package/toast/toast.min.js +1 -1
  512. package/togglebutton/togglebutton.cjs.js +6 -2
  513. package/togglebutton/togglebutton.cjs.min.js +1 -1
  514. package/togglebutton/togglebutton.esm.js +6 -2
  515. package/togglebutton/togglebutton.esm.min.js +1 -1
  516. package/togglebutton/togglebutton.js +6 -2
  517. package/togglebutton/togglebutton.min.js +1 -1
  518. package/toolbar/toolbar.cjs.js +35 -49
  519. package/toolbar/toolbar.cjs.min.js +1 -1
  520. package/toolbar/toolbar.d.ts +44 -0
  521. package/toolbar/toolbar.esm.js +22 -36
  522. package/toolbar/toolbar.esm.min.js +1 -1
  523. package/toolbar/toolbar.js +72 -87
  524. package/toolbar/toolbar.min.js +1 -1
  525. package/tooltip/tooltip.cjs.js +31 -37
  526. package/tooltip/tooltip.cjs.min.js +1 -1
  527. package/tooltip/tooltip.d.ts +55 -0
  528. package/tooltip/tooltip.esm.js +32 -38
  529. package/tooltip/tooltip.esm.min.js +1 -1
  530. package/tooltip/tooltip.js +32 -39
  531. package/tooltip/tooltip.min.js +1 -1
  532. package/tooltip/tooltipoptions.d.ts +5 -0
  533. package/tree/tree.d.ts +1 -1
  534. package/tree/tree.js +1 -1
  535. package/tree/tree.min.js +1 -1
  536. package/treenode/treenode.d.ts +5 -1
  537. package/treeselect/treeselect.cjs.js +9 -5
  538. package/treeselect/treeselect.cjs.min.js +1 -1
  539. package/treeselect/treeselect.d.ts +1 -1
  540. package/treeselect/treeselect.esm.js +9 -5
  541. package/treeselect/treeselect.esm.min.js +1 -1
  542. package/treeselect/treeselect.js +8 -4
  543. package/treeselect/treeselect.min.js +1 -1
  544. package/treetable/treetable.cjs.js +10 -3
  545. package/treetable/treetable.cjs.min.js +1 -1
  546. package/treetable/treetable.d.ts +1 -1
  547. package/treetable/treetable.esm.js +10 -3
  548. package/treetable/treetable.esm.min.js +1 -1
  549. package/treetable/treetable.js +11 -4
  550. package/treetable/treetable.min.js +1 -1
  551. package/tristatecheckbox/tristatecheckbox.cjs.js +8 -4
  552. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  553. package/tristatecheckbox/tristatecheckbox.esm.js +8 -4
  554. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  555. package/tristatecheckbox/tristatecheckbox.js +8 -4
  556. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  557. package/utils/utils.cjs.js +710 -672
  558. package/utils/utils.cjs.min.js +1 -1
  559. package/utils/utils.d.ts +4 -0
  560. package/utils/utils.esm.js +710 -673
  561. package/utils/utils.esm.min.js +1 -1
  562. package/utils/utils.js +710 -672
  563. package/utils/utils.min.js +1 -1
  564. package/virtualscroller/virtualscroller.js +1 -1
  565. package/virtualscroller/virtualscroller.min.js +1 -1
  566. package/web-types.json +17 -199
@@ -12,7 +12,10 @@
12
12
  *
13
13
  */
14
14
  import * as React from 'react';
15
- import { IconType } from '../utils/utils';
15
+ import { IconType, PassThroughType } from '../utils/utils';
16
+
17
+ export declare type TabViewPassThroughType<T> = PassThroughType<T, TabViewPassThroughMethodOptions>;
18
+ export declare type TabPanelPassThroughType<T> = PassThroughType<T, TabPanelPassThroughMethodOptions>;
16
19
 
17
20
  /**
18
21
  * Custom Tabpanel header template options
@@ -70,6 +73,41 @@ interface TabPanelHeaderTemplateOptions {
70
73
  ariaControls: string;
71
74
  }
72
75
 
76
+ /**
77
+ * Custom passthrough(pt) option method.
78
+ */
79
+ export interface TabPanelPassThroughMethodOptions {
80
+ props: TabPanelProps;
81
+ parent: TabViewPassThroughMethodOptions;
82
+ }
83
+
84
+ /**
85
+ * Custom passthrough(pt) options.
86
+ * @see {@link TabPanelProps.pt}
87
+ */
88
+ export interface TabPanelPassThroughOptions {
89
+ /**
90
+ * Uses to pass attributes to the root's DOM element.
91
+ */
92
+ root?: TabPanelPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
93
+ /**
94
+ * Uses to pass attributes to the header's DOM element.
95
+ */
96
+ header?: TabPanelPassThroughType<React.HTMLAttributes<HTMLLIElement>>;
97
+ /**
98
+ * Uses to pass attributes to the header action's DOM element.
99
+ */
100
+ headerAction?: TabPanelPassThroughType<React.HTMLAttributes<HTMLAnchorElement>>;
101
+ /**
102
+ * Uses to pass attributes to the title's DOM element.
103
+ */
104
+ headerTitle?: TabPanelPassThroughType<React.HTMLAttributes<HTMLSpanElement>>;
105
+ /**
106
+ * Uses to pass attributes to the list's DOM element.
107
+ */
108
+ content?: TabPanelPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
109
+ }
110
+
73
111
  /**
74
112
  * Defines valid properties in TabPanel component.
75
113
  * @group Properties
@@ -94,15 +132,15 @@ export interface TabPanelProps {
94
132
  /**
95
133
  * Previous button of the tab header.
96
134
  */
97
- prevButton: IconType<TabPanel> | undefined;
135
+ prevButton?: IconType<TabPanel> | undefined;
98
136
  /**
99
137
  * Next button of the tab header.
100
138
  */
101
- nextButton: IconType<TabPanel> | undefined;
139
+ nextButton?: IconType<TabPanel> | undefined;
102
140
  /**
103
141
  * Close button of the tab header.
104
142
  */
105
- closeIcon: IconType<TabPanel> | undefined;
143
+ closeIcon?: IconType<TabPanel> | undefined;
106
144
  /**
107
145
  * Whether the tab is disabled.
108
146
  * @defaultValue false
@@ -142,6 +180,11 @@ export interface TabPanelProps {
142
180
  * @readonly
143
181
  */
144
182
  children?: React.ReactNode | undefined;
183
+ /**
184
+ * Uses to pass attributes to DOM elements inside the component.
185
+ * @type {TabPanelPassThroughOptions}
186
+ */
187
+ pt?: TabPanelPassThroughOptions;
145
188
  }
146
189
 
147
190
  /**
@@ -182,6 +225,89 @@ interface TabViewTabCloseEvent {
182
225
  index: number;
183
226
  }
184
227
 
228
+ /**
229
+ * Custom passthrough(pt) option method.
230
+ */
231
+ export interface TabViewPassThroughMethodOptions {
232
+ props: TabViewProps;
233
+ state: TabViewState;
234
+ }
235
+
236
+ /**
237
+ * Defines current inline state in TabView component.
238
+ */
239
+ export interface TabViewState {
240
+ /**
241
+ * Current active index state.
242
+ */
243
+ activeIndex: number;
244
+ /**
245
+ * Unique id for the TabView component.
246
+ */
247
+ id: string;
248
+ /**
249
+ * Current state of hidden tab.
250
+ */
251
+ hiddenTabsState: number[];
252
+ /**
253
+ * Current state of previous button.
254
+ * @defaultValue true
255
+ */
256
+ isPrevButtonDisabled: boolean;
257
+ /**
258
+ * Current state of the next button.
259
+ * @defaultValue false
260
+ */
261
+ isNextButtonDisabled: boolean;
262
+ }
263
+
264
+ /**
265
+ * Custom passthrough(pt) options.
266
+ * @see {@link TabViewProps.pt}
267
+ */
268
+ export interface TabViewPassThroughOptions {
269
+ /**
270
+ * Uses to pass attributes to the root's DOM element.
271
+ */
272
+ root?: TabViewPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
273
+ /**
274
+ * Uses to pass attributes to the nav container's DOM element.
275
+ */
276
+ navContainer?: TabViewPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
277
+ /**
278
+ * Uses to pass attributes to the nav content's DOM element.
279
+ */
280
+ navContent?: TabViewPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
281
+ /**
282
+ * Uses to pass attributes to the list's DOM element.
283
+ */
284
+ nav?: TabViewPassThroughType<React.HTMLAttributes<HTMLUListElement>>;
285
+ /**
286
+ * Uses to pass attributes to the inkbar's DOM element.
287
+ */
288
+ inkbar?: TabViewPassThroughType<React.HTMLAttributes<HTMLLIElement>>;
289
+ /**
290
+ * Uses to pass attributes to the previous button's DOM element.
291
+ */
292
+ previousButton?: TabViewPassThroughType<React.HTMLAttributes<HTMLButtonElement>>;
293
+ /**
294
+ * Uses to pass attributes to the previous button icon's DOM element.
295
+ */
296
+ previousIcon?: TabViewPassThroughType<React.SVGProps<SVGSVGElement> | React.HTMLAttributes<HTMLSpanElement>>;
297
+ /**
298
+ * Uses to pass attributes to the next button's DOM element.
299
+ */
300
+ nextButton?: TabViewPassThroughType<React.HTMLAttributes<HTMLButtonElement>>;
301
+ /**
302
+ * Uses to pass attributes to the next button icon's DOM element.
303
+ */
304
+ nextIcon?: TabViewPassThroughType<React.SVGProps<SVGSVGElement> | React.HTMLAttributes<HTMLSpanElement>>;
305
+ /**
306
+ * Uses to pass attributes to the panel's DOM element.
307
+ */
308
+ panelContainer?: TabViewPassThroughType<React.HTMLAttributes<HTMLDivElement>>;
309
+ }
310
+
185
311
  /**
186
312
  * Defines valid properties in TabView component. In addition to these, all properties of HTMLDivElement can be used in this component.
187
313
  * @group Properties
@@ -215,6 +341,11 @@ export interface TabViewProps extends Omit<React.DetailedHTMLProps<React.HTMLAtt
215
341
  * @defaultValue false
216
342
  */
217
343
  scrollable?: boolean | undefined;
344
+ /**
345
+ * Uses to pass attributes to DOM elements inside the component.
346
+ * @type {TabViewPassThroughOptions}
347
+ */
348
+ pt?: TabViewPassThroughOptions;
218
349
  /**
219
350
  * Callback to invoke before an active tab is changed. Return false to prevent tab from changing.
220
351
  * @param {TabViewTabChangeEvent} event - Custom tab change event.
@@ -2,24 +2,41 @@ import * as React from 'react';
2
2
  import { ariaLabel } from 'primereact/api';
3
3
  import { useMountEffect, useUpdateEffect } from 'primereact/hooks';
4
4
  import { Ripple } from 'primereact/ripple';
5
- import { ObjectUtils, UniqueComponentId, classNames, DomHandler, IconUtils } from 'primereact/utils';
5
+ import { ObjectUtils, UniqueComponentId, classNames, mergeProps, DomHandler, IconUtils } from 'primereact/utils';
6
+ import { ComponentBase } from 'primereact/componentbase';
6
7
  import { ChevronRightIcon } from 'primereact/icons/chevronright';
7
8
  import { ChevronLeftIcon } from 'primereact/icons/chevronleft';
8
9
  import { TimesIcon } from 'primereact/icons/times';
9
10
 
10
- function _extends() {
11
- _extends = Object.assign ? Object.assign.bind() : function (target) {
12
- for (var i = 1; i < arguments.length; i++) {
13
- var source = arguments[i];
14
- for (var key in source) {
15
- if (Object.prototype.hasOwnProperty.call(source, key)) {
16
- target[key] = source[key];
17
- }
18
- }
19
- }
20
- return target;
21
- };
22
- return _extends.apply(this, arguments);
11
+ function _arrayLikeToArray(arr, len) {
12
+ if (len == null || len > arr.length) len = arr.length;
13
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
14
+ return arr2;
15
+ }
16
+
17
+ function _arrayWithoutHoles(arr) {
18
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
19
+ }
20
+
21
+ function _iterableToArray(iter) {
22
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
23
+ }
24
+
25
+ function _unsupportedIterableToArray(o, minLen) {
26
+ if (!o) return;
27
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
28
+ var n = Object.prototype.toString.call(o).slice(8, -1);
29
+ if (n === "Object" && o.constructor) n = o.constructor.name;
30
+ if (n === "Map" || n === "Set") return Array.from(o);
31
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
32
+ }
33
+
34
+ function _nonIterableSpread() {
35
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
36
+ }
37
+
38
+ function _toConsumableArray(arr) {
39
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
23
40
  }
24
41
 
25
42
  function _typeof(obj) {
@@ -63,37 +80,6 @@ function _defineProperty(obj, key, value) {
63
80
  return obj;
64
81
  }
65
82
 
66
- function _arrayLikeToArray(arr, len) {
67
- if (len == null || len > arr.length) len = arr.length;
68
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
69
- return arr2;
70
- }
71
-
72
- function _arrayWithoutHoles(arr) {
73
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
74
- }
75
-
76
- function _iterableToArray(iter) {
77
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
78
- }
79
-
80
- function _unsupportedIterableToArray(o, minLen) {
81
- if (!o) return;
82
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
83
- var n = Object.prototype.toString.call(o).slice(8, -1);
84
- if (n === "Object" && o.constructor) n = o.constructor.name;
85
- if (n === "Map" || n === "Set") return Array.from(o);
86
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
87
- }
88
-
89
- function _nonIterableSpread() {
90
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
91
- }
92
-
93
- function _toConsumableArray(arr) {
94
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
95
- }
96
-
97
83
  function _arrayWithHoles(arr) {
98
84
  if (Array.isArray(arr)) return arr;
99
85
  }
@@ -134,7 +120,7 @@ function _slicedToArray(arr, i) {
134
120
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
135
121
  }
136
122
 
137
- var TabViewBase = {
123
+ var TabViewBase = ComponentBase.extend({
138
124
  defaultProps: {
139
125
  __TYPE: 'TabView',
140
126
  id: null,
@@ -150,15 +136,9 @@ var TabViewBase = {
150
136
  scrollable: false,
151
137
  style: null,
152
138
  children: undefined
153
- },
154
- getProps: function getProps(props) {
155
- return ObjectUtils.getMergedProps(props, TabViewBase.defaultProps);
156
- },
157
- getOtherProps: function getOtherProps(props) {
158
- return ObjectUtils.getDiffProps(props, TabViewBase.defaultProps);
159
139
  }
160
- };
161
- var TabPanelBase = {
140
+ });
141
+ var TabPanelBase = ComponentBase.extend({
162
142
  defaultProps: {
163
143
  __TYPE: 'TabPanel',
164
144
  className: null,
@@ -187,7 +167,7 @@ var TabPanelBase = {
187
167
  getCOtherProps: function getCOtherProps(tab) {
188
168
  return ObjectUtils.getComponentDiffProps(tab, TabPanelBase.defaultProps);
189
169
  }
190
- };
170
+ });
191
171
 
192
172
  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; }
193
173
  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; }
@@ -222,6 +202,25 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
222
202
  var nextBtnRef = React.useRef(null);
223
203
  var tabsRef = React.useRef({});
224
204
  var activeIndex = props.onTabChange ? props.activeIndex : activeIndexState;
205
+ var metaData = {
206
+ props: props,
207
+ state: {
208
+ id: idState,
209
+ isPrevButtonDisabled: backwardIsDisabledState,
210
+ isNextButtonDisabled: forwardIsDisabledState,
211
+ hiddenTabsState: hiddenTabsState,
212
+ activeIndex: activeIndexState
213
+ }
214
+ };
215
+ var _TabViewBase$setMetaD = TabViewBase.setMetaData(_objectSpread({}, metaData)),
216
+ ptm = _TabViewBase$setMetaD.ptm,
217
+ ptmo = _TabViewBase$setMetaD.ptmo;
218
+ var getTabPT = function getTabPT(tab, key) {
219
+ return ptmo(getTabProp(tab, 'pt'), key, {
220
+ props: tab.props,
221
+ parent: metaData
222
+ });
223
+ };
225
224
  var isSelected = function isSelected(index) {
226
225
  return index === activeIndex;
227
226
  };
@@ -229,7 +228,7 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
229
228
  return TabPanelBase.getCProp(tab, name);
230
229
  };
231
230
  var shouldUseTab = function shouldUseTab(tab, index) {
232
- return ObjectUtils.isValidChild(tab, 'TabPanel') && hiddenTabsState.every(function (_i) {
231
+ return tab && ObjectUtils.isValidChild(tab, 'TabPanel') && hiddenTabsState.every(function (_i) {
233
232
  return _i !== index;
234
233
  });
235
234
  };
@@ -391,15 +390,16 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
391
390
  var headerId = idState + '_header_' + index;
392
391
  var ariaControls = idState + '_content_' + index;
393
392
  var tabIndex = disabled ? null : 0;
394
- var leftIconElement = leftIcon && /*#__PURE__*/React.createElement(React.Fragment, null, IconUtils.getJSXIcon(leftIcon, {
393
+ var leftIconElement = leftIcon && IconUtils.getJSXIcon(leftIcon, undefined, {
395
394
  props: props
396
- }));
397
- var titleElement = /*#__PURE__*/React.createElement("span", {
398
- className: "p-tabview-title"
399
- }, header);
400
- var rightIconElement = rightIcon && /*#__PURE__*/React.createElement(React.Fragment, null, IconUtils.getJSXIcon(rightIcon, {
395
+ });
396
+ var headerTitleProps = mergeProps({
397
+ className: 'p-tabview-title'
398
+ }, getTabPT(tab, 'headertitle'));
399
+ var titleElement = /*#__PURE__*/React.createElement("span", headerTitleProps, header);
400
+ var rightIconElement = rightIcon && IconUtils.getJSXIcon(rightIcon, undefined, {
401
401
  props: props
402
- }));
402
+ });
403
403
  var iconClassName = 'p-tabview-close';
404
404
  var icon = closeIcon || /*#__PURE__*/React.createElement(TimesIcon, {
405
405
  className: iconClassName,
@@ -408,27 +408,31 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
408
408
  }
409
409
  });
410
410
  var closableIconElement = closable ? IconUtils.getJSXIcon(icon, {
411
- className: iconClassName
411
+ className: iconClassName,
412
+ onClick: function onClick(e) {
413
+ return onTabHeaderClose(e, index);
414
+ }
412
415
  }, {
413
416
  props: props
414
417
  }) : null;
415
- var content =
416
- /*#__PURE__*/
417
- // eslint-disable /
418
- React.createElement("a", {
419
- role: "tab",
420
- className: "p-tabview-nav-link",
418
+ var headerActionProps = mergeProps({
419
+ id: headerId,
420
+ role: 'tab',
421
+ className: 'p-tabview-nav-link',
422
+ tabIndex: tabIndex,
423
+ 'aria-controls': ariaControls,
424
+ 'aria-selected': selected,
421
425
  onClick: function onClick(e) {
422
426
  return onTabHeaderClick(e, tab, index);
423
427
  },
424
- id: headerId,
425
428
  onKeyDown: function onKeyDown(e) {
426
429
  return _onKeyDown(e, tab, index);
427
- },
428
- "aria-controls": ariaControls,
429
- "aria-selected": selected,
430
- tabIndex: tabIndex
431
- }, leftIconElement, titleElement, rightIconElement, closableIconElement, /*#__PURE__*/React.createElement(Ripple, null))
430
+ }
431
+ }, getTabPT(tab, 'headeraction'));
432
+ var content =
433
+ /*#__PURE__*/
434
+ // eslint-disable /
435
+ React.createElement("a", headerActionProps, leftIconElement, titleElement, rightIconElement, closableIconElement, /*#__PURE__*/React.createElement(Ripple, null))
432
436
  // eslint-enable /
433
437
  ;
434
438
 
@@ -453,14 +457,15 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
453
457
  };
454
458
  content = ObjectUtils.getJSXElement(headerTemplate, defaultContentOptions);
455
459
  }
456
- return /*#__PURE__*/React.createElement("li", {
460
+ var headerProps = mergeProps({
457
461
  ref: function ref(el) {
458
462
  return tabsRef.current["tab_".concat(index)] = el;
459
463
  },
460
464
  className: className,
461
465
  style: style,
462
- role: "presentation"
463
- }, content);
466
+ role: 'presentation'
467
+ }, getTabPT(tab, 'root'), getTabPT(tab, 'header'));
468
+ return /*#__PURE__*/React.createElement("li", headerProps, content);
464
469
  };
465
470
  var createTabHeaders = function createTabHeaders() {
466
471
  return React.Children.map(props.children, function (tab, index) {
@@ -471,23 +476,30 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
471
476
  };
472
477
  var createNavigator = function createNavigator() {
473
478
  var headers = createTabHeaders();
474
- return /*#__PURE__*/React.createElement("div", {
475
- ref: contentRef,
479
+ var navContentProps = mergeProps({
476
480
  id: idState,
477
- className: "p-tabview-nav-content",
481
+ ref: contentRef,
482
+ className: 'p-tabview-nav-content',
478
483
  style: props.style,
479
484
  onScroll: onScroll
480
- }, /*#__PURE__*/React.createElement("ul", {
485
+ }, ptm('navcontent'));
486
+ var navProps = mergeProps({
481
487
  ref: navRef,
482
- className: "p-tabview-nav",
483
- role: "tablist"
484
- }, headers, /*#__PURE__*/React.createElement("li", {
488
+ className: 'p-tabview-nav',
489
+ role: 'tablist'
490
+ }, ptm('nav'));
491
+ var inkbarProps = mergeProps({
485
492
  ref: inkbarRef,
486
- className: "p-tabview-ink-bar"
487
- })));
493
+ className: 'p-tabview-ink-bar'
494
+ }, ptm('inkbar'));
495
+ return /*#__PURE__*/React.createElement("div", navContentProps, /*#__PURE__*/React.createElement("ul", navProps, headers, /*#__PURE__*/React.createElement("li", inkbarProps)));
488
496
  };
489
497
  var createContent = function createContent() {
490
498
  var className = classNames('p-tabview-panels', props.panelContainerClassName);
499
+ var panelContainerProps = mergeProps({
500
+ className: className,
501
+ style: props.panelContainerStyle
502
+ }, ptm('panelcontainer'));
491
503
  var contents = React.Children.map(props.children, function (tab, index) {
492
504
  if (shouldUseTab(tab, index) && (!props.renderActiveOnly || isSelected(index))) {
493
505
  var selected = isSelected(index);
@@ -497,69 +509,77 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
497
509
  });
498
510
  var contentId = idState + '_content_' + index;
499
511
  var ariaLabelledBy = idState + '_header_' + index;
500
- var _otherProps = TabPanelBase.getCOtherProps(tab);
501
- return /*#__PURE__*/React.createElement("div", _extends({}, _otherProps, {
512
+ var contentProps = mergeProps({
502
513
  id: contentId,
503
- "aria-labelledby": ariaLabelledBy,
504
- "aria-hidden": !selected,
505
514
  className: _className2,
506
515
  style: style,
507
- role: "tabpanel"
508
- }), !props.renderActiveOnly ? getTabProp(tab, 'children') : selected && getTabProp(tab, 'children'));
516
+ role: 'tabpanel',
517
+ 'aria-labelledby': ariaLabelledBy,
518
+ 'aria-hidden': !selected
519
+ }, TabPanelBase.getCOtherProps(tab), getTabPT(tab, 'root'), getTabPT(tab, 'content'));
520
+ return /*#__PURE__*/React.createElement("div", contentProps, !props.renderActiveOnly ? getTabProp(tab, 'children') : selected && getTabProp(tab, 'children'));
509
521
  }
510
522
  });
511
- return /*#__PURE__*/React.createElement("div", {
512
- className: className,
513
- style: props.panelContainerStyle
514
- }, contents);
523
+ return /*#__PURE__*/React.createElement("div", panelContainerProps, contents);
515
524
  };
516
525
  var createPrevButton = function createPrevButton() {
517
- var icon = props.prevButton || /*#__PURE__*/React.createElement(ChevronLeftIcon, null);
518
- var leftIcon = IconUtils.getJSXIcon(icon, undefined, {
526
+ var prevIconProps = mergeProps(ptm('previcon'));
527
+ var icon = props.prevButton || /*#__PURE__*/React.createElement(ChevronLeftIcon, prevIconProps);
528
+ var leftIcon = IconUtils.getJSXIcon(icon, _objectSpread({}, prevIconProps), {
519
529
  props: props
520
530
  });
531
+ var prevButtonProps = mergeProps({
532
+ ref: prevBtnRef,
533
+ type: 'button',
534
+ className: 'p-tabview-nav-prev p-tabview-nav-btn p-link',
535
+ 'aria-label': ariaLabel('previousPageLabel'),
536
+ onClick: function onClick(e) {
537
+ return navBackward();
538
+ }
539
+ }, ptm('prevbutton'));
521
540
  if (props.scrollable && !backwardIsDisabledState) {
522
- return /*#__PURE__*/React.createElement("button", {
523
- ref: prevBtnRef,
524
- className: "p-tabview-nav-prev p-tabview-nav-btn p-link",
525
- onClick: navBackward,
526
- type: "button",
527
- "aria-label": ariaLabel('previousPageLabel')
528
- }, leftIcon, /*#__PURE__*/React.createElement(Ripple, null));
541
+ return /*#__PURE__*/React.createElement("button", prevButtonProps, leftIcon, /*#__PURE__*/React.createElement(Ripple, null));
529
542
  }
530
543
  return null;
531
544
  };
532
545
  var createNextButton = function createNextButton() {
533
- var icon = props.prevButton || /*#__PURE__*/React.createElement(ChevronRightIcon, null);
534
- var rightIcon = IconUtils.getJSXIcon(icon, {
546
+ var nextIconProps = mergeProps({
535
547
  'aria-hidden': 'true'
536
- }, {
548
+ }, ptm('nexticon'));
549
+ var icon = props.nextButton || /*#__PURE__*/React.createElement(ChevronRightIcon, nextIconProps);
550
+ var rightIcon = IconUtils.getJSXIcon(icon, _objectSpread({}, nextIconProps), {
537
551
  props: props
538
552
  });
553
+ var nextButtonProps = mergeProps({
554
+ ref: nextBtnRef,
555
+ type: 'button',
556
+ className: 'p-tabview-nav-next p-tabview-nav-btn p-link',
557
+ 'aria-label': ariaLabel('nextPageLabel'),
558
+ onClick: function onClick(e) {
559
+ return navForward();
560
+ }
561
+ }, ptm('nextbutton'));
539
562
  if (props.scrollable && !forwardIsDisabledState) {
540
- return /*#__PURE__*/React.createElement("button", {
541
- ref: nextBtnRef,
542
- className: "p-tabview-nav-next p-tabview-nav-btn p-link",
543
- onClick: navForward,
544
- type: "button",
545
- "aria-label": ariaLabel('nextPageLabel')
546
- }, rightIcon, /*#__PURE__*/React.createElement(Ripple, null));
563
+ return /*#__PURE__*/React.createElement("button", nextButtonProps, rightIcon, /*#__PURE__*/React.createElement(Ripple, null));
547
564
  }
548
565
  };
549
- var otherProps = TabViewBase.getOtherProps(props);
550
566
  var className = classNames('p-tabview p-component', {
551
567
  'p-tabview-scrollable': props.scrollable
552
568
  }, props.className);
569
+ var rootProps = mergeProps({
570
+ id: idState,
571
+ ref: elementRef,
572
+ style: props.style,
573
+ className: className
574
+ }, TabViewBase.getOtherProps(props), ptm('root'));
575
+ var navContainerProps = mergeProps({
576
+ className: 'p-tabview-nav-container'
577
+ }, ptm('navcontainer'));
553
578
  var navigator = createNavigator();
554
579
  var content = createContent();
555
580
  var prevButton = createPrevButton();
556
581
  var nextButton = createNextButton();
557
- return /*#__PURE__*/React.createElement("div", _extends({
558
- ref: elementRef,
559
- className: className
560
- }, otherProps), /*#__PURE__*/React.createElement("div", {
561
- className: "p-tabview-nav-container"
562
- }, prevButton, navigator, nextButton), content);
582
+ return /*#__PURE__*/React.createElement("div", rootProps, /*#__PURE__*/React.createElement("div", navContainerProps, prevButton, navigator, nextButton), content);
563
583
  });
564
584
  TabPanel.displayName = 'TabPanel';
565
585
  TabView.displayName = 'TabView';
@@ -1 +1 @@
1
- import*as e from"react";import{ariaLabel as t}from"primereact/api";import{useMountEffect as n,useUpdateEffect as r}from"primereact/hooks";import{Ripple as l}from"primereact/ripple";import{ObjectUtils as a,UniqueComponentId as o,classNames as i,DomHandler as c,IconUtils as u}from"primereact/utils";import{ChevronRightIcon as s}from"primereact/icons/chevronright";import{ChevronLeftIcon as f}from"primereact/icons/chevronleft";import{TimesIcon as p}from"primereact/icons/times";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 m(e){return m="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},m(e)}function d(e,t){if("object"!==m(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==m(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function v(e){var t=d(e,"string");return"symbol"===m(t)?t:String(t)}function y(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 h(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 g(e){if(Array.isArray(e))return h(e)}function C(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function w(e,t){if(e){if("string"==typeof e)return h(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)?h(e,t):void 0}}function P(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function E(e){if(Array.isArray(e))return e}function S(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a,o,i=[],c=!0,u=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){u=!0,l=e}finally{try{if(!c&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw l}}return i}}function O(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function N(e,t){return E(e)||S(e,t)||w(e,t)||O()}var I={defaultProps:{__TYPE:"TabView",id:null,activeIndex:0,className:null,onBeforeTabChange:null,onBeforeTabClose:null,onTabChange:null,onTabClose:null,panelContainerClassName:null,panelContainerStyle:null,renderActiveOnly:!0,scrollable:!1,style:null,children:void 0},getProps:function(e){return a.getMergedProps(e,I.defaultProps)},getOtherProps:function(e){return a.getDiffProps(e,I.defaultProps)}},T={defaultProps:{__TYPE:"TabPanel",className:null,closable:!1,contentClassName:null,contentStyle:null,disabled:!1,header:null,headerClassName:null,headerStyle:null,headerTemplate:null,leftIcon:null,rightIcon:null,prevButton:null,nextButton:null,closeIcon:null,style:null,children:void 0},getCProp:function(e,t){return a.getComponentProp(e,t,T.defaultProps)},getCProps:function(e){return a.getComponentProps(e,T.defaultProps)},getCOtherProps:function(e){return a.getComponentDiffProps(e,T.defaultProps)}};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 j(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){y(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}var _=function(){},k=e.forwardRef((function(m,d){var v=I.getProps(m),y=N(e.useState(v.id),2),h=y[0],E=y[1],S=N(e.useState(!0),2),O=S[0],x=S[1],_=N(e.useState(!1),2),k=_[0],A=_[1],D=N(e.useState([]),2),B=D[0],R=D[1],L=N(e.useState(v.activeIndex),2),W=L[0],J=L[1],X=e.useRef(null),V=e.useRef(null),F=e.useRef(null),K=e.useRef(null),M=e.useRef(null),Y=e.useRef(null),H=e.useRef({}),U=v.onTabChange?v.activeIndex:W,$=function(e){return e===U},q=function(e,t){return T.getCProp(e,t)},z=function(e,t){return a.isValidChild(e,"TabPanel")&&B.every((function(e){return e!==t}))},G=function(e,t){var n;(e.preventDefault(),v.onBeforeTabClose&&!1===v.onBeforeTabClose({originalEvent:e,index:t}))||(R([].concat(g(n=B)||C(n)||w(n)||P(),[t])),v.onTabClose&&v.onTabClose({originalEvent:e,index:t}))},Q=function(e,t,n){if(e&&e.preventDefault(),!q(t,"disabled")){if(v.onBeforeTabChange&&!1===v.onBeforeTabChange({originalEvent:e,index:n}))return;v.onTabChange?v.onTabChange({originalEvent:e,index:n}):J(n)}ee(n)},Z=function(e,t,n){"Enter"===e.key&&Q(e,t,n)},ee=function(e){var t=H.current["tab_".concat(e)];t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest"})},te=function(e){var t,n,r,l;v.scrollable&&(n=(t=V.current).scrollLeft,r=t.scrollWidth,l=c.getWidth(V.current),x(0===n),A(n===r-l)),e.preventDefault()},ne=function(){return[M.current,Y.current].reduce((function(e,t){return t?e+c.getWidth(t):e}),0)},re=function(){var e=c.getWidth(V.current)-ne(),t=V.current.scrollLeft-e;V.current.scrollLeft=t<=0?0:t},le=function(){var e=c.getWidth(V.current)-ne(),t=V.current.scrollLeft+e,n=V.current.scrollWidth-e;V.current.scrollLeft=t>=n?n:t},ae=function(){x(!0),A(!1),R([]),v.onTabChange?v.onTabChange({index:U}):J(v.activeIndex)};e.useEffect((function(){var e;e=H.current["tab_".concat(U)],K.current.style.width=c.getWidth(e)+"px",K.current.style.left=c.getOffset(e).left-c.getOffset(F.current).left+"px"})),n((function(){h||E(o())})),r((function(){if(a.isNotEmpty(B)){var t=(n=B[B.length-1],(r=e.Children.map(v.children,(function(e,t){if(z(e,t))return{tab:e,index:t}}))).find((function(e){var t=e.index;return!q(e.tab,"disabled")&&t>=n}))||r.reverse().find((function(e){var t=e.index;return!q(e.tab,"disabled")&&n>t})));t&&Q(null,t.tab,t.index)}var n,r}),[B]),r((function(){ee(v.activeIndex)}),[v.activeIndex]),e.useImperativeHandle(d,(function(){return{props:v,reset:ae,getElement:function(){return X.current}}}));var oe,ie,ce=function(t,n){var r=$(n),o=T.getCProps(t),c=o.headerClassName,s=o.style,f=o.className,b=o.disabled,m=o.leftIcon,d=o.rightIcon,y=o.header,g=o.headerTemplate,C=o.closable,w=o.closeIcon,P=j(j({},o.headerStyle||{}),s||{}),E=i("p-unselectable-text",{"p-tabview-selected p-highlight":r,"p-disabled":b},c,f),S=h+"_header_"+n,O=h+"_content_"+n,N=b?null:0,I=m&&e.createElement(e.Fragment,null,u.getJSXIcon(m,{props:v})),x=e.createElement("span",{className:"p-tabview-title"},y),_=d&&e.createElement(e.Fragment,null,u.getJSXIcon(d,{props:v})),k="p-tabview-close",A=C?u.getJSXIcon(w||e.createElement(p,{className:k,onClick:function(e){return G(e,n)}}),{className:k},{props:v}):null,D=e.createElement("a",{role:"tab",className:"p-tabview-nav-link",onClick:function(e){return Q(e,t,n)},id:S,onKeyDown:function(e){return Z(e,t,n)},"aria-controls":O,"aria-selected":r,tabIndex:N},I,x,_,A,e.createElement(l,null));g&&(D=a.getJSXElement(g,{className:"p-tabview-nav-link",titleClassName:"p-tabview-title",onClick:function(e){return Q(e,t,n)},onKeyDown:function(e){return Z(e,t,n)},leftIconElement:I,titleElement:x,rightIconElement:_,element:D,props:v,index:n,selected:r,ariaControls:O}));return e.createElement("li",{ref:function(e){return H.current["tab_".concat(n)]=e},className:E,style:P,role:"presentation"},D)},ue=I.getOtherProps(v),se=i("p-tabview p-component",{"p-tabview-scrollable":v.scrollable},v.className),fe=(oe=e.Children.map(v.children,(function(e,t){if(z(e,t))return ce(e,t)})),e.createElement("div",{ref:V,id:h,className:"p-tabview-nav-content",style:v.style,onScroll:te},e.createElement("ul",{ref:F,className:"p-tabview-nav",role:"tablist"},oe,e.createElement("li",{ref:K,className:"p-tabview-ink-bar"})))),pe=function(){var t=i("p-tabview-panels",v.panelContainerClassName),n=e.Children.map(v.children,(function(t,n){if(z(t,n)&&(!v.renderActiveOnly||$(n))){var r=$(n),l=j(j({},q(t,"contentStyle")||{}),q(t,"style")||{}),a=i(q(t,"contentClassName"),q(t,"className"),"p-tabview-panel",{"p-hidden":!r}),o=h+"_content_"+n,c=h+"_header_"+n,u=T.getCOtherProps(t);return e.createElement("div",b({},u,{id:o,"aria-labelledby":c,"aria-hidden":!r,className:a,style:l,role:"tabpanel"}),v.renderActiveOnly?r&&q(t,"children"):q(t,"children"))}}));return e.createElement("div",{className:t,style:v.panelContainerStyle},n)}(),be=(ie=u.getJSXIcon(v.prevButton||e.createElement(f,null),void 0,{props:v}),v.scrollable&&!O?e.createElement("button",{ref:M,className:"p-tabview-nav-prev p-tabview-nav-btn p-link",onClick:re,type:"button","aria-label":t("previousPageLabel")},ie,e.createElement(l,null)):null),me=function(){var n=u.getJSXIcon(v.prevButton||e.createElement(s,null),{"aria-hidden":"true"},{props:v});if(v.scrollable&&!k)return e.createElement("button",{ref:Y,className:"p-tabview-nav-next p-tabview-nav-btn p-link",onClick:le,type:"button","aria-label":t("nextPageLabel")},n,e.createElement(l,null))}();return e.createElement("div",b({ref:X,className:se},ue),e.createElement("div",{className:"p-tabview-nav-container"},be,fe,me),pe)}));_.displayName="TabPanel",k.displayName="TabView";export{_ as TabPanel,k as TabView};
1
+ import*as e from"react";import{ariaLabel as t}from"primereact/api";import{useMountEffect as n,useUpdateEffect as r}from"primereact/hooks";import{Ripple as a}from"primereact/ripple";import{ObjectUtils as l,UniqueComponentId as o,classNames as i,mergeProps as c,DomHandler as u,IconUtils as s}from"primereact/utils";import{ComponentBase as f}from"primereact/componentbase";import{ChevronRightIcon as p}from"primereact/icons/chevronright";import{ChevronLeftIcon as b}from"primereact/icons/chevronleft";import{TimesIcon as d}from"primereact/icons/times";function m(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 v(e){if(Array.isArray(e))return m(e)}function y(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function h(e,t){if(e){if("string"==typeof e)return m(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)?m(e,t):void 0}}function g(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function C(e){return C="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},C(e)}function w(e,t){if("object"!==C(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==C(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function E(e){var t=w(e,"string");return"symbol"===C(t)?t:String(t)}function S(e,t,n){return(t=E(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(e){if(Array.isArray(e))return e}function x(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,l,o,i=[],c=!0,u=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=l.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){u=!0,a=e}finally{try{if(!c&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return i}}function N(){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 P(e)||x(e,t)||h(e,t)||N()}var I=f.extend({defaultProps:{__TYPE:"TabView",id:null,activeIndex:0,className:null,onBeforeTabChange:null,onBeforeTabClose:null,onTabChange:null,onTabClose:null,panelContainerClassName:null,panelContainerStyle:null,renderActiveOnly:!0,scrollable:!1,style:null,children:void 0}}),T=f.extend({defaultProps:{__TYPE:"TabPanel",className:null,closable:!1,contentClassName:null,contentStyle:null,disabled:!1,header:null,headerClassName:null,headerStyle:null,headerTemplate:null,leftIcon:null,rightIcon:null,prevButton:null,nextButton:null,closeIcon:null,style:null,children:void 0},getCProp:function(e,t){return l.getComponentProp(e,t,T.defaultProps)},getCProps:function(e){return l.getComponentProps(e,T.defaultProps)},getCOtherProps:function(e){return l.getComponentDiffProps(e,T.defaultProps)}});function j(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?j(Object(n),!0).forEach((function(t){S(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):j(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var _=function(){},D=e.forwardRef((function(f,m){var C=I.getProps(f),w=O(e.useState(C.id),2),E=w[0],S=w[1],P=O(e.useState(!0),2),x=P[0],N=P[1],j=O(e.useState(!1),2),_=j[0],D=j[1],A=O(e.useState([]),2),B=A[0],R=A[1],L=O(e.useState(C.activeIndex),2),W=L[0],J=L[1],X=e.useRef(null),V=e.useRef(null),K=e.useRef(null),M=e.useRef(null),Y=e.useRef(null),H=e.useRef(null),U=e.useRef({}),$=C.onTabChange?C.activeIndex:W,q={props:C,state:{id:E,isPrevButtonDisabled:x,isNextButtonDisabled:_,hiddenTabsState:B,activeIndex:W}},z=I.setMetaData(k({},q)),F=z.ptm,G=z.ptmo,Q=function(e,t){return G(ee(e,"pt"),t,{props:e.props,parent:q})},Z=function(e){return e===$},ee=function(e,t){return T.getCProp(e,t)},te=function(e,t){return e&&l.isValidChild(e,"TabPanel")&&B.every((function(e){return e!==t}))},ne=function(e,t){var n;(e.preventDefault(),C.onBeforeTabClose&&!1===C.onBeforeTabClose({originalEvent:e,index:t}))||(R([].concat(v(n=B)||y(n)||h(n)||g(),[t])),C.onTabClose&&C.onTabClose({originalEvent:e,index:t}))},re=function(e,t,n){if(e&&e.preventDefault(),!ee(t,"disabled")){if(C.onBeforeTabChange&&!1===C.onBeforeTabChange({originalEvent:e,index:n}))return;C.onTabChange?C.onTabChange({originalEvent:e,index:n}):J(n)}le(n)},ae=function(e,t,n){"Enter"===e.key&&re(e,t,n)},le=function(e){var t=U.current["tab_".concat(e)];t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest"})},oe=function(e){var t,n,r,a;C.scrollable&&(n=(t=V.current).scrollLeft,r=t.scrollWidth,a=u.getWidth(V.current),N(0===n),D(n===r-a)),e.preventDefault()},ie=function(){return[Y.current,H.current].reduce((function(e,t){return t?e+u.getWidth(t):e}),0)},ce=function(){N(!0),D(!1),R([]),C.onTabChange?C.onTabChange({index:$}):J(C.activeIndex)};e.useEffect((function(){var e;e=U.current["tab_".concat($)],M.current.style.width=u.getWidth(e)+"px",M.current.style.left=u.getOffset(e).left-u.getOffset(K.current).left+"px"})),n((function(){E||S(o())})),r((function(){if(l.isNotEmpty(B)){var t=(n=B[B.length-1],(r=e.Children.map(C.children,(function(e,t){if(te(e,t))return{tab:e,index:t}}))).find((function(e){var t=e.index;return!ee(e.tab,"disabled")&&t>=n}))||r.reverse().find((function(e){var t=e.index;return!ee(e.tab,"disabled")&&n>t})));t&&re(null,t.tab,t.index)}var n,r}),[B]),r((function(){le(C.activeIndex)}),[C.activeIndex]),e.useImperativeHandle(m,(function(){return{props:C,reset:ce,getElement:function(){return X.current}}}));var ue,se,fe,pe,be,de,me,ve=function(t,n){var r=Z(n),o=T.getCProps(t),u=o.headerClassName,f=o.style,p=o.className,b=o.disabled,m=o.leftIcon,v=o.rightIcon,y=o.header,h=o.headerTemplate,g=o.closable,w=o.closeIcon,S=k(k({},o.headerStyle||{}),f||{}),P=i("p-unselectable-text",{"p-tabview-selected p-highlight":r,"p-disabled":b},u,p),x=E+"_header_"+n,N=E+"_content_"+n,O=b?null:0,I=m&&s.getJSXIcon(m,void 0,{props:C}),j=c({className:"p-tabview-title"},Q(t,"headertitle")),_=e.createElement("span",j,y),D=v&&s.getJSXIcon(v,void 0,{props:C}),A="p-tabview-close",B=g?s.getJSXIcon(w||e.createElement(d,{className:A,onClick:function(e){return ne(e,n)}}),{className:A,onClick:function(e){return ne(e,n)}},{props:C}):null,R=c({id:x,role:"tab",className:"p-tabview-nav-link",tabIndex:O,"aria-controls":N,"aria-selected":r,onClick:function(e){return re(e,t,n)},onKeyDown:function(e){return ae(e,t,n)}},Q(t,"headeraction")),L=e.createElement("a",R,I,_,D,B,e.createElement(a,null));h&&(L=l.getJSXElement(h,{className:"p-tabview-nav-link",titleClassName:"p-tabview-title",onClick:function(e){return re(e,t,n)},onKeyDown:function(e){return ae(e,t,n)},leftIconElement:I,titleElement:_,rightIconElement:D,element:L,props:C,index:n,selected:r,ariaControls:N}));var W=c({ref:function(e){return U.current["tab_".concat(n)]=e},className:P,style:S,role:"presentation"},Q(t,"root"),Q(t,"header"));return e.createElement("li",W,L)},ye=i("p-tabview p-component",{"p-tabview-scrollable":C.scrollable},C.className),he=c({id:E,ref:X,style:C.style,className:ye},I.getOtherProps(C),F("root")),ge=c({className:"p-tabview-nav-container"},F("navcontainer")),Ce=(ue=e.Children.map(C.children,(function(e,t){if(te(e,t))return ve(e,t)})),se=c({id:E,ref:V,className:"p-tabview-nav-content",style:C.style,onScroll:oe},F("navcontent")),fe=c({ref:K,className:"p-tabview-nav",role:"tablist"},F("nav")),pe=c({ref:M,className:"p-tabview-ink-bar"},F("inkbar")),e.createElement("div",se,e.createElement("ul",fe,ue,e.createElement("li",pe)))),we=function(){var t=i("p-tabview-panels",C.panelContainerClassName),n=c({className:t,style:C.panelContainerStyle},F("panelcontainer")),r=e.Children.map(C.children,(function(t,n){if(te(t,n)&&(!C.renderActiveOnly||Z(n))){var r=Z(n),a=k(k({},ee(t,"contentStyle")||{}),ee(t,"style")||{}),l=i(ee(t,"contentClassName"),ee(t,"className"),"p-tabview-panel",{"p-hidden":!r}),o=c({id:E+"_content_"+n,className:l,style:a,role:"tabpanel","aria-labelledby":E+"_header_"+n,"aria-hidden":!r},T.getCOtherProps(t),Q(t,"root"),Q(t,"content"));return e.createElement("div",o,C.renderActiveOnly?r&&ee(t,"children"):ee(t,"children"))}}));return e.createElement("div",n,r)}(),Ee=(be=c(F("previcon")),de=s.getJSXIcon(C.prevButton||e.createElement(b,be),k({},be),{props:C}),me=c({ref:Y,type:"button",className:"p-tabview-nav-prev p-tabview-nav-btn p-link","aria-label":t("previousPageLabel"),onClick:function(e){return t=u.getWidth(V.current)-ie(),void(V.current.scrollLeft=(n=V.current.scrollLeft-t)<=0?0:n);var t,n}},F("prevbutton")),C.scrollable&&!x?e.createElement("button",me,de,e.createElement(a,null)):null),Se=function(){var n=c({"aria-hidden":"true"},F("nexticon")),r=s.getJSXIcon(C.nextButton||e.createElement(p,n),k({},n),{props:C}),l=c({ref:H,type:"button",className:"p-tabview-nav-next p-tabview-nav-btn p-link","aria-label":t("nextPageLabel"),onClick:function(e){return t=u.getWidth(V.current)-ie(),void(V.current.scrollLeft=(n=V.current.scrollLeft+t)>=(r=V.current.scrollWidth-t)?r:n);var t,n,r}},F("nextbutton"));if(C.scrollable&&!_)return e.createElement("button",l,r,e.createElement(a,null))}();return e.createElement("div",he,e.createElement("div",ge,Ee,Ce,Se),we)}));_.displayName="TabPanel",D.displayName="TabView";export{_ as TabPanel,D as TabView};