primereact 10.2.1 → 10.3.1

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 (654) hide show
  1. package/accordion/accordion.cjs.js +83 -8
  2. package/accordion/accordion.cjs.min.js +1 -1
  3. package/accordion/accordion.d.ts +35 -0
  4. package/accordion/accordion.esm.js +85 -10
  5. package/accordion/accordion.esm.min.js +1 -1
  6. package/accordion/accordion.js +83 -8
  7. package/accordion/accordion.min.js +1 -1
  8. package/api/api.cjs.js +63 -33
  9. package/api/api.cjs.min.js +1 -1
  10. package/api/api.d.ts +24 -246
  11. package/api/api.esm.js +63 -33
  12. package/api/api.esm.min.js +1 -1
  13. package/api/api.js +63 -33
  14. package/api/api.min.js +1 -1
  15. package/autocomplete/autocomplete.cjs.js +3 -2
  16. package/autocomplete/autocomplete.cjs.min.js +1 -1
  17. package/autocomplete/autocomplete.d.ts +6 -1
  18. package/autocomplete/autocomplete.esm.js +3 -2
  19. package/autocomplete/autocomplete.esm.min.js +1 -1
  20. package/autocomplete/autocomplete.js +3 -2
  21. package/autocomplete/autocomplete.min.js +1 -1
  22. package/blockui/blockui.cjs.js +8 -5
  23. package/blockui/blockui.cjs.min.js +1 -1
  24. package/blockui/blockui.esm.js +8 -5
  25. package/blockui/blockui.esm.min.js +1 -1
  26. package/blockui/blockui.js +8 -5
  27. package/blockui/blockui.min.js +1 -1
  28. package/breadcrumb/breadcrumb.cjs.js +12 -6
  29. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  30. package/breadcrumb/breadcrumb.esm.js +12 -6
  31. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  32. package/breadcrumb/breadcrumb.js +12 -6
  33. package/breadcrumb/breadcrumb.min.js +1 -1
  34. package/calendar/calendar.cjs.js +71 -37
  35. package/calendar/calendar.cjs.min.js +1 -1
  36. package/calendar/calendar.d.ts +3 -5
  37. package/calendar/calendar.esm.js +71 -37
  38. package/calendar/calendar.esm.min.js +1 -1
  39. package/calendar/calendar.js +71 -37
  40. package/calendar/calendar.min.js +1 -1
  41. package/carousel/carousel.cjs.js +103 -9
  42. package/carousel/carousel.cjs.min.js +1 -1
  43. package/carousel/carousel.esm.js +104 -10
  44. package/carousel/carousel.esm.min.js +1 -1
  45. package/carousel/carousel.js +103 -9
  46. package/carousel/carousel.min.js +1 -1
  47. package/cascadeselect/cascadeselect.cjs.js +64 -23
  48. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  49. package/cascadeselect/cascadeselect.d.ts +27 -4
  50. package/cascadeselect/cascadeselect.esm.js +65 -24
  51. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  52. package/cascadeselect/cascadeselect.js +65 -25
  53. package/cascadeselect/cascadeselect.min.js +1 -1
  54. package/checkbox/checkbox.cjs.js +25 -25
  55. package/checkbox/checkbox.cjs.min.js +1 -1
  56. package/checkbox/checkbox.esm.js +25 -25
  57. package/checkbox/checkbox.esm.min.js +1 -1
  58. package/checkbox/checkbox.js +26 -26
  59. package/checkbox/checkbox.min.js +1 -1
  60. package/chip/chip.cjs.js +5 -2
  61. package/chip/chip.cjs.min.js +1 -1
  62. package/chip/chip.d.ts +17 -2
  63. package/chip/chip.esm.js +5 -2
  64. package/chip/chip.esm.min.js +1 -1
  65. package/chip/chip.js +5 -2
  66. package/chip/chip.min.js +1 -1
  67. package/colorpicker/colorpicker.d.ts +1 -1
  68. package/componentbase/componentbase.cjs.js +49 -8
  69. package/componentbase/componentbase.cjs.min.js +1 -1
  70. package/componentbase/componentbase.esm.js +50 -9
  71. package/componentbase/componentbase.esm.min.js +1 -1
  72. package/componentbase/componentbase.js +49 -8
  73. package/componentbase/componentbase.min.js +1 -1
  74. package/confirmdialog/confirmdialog.cjs.js +30 -22
  75. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  76. package/confirmdialog/confirmdialog.d.ts +19 -3
  77. package/confirmdialog/confirmdialog.esm.js +30 -22
  78. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  79. package/confirmdialog/confirmdialog.js +30 -22
  80. package/confirmdialog/confirmdialog.min.js +1 -1
  81. package/confirmpopup/confirmpopup.cjs.js +85 -152
  82. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  83. package/confirmpopup/confirmpopup.d.ts +40 -1
  84. package/confirmpopup/confirmpopup.esm.js +88 -155
  85. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  86. package/confirmpopup/confirmpopup.js +85 -152
  87. package/confirmpopup/confirmpopup.min.js +1 -1
  88. package/contextmenu/contextmenu.cjs.js +641 -99
  89. package/contextmenu/contextmenu.cjs.min.js +1 -1
  90. package/contextmenu/contextmenu.d.ts +23 -1
  91. package/contextmenu/contextmenu.esm.js +641 -99
  92. package/contextmenu/contextmenu.esm.min.js +1 -1
  93. package/contextmenu/contextmenu.js +641 -99
  94. package/contextmenu/contextmenu.min.js +1 -1
  95. package/core/core.js +1217 -484
  96. package/core/core.min.js +40 -40
  97. package/datatable/datatable.cjs.js +30 -26
  98. package/datatable/datatable.cjs.min.js +1 -1
  99. package/datatable/datatable.d.ts +5 -4
  100. package/datatable/datatable.esm.js +30 -26
  101. package/datatable/datatable.esm.min.js +1 -1
  102. package/datatable/datatable.js +30 -26
  103. package/datatable/datatable.min.js +1 -1
  104. package/dataview/dataview.d.ts +1 -1
  105. package/dialog/dialog.cjs.js +108 -151
  106. package/dialog/dialog.cjs.min.js +1 -1
  107. package/dialog/dialog.d.ts +60 -1
  108. package/dialog/dialog.esm.js +115 -158
  109. package/dialog/dialog.esm.min.js +1 -1
  110. package/dialog/dialog.js +109 -152
  111. package/dialog/dialog.min.js +1 -1
  112. package/divider/divider.cjs.js +1 -0
  113. package/divider/divider.cjs.min.js +1 -1
  114. package/divider/divider.esm.js +1 -0
  115. package/divider/divider.esm.min.js +1 -1
  116. package/divider/divider.js +1 -0
  117. package/divider/divider.min.js +1 -1
  118. package/dock/dock.cjs.js +169 -33
  119. package/dock/dock.cjs.min.js +1 -1
  120. package/dock/dock.d.ts +15 -0
  121. package/dock/dock.esm.js +170 -34
  122. package/dock/dock.esm.min.js +1 -1
  123. package/dock/dock.js +169 -33
  124. package/dock/dock.min.js +1 -1
  125. package/dropdown/dropdown.cjs.js +29 -4
  126. package/dropdown/dropdown.cjs.min.js +1 -1
  127. package/dropdown/dropdown.d.ts +1 -1
  128. package/dropdown/dropdown.esm.js +29 -4
  129. package/dropdown/dropdown.esm.min.js +1 -1
  130. package/dropdown/dropdown.js +30 -6
  131. package/dropdown/dropdown.min.js +1 -1
  132. package/fieldset/fieldset.cjs.js +12 -5
  133. package/fieldset/fieldset.cjs.min.js +1 -1
  134. package/fieldset/fieldset.esm.js +12 -5
  135. package/fieldset/fieldset.esm.min.js +1 -1
  136. package/fieldset/fieldset.js +12 -5
  137. package/fieldset/fieldset.min.js +1 -1
  138. package/fileupload/fileupload.cjs.js +14 -6
  139. package/fileupload/fileupload.cjs.min.js +1 -1
  140. package/fileupload/fileupload.d.ts +17 -1
  141. package/fileupload/fileupload.esm.js +14 -6
  142. package/fileupload/fileupload.esm.min.js +1 -1
  143. package/fileupload/fileupload.js +14 -6
  144. package/fileupload/fileupload.min.js +1 -1
  145. package/galleria/galleria.cjs.js +223 -43
  146. package/galleria/galleria.cjs.min.js +1 -1
  147. package/galleria/galleria.esm.js +225 -45
  148. package/galleria/galleria.esm.min.js +1 -1
  149. package/galleria/galleria.js +223 -43
  150. package/galleria/galleria.min.js +1 -1
  151. package/hooks/hooks.cjs.js +219 -78
  152. package/hooks/hooks.cjs.min.js +1 -1
  153. package/hooks/hooks.d.ts +8 -4
  154. package/hooks/hooks.esm.js +219 -80
  155. package/hooks/hooks.esm.min.js +1 -1
  156. package/hooks/hooks.js +219 -78
  157. package/hooks/hooks.min.js +1 -1
  158. package/icons/arrowdown/index.cjs.js +13 -2
  159. package/icons/arrowdown/index.cjs.min.js +1 -1
  160. package/icons/arrowdown/index.esm.js +13 -2
  161. package/icons/arrowdown/index.esm.min.js +1 -1
  162. package/icons/arrowdown/index.js +13 -2
  163. package/icons/arrowdown/index.min.js +1 -1
  164. package/icons/arrowup/index.cjs.js +13 -2
  165. package/icons/arrowup/index.cjs.min.js +1 -1
  166. package/icons/arrowup/index.esm.js +13 -2
  167. package/icons/arrowup/index.esm.min.js +1 -1
  168. package/icons/arrowup/index.js +13 -2
  169. package/icons/arrowup/index.min.js +1 -1
  170. package/icons/ban/index.cjs.js +13 -2
  171. package/icons/ban/index.cjs.min.js +1 -1
  172. package/icons/ban/index.esm.js +13 -2
  173. package/icons/ban/index.esm.min.js +1 -1
  174. package/icons/ban/index.js +13 -2
  175. package/icons/ban/index.min.js +1 -1
  176. package/icons/download/index.cjs.js +13 -2
  177. package/icons/download/index.cjs.min.js +1 -1
  178. package/icons/download/index.esm.js +13 -2
  179. package/icons/download/index.esm.min.js +1 -1
  180. package/icons/download/index.js +13 -2
  181. package/icons/download/index.min.js +1 -1
  182. package/icons/exclamationtriangle/index.cjs.js +13 -2
  183. package/icons/exclamationtriangle/index.cjs.min.js +1 -1
  184. package/icons/exclamationtriangle/index.esm.js +13 -2
  185. package/icons/exclamationtriangle/index.esm.min.js +1 -1
  186. package/icons/exclamationtriangle/index.js +13 -2
  187. package/icons/exclamationtriangle/index.min.js +1 -1
  188. package/icons/eyeslash/index.cjs.js +13 -2
  189. package/icons/eyeslash/index.cjs.min.js +1 -1
  190. package/icons/eyeslash/index.esm.js +13 -2
  191. package/icons/eyeslash/index.esm.min.js +1 -1
  192. package/icons/eyeslash/index.js +13 -2
  193. package/icons/eyeslash/index.min.js +1 -1
  194. package/icons/filter/index.cjs.js +13 -2
  195. package/icons/filter/index.cjs.min.js +1 -1
  196. package/icons/filter/index.esm.js +13 -2
  197. package/icons/filter/index.esm.min.js +1 -1
  198. package/icons/filter/index.js +13 -2
  199. package/icons/filter/index.min.js +1 -1
  200. package/icons/filterslash/index.cjs.js +13 -2
  201. package/icons/filterslash/index.cjs.min.js +1 -1
  202. package/icons/filterslash/index.esm.js +13 -2
  203. package/icons/filterslash/index.esm.min.js +1 -1
  204. package/icons/filterslash/index.js +13 -2
  205. package/icons/filterslash/index.min.js +1 -1
  206. package/icons/infocircle/index.cjs.js +13 -2
  207. package/icons/infocircle/index.cjs.min.js +1 -1
  208. package/icons/infocircle/index.esm.js +13 -2
  209. package/icons/infocircle/index.esm.min.js +1 -1
  210. package/icons/infocircle/index.js +13 -2
  211. package/icons/infocircle/index.min.js +1 -1
  212. package/icons/pencil/index.cjs.js +13 -2
  213. package/icons/pencil/index.cjs.min.js +1 -1
  214. package/icons/pencil/index.esm.js +13 -2
  215. package/icons/pencil/index.esm.min.js +1 -1
  216. package/icons/pencil/index.js +13 -2
  217. package/icons/pencil/index.min.js +1 -1
  218. package/icons/plus/index.cjs.js +13 -2
  219. package/icons/plus/index.cjs.min.js +1 -1
  220. package/icons/plus/index.esm.js +13 -2
  221. package/icons/plus/index.esm.min.js +1 -1
  222. package/icons/plus/index.js +13 -2
  223. package/icons/plus/index.min.js +1 -1
  224. package/icons/refresh/index.cjs.js +13 -2
  225. package/icons/refresh/index.cjs.min.js +1 -1
  226. package/icons/refresh/index.esm.js +13 -2
  227. package/icons/refresh/index.esm.min.js +1 -1
  228. package/icons/refresh/index.js +13 -2
  229. package/icons/refresh/index.min.js +1 -1
  230. package/icons/search/index.cjs.js +13 -2
  231. package/icons/search/index.cjs.min.js +1 -1
  232. package/icons/search/index.esm.js +13 -2
  233. package/icons/search/index.esm.min.js +1 -1
  234. package/icons/search/index.js +13 -2
  235. package/icons/search/index.min.js +1 -1
  236. package/icons/searchminus/index.cjs.js +13 -2
  237. package/icons/searchminus/index.cjs.min.js +1 -1
  238. package/icons/searchminus/index.esm.js +13 -2
  239. package/icons/searchminus/index.esm.min.js +1 -1
  240. package/icons/searchminus/index.js +13 -2
  241. package/icons/searchminus/index.min.js +1 -1
  242. package/icons/searchplus/index.cjs.js +13 -2
  243. package/icons/searchplus/index.cjs.min.js +1 -1
  244. package/icons/searchplus/index.esm.js +13 -2
  245. package/icons/searchplus/index.esm.min.js +1 -1
  246. package/icons/searchplus/index.js +13 -2
  247. package/icons/searchplus/index.min.js +1 -1
  248. package/icons/sortalt/index.cjs.js +13 -2
  249. package/icons/sortalt/index.cjs.min.js +1 -1
  250. package/icons/sortalt/index.esm.js +13 -2
  251. package/icons/sortalt/index.esm.min.js +1 -1
  252. package/icons/sortalt/index.js +13 -2
  253. package/icons/sortalt/index.min.js +1 -1
  254. package/icons/sortamountdown/index.cjs.js +13 -2
  255. package/icons/sortamountdown/index.cjs.min.js +1 -1
  256. package/icons/sortamountdown/index.esm.js +13 -2
  257. package/icons/sortamountdown/index.esm.min.js +1 -1
  258. package/icons/sortamountdown/index.js +13 -2
  259. package/icons/sortamountdown/index.min.js +1 -1
  260. package/icons/sortamountupalt/index.cjs.js +13 -2
  261. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  262. package/icons/sortamountupalt/index.esm.js +13 -2
  263. package/icons/sortamountupalt/index.esm.min.js +1 -1
  264. package/icons/sortamountupalt/index.js +13 -2
  265. package/icons/sortamountupalt/index.min.js +1 -1
  266. package/icons/spinner/index.cjs.js +13 -2
  267. package/icons/spinner/index.cjs.min.js +1 -1
  268. package/icons/spinner/index.esm.js +13 -2
  269. package/icons/spinner/index.esm.min.js +1 -1
  270. package/icons/spinner/index.js +13 -2
  271. package/icons/spinner/index.min.js +1 -1
  272. package/icons/star/index.cjs.js +13 -2
  273. package/icons/star/index.cjs.min.js +1 -1
  274. package/icons/star/index.esm.js +13 -2
  275. package/icons/star/index.esm.min.js +1 -1
  276. package/icons/star/index.js +13 -2
  277. package/icons/star/index.min.js +1 -1
  278. package/icons/starfill/index.cjs.js +13 -2
  279. package/icons/starfill/index.cjs.min.js +1 -1
  280. package/icons/starfill/index.esm.js +13 -2
  281. package/icons/starfill/index.esm.min.js +1 -1
  282. package/icons/starfill/index.js +13 -2
  283. package/icons/starfill/index.min.js +1 -1
  284. package/icons/thlarge/index.cjs.js +13 -2
  285. package/icons/thlarge/index.cjs.min.js +1 -1
  286. package/icons/thlarge/index.esm.js +13 -2
  287. package/icons/thlarge/index.esm.min.js +1 -1
  288. package/icons/thlarge/index.js +13 -2
  289. package/icons/thlarge/index.min.js +1 -1
  290. package/icons/timescircle/index.cjs.js +13 -2
  291. package/icons/timescircle/index.cjs.min.js +1 -1
  292. package/icons/timescircle/index.esm.js +13 -2
  293. package/icons/timescircle/index.esm.min.js +1 -1
  294. package/icons/timescircle/index.js +13 -2
  295. package/icons/timescircle/index.min.js +1 -1
  296. package/icons/trash/index.cjs.js +13 -2
  297. package/icons/trash/index.cjs.min.js +1 -1
  298. package/icons/trash/index.esm.js +13 -2
  299. package/icons/trash/index.esm.min.js +1 -1
  300. package/icons/trash/index.js +13 -2
  301. package/icons/trash/index.min.js +1 -1
  302. package/icons/undo/index.cjs.js +13 -2
  303. package/icons/undo/index.cjs.min.js +1 -1
  304. package/icons/undo/index.esm.js +13 -2
  305. package/icons/undo/index.esm.min.js +1 -1
  306. package/icons/undo/index.js +13 -2
  307. package/icons/undo/index.min.js +1 -1
  308. package/icons/upload/index.cjs.js +13 -2
  309. package/icons/upload/index.cjs.min.js +1 -1
  310. package/icons/upload/index.esm.js +13 -2
  311. package/icons/upload/index.esm.min.js +1 -1
  312. package/icons/upload/index.js +13 -2
  313. package/icons/upload/index.min.js +1 -1
  314. package/icons/windowmaximize/index.cjs.js +13 -2
  315. package/icons/windowmaximize/index.cjs.min.js +1 -1
  316. package/icons/windowmaximize/index.esm.js +13 -2
  317. package/icons/windowmaximize/index.esm.min.js +1 -1
  318. package/icons/windowmaximize/index.js +13 -2
  319. package/icons/windowmaximize/index.min.js +1 -1
  320. package/icons/windowminimize/index.cjs.js +13 -2
  321. package/icons/windowminimize/index.cjs.min.js +1 -1
  322. package/icons/windowminimize/index.esm.js +13 -2
  323. package/icons/windowminimize/index.esm.min.js +1 -1
  324. package/icons/windowminimize/index.js +13 -2
  325. package/icons/windowminimize/index.min.js +1 -1
  326. package/image/image.cjs.js +85 -119
  327. package/image/image.cjs.min.js +1 -1
  328. package/image/image.esm.js +87 -121
  329. package/image/image.esm.min.js +1 -1
  330. package/image/image.js +86 -120
  331. package/image/image.min.js +1 -1
  332. package/inplace/inplace.cjs.js +7 -0
  333. package/inplace/inplace.cjs.min.js +1 -1
  334. package/inplace/inplace.esm.js +7 -0
  335. package/inplace/inplace.esm.min.js +1 -1
  336. package/inplace/inplace.js +8 -2
  337. package/inplace/inplace.min.js +1 -1
  338. package/inputnumber/inputnumber.cjs.js +63 -19
  339. package/inputnumber/inputnumber.cjs.min.js +1 -1
  340. package/inputnumber/inputnumber.d.ts +7 -0
  341. package/inputnumber/inputnumber.esm.js +63 -19
  342. package/inputnumber/inputnumber.esm.min.js +1 -1
  343. package/inputnumber/inputnumber.js +63 -19
  344. package/inputnumber/inputnumber.min.js +1 -1
  345. package/inputswitch/inputswitch.cjs.js +3 -3
  346. package/inputswitch/inputswitch.cjs.min.js +1 -1
  347. package/inputswitch/inputswitch.esm.js +3 -3
  348. package/inputswitch/inputswitch.esm.min.js +1 -1
  349. package/inputswitch/inputswitch.js +3 -3
  350. package/inputswitch/inputswitch.min.js +1 -1
  351. package/inputtext/inputtext.cjs.js +7 -6
  352. package/inputtext/inputtext.cjs.min.js +1 -1
  353. package/inputtext/inputtext.esm.js +7 -6
  354. package/inputtext/inputtext.esm.min.js +1 -1
  355. package/inputtext/inputtext.js +7 -6
  356. package/inputtext/inputtext.min.js +1 -1
  357. package/listbox/listbox.cjs.js +14 -1
  358. package/listbox/listbox.cjs.min.js +1 -1
  359. package/listbox/listbox.d.ts +8 -3
  360. package/listbox/listbox.esm.js +14 -1
  361. package/listbox/listbox.esm.min.js +1 -1
  362. package/listbox/listbox.js +14 -1
  363. package/listbox/listbox.min.js +1 -1
  364. package/megamenu/megamenu.cjs.js +799 -179
  365. package/megamenu/megamenu.cjs.min.js +1 -1
  366. package/megamenu/megamenu.d.ts +14 -0
  367. package/megamenu/megamenu.esm.js +801 -181
  368. package/megamenu/megamenu.esm.min.js +1 -1
  369. package/megamenu/megamenu.js +799 -179
  370. package/megamenu/megamenu.min.js +1 -1
  371. package/mention/mention.cjs.js +7 -9
  372. package/mention/mention.cjs.min.js +1 -1
  373. package/mention/mention.esm.js +7 -9
  374. package/mention/mention.esm.min.js +1 -1
  375. package/mention/mention.js +7 -9
  376. package/mention/mention.min.js +1 -1
  377. package/menu/menu.cjs.js +217 -166
  378. package/menu/menu.cjs.min.js +1 -1
  379. package/menu/menu.d.ts +15 -1
  380. package/menu/menu.esm.js +220 -169
  381. package/menu/menu.esm.min.js +1 -1
  382. package/menu/menu.js +217 -166
  383. package/menu/menu.min.js +1 -1
  384. package/menubar/menubar.cjs.js +714 -179
  385. package/menubar/menubar.cjs.min.js +1 -1
  386. package/menubar/menubar.d.ts +18 -0
  387. package/menubar/menubar.esm.js +717 -182
  388. package/menubar/menubar.esm.min.js +1 -1
  389. package/menubar/menubar.js +714 -179
  390. package/menubar/menubar.min.js +1 -1
  391. package/message/message.cjs.js +2 -1
  392. package/message/message.cjs.min.js +1 -1
  393. package/message/message.esm.js +2 -1
  394. package/message/message.esm.min.js +1 -1
  395. package/message/message.js +2 -1
  396. package/message/message.min.js +1 -1
  397. package/messages/messages.cjs.js +5 -3
  398. package/messages/messages.cjs.min.js +1 -1
  399. package/messages/messages.esm.js +5 -3
  400. package/messages/messages.esm.min.js +1 -1
  401. package/messages/messages.js +5 -3
  402. package/messages/messages.min.js +1 -1
  403. package/multiselect/multiselect.cjs.js +58 -35
  404. package/multiselect/multiselect.cjs.min.js +1 -1
  405. package/multiselect/multiselect.d.ts +5 -1
  406. package/multiselect/multiselect.esm.js +58 -35
  407. package/multiselect/multiselect.esm.min.js +1 -1
  408. package/multiselect/multiselect.js +59 -37
  409. package/multiselect/multiselect.min.js +1 -1
  410. package/orderlist/orderlist.cjs.js +260 -105
  411. package/orderlist/orderlist.cjs.min.js +1 -1
  412. package/orderlist/orderlist.d.ts +18 -0
  413. package/orderlist/orderlist.esm.js +261 -106
  414. package/orderlist/orderlist.esm.min.js +1 -1
  415. package/orderlist/orderlist.js +260 -105
  416. package/orderlist/orderlist.min.js +1 -1
  417. package/organizationchart/organizationchart.cjs.js +10 -0
  418. package/organizationchart/organizationchart.cjs.min.js +1 -1
  419. package/organizationchart/organizationchart.esm.js +10 -0
  420. package/organizationchart/organizationchart.esm.min.js +1 -1
  421. package/organizationchart/organizationchart.js +10 -0
  422. package/organizationchart/organizationchart.min.js +1 -1
  423. package/overlaypanel/overlaypanel.cjs.js +9 -102
  424. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  425. package/overlaypanel/overlaypanel.d.ts +1 -1
  426. package/overlaypanel/overlaypanel.esm.js +11 -104
  427. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  428. package/overlaypanel/overlaypanel.js +10 -103
  429. package/overlaypanel/overlaypanel.min.js +1 -1
  430. package/package.json +1 -1
  431. package/paginator/paginator.d.ts +2 -2
  432. package/panel/panel.cjs.js +22 -19
  433. package/panel/panel.cjs.min.js +1 -1
  434. package/panel/panel.esm.js +22 -19
  435. package/panel/panel.esm.min.js +1 -1
  436. package/panel/panel.js +22 -19
  437. package/panel/panel.min.js +1 -1
  438. package/panelmenu/panelmenu.cjs.js +774 -195
  439. package/panelmenu/panelmenu.cjs.min.js +1 -1
  440. package/panelmenu/panelmenu.d.ts +15 -0
  441. package/panelmenu/panelmenu.esm.js +775 -196
  442. package/panelmenu/panelmenu.esm.min.js +1 -1
  443. package/panelmenu/panelmenu.js +774 -195
  444. package/panelmenu/panelmenu.min.js +1 -1
  445. package/passthrough/tailwind/index.cjs.js +163 -159
  446. package/passthrough/tailwind/index.cjs.min.js +1 -1
  447. package/passthrough/tailwind/index.esm.js +163 -159
  448. package/passthrough/tailwind/index.esm.min.js +1 -1
  449. package/passthrough/tailwind/index.js +163 -159
  450. package/passthrough/tailwind/index.min.js +1 -1
  451. package/password/password.cjs.js +7 -2
  452. package/password/password.cjs.min.js +1 -1
  453. package/password/password.d.ts +1 -1
  454. package/password/password.esm.js +8 -3
  455. package/password/password.esm.min.js +1 -1
  456. package/password/password.js +7 -2
  457. package/password/password.min.js +1 -1
  458. package/picklist/picklist.cjs.js +709 -181
  459. package/picklist/picklist.cjs.min.js +1 -1
  460. package/picklist/picklist.d.ts +10 -0
  461. package/picklist/picklist.esm.js +708 -180
  462. package/picklist/picklist.esm.min.js +1 -1
  463. package/picklist/picklist.js +709 -181
  464. package/picklist/picklist.min.js +1 -1
  465. package/portal/portal.cjs.js +7 -1
  466. package/portal/portal.cjs.min.js +1 -1
  467. package/portal/portal.esm.js +7 -1
  468. package/portal/portal.esm.min.js +1 -1
  469. package/portal/portal.js +7 -1
  470. package/portal/portal.min.js +1 -1
  471. package/primereact.all.cjs.js +8352 -3145
  472. package/primereact.all.cjs.min.js +1 -1
  473. package/primereact.all.esm.js +8351 -3146
  474. package/primereact.all.esm.min.js +1 -1
  475. package/primereact.all.js +8352 -3145
  476. package/primereact.all.min.js +1 -1
  477. package/radiobutton/radiobutton.cjs.js +27 -26
  478. package/radiobutton/radiobutton.cjs.min.js +1 -1
  479. package/radiobutton/radiobutton.esm.js +27 -26
  480. package/radiobutton/radiobutton.esm.min.js +1 -1
  481. package/radiobutton/radiobutton.js +28 -27
  482. package/radiobutton/radiobutton.min.js +1 -1
  483. package/resources/themes/arya-blue/theme.css +854 -790
  484. package/resources/themes/arya-green/theme.css +854 -790
  485. package/resources/themes/arya-orange/theme.css +854 -790
  486. package/resources/themes/arya-purple/theme.css +854 -790
  487. package/resources/themes/bootstrap4-dark-blue/theme.css +678 -615
  488. package/resources/themes/bootstrap4-dark-purple/theme.css +678 -615
  489. package/resources/themes/bootstrap4-light-blue/theme.css +679 -616
  490. package/resources/themes/bootstrap4-light-purple/theme.css +679 -616
  491. package/resources/themes/fluent-light/theme.css +686 -638
  492. package/resources/themes/lara-dark-amber/theme.css +679 -630
  493. package/resources/themes/lara-dark-blue/theme.css +679 -630
  494. package/resources/themes/lara-dark-cyan/theme.css +679 -630
  495. package/resources/themes/lara-dark-green/theme.css +679 -630
  496. package/resources/themes/lara-dark-indigo/theme.css +679 -630
  497. package/resources/themes/lara-dark-pink/theme.css +679 -630
  498. package/resources/themes/lara-dark-purple/theme.css +679 -630
  499. package/resources/themes/lara-dark-teal/theme.css +679 -630
  500. package/resources/themes/lara-light-amber/theme.css +776 -725
  501. package/resources/themes/lara-light-blue/theme.css +1011 -960
  502. package/resources/themes/lara-light-cyan/theme.css +776 -725
  503. package/resources/themes/lara-light-green/theme.css +820 -769
  504. package/resources/themes/lara-light-indigo/theme.css +1016 -965
  505. package/resources/themes/lara-light-pink/theme.css +776 -725
  506. package/resources/themes/lara-light-purple/theme.css +1016 -965
  507. package/resources/themes/lara-light-teal/theme.css +776 -725
  508. package/resources/themes/luna-amber/theme.css +950 -887
  509. package/resources/themes/luna-blue/theme.css +950 -887
  510. package/resources/themes/luna-green/theme.css +950 -887
  511. package/resources/themes/luna-pink/theme.css +950 -887
  512. package/resources/themes/md-dark-deeppurple/theme.css +918 -950
  513. package/resources/themes/md-dark-indigo/theme.css +918 -950
  514. package/resources/themes/md-light-deeppurple/theme.css +878 -910
  515. package/resources/themes/md-light-indigo/theme.css +878 -910
  516. package/resources/themes/mdc-dark-deeppurple/theme.css +918 -950
  517. package/resources/themes/mdc-dark-indigo/theme.css +918 -950
  518. package/resources/themes/mdc-light-deeppurple/theme.css +878 -910
  519. package/resources/themes/mdc-light-indigo/theme.css +878 -910
  520. package/resources/themes/mira/theme.css +1562 -1532
  521. package/resources/themes/nano/theme.css +707 -641
  522. package/resources/themes/nova/theme.css +705 -643
  523. package/resources/themes/nova-accent/theme.css +701 -636
  524. package/resources/themes/nova-alt/theme.css +705 -643
  525. package/resources/themes/rhea/theme.css +876 -811
  526. package/resources/themes/saga-blue/theme.css +896 -832
  527. package/resources/themes/saga-green/theme.css +896 -832
  528. package/resources/themes/saga-orange/theme.css +896 -832
  529. package/resources/themes/saga-purple/theme.css +896 -832
  530. package/resources/themes/soho-dark/theme.css +701 -643
  531. package/resources/themes/soho-light/theme.css +690 -634
  532. package/resources/themes/tailwind-light/theme.css +1370 -1306
  533. package/resources/themes/vela-blue/theme.css +862 -798
  534. package/resources/themes/vela-green/theme.css +862 -798
  535. package/resources/themes/vela-orange/theme.css +862 -798
  536. package/resources/themes/vela-purple/theme.css +862 -798
  537. package/resources/themes/viva-dark/theme.css +655 -612
  538. package/resources/themes/viva-light/theme.css +737 -694
  539. package/ripple/ripple.cjs.js +71 -5
  540. package/ripple/ripple.cjs.min.js +1 -1
  541. package/ripple/ripple.esm.js +71 -5
  542. package/ripple/ripple.esm.min.js +1 -1
  543. package/ripple/ripple.js +71 -5
  544. package/ripple/ripple.min.js +1 -1
  545. package/scrollpanel/scrollpanel.cjs.js +183 -3
  546. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  547. package/scrollpanel/scrollpanel.esm.js +184 -4
  548. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  549. package/scrollpanel/scrollpanel.js +183 -3
  550. package/scrollpanel/scrollpanel.min.js +1 -1
  551. package/sidebar/sidebar.cjs.js +62 -146
  552. package/sidebar/sidebar.cjs.min.js +1 -1
  553. package/sidebar/sidebar.d.ts +25 -3
  554. package/sidebar/sidebar.esm.js +65 -149
  555. package/sidebar/sidebar.esm.min.js +1 -1
  556. package/sidebar/sidebar.js +63 -147
  557. package/sidebar/sidebar.min.js +1 -1
  558. package/slidemenu/slidemenu.cjs.js +7 -100
  559. package/slidemenu/slidemenu.cjs.min.js +1 -1
  560. package/slidemenu/slidemenu.d.ts +1 -1
  561. package/slidemenu/slidemenu.esm.js +10 -103
  562. package/slidemenu/slidemenu.esm.min.js +1 -1
  563. package/slidemenu/slidemenu.js +7 -100
  564. package/slidemenu/slidemenu.min.js +1 -1
  565. package/speeddial/speeddial.cjs.js +275 -32
  566. package/speeddial/speeddial.cjs.min.js +1 -1
  567. package/speeddial/speeddial.esm.js +277 -34
  568. package/speeddial/speeddial.esm.min.js +1 -1
  569. package/speeddial/speeddial.js +275 -32
  570. package/speeddial/speeddial.min.js +1 -1
  571. package/splitbutton/splitbutton.cjs.js +1098 -309
  572. package/splitbutton/splitbutton.cjs.min.js +1 -1
  573. package/splitbutton/splitbutton.d.ts +5 -5
  574. package/splitbutton/splitbutton.esm.js +1100 -311
  575. package/splitbutton/splitbutton.esm.min.js +1 -1
  576. package/splitbutton/splitbutton.js +1096 -309
  577. package/splitbutton/splitbutton.min.js +1 -1
  578. package/splitter/splitter.cjs.js +103 -15
  579. package/splitter/splitter.cjs.min.js +1 -1
  580. package/splitter/splitter.d.ts +5 -0
  581. package/splitter/splitter.esm.js +103 -15
  582. package/splitter/splitter.esm.min.js +1 -1
  583. package/splitter/splitter.js +103 -15
  584. package/splitter/splitter.min.js +1 -1
  585. package/steps/steps.cjs.js +99 -13
  586. package/steps/steps.cjs.min.js +1 -1
  587. package/steps/steps.esm.js +100 -14
  588. package/steps/steps.esm.min.js +1 -1
  589. package/steps/steps.js +99 -13
  590. package/steps/steps.min.js +1 -1
  591. package/tabmenu/tabmenu.cjs.js +113 -17
  592. package/tabmenu/tabmenu.cjs.min.js +1 -1
  593. package/tabmenu/tabmenu.esm.js +113 -17
  594. package/tabmenu/tabmenu.esm.min.js +1 -1
  595. package/tabmenu/tabmenu.js +113 -17
  596. package/tabmenu/tabmenu.min.js +1 -1
  597. package/tabview/tabview.cjs.js +128 -20
  598. package/tabview/tabview.cjs.min.js +1 -1
  599. package/tabview/tabview.d.ts +35 -0
  600. package/tabview/tabview.esm.js +128 -20
  601. package/tabview/tabview.esm.min.js +1 -1
  602. package/tabview/tabview.js +128 -20
  603. package/tabview/tabview.min.js +1 -1
  604. package/tieredmenu/tieredmenu.cjs.js +753 -275
  605. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  606. package/tieredmenu/tieredmenu.d.ts +11 -1
  607. package/tieredmenu/tieredmenu.esm.js +755 -277
  608. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  609. package/tieredmenu/tieredmenu.js +753 -275
  610. package/tieredmenu/tieredmenu.min.js +1 -1
  611. package/toast/toast.cjs.js +6 -1
  612. package/toast/toast.cjs.min.js +1 -1
  613. package/toast/toast.d.ts +36 -2
  614. package/toast/toast.esm.js +6 -1
  615. package/toast/toast.esm.min.js +1 -1
  616. package/toast/toast.js +6 -1
  617. package/toast/toast.min.js +1 -1
  618. package/togglebutton/togglebutton.cjs.js +74 -4
  619. package/togglebutton/togglebutton.cjs.min.js +1 -1
  620. package/togglebutton/togglebutton.esm.js +74 -4
  621. package/togglebutton/togglebutton.esm.min.js +1 -1
  622. package/togglebutton/togglebutton.js +75 -5
  623. package/togglebutton/togglebutton.min.js +1 -1
  624. package/tooltip/tooltip.d.ts +27 -0
  625. package/tooltip/tooltipoptions.d.ts +1 -1
  626. package/tree/tree.cjs.js +198 -88
  627. package/tree/tree.cjs.min.js +1 -1
  628. package/tree/tree.d.ts +8 -0
  629. package/tree/tree.esm.js +199 -89
  630. package/tree/tree.esm.min.js +1 -1
  631. package/tree/tree.js +198 -88
  632. package/tree/tree.min.js +1 -1
  633. package/treeselect/treeselect.cjs.js +185 -49
  634. package/treeselect/treeselect.cjs.min.js +1 -1
  635. package/treeselect/treeselect.d.ts +26 -1
  636. package/treeselect/treeselect.esm.js +186 -50
  637. package/treeselect/treeselect.esm.min.js +1 -1
  638. package/treeselect/treeselect.js +186 -51
  639. package/treeselect/treeselect.min.js +1 -1
  640. package/treetable/treetable.cjs.js +59 -53
  641. package/treetable/treetable.cjs.min.js +1 -1
  642. package/treetable/treetable.d.ts +3 -3
  643. package/treetable/treetable.esm.js +59 -53
  644. package/treetable/treetable.esm.min.js +1 -1
  645. package/treetable/treetable.js +59 -53
  646. package/treetable/treetable.min.js +1 -1
  647. package/utils/utils.cjs.js +19 -5
  648. package/utils/utils.cjs.min.js +1 -1
  649. package/utils/utils.d.ts +1 -1
  650. package/utils/utils.esm.js +19 -5
  651. package/utils/utils.esm.min.js +1 -1
  652. package/utils/utils.js +19 -5
  653. package/utils/utils.min.js +1 -1
  654. package/web-types.json +402 -33
@@ -298,6 +298,7 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
298
298
  var nextBtnRef = React__namespace.useRef(null);
299
299
  var tabsRef = React__namespace.useRef({});
300
300
  var activeIndex = props.onTabChange ? props.activeIndex : activeIndexState;
301
+ var count = React__namespace.Children.count(props.children);
301
302
  var metaData = {
302
303
  props: props,
303
304
  state: {
@@ -317,11 +318,24 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
317
318
  componentbase.useHandleStyle(TabViewBase.css.styles, isUnstyled, {
318
319
  name: 'tabview'
319
320
  });
320
- var getTabPT = function getTabPT(tab, key) {
321
- return ptmo(getTabProp(tab, 'pt'), key, {
321
+ var getTabPT = function getTabPT(tab, key, index) {
322
+ var tabMetaData = {
322
323
  props: tab.props,
323
- parent: metaData
324
- });
324
+ parent: metaData,
325
+ context: {
326
+ index: index,
327
+ count: count,
328
+ first: index === 0,
329
+ last: index === count - 1,
330
+ active: index == activeIndexState,
331
+ disabled: getTabProp(tab, 'disabled')
332
+ }
333
+ };
334
+ return utils.mergeProps(ptm("tab.".concat(key), {
335
+ tab: tabMetaData
336
+ }), ptm("tabpanel.".concat(key), {
337
+ tabpanel: tabMetaData
338
+ }), ptm("tabpanel.".concat(key), tabMetaData), ptmo(getTabProp(tab, 'pt'), key, tabMetaData));
325
339
  };
326
340
  var isSelected = function isSelected(index) {
327
341
  return index === activeIndex;
@@ -376,6 +390,9 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
376
390
  }
377
391
  };
378
392
  var onTabHeaderClick = function onTabHeaderClick(event, tab, index) {
393
+ changeActiveIndex(event, tab, index);
394
+ };
395
+ var changeActiveIndex = function changeActiveIndex(event, tab, index) {
379
396
  if (event) {
380
397
  event.preventDefault();
381
398
  }
@@ -392,11 +409,94 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
392
409
  index: index
393
410
  });else setActiveIndexState(index);
394
411
  }
395
- updateScrollBar(index);
412
+ updateScrollBar({
413
+ index: index
414
+ });
396
415
  };
397
416
  var _onKeyDown = function onKeyDown(event, tab, index) {
398
- if (event.key === 'Enter') {
399
- onTabHeaderClick(event, tab, index);
417
+ switch (event.code) {
418
+ case 'ArrowLeft':
419
+ onTabArrowLeftKey(event);
420
+ break;
421
+ case 'ArrowRight':
422
+ onTabArrowRightKey(event);
423
+ break;
424
+ case 'Home':
425
+ onTabHomeKey(event);
426
+ break;
427
+ case 'End':
428
+ onTabEndKey(event);
429
+ break;
430
+ case 'PageDown':
431
+ onPageDownKey(event);
432
+ break;
433
+ case 'PageUp':
434
+ onPageUpKey(event);
435
+ break;
436
+ case 'Enter':
437
+ case 'Space':
438
+ onTabEnterKey(event, tab, index);
439
+ break;
440
+ }
441
+ };
442
+ var onTabArrowRightKey = function onTabArrowRightKey(event) {
443
+ var nextHeaderAction = findNextHeaderAction(event.target.parentElement);
444
+ nextHeaderAction ? changeFocusedTab(nextHeaderAction) : onTabHomeKey(event);
445
+ event.preventDefault();
446
+ };
447
+ var onTabArrowLeftKey = function onTabArrowLeftKey(event) {
448
+ var prevHeaderAction = findPrevHeaderAction(event.target.parentElement);
449
+ prevHeaderAction ? changeFocusedTab(prevHeaderAction) : onTabEndKey(event);
450
+ event.preventDefault();
451
+ };
452
+ var onTabHomeKey = function onTabHomeKey(event) {
453
+ var firstHeaderAction = findFirstHeaderAction();
454
+ changeFocusedTab(firstHeaderAction);
455
+ event.preventDefault();
456
+ };
457
+ var onTabEndKey = function onTabEndKey(event) {
458
+ var lastHeaderAction = findLastHeaderAction();
459
+ changeFocusedTab(lastHeaderAction);
460
+ event.preventDefault();
461
+ };
462
+ var onPageDownKey = function onPageDownKey(event) {
463
+ updateScrollBar({
464
+ index: React__namespace.Children.count(props.children) - 1
465
+ });
466
+ event.preventDefault();
467
+ };
468
+ var onPageUpKey = function onPageUpKey(event) {
469
+ updateScrollBar({
470
+ index: 0
471
+ });
472
+ event.preventDefault();
473
+ };
474
+ var onTabEnterKey = function onTabEnterKey(event, tab, index) {
475
+ changeActiveIndex(event, tab, index);
476
+ event.preventDefault();
477
+ };
478
+ var findNextHeaderAction = function findNextHeaderAction(tabElement) {
479
+ var selfCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
480
+ var headerElement = selfCheck ? tabElement : tabElement.nextElementSibling;
481
+ return headerElement ? utils.DomHandler.getAttribute(headerElement, 'data-p-disabled') || utils.DomHandler.getAttribute(headerElement, 'data-pc-section') === 'inkbar' ? findNextHeaderAction(headerElement) : utils.DomHandler.findSingle(headerElement, '[data-pc-section="headeraction"]') : null;
482
+ };
483
+ var findPrevHeaderAction = function findPrevHeaderAction(tabElement) {
484
+ var selfCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
485
+ var headerElement = selfCheck ? tabElement : tabElement.previousElementSibling;
486
+ return headerElement ? utils.DomHandler.getAttribute(headerElement, 'data-p-disabled') || utils.DomHandler.getAttribute(headerElement, 'data-pc-section') === 'inkbar' ? findPrevHeaderAction(headerElement) : utils.DomHandler.findSingle(headerElement, '[data-pc-section="headeraction"]') : null;
487
+ };
488
+ var findFirstHeaderAction = function findFirstHeaderAction() {
489
+ return findNextHeaderAction(navRef.current.firstElementChild, true);
490
+ };
491
+ var findLastHeaderAction = function findLastHeaderAction() {
492
+ return findPrevHeaderAction(navRef.current.lastElementChild, true);
493
+ };
494
+ var changeFocusedTab = function changeFocusedTab(element) {
495
+ if (element) {
496
+ utils.DomHandler.focus(element);
497
+ updateScrollBar({
498
+ element: element
499
+ });
400
500
  }
401
501
  };
402
502
  var updateInkBar = function updateInkBar() {
@@ -404,8 +504,10 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
404
504
  inkbarRef.current.style.width = utils.DomHandler.getWidth(tabHeader) + 'px';
405
505
  inkbarRef.current.style.left = utils.DomHandler.getOffset(tabHeader).left - utils.DomHandler.getOffset(navRef.current).left + 'px';
406
506
  };
407
- var updateScrollBar = function updateScrollBar(index) {
408
- var tabHeader = tabsRef.current["tab_".concat(index)];
507
+ var updateScrollBar = function updateScrollBar(_ref3) {
508
+ var index = _ref3.index,
509
+ element = _ref3.element;
510
+ var tabHeader = element || tabsRef.current["tab_".concat(index)];
409
511
  if (tabHeader && tabHeader.scrollIntoView) {
410
512
  tabHeader.scrollIntoView({
411
513
  block: 'nearest'
@@ -464,7 +566,9 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
464
566
  }, [hiddenTabsState]);
465
567
  hooks.useUpdateEffect(function () {
466
568
  if (props.activeIndex !== activeIndexState) {
467
- updateScrollBar(props.activeIndex);
569
+ updateScrollBar({
570
+ index: props.activeIndex
571
+ });
468
572
  }
469
573
  }, [props.activeIndex]);
470
574
  React__namespace.useImperativeHandle(ref, function () {
@@ -491,14 +595,14 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
491
595
  closable = _TabPanelBase$getCPro.closable,
492
596
  closeIcon = _TabPanelBase$getCPro.closeIcon;
493
597
  var headerId = idState + '_header_' + index;
494
- var ariaControls = idState + '_content_' + index;
495
- var tabIndex = disabled ? null : 0;
598
+ var ariaControls = idState + index + '_content';
599
+ var tabIndex = disabled || !selected ? -1 : 0;
496
600
  var leftIconElement = leftIcon && utils.IconUtils.getJSXIcon(leftIcon, undefined, {
497
601
  props: props
498
602
  });
499
603
  var headerTitleProps = utils.mergeProps({
500
604
  className: cx('tab.headertitle')
501
- }, getTabPT(tab, 'headertitle'));
605
+ }, getTabPT(tab, 'headertitle', index));
502
606
  var titleElement = /*#__PURE__*/React__namespace.createElement("span", headerTitleProps, header);
503
607
  var rightIconElement = rightIcon && utils.IconUtils.getJSXIcon(rightIcon, undefined, {
504
608
  props: props
@@ -525,13 +629,14 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
525
629
  tabIndex: tabIndex,
526
630
  'aria-controls': ariaControls,
527
631
  'aria-selected': selected,
632
+ 'aria-disabled': disabled,
528
633
  onClick: function onClick(e) {
529
634
  return onTabHeaderClick(e, tab, index);
530
635
  },
531
636
  onKeyDown: function onKeyDown(e) {
532
637
  return _onKeyDown(e, tab, index);
533
638
  }
534
- }, getTabPT(tab, 'headeraction'));
639
+ }, getTabPT(tab, 'headeraction', index));
535
640
  var content =
536
641
  /*#__PURE__*/
537
642
  // eslint-disable /
@@ -575,7 +680,7 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
575
680
  _style: _style
576
681
  }),
577
682
  role: 'presentation'
578
- }, getTabPT(tab, 'root'), getTabPT(tab, 'header'));
683
+ }, getTabPT(tab, 'root', index), getTabPT(tab, 'header', index));
579
684
  return /*#__PURE__*/React__namespace.createElement("li", headerProps, content);
580
685
  };
581
686
  var createTabHeaders = function createTabHeaders() {
@@ -601,6 +706,8 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
601
706
  }, ptm('nav'));
602
707
  var inkbarProps = utils.mergeProps({
603
708
  ref: inkbarRef,
709
+ 'aria-hidden': 'true',
710
+ role: 'presentation',
604
711
  className: cx('inkbar')
605
712
  }, ptm('inkbar'));
606
713
  return /*#__PURE__*/React__namespace.createElement("div", navContentProps, /*#__PURE__*/React__namespace.createElement("ul", navProps, headers, /*#__PURE__*/React__namespace.createElement("li", inkbarProps)));
@@ -613,7 +720,7 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
613
720
  var contents = React__namespace.Children.map(props.children, function (tab, index) {
614
721
  if (shouldUseTab(tab) && (!props.renderActiveOnly || isSelected(index))) {
615
722
  var selected = isSelected(index);
616
- var contentId = idState + '_content_' + index;
723
+ var contentId = idState + index + '_content';
617
724
  var ariaLabelledBy = idState + '_header_' + index;
618
725
  var contentProps = utils.mergeProps({
619
726
  id: contentId,
@@ -635,16 +742,17 @@ var TabView = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
635
742
  index: index
636
743
  }),
637
744
  role: 'tabpanel',
638
- 'aria-labelledby': ariaLabelledBy,
639
- 'aria-hidden': !selected
640
- }, TabPanelBase.getCOtherProps(tab), getTabPT(tab, 'root'), getTabPT(tab, 'content'));
745
+ 'aria-labelledby': ariaLabelledBy
746
+ }, TabPanelBase.getCOtherProps(tab), getTabPT(tab, 'root', index), getTabPT(tab, 'content', index));
641
747
  return /*#__PURE__*/React__namespace.createElement("div", contentProps, !props.renderActiveOnly ? getTabProp(tab, 'children') : selected && getTabProp(tab, 'children'));
642
748
  }
643
749
  });
644
750
  return /*#__PURE__*/React__namespace.createElement("div", panelContainerProps, contents);
645
751
  };
646
752
  var createPrevButton = function createPrevButton() {
647
- var prevIconProps = utils.mergeProps(ptm('previcon'));
753
+ var prevIconProps = utils.mergeProps({
754
+ 'aria-hidden': 'true'
755
+ }, ptm('previcon'));
648
756
  var icon = props.prevButton || /*#__PURE__*/React__namespace.createElement(chevronleft.ChevronLeftIcon, prevIconProps);
649
757
  var leftIcon = utils.IconUtils.getJSXIcon(icon, _objectSpread({}, prevIconProps), {
650
758
  props: props
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/hooks"),a=require("primereact/icons/chevronleft"),o=require("primereact/icons/chevronright"),l=require("primereact/icons/times"),i=require("primereact/ripple"),c=require("primereact/utils");function s(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 u=s(e);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 b(e){if(Array.isArray(e))return p(e)}function d(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function f(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 v(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function 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 y(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 h(e){var t=y(e,"string");return"symbol"===m(t)?t:String(t)}function g(e,t,n){return(t=h(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 P(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,l,i=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw a}}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 x(e,t){return w(e)||P(e,t)||f(e,t)||O()}function C(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 S(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach((function(t){g(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var j=n.ComponentBase.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},css:{classes:{navcontent:"p-tabview-nav-content",nav:"p-tabview-nav",inkbar:"p-tabview-ink-bar",panelcontainer:function(e){return c.classNames("p-tabview-panels",e.props.panelContainerClassName)},prevbutton:"p-tabview-nav-prev p-tabview-nav-btn p-link",nextbutton:"p-tabview-nav-next p-tabview-nav-btn p-link",root:function(e){var t=e.props;return c.classNames("p-tabview p-component",{"p-tabview-scrollable":t.scrollable},t.className)},navcontainer:"p-tabview-nav-container",tab:{header:function(e){return c.classNames("p-unselectable-text",{"p-tabview-selected p-highlight":e.selected,"p-disabled":e.disabled},e.headerClassName,e._className)},headertitle:"p-tabview-title",headeraction:"p-tabview-nav-link",content:function(e){var t=e.props,n=e.selected,r=e.getTabProp,a=e.tab,o=e.isSelected,l=e.index;return!(0,e.shouldUseTab)(a,l)||t.renderActiveOnly&&!o(l)?void 0:c.classNames(r(a,"contentClassName"),r(a,"className"),"p-tabview-panel",{"p-hidden":!n})}}},styles:"\n@layer primereact {\n .p-tabview-nav-container {\n position: relative;\n }\n \n .p-tabview-scrollable .p-tabview-nav-container {\n overflow: hidden;\n }\n \n .p-tabview-nav-content {\n overflow-x: auto;\n overflow-y: hidden;\n scroll-behavior: smooth;\n scrollbar-width: none;\n overscroll-behavior: contain auto;\n position: relative;\n }\n \n .p-tabview-nav {\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n flex: 1 1 auto;\n }\n \n .p-tabview-nav-link {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n position: relative;\n text-decoration: none;\n overflow: hidden;\n }\n \n .p-tabview-ink-bar {\n display: none;\n z-index: 1;\n }\n \n .p-tabview-nav-link:focus {\n z-index: 1;\n }\n \n .p-tabview-close {\n z-index: 1;\n }\n \n .p-tabview-title {\n line-height: 1;\n white-space: nowrap;\n }\n \n .p-tabview-nav-btn {\n position: absolute;\n top: 0;\n z-index: 2;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-tabview-nav-prev {\n left: 0;\n }\n \n .p-tabview-nav-next {\n right: 0;\n }\n \n .p-tabview-nav-content::-webkit-scrollbar {\n display: none;\n }\n}\n",inlineStyles:{tab:{header:function(e){var t=e._style;return S(S({},e.headerStyle||{}),t||{})},content:function(e){var t=e.props,n=e.getTabProp,r=e.tab,a=e.isSelected,o=e.index;return!(0,e.shouldUseTab)(r,o)||t.renderActiveOnly&&!a(o)?void 0:S(S({},n(r,"contentStyle")||{}),n(r,"style")||{})}}}}}),E=n.ComponentBase.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 c.ObjectUtils.getComponentProp(e,t,E.defaultProps)},getCProps:function(e){return c.ObjectUtils.getComponentProps(e,E.defaultProps)},getCOtherProps:function(e){return c.ObjectUtils.getComponentDiffProps(e,E.defaultProps)}});function N(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 I(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?N(Object(n),!0).forEach((function(t){g(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):N(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var T=function(){},k=u.forwardRef((function(e,s){var p=u.useContext(t.PrimeReactContext),m=j.getProps(e,p),y=x(u.useState(m.id),2),h=y[0],g=y[1],w=x(u.useState(!0),2),P=w[0],O=w[1],C=x(u.useState(!1),2),S=C[0],N=C[1],T=x(u.useState([]),2),k=T[0],D=T[1],_=x(u.useState(m.activeIndex),2),U=_[0],A=_[1],B=u.useRef(null),R=u.useRef(null),q=u.useRef(null),L=u.useRef(null),H=u.useRef(null),W=u.useRef(null),J=u.useRef({}),V=m.onTabChange?m.activeIndex:U,X={props:m,state:{id:h,isPrevButtonDisabled:P,isNextButtonDisabled:S,hiddenTabsState:k,activeIndex:U}},z=j.setMetaData(I({},X)),M=z.ptm,K=z.ptmo,Y=z.cx,$=z.sx;n.useHandleStyle(j.css.styles,z.isUnstyled,{name:"tabview"});var F=function(e,t){return K(Q(e,"pt"),t,{props:e.props,parent:X})},G=function(e){return e===V},Q=function(e,t){return E.getCProp(e,t)},Z=function(e){return e&&c.ObjectUtils.isValidChild(e,"TabPanel")&&k.every((function(t){return t!==e.key}))},ee=function(e,t){e.preventDefault();var n,r=m.onBeforeTabClose,a=m.onTabClose,o=m.children[t].key;r&&!1===r({originalEvent:e,index:t})||(D([].concat(b(n=k)||d(n)||f(n)||v(),[o])),a&&a({originalEvent:e,index:t}))},te=function(e,t,n){if(e&&e.preventDefault(),!Q(t,"disabled")){if(m.onBeforeTabChange&&!1===m.onBeforeTabChange({originalEvent:e,index:n}))return;m.onTabChange?m.onTabChange({originalEvent:e,index:n}):A(n)}re(n)},ne=function(e,t,n){"Enter"===e.key&&te(e,t,n)},re=function(e){var t=J.current["tab_".concat(e)];t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest"})},ae=function(e){var t,n,r,a;m.scrollable&&(n=(t=R.current).scrollLeft,r=t.scrollWidth,a=c.DomHandler.getWidth(R.current),O(0===n),N(n===r-a)),e.preventDefault()},oe=function(){return[H.current,W.current].reduce((function(e,t){return t?e+c.DomHandler.getWidth(t):e}),0)},le=function(){O(!0),N(!1),D([]),m.onTabChange?m.onTabChange({index:V}):A(m.activeIndex)};u.useEffect((function(){var e;e=J.current["tab_".concat(V)],L.current.style.width=c.DomHandler.getWidth(e)+"px",L.current.style.left=c.DomHandler.getOffset(e).left-c.DomHandler.getOffset(q.current).left+"px"})),r.useMountEffect((function(){h||g(c.UniqueComponentId())})),r.useUpdateEffect((function(){if(c.ObjectUtils.isNotEmpty(k)){var e=(t=k[k.length-1],(n=u.Children.map(m.children,(function(e,t){if(Z(e))return{tab:e,index:t}}))).find((function(e){var n=e.index;return!Q(e.tab,"disabled")&&n>=t}))||n.reverse().find((function(e){var n=e.index;return!Q(e.tab,"disabled")&&t>n})));e&&te(null,e.tab,e.index)}var t,n}),[k]),r.useUpdateEffect((function(){m.activeIndex!==U&&re(m.activeIndex)}),[m.activeIndex]),u.useImperativeHandle(s,(function(){return{props:m,reset:le,getElement:function(){return B.current}}}));var ie,ce,se,ue,pe,be,de,fe,ve,me=function(e,t){var n=G(t),r=E.getCProps(e),a=r.headerStyle,o=r.headerClassName,s=r.style,p=r.className,b=r.disabled,d=r.leftIcon,f=r.rightIcon,v=r.header,y=r.headerTemplate,g=r.closable,w=r.closeIcon,P=h+"_header_"+t,O=h+"_content_"+t,x=b?null:0,C=d&&c.IconUtils.getJSXIcon(d,void 0,{props:m}),S=c.mergeProps({className:Y("tab.headertitle")},F(e,"headertitle")),j=u.createElement("span",S,v),N=f&&c.IconUtils.getJSXIcon(f,void 0,{props:m}),I="p-tabview-close",T=g?c.IconUtils.getJSXIcon(w||u.createElement(l.TimesIcon,{className:I,onClick:function(e){return ee(e,t)}}),{className:I,onClick:function(e){return ee(e,t)}},{props:m}):null,k=c.mergeProps({id:P,role:"tab",className:Y("tab.headeraction"),tabIndex:x,"aria-controls":O,"aria-selected":n,onClick:function(n){return te(n,e,t)},onKeyDown:function(n){return ne(n,e,t)}},F(e,"headeraction")),D=u.createElement("a",k,C,j,N,T,u.createElement(i.Ripple,null));y&&(D=c.ObjectUtils.getJSXElement(y,{className:"p-tabview-nav-link",titleClassName:"p-tabview-title",onClick:function(n){return te(n,e,t)},onKeyDown:function(n){return ne(n,e,t)},leftIconElement:C,titleElement:j,rightIconElement:N,element:D,props:m,index:t,selected:n,ariaControls:O}));var _=c.mergeProps({ref:function(e){return J.current["tab_".concat(t)]=e},className:Y("tab.header",{selected:n,disabled:b,headerClassName:o,_className:p}),style:$("tab.header",{headerStyle:a,_style:s}),role:"presentation"},F(e,"root"),F(e,"header"));return u.createElement("li",_,D)},ye=c.mergeProps({id:h,ref:B,style:m.style,className:Y("root")},j.getOtherProps(m),M("root")),he=c.mergeProps({className:Y("navcontainer")},M("navcontainer")),ge=(ie=u.Children.map(m.children,(function(e,t){if(Z(e))return me(e,t)})),ce=c.mergeProps({id:h,ref:R,className:Y("navcontent"),style:m.style,onScroll:ae},M("navcontent")),se=c.mergeProps({ref:q,className:Y("nav"),role:"tablist"},M("nav")),ue=c.mergeProps({ref:L,className:Y("inkbar")},M("inkbar")),u.createElement("div",ce,u.createElement("ul",se,ie,u.createElement("li",ue)))),we=(pe=c.mergeProps({className:Y("panelcontainer"),style:m.panelContainerStyle},M("panelcontainer")),be=u.Children.map(m.children,(function(e,t){if(Z(e)&&(!m.renderActiveOnly||G(t))){var n=G(t),r=h+"_header_"+t,a=c.mergeProps({id:h+"_content_"+t,className:Y("tab.content",{props:m,selected:n,getTabProp:Q,tab:e,isSelected:G,shouldUseTab:Z,index:t}),style:$("tab.content",{props:m,getTabProp:Q,tab:e,isSelected:G,shouldUseTab:Z,index:t}),role:"tabpanel","aria-labelledby":r,"aria-hidden":!n},E.getCOtherProps(e),F(e,"root"),F(e,"content"));return u.createElement("div",a,m.renderActiveOnly?n&&Q(e,"children"):Q(e,"children"))}})),u.createElement("div",pe,be)),Pe=(de=c.mergeProps(M("previcon")),fe=c.IconUtils.getJSXIcon(m.prevButton||u.createElement(a.ChevronLeftIcon,de),I({},de),{props:m}),ve=c.mergeProps({ref:H,type:"button",className:Y("prevbutton"),"aria-label":t.ariaLabel("previousPageLabel"),onClick:function(e){return t=c.DomHandler.getWidth(R.current)-oe(),void(R.current.scrollLeft=(n=R.current.scrollLeft-t)<=0?0:n);var t,n}},M("prevbutton")),m.scrollable&&!P?u.createElement("button",ve,fe,u.createElement(i.Ripple,null)):null),Oe=function(){var e=c.mergeProps({"aria-hidden":"true"},M("nexticon")),n=c.IconUtils.getJSXIcon(m.nextButton||u.createElement(o.ChevronRightIcon,e),I({},e),{props:m}),r=c.mergeProps({ref:W,type:"button",className:Y("nextbutton"),"aria-label":t.ariaLabel("nextPageLabel"),onClick:function(e){return t=c.DomHandler.getWidth(R.current)-oe(),void(R.current.scrollLeft=(n=R.current.scrollLeft+t)>=(r=R.current.scrollWidth-t)?r:n);var t,n,r}},M("nextbutton"));if(m.scrollable&&!S)return u.createElement("button",r,n,u.createElement(i.Ripple,null))}();return u.createElement("div",ye,u.createElement("div",he,Pe,ge,Oe),we)}));T.displayName="TabPanel",k.displayName="TabView",exports.TabPanel=T,exports.TabView=k;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/hooks"),a=require("primereact/icons/chevronleft"),o=require("primereact/icons/chevronright"),l=require("primereact/icons/times"),i=require("primereact/ripple"),c=require("primereact/utils");function s(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 u=s(e);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 d(e){if(Array.isArray(e))return p(e)}function b(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function f(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 v(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function 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 h(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 y(e){var t=h(e,"string");return"symbol"===m(t)?t:String(t)}function g(e,t,n){return(t=y(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 P(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,l,i=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw a}}return i}}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 O(e,t){return w(e)||P(e,t)||f(e,t)||x()}function C(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 S(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach((function(t){g(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var E=n.ComponentBase.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},css:{classes:{navcontent:"p-tabview-nav-content",nav:"p-tabview-nav",inkbar:"p-tabview-ink-bar",panelcontainer:function(e){return c.classNames("p-tabview-panels",e.props.panelContainerClassName)},prevbutton:"p-tabview-nav-prev p-tabview-nav-btn p-link",nextbutton:"p-tabview-nav-next p-tabview-nav-btn p-link",root:function(e){var t=e.props;return c.classNames("p-tabview p-component",{"p-tabview-scrollable":t.scrollable},t.className)},navcontainer:"p-tabview-nav-container",tab:{header:function(e){return c.classNames("p-unselectable-text",{"p-tabview-selected p-highlight":e.selected,"p-disabled":e.disabled},e.headerClassName,e._className)},headertitle:"p-tabview-title",headeraction:"p-tabview-nav-link",content:function(e){var t=e.props,n=e.selected,r=e.getTabProp,a=e.tab,o=e.isSelected,l=e.index;return!(0,e.shouldUseTab)(a,l)||t.renderActiveOnly&&!o(l)?void 0:c.classNames(r(a,"contentClassName"),r(a,"className"),"p-tabview-panel",{"p-hidden":!n})}}},styles:"\n@layer primereact {\n .p-tabview-nav-container {\n position: relative;\n }\n \n .p-tabview-scrollable .p-tabview-nav-container {\n overflow: hidden;\n }\n \n .p-tabview-nav-content {\n overflow-x: auto;\n overflow-y: hidden;\n scroll-behavior: smooth;\n scrollbar-width: none;\n overscroll-behavior: contain auto;\n position: relative;\n }\n \n .p-tabview-nav {\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n flex: 1 1 auto;\n }\n \n .p-tabview-nav-link {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n position: relative;\n text-decoration: none;\n overflow: hidden;\n }\n \n .p-tabview-ink-bar {\n display: none;\n z-index: 1;\n }\n \n .p-tabview-nav-link:focus {\n z-index: 1;\n }\n \n .p-tabview-close {\n z-index: 1;\n }\n \n .p-tabview-title {\n line-height: 1;\n white-space: nowrap;\n }\n \n .p-tabview-nav-btn {\n position: absolute;\n top: 0;\n z-index: 2;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-tabview-nav-prev {\n left: 0;\n }\n \n .p-tabview-nav-next {\n right: 0;\n }\n \n .p-tabview-nav-content::-webkit-scrollbar {\n display: none;\n }\n}\n",inlineStyles:{tab:{header:function(e){var t=e._style;return S(S({},e.headerStyle||{}),t||{})},content:function(e){var t=e.props,n=e.getTabProp,r=e.tab,a=e.isSelected,o=e.index;return!(0,e.shouldUseTab)(r,o)||t.renderActiveOnly&&!a(o)?void 0:S(S({},n(r,"contentStyle")||{}),n(r,"style")||{})}}}}}),j=n.ComponentBase.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 c.ObjectUtils.getComponentProp(e,t,j.defaultProps)},getCProps:function(e){return c.ObjectUtils.getComponentProps(e,j.defaultProps)},getCOtherProps:function(e){return c.ObjectUtils.getComponentDiffProps(e,j.defaultProps)}});function D(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 N(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?D(Object(n),!0).forEach((function(t){g(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):D(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var I=function(){},T=u.forwardRef((function(e,s){var p=u.useContext(t.PrimeReactContext),m=E.getProps(e,p),h=O(u.useState(m.id),2),y=h[0],g=h[1],w=O(u.useState(!0),2),P=w[0],x=w[1],C=O(u.useState(!1),2),S=C[0],D=C[1],I=O(u.useState([]),2),T=I[0],k=I[1],U=O(u.useState(m.activeIndex),2),_=U[0],A=U[1],H=u.useRef(null),R=u.useRef(null),B=u.useRef(null),L=u.useRef(null),q=u.useRef(null),W=u.useRef(null),J=u.useRef({}),V=m.onTabChange?m.activeIndex:_,X=u.Children.count(m.children),z={props:m,state:{id:y,isPrevButtonDisabled:P,isNextButtonDisabled:S,hiddenTabsState:T,activeIndex:_}},M=E.setMetaData(N({},z)),K=M.ptm,Y=M.ptmo,$=M.cx,F=M.sx;n.useHandleStyle(E.css.styles,M.isUnstyled,{name:"tabview"});var G=function(e,t,n){var r={props:e.props,parent:z,context:{index:n,count:X,first:0===n,last:n===X-1,active:n==_,disabled:Z(e,"disabled")}};return c.mergeProps(K("tab.".concat(t),{tab:r}),K("tabpanel.".concat(t),{tabpanel:r}),K("tabpanel.".concat(t),r),Y(Z(e,"pt"),t,r))},Q=function(e){return e===V},Z=function(e,t){return j.getCProp(e,t)},ee=function(e){return e&&c.ObjectUtils.isValidChild(e,"TabPanel")&&T.every((function(t){return t!==e.key}))},te=function(e,t){e.preventDefault();var n,r=m.onBeforeTabClose,a=m.onTabClose,o=m.children[t].key;r&&!1===r({originalEvent:e,index:t})||(k([].concat(d(n=T)||b(n)||f(n)||v(),[o])),a&&a({originalEvent:e,index:t}))},ne=function(e,t,n){re(e,t,n)},re=function(e,t,n){if(e&&e.preventDefault(),!Z(t,"disabled")){if(m.onBeforeTabChange&&!1===m.onBeforeTabChange({originalEvent:e,index:n}))return;m.onTabChange?m.onTabChange({originalEvent:e,index:n}):A(n)}he({index:n})},ae=function(e,t,n){switch(e.code){case"ArrowLeft":le(e);break;case"ArrowRight":oe(e);break;case"Home":ie(e);break;case"End":ce(e);break;case"PageDown":se(e);break;case"PageUp":ue(e);break;case"Enter":case"Space":pe(e,t,n)}},oe=function(e){var t=de(e.target.parentElement);t?me(t):ie(e),e.preventDefault()},le=function(e){var t=be(e.target.parentElement);t?me(t):ce(e),e.preventDefault()},ie=function(e){var t=fe();me(t),e.preventDefault()},ce=function(e){var t=ve();me(t),e.preventDefault()},se=function(e){he({index:u.Children.count(m.children)-1}),e.preventDefault()},ue=function(e){he({index:0}),e.preventDefault()},pe=function(e,t,n){re(e,t,n),e.preventDefault()},de=function e(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1]?t:t.nextElementSibling;return n?c.DomHandler.getAttribute(n,"data-p-disabled")||"inkbar"===c.DomHandler.getAttribute(n,"data-pc-section")?e(n):c.DomHandler.findSingle(n,'[data-pc-section="headeraction"]'):null},be=function e(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1]?t:t.previousElementSibling;return n?c.DomHandler.getAttribute(n,"data-p-disabled")||"inkbar"===c.DomHandler.getAttribute(n,"data-pc-section")?e(n):c.DomHandler.findSingle(n,'[data-pc-section="headeraction"]'):null},fe=function(){return de(B.current.firstElementChild,!0)},ve=function(){return be(B.current.lastElementChild,!0)},me=function(e){e&&(c.DomHandler.focus(e),he({element:e}))},he=function(e){var t=e.element||J.current["tab_".concat(e.index)];t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest"})},ye=function(e){var t,n,r,a;m.scrollable&&(n=(t=R.current).scrollLeft,r=t.scrollWidth,a=c.DomHandler.getWidth(R.current),x(0===n),D(n===r-a)),e.preventDefault()},ge=function(){return[q.current,W.current].reduce((function(e,t){return t?e+c.DomHandler.getWidth(t):e}),0)},we=function(){x(!0),D(!1),k([]),m.onTabChange?m.onTabChange({index:V}):A(m.activeIndex)};u.useEffect((function(){var e;e=J.current["tab_".concat(V)],L.current.style.width=c.DomHandler.getWidth(e)+"px",L.current.style.left=c.DomHandler.getOffset(e).left-c.DomHandler.getOffset(B.current).left+"px"})),r.useMountEffect((function(){y||g(c.UniqueComponentId())})),r.useUpdateEffect((function(){if(c.ObjectUtils.isNotEmpty(T)){var e=(t=T[T.length-1],(n=u.Children.map(m.children,(function(e,t){if(ee(e))return{tab:e,index:t}}))).find((function(e){var n=e.index;return!Z(e.tab,"disabled")&&n>=t}))||n.reverse().find((function(e){var n=e.index;return!Z(e.tab,"disabled")&&t>n})));e&&ne(null,e.tab,e.index)}var t,n}),[T]),r.useUpdateEffect((function(){m.activeIndex!==_&&he({index:m.activeIndex})}),[m.activeIndex]),u.useImperativeHandle(s,(function(){return{props:m,reset:we,getElement:function(){return H.current}}}));var Pe,xe,Oe,Ce,Se,Ee,je,De,Ne,Ie=function(e,t){var n=Q(t),r=j.getCProps(e),a=r.headerStyle,o=r.headerClassName,s=r.style,p=r.className,d=r.disabled,b=r.leftIcon,f=r.rightIcon,v=r.header,h=r.headerTemplate,g=r.closable,w=r.closeIcon,P=y+"_header_"+t,x=y+t+"_content",O=d||!n?-1:0,C=b&&c.IconUtils.getJSXIcon(b,void 0,{props:m}),S=c.mergeProps({className:$("tab.headertitle")},G(e,"headertitle",t)),E=u.createElement("span",S,v),D=f&&c.IconUtils.getJSXIcon(f,void 0,{props:m}),N="p-tabview-close",I=g?c.IconUtils.getJSXIcon(w||u.createElement(l.TimesIcon,{className:N,onClick:function(e){return te(e,t)}}),{className:N,onClick:function(e){return te(e,t)}},{props:m}):null,T=c.mergeProps({id:P,role:"tab",className:$("tab.headeraction"),tabIndex:O,"aria-controls":x,"aria-selected":n,"aria-disabled":d,onClick:function(n){return ne(n,e,t)},onKeyDown:function(n){return ae(n,e,t)}},G(e,"headeraction",t)),k=u.createElement("a",T,C,E,D,I,u.createElement(i.Ripple,null));h&&(k=c.ObjectUtils.getJSXElement(h,{className:"p-tabview-nav-link",titleClassName:"p-tabview-title",onClick:function(n){return ne(n,e,t)},onKeyDown:function(n){return ae(n,e,t)},leftIconElement:C,titleElement:E,rightIconElement:D,element:k,props:m,index:t,selected:n,ariaControls:x}));var U=c.mergeProps({ref:function(e){return J.current["tab_".concat(t)]=e},className:$("tab.header",{selected:n,disabled:d,headerClassName:o,_className:p}),style:F("tab.header",{headerStyle:a,_style:s}),role:"presentation"},G(e,"root",t),G(e,"header",t));return u.createElement("li",U,k)},Te=c.mergeProps({id:y,ref:H,style:m.style,className:$("root")},E.getOtherProps(m),K("root")),ke=c.mergeProps({className:$("navcontainer")},K("navcontainer")),Ue=(Pe=u.Children.map(m.children,(function(e,t){if(ee(e))return Ie(e,t)})),xe=c.mergeProps({id:y,ref:R,className:$("navcontent"),style:m.style,onScroll:ye},K("navcontent")),Oe=c.mergeProps({ref:B,className:$("nav"),role:"tablist"},K("nav")),Ce=c.mergeProps({ref:L,"aria-hidden":"true",role:"presentation",className:$("inkbar")},K("inkbar")),u.createElement("div",xe,u.createElement("ul",Oe,Pe,u.createElement("li",Ce)))),_e=(Se=c.mergeProps({className:$("panelcontainer"),style:m.panelContainerStyle},K("panelcontainer")),Ee=u.Children.map(m.children,(function(e,t){if(ee(e)&&(!m.renderActiveOnly||Q(t))){var n=Q(t),r=y+"_header_"+t,a=c.mergeProps({id:y+t+"_content",className:$("tab.content",{props:m,selected:n,getTabProp:Z,tab:e,isSelected:Q,shouldUseTab:ee,index:t}),style:F("tab.content",{props:m,getTabProp:Z,tab:e,isSelected:Q,shouldUseTab:ee,index:t}),role:"tabpanel","aria-labelledby":r},j.getCOtherProps(e),G(e,"root",t),G(e,"content",t));return u.createElement("div",a,m.renderActiveOnly?n&&Z(e,"children"):Z(e,"children"))}})),u.createElement("div",Se,Ee)),Ae=(je=c.mergeProps({"aria-hidden":"true"},K("previcon")),De=c.IconUtils.getJSXIcon(m.prevButton||u.createElement(a.ChevronLeftIcon,je),N({},je),{props:m}),Ne=c.mergeProps({ref:q,type:"button",className:$("prevbutton"),"aria-label":t.ariaLabel("previousPageLabel"),onClick:function(e){return t=c.DomHandler.getWidth(R.current)-ge(),void(R.current.scrollLeft=(n=R.current.scrollLeft-t)<=0?0:n);var t,n}},K("prevbutton")),m.scrollable&&!P?u.createElement("button",Ne,De,u.createElement(i.Ripple,null)):null),He=function(){var e=c.mergeProps({"aria-hidden":"true"},K("nexticon")),n=c.IconUtils.getJSXIcon(m.nextButton||u.createElement(o.ChevronRightIcon,e),N({},e),{props:m}),r=c.mergeProps({ref:W,type:"button",className:$("nextbutton"),"aria-label":t.ariaLabel("nextPageLabel"),onClick:function(e){return t=c.DomHandler.getWidth(R.current)-ge(),void(R.current.scrollLeft=(n=R.current.scrollLeft+t)>=(r=R.current.scrollWidth-t)?r:n);var t,n,r}},K("nextbutton"));if(m.scrollable&&!S)return u.createElement("button",r,n,u.createElement(i.Ripple,null))}();return u.createElement("div",Te,u.createElement("div",ke,Ae,Ue,He),_e)}));I.displayName="TabPanel",T.displayName="TabView",exports.TabPanel=I,exports.TabView=T;
@@ -81,6 +81,41 @@ interface TabPanelHeaderTemplateOptions {
81
81
  export interface TabPanelPassThroughMethodOptions {
82
82
  props: TabPanelProps;
83
83
  parent: TabViewPassThroughMethodOptions;
84
+ context: TabViewContext;
85
+ }
86
+
87
+ /**
88
+ * Defines current inline context in Tabview component.
89
+ */
90
+ export interface TabViewContext {
91
+ /**
92
+ * Opened tab index.
93
+ */
94
+ index: number;
95
+ /**
96
+ * Total number of tabs
97
+ */
98
+ count: number;
99
+ /**
100
+ * Is this the first tab?
101
+ * @defaultValue false
102
+ */
103
+ first: boolean;
104
+ /**
105
+ * Is this the last tab?
106
+ * @defaultValue false
107
+ */
108
+ last: boolean;
109
+ /**
110
+ * Is this tab currently selected.
111
+ * @defaultValue false
112
+ */
113
+ selected: boolean;
114
+ /**
115
+ * Is this tab currently disabled.
116
+ * @defaultValue false
117
+ */
118
+ disabled: boolean;
84
119
  }
85
120
 
86
121
  /**
@@ -274,6 +274,7 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
274
274
  var nextBtnRef = React.useRef(null);
275
275
  var tabsRef = React.useRef({});
276
276
  var activeIndex = props.onTabChange ? props.activeIndex : activeIndexState;
277
+ var count = React.Children.count(props.children);
277
278
  var metaData = {
278
279
  props: props,
279
280
  state: {
@@ -293,11 +294,24 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
293
294
  useHandleStyle(TabViewBase.css.styles, isUnstyled, {
294
295
  name: 'tabview'
295
296
  });
296
- var getTabPT = function getTabPT(tab, key) {
297
- return ptmo(getTabProp(tab, 'pt'), key, {
297
+ var getTabPT = function getTabPT(tab, key, index) {
298
+ var tabMetaData = {
298
299
  props: tab.props,
299
- parent: metaData
300
- });
300
+ parent: metaData,
301
+ context: {
302
+ index: index,
303
+ count: count,
304
+ first: index === 0,
305
+ last: index === count - 1,
306
+ active: index == activeIndexState,
307
+ disabled: getTabProp(tab, 'disabled')
308
+ }
309
+ };
310
+ return mergeProps(ptm("tab.".concat(key), {
311
+ tab: tabMetaData
312
+ }), ptm("tabpanel.".concat(key), {
313
+ tabpanel: tabMetaData
314
+ }), ptm("tabpanel.".concat(key), tabMetaData), ptmo(getTabProp(tab, 'pt'), key, tabMetaData));
301
315
  };
302
316
  var isSelected = function isSelected(index) {
303
317
  return index === activeIndex;
@@ -352,6 +366,9 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
352
366
  }
353
367
  };
354
368
  var onTabHeaderClick = function onTabHeaderClick(event, tab, index) {
369
+ changeActiveIndex(event, tab, index);
370
+ };
371
+ var changeActiveIndex = function changeActiveIndex(event, tab, index) {
355
372
  if (event) {
356
373
  event.preventDefault();
357
374
  }
@@ -368,11 +385,94 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
368
385
  index: index
369
386
  });else setActiveIndexState(index);
370
387
  }
371
- updateScrollBar(index);
388
+ updateScrollBar({
389
+ index: index
390
+ });
372
391
  };
373
392
  var _onKeyDown = function onKeyDown(event, tab, index) {
374
- if (event.key === 'Enter') {
375
- onTabHeaderClick(event, tab, index);
393
+ switch (event.code) {
394
+ case 'ArrowLeft':
395
+ onTabArrowLeftKey(event);
396
+ break;
397
+ case 'ArrowRight':
398
+ onTabArrowRightKey(event);
399
+ break;
400
+ case 'Home':
401
+ onTabHomeKey(event);
402
+ break;
403
+ case 'End':
404
+ onTabEndKey(event);
405
+ break;
406
+ case 'PageDown':
407
+ onPageDownKey(event);
408
+ break;
409
+ case 'PageUp':
410
+ onPageUpKey(event);
411
+ break;
412
+ case 'Enter':
413
+ case 'Space':
414
+ onTabEnterKey(event, tab, index);
415
+ break;
416
+ }
417
+ };
418
+ var onTabArrowRightKey = function onTabArrowRightKey(event) {
419
+ var nextHeaderAction = findNextHeaderAction(event.target.parentElement);
420
+ nextHeaderAction ? changeFocusedTab(nextHeaderAction) : onTabHomeKey(event);
421
+ event.preventDefault();
422
+ };
423
+ var onTabArrowLeftKey = function onTabArrowLeftKey(event) {
424
+ var prevHeaderAction = findPrevHeaderAction(event.target.parentElement);
425
+ prevHeaderAction ? changeFocusedTab(prevHeaderAction) : onTabEndKey(event);
426
+ event.preventDefault();
427
+ };
428
+ var onTabHomeKey = function onTabHomeKey(event) {
429
+ var firstHeaderAction = findFirstHeaderAction();
430
+ changeFocusedTab(firstHeaderAction);
431
+ event.preventDefault();
432
+ };
433
+ var onTabEndKey = function onTabEndKey(event) {
434
+ var lastHeaderAction = findLastHeaderAction();
435
+ changeFocusedTab(lastHeaderAction);
436
+ event.preventDefault();
437
+ };
438
+ var onPageDownKey = function onPageDownKey(event) {
439
+ updateScrollBar({
440
+ index: React.Children.count(props.children) - 1
441
+ });
442
+ event.preventDefault();
443
+ };
444
+ var onPageUpKey = function onPageUpKey(event) {
445
+ updateScrollBar({
446
+ index: 0
447
+ });
448
+ event.preventDefault();
449
+ };
450
+ var onTabEnterKey = function onTabEnterKey(event, tab, index) {
451
+ changeActiveIndex(event, tab, index);
452
+ event.preventDefault();
453
+ };
454
+ var findNextHeaderAction = function findNextHeaderAction(tabElement) {
455
+ var selfCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
456
+ var headerElement = selfCheck ? tabElement : tabElement.nextElementSibling;
457
+ return headerElement ? DomHandler.getAttribute(headerElement, 'data-p-disabled') || DomHandler.getAttribute(headerElement, 'data-pc-section') === 'inkbar' ? findNextHeaderAction(headerElement) : DomHandler.findSingle(headerElement, '[data-pc-section="headeraction"]') : null;
458
+ };
459
+ var findPrevHeaderAction = function findPrevHeaderAction(tabElement) {
460
+ var selfCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
461
+ var headerElement = selfCheck ? tabElement : tabElement.previousElementSibling;
462
+ return headerElement ? DomHandler.getAttribute(headerElement, 'data-p-disabled') || DomHandler.getAttribute(headerElement, 'data-pc-section') === 'inkbar' ? findPrevHeaderAction(headerElement) : DomHandler.findSingle(headerElement, '[data-pc-section="headeraction"]') : null;
463
+ };
464
+ var findFirstHeaderAction = function findFirstHeaderAction() {
465
+ return findNextHeaderAction(navRef.current.firstElementChild, true);
466
+ };
467
+ var findLastHeaderAction = function findLastHeaderAction() {
468
+ return findPrevHeaderAction(navRef.current.lastElementChild, true);
469
+ };
470
+ var changeFocusedTab = function changeFocusedTab(element) {
471
+ if (element) {
472
+ DomHandler.focus(element);
473
+ updateScrollBar({
474
+ element: element
475
+ });
376
476
  }
377
477
  };
378
478
  var updateInkBar = function updateInkBar() {
@@ -380,8 +480,10 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
380
480
  inkbarRef.current.style.width = DomHandler.getWidth(tabHeader) + 'px';
381
481
  inkbarRef.current.style.left = DomHandler.getOffset(tabHeader).left - DomHandler.getOffset(navRef.current).left + 'px';
382
482
  };
383
- var updateScrollBar = function updateScrollBar(index) {
384
- var tabHeader = tabsRef.current["tab_".concat(index)];
483
+ var updateScrollBar = function updateScrollBar(_ref3) {
484
+ var index = _ref3.index,
485
+ element = _ref3.element;
486
+ var tabHeader = element || tabsRef.current["tab_".concat(index)];
385
487
  if (tabHeader && tabHeader.scrollIntoView) {
386
488
  tabHeader.scrollIntoView({
387
489
  block: 'nearest'
@@ -440,7 +542,9 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
440
542
  }, [hiddenTabsState]);
441
543
  useUpdateEffect(function () {
442
544
  if (props.activeIndex !== activeIndexState) {
443
- updateScrollBar(props.activeIndex);
545
+ updateScrollBar({
546
+ index: props.activeIndex
547
+ });
444
548
  }
445
549
  }, [props.activeIndex]);
446
550
  React.useImperativeHandle(ref, function () {
@@ -467,14 +571,14 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
467
571
  closable = _TabPanelBase$getCPro.closable,
468
572
  closeIcon = _TabPanelBase$getCPro.closeIcon;
469
573
  var headerId = idState + '_header_' + index;
470
- var ariaControls = idState + '_content_' + index;
471
- var tabIndex = disabled ? null : 0;
574
+ var ariaControls = idState + index + '_content';
575
+ var tabIndex = disabled || !selected ? -1 : 0;
472
576
  var leftIconElement = leftIcon && IconUtils.getJSXIcon(leftIcon, undefined, {
473
577
  props: props
474
578
  });
475
579
  var headerTitleProps = mergeProps({
476
580
  className: cx('tab.headertitle')
477
- }, getTabPT(tab, 'headertitle'));
581
+ }, getTabPT(tab, 'headertitle', index));
478
582
  var titleElement = /*#__PURE__*/React.createElement("span", headerTitleProps, header);
479
583
  var rightIconElement = rightIcon && IconUtils.getJSXIcon(rightIcon, undefined, {
480
584
  props: props
@@ -501,13 +605,14 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
501
605
  tabIndex: tabIndex,
502
606
  'aria-controls': ariaControls,
503
607
  'aria-selected': selected,
608
+ 'aria-disabled': disabled,
504
609
  onClick: function onClick(e) {
505
610
  return onTabHeaderClick(e, tab, index);
506
611
  },
507
612
  onKeyDown: function onKeyDown(e) {
508
613
  return _onKeyDown(e, tab, index);
509
614
  }
510
- }, getTabPT(tab, 'headeraction'));
615
+ }, getTabPT(tab, 'headeraction', index));
511
616
  var content =
512
617
  /*#__PURE__*/
513
618
  // eslint-disable /
@@ -551,7 +656,7 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
551
656
  _style: _style
552
657
  }),
553
658
  role: 'presentation'
554
- }, getTabPT(tab, 'root'), getTabPT(tab, 'header'));
659
+ }, getTabPT(tab, 'root', index), getTabPT(tab, 'header', index));
555
660
  return /*#__PURE__*/React.createElement("li", headerProps, content);
556
661
  };
557
662
  var createTabHeaders = function createTabHeaders() {
@@ -577,6 +682,8 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
577
682
  }, ptm('nav'));
578
683
  var inkbarProps = mergeProps({
579
684
  ref: inkbarRef,
685
+ 'aria-hidden': 'true',
686
+ role: 'presentation',
580
687
  className: cx('inkbar')
581
688
  }, ptm('inkbar'));
582
689
  return /*#__PURE__*/React.createElement("div", navContentProps, /*#__PURE__*/React.createElement("ul", navProps, headers, /*#__PURE__*/React.createElement("li", inkbarProps)));
@@ -589,7 +696,7 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
589
696
  var contents = React.Children.map(props.children, function (tab, index) {
590
697
  if (shouldUseTab(tab) && (!props.renderActiveOnly || isSelected(index))) {
591
698
  var selected = isSelected(index);
592
- var contentId = idState + '_content_' + index;
699
+ var contentId = idState + index + '_content';
593
700
  var ariaLabelledBy = idState + '_header_' + index;
594
701
  var contentProps = mergeProps({
595
702
  id: contentId,
@@ -611,16 +718,17 @@ var TabView = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
611
718
  index: index
612
719
  }),
613
720
  role: 'tabpanel',
614
- 'aria-labelledby': ariaLabelledBy,
615
- 'aria-hidden': !selected
616
- }, TabPanelBase.getCOtherProps(tab), getTabPT(tab, 'root'), getTabPT(tab, 'content'));
721
+ 'aria-labelledby': ariaLabelledBy
722
+ }, TabPanelBase.getCOtherProps(tab), getTabPT(tab, 'root', index), getTabPT(tab, 'content', index));
617
723
  return /*#__PURE__*/React.createElement("div", contentProps, !props.renderActiveOnly ? getTabProp(tab, 'children') : selected && getTabProp(tab, 'children'));
618
724
  }
619
725
  });
620
726
  return /*#__PURE__*/React.createElement("div", panelContainerProps, contents);
621
727
  };
622
728
  var createPrevButton = function createPrevButton() {
623
- var prevIconProps = mergeProps(ptm('previcon'));
729
+ var prevIconProps = mergeProps({
730
+ 'aria-hidden': 'true'
731
+ }, ptm('previcon'));
624
732
  var icon = props.prevButton || /*#__PURE__*/React.createElement(ChevronLeftIcon, prevIconProps);
625
733
  var leftIcon = IconUtils.getJSXIcon(icon, _objectSpread({}, prevIconProps), {
626
734
  props: props