primereact 9.5.0 → 9.6.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 (870) hide show
  1. package/accordion/accordion.cjs.js +2 -1
  2. package/accordion/accordion.cjs.min.js +1 -1
  3. package/accordion/accordion.esm.js +3 -2
  4. package/accordion/accordion.esm.min.js +1 -1
  5. package/accordion/accordion.js +2 -1
  6. package/accordion/accordion.min.js +1 -1
  7. package/api/api.cjs.js +214 -3
  8. package/api/api.cjs.min.js +1 -1
  9. package/api/api.d.ts +876 -3
  10. package/api/api.esm.js +209 -4
  11. package/api/api.esm.min.js +1 -1
  12. package/api/api.js +215 -5
  13. package/api/api.min.js +1 -1
  14. package/autocomplete/autocomplete.cjs.js +132 -91
  15. package/autocomplete/autocomplete.cjs.min.js +1 -1
  16. package/autocomplete/autocomplete.d.ts +134 -2
  17. package/autocomplete/autocomplete.esm.js +134 -93
  18. package/autocomplete/autocomplete.esm.min.js +1 -1
  19. package/autocomplete/autocomplete.js +133 -93
  20. package/autocomplete/autocomplete.min.js +1 -1
  21. package/avatar/avatar.cjs.js +3 -1
  22. package/avatar/avatar.cjs.min.js +1 -1
  23. package/avatar/avatar.d.ts +1 -1
  24. package/avatar/avatar.esm.js +3 -1
  25. package/avatar/avatar.esm.min.js +1 -1
  26. package/avatar/avatar.js +4 -3
  27. package/avatar/avatar.min.js +1 -1
  28. package/avatargroup/avatargroup.cjs.js +3 -1
  29. package/avatargroup/avatargroup.cjs.min.js +1 -1
  30. package/avatargroup/avatargroup.esm.js +3 -1
  31. package/avatargroup/avatargroup.esm.min.js +1 -1
  32. package/avatargroup/avatargroup.js +4 -3
  33. package/avatargroup/avatargroup.min.js +1 -1
  34. package/badge/badge.cjs.js +3 -1
  35. package/badge/badge.cjs.min.js +1 -1
  36. package/badge/badge.esm.js +3 -1
  37. package/badge/badge.esm.min.js +1 -1
  38. package/badge/badge.js +4 -3
  39. package/badge/badge.min.js +1 -1
  40. package/blockui/blockui.cjs.js +4 -3
  41. package/blockui/blockui.cjs.min.js +1 -1
  42. package/blockui/blockui.esm.js +4 -3
  43. package/blockui/blockui.esm.min.js +1 -1
  44. package/blockui/blockui.js +5 -4
  45. package/blockui/blockui.min.js +1 -1
  46. package/breadcrumb/breadcrumb.cjs.js +11 -4
  47. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  48. package/breadcrumb/breadcrumb.esm.js +11 -4
  49. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  50. package/breadcrumb/breadcrumb.js +11 -5
  51. package/breadcrumb/breadcrumb.min.js +1 -1
  52. package/button/button.cjs.js +6 -2
  53. package/button/button.cjs.min.js +1 -1
  54. package/button/button.d.ts +6 -0
  55. package/button/button.esm.js +6 -2
  56. package/button/button.esm.min.js +1 -1
  57. package/button/button.js +7 -4
  58. package/button/button.min.js +1 -1
  59. package/calendar/calendar.cjs.js +320 -228
  60. package/calendar/calendar.cjs.min.js +1 -1
  61. package/calendar/calendar.d.ts +267 -1
  62. package/calendar/calendar.esm.js +322 -230
  63. package/calendar/calendar.esm.min.js +1 -1
  64. package/calendar/calendar.js +321 -230
  65. package/calendar/calendar.min.js +1 -1
  66. package/card/card.cjs.js +3 -1
  67. package/card/card.cjs.min.js +1 -1
  68. package/card/card.d.ts +5 -11
  69. package/card/card.esm.js +3 -1
  70. package/card/card.esm.min.js +1 -1
  71. package/card/card.js +4 -3
  72. package/card/card.min.js +1 -1
  73. package/carousel/carousel.cjs.js +19 -10
  74. package/carousel/carousel.cjs.min.js +1 -1
  75. package/carousel/carousel.d.ts +8 -0
  76. package/carousel/carousel.esm.js +20 -11
  77. package/carousel/carousel.esm.min.js +1 -1
  78. package/carousel/carousel.js +19 -10
  79. package/carousel/carousel.min.js +1 -1
  80. package/cascadeselect/cascadeselect.cjs.js +154 -85
  81. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  82. package/cascadeselect/cascadeselect.d.ts +95 -1
  83. package/cascadeselect/cascadeselect.esm.js +156 -87
  84. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  85. package/cascadeselect/cascadeselect.js +154 -86
  86. package/cascadeselect/cascadeselect.min.js +1 -1
  87. package/chart/chart.cjs.js +3 -1
  88. package/chart/chart.cjs.min.js +1 -1
  89. package/chart/chart.esm.js +3 -1
  90. package/chart/chart.esm.min.js +1 -1
  91. package/chart/chart.js +4 -3
  92. package/chart/chart.min.js +1 -1
  93. package/checkbox/checkbox.cjs.js +93 -34
  94. package/checkbox/checkbox.cjs.min.js +1 -1
  95. package/checkbox/checkbox.d.ts +60 -1
  96. package/checkbox/checkbox.esm.js +94 -35
  97. package/checkbox/checkbox.esm.min.js +1 -1
  98. package/checkbox/checkbox.js +93 -36
  99. package/checkbox/checkbox.min.js +1 -1
  100. package/chip/chip.cjs.js +3 -1
  101. package/chip/chip.cjs.min.js +1 -1
  102. package/chip/chip.d.ts +1 -1
  103. package/chip/chip.esm.js +3 -1
  104. package/chip/chip.esm.min.js +1 -1
  105. package/chip/chip.js +4 -3
  106. package/chip/chip.min.js +1 -1
  107. package/chips/chips.cjs.js +60 -38
  108. package/chips/chips.cjs.min.js +1 -1
  109. package/chips/chips.d.ts +73 -6
  110. package/chips/chips.esm.js +61 -39
  111. package/chips/chips.esm.min.js +1 -1
  112. package/chips/chips.js +60 -40
  113. package/chips/chips.min.js +1 -1
  114. package/colorpicker/colorpicker.cjs.js +119 -49
  115. package/colorpicker/colorpicker.cjs.min.js +1 -1
  116. package/colorpicker/colorpicker.d.ts +76 -0
  117. package/colorpicker/colorpicker.esm.js +121 -51
  118. package/colorpicker/colorpicker.esm.min.js +1 -1
  119. package/colorpicker/colorpicker.js +120 -51
  120. package/colorpicker/colorpicker.min.js +1 -1
  121. package/column/column.cjs.js +2 -0
  122. package/column/column.d.ts +298 -1
  123. package/column/column.esm.js +2 -0
  124. package/column/column.js +2 -0
  125. package/columngroup/columngroup.d.ts +28 -0
  126. package/componentbase/componentbase.cjs.js +29 -5
  127. package/componentbase/componentbase.cjs.min.js +1 -1
  128. package/componentbase/componentbase.esm.js +25 -5
  129. package/componentbase/componentbase.esm.min.js +1 -1
  130. package/componentbase/componentbase.js +30 -7
  131. package/componentbase/componentbase.min.js +1 -1
  132. package/confirmdialog/confirmdialog.cjs.js +2 -1
  133. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  134. package/confirmdialog/confirmdialog.esm.js +3 -2
  135. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  136. package/confirmdialog/confirmdialog.js +2 -1
  137. package/confirmdialog/confirmdialog.min.js +1 -1
  138. package/confirmpopup/confirmpopup.cjs.js +5 -4
  139. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  140. package/confirmpopup/confirmpopup.esm.js +6 -5
  141. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  142. package/confirmpopup/confirmpopup.js +5 -4
  143. package/confirmpopup/confirmpopup.min.js +1 -1
  144. package/contextmenu/contextmenu.cjs.js +10 -8
  145. package/contextmenu/contextmenu.cjs.min.js +1 -1
  146. package/contextmenu/contextmenu.esm.js +11 -9
  147. package/contextmenu/contextmenu.esm.min.js +1 -1
  148. package/contextmenu/contextmenu.js +10 -8
  149. package/contextmenu/contextmenu.min.js +1 -1
  150. package/core/core.js +1172 -595
  151. package/core/core.min.js +47 -47
  152. package/csstransition/csstransition.cjs.js +3 -2
  153. package/csstransition/csstransition.cjs.min.js +1 -1
  154. package/csstransition/csstransition.esm.js +3 -2
  155. package/csstransition/csstransition.esm.min.js +1 -1
  156. package/csstransition/csstransition.js +4 -3
  157. package/csstransition/csstransition.min.js +1 -1
  158. package/datascroller/datascroller.cjs.js +34 -43
  159. package/datascroller/datascroller.cjs.min.js +1 -1
  160. package/datascroller/datascroller.d.ts +51 -1
  161. package/datascroller/datascroller.esm.js +36 -45
  162. package/datascroller/datascroller.esm.min.js +1 -1
  163. package/datascroller/datascroller.js +35 -45
  164. package/datascroller/datascroller.min.js +1 -1
  165. package/datatable/datatable.cjs.js +931 -486
  166. package/datatable/datatable.cjs.min.js +1 -1
  167. package/datatable/datatable.d.ts +191 -3
  168. package/datatable/datatable.esm.js +933 -488
  169. package/datatable/datatable.esm.min.js +1 -1
  170. package/datatable/datatable.js +932 -488
  171. package/datatable/datatable.min.js +1 -1
  172. package/dataview/dataview.cjs.js +125 -109
  173. package/dataview/dataview.cjs.min.js +1 -1
  174. package/dataview/dataview.d.ts +105 -2
  175. package/dataview/dataview.esm.js +127 -111
  176. package/dataview/dataview.esm.min.js +1 -1
  177. package/dataview/dataview.js +123 -108
  178. package/dataview/dataview.min.js +1 -1
  179. package/deferredcontent/deferredcontent.cjs.js +3 -1
  180. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  181. package/deferredcontent/deferredcontent.esm.js +3 -1
  182. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  183. package/deferredcontent/deferredcontent.js +4 -3
  184. package/deferredcontent/deferredcontent.min.js +1 -1
  185. package/dialog/dialog.cjs.js +6 -5
  186. package/dialog/dialog.cjs.min.js +1 -1
  187. package/dialog/dialog.esm.js +7 -6
  188. package/dialog/dialog.esm.min.js +1 -1
  189. package/dialog/dialog.js +6 -5
  190. package/dialog/dialog.min.js +1 -1
  191. package/divider/divider.cjs.js +3 -1
  192. package/divider/divider.cjs.min.js +1 -1
  193. package/divider/divider.esm.js +3 -1
  194. package/divider/divider.esm.min.js +1 -1
  195. package/divider/divider.js +4 -3
  196. package/divider/divider.min.js +1 -1
  197. package/dock/dock.cjs.js +3 -1
  198. package/dock/dock.cjs.min.js +1 -1
  199. package/dock/dock.esm.js +3 -1
  200. package/dock/dock.esm.min.js +1 -1
  201. package/dock/dock.js +4 -3
  202. package/dock/dock.min.js +1 -1
  203. package/dropdown/dropdown.cjs.js +169 -119
  204. package/dropdown/dropdown.cjs.min.js +1 -1
  205. package/dropdown/dropdown.d.ts +154 -2
  206. package/dropdown/dropdown.esm.js +171 -121
  207. package/dropdown/dropdown.esm.min.js +1 -1
  208. package/dropdown/dropdown.js +170 -121
  209. package/dropdown/dropdown.min.js +1 -1
  210. package/editor/editor.cjs.js +95 -116
  211. package/editor/editor.cjs.min.js +1 -1
  212. package/editor/editor.d.ts +50 -0
  213. package/editor/editor.esm.js +96 -117
  214. package/editor/editor.esm.min.js +1 -1
  215. package/editor/editor.js +95 -118
  216. package/editor/editor.min.js +1 -1
  217. package/fieldset/fieldset.cjs.js +3 -1
  218. package/fieldset/fieldset.cjs.min.js +1 -1
  219. package/fieldset/fieldset.esm.js +3 -1
  220. package/fieldset/fieldset.esm.min.js +1 -1
  221. package/fieldset/fieldset.js +4 -3
  222. package/fieldset/fieldset.min.js +1 -1
  223. package/fileupload/fileupload.cjs.js +69 -60
  224. package/fileupload/fileupload.cjs.min.js +1 -1
  225. package/fileupload/fileupload.d.ts +13 -3
  226. package/fileupload/fileupload.esm.js +70 -61
  227. package/fileupload/fileupload.esm.min.js +1 -1
  228. package/fileupload/fileupload.js +66 -57
  229. package/fileupload/fileupload.min.js +1 -1
  230. package/galleria/galleria.cjs.js +8 -6
  231. package/galleria/galleria.cjs.min.js +1 -1
  232. package/galleria/galleria.esm.js +9 -7
  233. package/galleria/galleria.esm.min.js +1 -1
  234. package/galleria/galleria.js +8 -6
  235. package/galleria/galleria.min.js +1 -1
  236. package/hooks/hooks.cjs.js +6 -3
  237. package/hooks/hooks.cjs.min.js +1 -1
  238. package/hooks/hooks.esm.js +7 -4
  239. package/hooks/hooks.esm.min.js +1 -1
  240. package/hooks/hooks.js +6 -3
  241. package/hooks/hooks.min.js +1 -1
  242. package/icons/arrowdown/index.cjs.js +6 -1
  243. package/icons/arrowdown/index.cjs.min.js +1 -1
  244. package/icons/arrowdown/index.esm.js +6 -1
  245. package/icons/arrowdown/index.esm.min.js +1 -1
  246. package/icons/arrowdown/index.js +6 -1
  247. package/icons/arrowdown/index.min.js +1 -1
  248. package/icons/arrowup/index.cjs.js +6 -1
  249. package/icons/arrowup/index.cjs.min.js +1 -1
  250. package/icons/arrowup/index.esm.js +6 -1
  251. package/icons/arrowup/index.esm.min.js +1 -1
  252. package/icons/arrowup/index.js +6 -1
  253. package/icons/arrowup/index.min.js +1 -1
  254. package/icons/ban/index.cjs.js +6 -1
  255. package/icons/ban/index.cjs.min.js +1 -1
  256. package/icons/ban/index.esm.js +6 -1
  257. package/icons/ban/index.esm.min.js +1 -1
  258. package/icons/ban/index.js +6 -1
  259. package/icons/ban/index.min.js +1 -1
  260. package/icons/download/index.cjs.js +6 -1
  261. package/icons/download/index.cjs.min.js +1 -1
  262. package/icons/download/index.esm.js +6 -1
  263. package/icons/download/index.esm.min.js +1 -1
  264. package/icons/download/index.js +6 -1
  265. package/icons/download/index.min.js +1 -1
  266. package/icons/exclamationtriangle/index.cjs.js +6 -1
  267. package/icons/exclamationtriangle/index.cjs.min.js +1 -1
  268. package/icons/exclamationtriangle/index.esm.js +6 -1
  269. package/icons/exclamationtriangle/index.esm.min.js +1 -1
  270. package/icons/exclamationtriangle/index.js +6 -1
  271. package/icons/exclamationtriangle/index.min.js +1 -1
  272. package/icons/eyeslash/index.cjs.js +6 -1
  273. package/icons/eyeslash/index.cjs.min.js +1 -1
  274. package/icons/eyeslash/index.esm.js +6 -1
  275. package/icons/eyeslash/index.esm.min.js +1 -1
  276. package/icons/eyeslash/index.js +6 -1
  277. package/icons/eyeslash/index.min.js +1 -1
  278. package/icons/filter/index.cjs.js +6 -1
  279. package/icons/filter/index.cjs.min.js +1 -1
  280. package/icons/filter/index.esm.js +6 -1
  281. package/icons/filter/index.esm.min.js +1 -1
  282. package/icons/filter/index.js +6 -1
  283. package/icons/filter/index.min.js +1 -1
  284. package/icons/filterslash/index.cjs.js +6 -1
  285. package/icons/filterslash/index.cjs.min.js +1 -1
  286. package/icons/filterslash/index.esm.js +6 -1
  287. package/icons/filterslash/index.esm.min.js +1 -1
  288. package/icons/filterslash/index.js +6 -1
  289. package/icons/filterslash/index.min.js +1 -1
  290. package/icons/infocircle/index.cjs.js +6 -1
  291. package/icons/infocircle/index.cjs.min.js +1 -1
  292. package/icons/infocircle/index.esm.js +6 -1
  293. package/icons/infocircle/index.esm.min.js +1 -1
  294. package/icons/infocircle/index.js +6 -1
  295. package/icons/infocircle/index.min.js +1 -1
  296. package/icons/pencil/index.cjs.js +6 -1
  297. package/icons/pencil/index.cjs.min.js +1 -1
  298. package/icons/pencil/index.esm.js +6 -1
  299. package/icons/pencil/index.esm.min.js +1 -1
  300. package/icons/pencil/index.js +6 -1
  301. package/icons/pencil/index.min.js +1 -1
  302. package/icons/plus/index.cjs.js +6 -1
  303. package/icons/plus/index.cjs.min.js +1 -1
  304. package/icons/plus/index.esm.js +6 -1
  305. package/icons/plus/index.esm.min.js +1 -1
  306. package/icons/plus/index.js +6 -1
  307. package/icons/plus/index.min.js +1 -1
  308. package/icons/refresh/index.cjs.js +6 -1
  309. package/icons/refresh/index.cjs.min.js +1 -1
  310. package/icons/refresh/index.esm.js +6 -1
  311. package/icons/refresh/index.esm.min.js +1 -1
  312. package/icons/refresh/index.js +6 -1
  313. package/icons/refresh/index.min.js +1 -1
  314. package/icons/search/index.cjs.js +6 -1
  315. package/icons/search/index.cjs.min.js +1 -1
  316. package/icons/search/index.esm.js +6 -1
  317. package/icons/search/index.esm.min.js +1 -1
  318. package/icons/search/index.js +6 -1
  319. package/icons/search/index.min.js +1 -1
  320. package/icons/searchminus/index.cjs.js +6 -1
  321. package/icons/searchminus/index.cjs.min.js +1 -1
  322. package/icons/searchminus/index.esm.js +6 -1
  323. package/icons/searchminus/index.esm.min.js +1 -1
  324. package/icons/searchminus/index.js +6 -1
  325. package/icons/searchminus/index.min.js +1 -1
  326. package/icons/searchplus/index.cjs.js +6 -1
  327. package/icons/searchplus/index.cjs.min.js +1 -1
  328. package/icons/searchplus/index.esm.js +6 -1
  329. package/icons/searchplus/index.esm.min.js +1 -1
  330. package/icons/searchplus/index.js +6 -1
  331. package/icons/searchplus/index.min.js +1 -1
  332. package/icons/sortalt/index.cjs.js +6 -1
  333. package/icons/sortalt/index.cjs.min.js +1 -1
  334. package/icons/sortalt/index.esm.js +6 -1
  335. package/icons/sortalt/index.esm.min.js +1 -1
  336. package/icons/sortalt/index.js +6 -1
  337. package/icons/sortalt/index.min.js +1 -1
  338. package/icons/sortamountdown/index.cjs.js +6 -1
  339. package/icons/sortamountdown/index.cjs.min.js +1 -1
  340. package/icons/sortamountdown/index.esm.js +6 -1
  341. package/icons/sortamountdown/index.esm.min.js +1 -1
  342. package/icons/sortamountdown/index.js +6 -1
  343. package/icons/sortamountdown/index.min.js +1 -1
  344. package/icons/sortamountupalt/index.cjs.js +6 -1
  345. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  346. package/icons/sortamountupalt/index.esm.js +6 -1
  347. package/icons/sortamountupalt/index.esm.min.js +1 -1
  348. package/icons/sortamountupalt/index.js +6 -1
  349. package/icons/sortamountupalt/index.min.js +1 -1
  350. package/icons/spinner/index.cjs.js +6 -1
  351. package/icons/spinner/index.cjs.min.js +1 -1
  352. package/icons/spinner/index.esm.js +6 -1
  353. package/icons/spinner/index.esm.min.js +1 -1
  354. package/icons/spinner/index.js +6 -1
  355. package/icons/spinner/index.min.js +1 -1
  356. package/icons/star/index.cjs.js +6 -1
  357. package/icons/star/index.cjs.min.js +1 -1
  358. package/icons/star/index.esm.js +6 -1
  359. package/icons/star/index.esm.min.js +1 -1
  360. package/icons/star/index.js +6 -1
  361. package/icons/star/index.min.js +1 -1
  362. package/icons/starfill/index.cjs.js +6 -1
  363. package/icons/starfill/index.cjs.min.js +1 -1
  364. package/icons/starfill/index.esm.js +6 -1
  365. package/icons/starfill/index.esm.min.js +1 -1
  366. package/icons/starfill/index.js +6 -1
  367. package/icons/starfill/index.min.js +1 -1
  368. package/icons/thlarge/index.cjs.js +6 -1
  369. package/icons/thlarge/index.cjs.min.js +1 -1
  370. package/icons/thlarge/index.esm.js +6 -1
  371. package/icons/thlarge/index.esm.min.js +1 -1
  372. package/icons/thlarge/index.js +6 -1
  373. package/icons/thlarge/index.min.js +1 -1
  374. package/icons/timescircle/index.cjs.js +6 -1
  375. package/icons/timescircle/index.cjs.min.js +1 -1
  376. package/icons/timescircle/index.esm.js +6 -1
  377. package/icons/timescircle/index.esm.min.js +1 -1
  378. package/icons/timescircle/index.js +6 -1
  379. package/icons/timescircle/index.min.js +1 -1
  380. package/icons/trash/index.cjs.js +6 -1
  381. package/icons/trash/index.cjs.min.js +1 -1
  382. package/icons/trash/index.esm.js +6 -1
  383. package/icons/trash/index.esm.min.js +1 -1
  384. package/icons/trash/index.js +6 -1
  385. package/icons/trash/index.min.js +1 -1
  386. package/icons/undo/index.cjs.js +6 -1
  387. package/icons/undo/index.cjs.min.js +1 -1
  388. package/icons/undo/index.esm.js +6 -1
  389. package/icons/undo/index.esm.min.js +1 -1
  390. package/icons/undo/index.js +6 -1
  391. package/icons/undo/index.min.js +1 -1
  392. package/icons/upload/index.cjs.js +6 -1
  393. package/icons/upload/index.cjs.min.js +1 -1
  394. package/icons/upload/index.esm.js +6 -1
  395. package/icons/upload/index.esm.min.js +1 -1
  396. package/icons/upload/index.js +6 -1
  397. package/icons/upload/index.min.js +1 -1
  398. package/icons/windowmaximize/index.cjs.js +6 -1
  399. package/icons/windowmaximize/index.cjs.min.js +1 -1
  400. package/icons/windowmaximize/index.esm.js +6 -1
  401. package/icons/windowmaximize/index.esm.min.js +1 -1
  402. package/icons/windowmaximize/index.js +6 -1
  403. package/icons/windowmaximize/index.min.js +1 -1
  404. package/icons/windowminimize/index.cjs.js +6 -1
  405. package/icons/windowminimize/index.cjs.min.js +1 -1
  406. package/icons/windowminimize/index.esm.js +6 -1
  407. package/icons/windowminimize/index.esm.min.js +1 -1
  408. package/icons/windowminimize/index.js +6 -1
  409. package/icons/windowminimize/index.min.js +1 -1
  410. package/image/image.cjs.js +9 -3
  411. package/image/image.cjs.min.js +1 -1
  412. package/image/image.d.ts +2 -2
  413. package/image/image.esm.js +10 -4
  414. package/image/image.esm.min.js +1 -1
  415. package/image/image.js +9 -3
  416. package/image/image.min.css +1 -1
  417. package/image/image.min.js +1 -1
  418. package/inplace/inplace.cjs.js +2 -1
  419. package/inplace/inplace.cjs.min.js +1 -1
  420. package/inplace/inplace.esm.js +3 -2
  421. package/inplace/inplace.esm.min.js +1 -1
  422. package/inplace/inplace.js +2 -1
  423. package/inplace/inplace.min.js +1 -1
  424. package/inputmask/inputmask.cjs.js +8 -10
  425. package/inputmask/inputmask.cjs.min.js +1 -1
  426. package/inputmask/inputmask.d.ts +7 -2
  427. package/inputmask/inputmask.esm.js +9 -11
  428. package/inputmask/inputmask.esm.min.js +1 -1
  429. package/inputmask/inputmask.js +8 -12
  430. package/inputmask/inputmask.min.js +1 -1
  431. package/inputnumber/inputnumber.cjs.js +68 -46
  432. package/inputnumber/inputnumber.cjs.min.js +1 -1
  433. package/inputnumber/inputnumber.d.ts +62 -1
  434. package/inputnumber/inputnumber.esm.js +66 -47
  435. package/inputnumber/inputnumber.esm.min.js +1 -1
  436. package/inputnumber/inputnumber.js +68 -48
  437. package/inputnumber/inputnumber.min.js +1 -1
  438. package/inputswitch/inputswitch.cjs.js +77 -25
  439. package/inputswitch/inputswitch.cjs.min.js +1 -1
  440. package/inputswitch/inputswitch.d.ts +56 -0
  441. package/inputswitch/inputswitch.esm.js +78 -26
  442. package/inputswitch/inputswitch.esm.min.js +1 -1
  443. package/inputswitch/inputswitch.js +77 -27
  444. package/inputswitch/inputswitch.min.js +1 -1
  445. package/inputtext/inputtext.cjs.js +25 -15
  446. package/inputtext/inputtext.cjs.min.js +1 -1
  447. package/inputtext/inputtext.d.ts +32 -0
  448. package/inputtext/inputtext.esm.js +26 -16
  449. package/inputtext/inputtext.esm.min.js +1 -1
  450. package/inputtext/inputtext.js +25 -17
  451. package/inputtext/inputtext.min.js +1 -1
  452. package/inputtextarea/inputtextarea.cjs.js +25 -15
  453. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  454. package/inputtextarea/inputtextarea.d.ts +33 -1
  455. package/inputtextarea/inputtextarea.esm.js +26 -16
  456. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  457. package/inputtextarea/inputtextarea.js +25 -17
  458. package/inputtextarea/inputtextarea.min.js +1 -1
  459. package/keyfilter/keyfilter.cjs.js +25 -9
  460. package/keyfilter/keyfilter.cjs.min.js +1 -1
  461. package/keyfilter/keyfilter.esm.js +25 -9
  462. package/keyfilter/keyfilter.esm.min.js +1 -1
  463. package/keyfilter/keyfilter.js +25 -11
  464. package/keyfilter/keyfilter.min.js +1 -1
  465. package/knob/knob.cjs.js +44 -43
  466. package/knob/knob.cjs.min.js +1 -1
  467. package/knob/knob.d.ts +42 -0
  468. package/knob/knob.esm.js +45 -44
  469. package/knob/knob.esm.min.js +1 -1
  470. package/knob/knob.js +44 -45
  471. package/knob/knob.min.js +1 -1
  472. package/listbox/listbox.cjs.js +86 -56
  473. package/listbox/listbox.cjs.min.js +1 -1
  474. package/listbox/listbox.d.ts +103 -3
  475. package/listbox/listbox.esm.js +88 -58
  476. package/listbox/listbox.esm.min.js +1 -1
  477. package/listbox/listbox.js +86 -57
  478. package/listbox/listbox.min.js +1 -1
  479. package/megamenu/megamenu.cjs.js +4 -3
  480. package/megamenu/megamenu.cjs.min.js +1 -1
  481. package/megamenu/megamenu.esm.js +5 -4
  482. package/megamenu/megamenu.esm.min.js +1 -1
  483. package/megamenu/megamenu.js +4 -3
  484. package/megamenu/megamenu.min.js +1 -1
  485. package/mention/mention.cjs.js +87 -61
  486. package/mention/mention.cjs.min.js +1 -1
  487. package/mention/mention.d.ts +80 -1
  488. package/mention/mention.esm.js +89 -63
  489. package/mention/mention.esm.min.js +1 -1
  490. package/mention/mention.js +88 -63
  491. package/mention/mention.min.js +1 -1
  492. package/menu/menu.cjs.js +5 -4
  493. package/menu/menu.cjs.min.js +1 -1
  494. package/menu/menu.esm.js +6 -5
  495. package/menu/menu.esm.min.js +1 -1
  496. package/menu/menu.js +5 -4
  497. package/menu/menu.min.js +1 -1
  498. package/menubar/menubar.cjs.js +4 -4
  499. package/menubar/menubar.cjs.min.js +1 -1
  500. package/menubar/menubar.esm.js +5 -5
  501. package/menubar/menubar.esm.min.js +1 -1
  502. package/menubar/menubar.js +5 -5
  503. package/menubar/menubar.min.js +1 -1
  504. package/message/message.cjs.js +3 -1
  505. package/message/message.cjs.min.js +1 -1
  506. package/message/message.esm.js +3 -1
  507. package/message/message.esm.min.js +1 -1
  508. package/message/message.js +4 -3
  509. package/message/message.min.js +1 -1
  510. package/messages/messages.cjs.js +2 -1
  511. package/messages/messages.cjs.min.js +1 -1
  512. package/messages/messages.esm.js +3 -2
  513. package/messages/messages.esm.min.js +1 -1
  514. package/messages/messages.js +2 -1
  515. package/messages/messages.min.js +1 -1
  516. package/multiselect/multiselect.cjs.js +220 -167
  517. package/multiselect/multiselect.cjs.min.js +1 -1
  518. package/multiselect/multiselect.d.ts +180 -3
  519. package/multiselect/multiselect.esm.js +222 -169
  520. package/multiselect/multiselect.esm.min.js +1 -1
  521. package/multiselect/multiselect.js +220 -168
  522. package/multiselect/multiselect.min.js +1 -1
  523. package/multistatecheckbox/multistatecheckbox.cjs.js +32 -22
  524. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  525. package/multistatecheckbox/multistatecheckbox.d.ts +56 -2
  526. package/multistatecheckbox/multistatecheckbox.esm.js +34 -24
  527. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  528. package/multistatecheckbox/multistatecheckbox.js +33 -24
  529. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  530. package/orderlist/orderlist.cjs.js +188 -110
  531. package/orderlist/orderlist.cjs.min.js +1 -1
  532. package/orderlist/orderlist.d.ts +118 -2
  533. package/orderlist/orderlist.esm.js +190 -112
  534. package/orderlist/orderlist.esm.min.js +1 -1
  535. package/orderlist/orderlist.js +186 -109
  536. package/orderlist/orderlist.min.js +1 -1
  537. package/organizationchart/organizationchart.cjs.js +139 -73
  538. package/organizationchart/organizationchart.cjs.min.js +1 -1
  539. package/organizationchart/organizationchart.d.ts +89 -2
  540. package/organizationchart/organizationchart.esm.js +140 -74
  541. package/organizationchart/organizationchart.esm.min.js +1 -1
  542. package/organizationchart/organizationchart.js +139 -75
  543. package/organizationchart/organizationchart.min.js +1 -1
  544. package/overlaypanel/overlaypanel.cjs.js +7 -6
  545. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  546. package/overlaypanel/overlaypanel.d.ts +5 -0
  547. package/overlaypanel/overlaypanel.esm.js +8 -7
  548. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  549. package/overlaypanel/overlaypanel.js +8 -7
  550. package/overlaypanel/overlaypanel.min.js +1 -1
  551. package/package.json +1 -1
  552. package/paginator/paginator.cjs.js +172 -166
  553. package/paginator/paginator.cjs.min.js +1 -1
  554. package/paginator/paginator.d.ts +108 -2
  555. package/paginator/paginator.esm.js +174 -168
  556. package/paginator/paginator.esm.min.js +1 -1
  557. package/paginator/paginator.js +172 -167
  558. package/paginator/paginator.min.js +1 -1
  559. package/panel/panel.cjs.js +3 -1
  560. package/panel/panel.cjs.min.js +1 -1
  561. package/panel/panel.esm.js +3 -1
  562. package/panel/panel.esm.min.js +1 -1
  563. package/panel/panel.js +4 -3
  564. package/panel/panel.min.js +1 -1
  565. package/panelmenu/panelmenu.cjs.js +3 -1
  566. package/panelmenu/panelmenu.cjs.min.js +1 -1
  567. package/panelmenu/panelmenu.esm.js +3 -1
  568. package/panelmenu/panelmenu.esm.min.js +1 -1
  569. package/panelmenu/panelmenu.js +4 -3
  570. package/panelmenu/panelmenu.min.js +1 -1
  571. package/password/password.cjs.js +89 -46
  572. package/password/password.cjs.min.js +1 -1
  573. package/password/password.d.ts +98 -2
  574. package/password/password.esm.js +91 -48
  575. package/password/password.esm.min.js +1 -1
  576. package/password/password.js +88 -46
  577. package/password/password.min.js +1 -1
  578. package/picklist/picklist.cjs.js +146 -82
  579. package/picklist/picklist.cjs.min.js +1 -1
  580. package/picklist/picklist.d.ts +133 -1
  581. package/picklist/picklist.esm.js +148 -84
  582. package/picklist/picklist.esm.min.js +1 -1
  583. package/picklist/picklist.js +143 -80
  584. package/picklist/picklist.min.js +1 -1
  585. package/portal/portal.cjs.js +3 -2
  586. package/portal/portal.cjs.min.js +1 -1
  587. package/portal/portal.esm.js +3 -2
  588. package/portal/portal.esm.min.js +1 -1
  589. package/portal/portal.js +4 -3
  590. package/portal/portal.min.js +1 -1
  591. package/primereact.all.cjs.js +4754 -3154
  592. package/primereact.all.cjs.min.js +1 -1
  593. package/primereact.all.esm.js +4753 -3155
  594. package/primereact.all.esm.min.js +1 -1
  595. package/primereact.all.js +4754 -3154
  596. package/primereact.all.min.js +1 -1
  597. package/progressbar/progressbar.cjs.js +3 -1
  598. package/progressbar/progressbar.cjs.min.js +1 -1
  599. package/progressbar/progressbar.esm.js +3 -1
  600. package/progressbar/progressbar.esm.min.js +1 -1
  601. package/progressbar/progressbar.js +4 -3
  602. package/progressbar/progressbar.min.js +1 -1
  603. package/progressspinner/progressspinner.cjs.js +3 -1
  604. package/progressspinner/progressspinner.cjs.min.js +1 -1
  605. package/progressspinner/progressspinner.esm.js +3 -1
  606. package/progressspinner/progressspinner.esm.min.js +1 -1
  607. package/progressspinner/progressspinner.js +4 -3
  608. package/progressspinner/progressspinner.min.js +1 -1
  609. package/radiobutton/radiobutton.cjs.js +74 -21
  610. package/radiobutton/radiobutton.cjs.min.js +1 -1
  611. package/radiobutton/radiobutton.d.ts +61 -1
  612. package/radiobutton/radiobutton.esm.js +75 -22
  613. package/radiobutton/radiobutton.esm.min.js +1 -1
  614. package/radiobutton/radiobutton.js +74 -23
  615. package/radiobutton/radiobutton.min.js +1 -1
  616. package/rating/rating.cjs.js +47 -36
  617. package/rating/rating.cjs.min.js +1 -1
  618. package/rating/rating.d.ts +64 -1
  619. package/rating/rating.esm.js +48 -37
  620. package/rating/rating.esm.min.js +1 -1
  621. package/rating/rating.js +47 -38
  622. package/rating/rating.min.js +1 -1
  623. package/resources/primereact.css +586 -584
  624. package/resources/primereact.min.css +1 -1
  625. package/resources/themes/arya-blue/theme.css +20 -1
  626. package/resources/themes/arya-green/theme.css +20 -1
  627. package/resources/themes/arya-orange/theme.css +20 -1
  628. package/resources/themes/arya-purple/theme.css +20 -1
  629. package/resources/themes/bootstrap4-dark-blue/theme.css +20 -1
  630. package/resources/themes/bootstrap4-dark-purple/theme.css +20 -1
  631. package/resources/themes/bootstrap4-light-blue/theme.css +20 -1
  632. package/resources/themes/bootstrap4-light-purple/theme.css +20 -1
  633. package/resources/themes/fluent-light/theme.css +20 -1
  634. package/resources/themes/lara-dark-blue/theme.css +20 -1
  635. package/resources/themes/lara-dark-indigo/theme.css +20 -1
  636. package/resources/themes/lara-dark-purple/theme.css +20 -1
  637. package/resources/themes/lara-dark-teal/theme.css +20 -1
  638. package/resources/themes/lara-light-blue/theme.css +20 -1
  639. package/resources/themes/lara-light-indigo/theme.css +20 -1
  640. package/resources/themes/lara-light-purple/theme.css +20 -1
  641. package/resources/themes/lara-light-teal/theme.css +20 -1
  642. package/resources/themes/luna-amber/theme.css +20 -1
  643. package/resources/themes/luna-blue/theme.css +20 -1
  644. package/resources/themes/luna-green/theme.css +20 -1
  645. package/resources/themes/luna-pink/theme.css +20 -1
  646. package/resources/themes/md-dark-deeppurple/theme.css +20 -1
  647. package/resources/themes/md-dark-indigo/theme.css +20 -1
  648. package/resources/themes/md-light-deeppurple/theme.css +20 -1
  649. package/resources/themes/md-light-indigo/theme.css +20 -1
  650. package/resources/themes/mdc-dark-deeppurple/theme.css +20 -1
  651. package/resources/themes/mdc-dark-indigo/theme.css +20 -1
  652. package/resources/themes/mdc-light-deeppurple/theme.css +20 -1
  653. package/resources/themes/mdc-light-indigo/theme.css +20 -1
  654. package/resources/themes/mira/theme.css +20 -1
  655. package/resources/themes/nano/theme.css +20 -1
  656. package/resources/themes/nova/theme.css +20 -1
  657. package/resources/themes/nova-accent/theme.css +20 -1
  658. package/resources/themes/nova-alt/theme.css +20 -1
  659. package/resources/themes/rhea/theme.css +20 -1
  660. package/resources/themes/saga-blue/theme.css +20 -1
  661. package/resources/themes/saga-green/theme.css +20 -1
  662. package/resources/themes/saga-orange/theme.css +20 -1
  663. package/resources/themes/saga-purple/theme.css +20 -1
  664. package/resources/themes/soho-dark/theme.css +20 -1
  665. package/resources/themes/soho-light/theme.css +20 -1
  666. package/resources/themes/tailwind-light/theme.css +32 -13
  667. package/resources/themes/vela-blue/theme.css +20 -1
  668. package/resources/themes/vela-green/theme.css +20 -1
  669. package/resources/themes/vela-orange/theme.css +20 -1
  670. package/resources/themes/vela-purple/theme.css +20 -1
  671. package/resources/themes/viva-dark/theme.css +20 -1
  672. package/resources/themes/viva-light/theme.css +20 -1
  673. package/ripple/ripple.cjs.js +3 -2
  674. package/ripple/ripple.cjs.min.js +1 -1
  675. package/ripple/ripple.esm.js +3 -2
  676. package/ripple/ripple.esm.min.js +1 -1
  677. package/ripple/ripple.js +4 -3
  678. package/ripple/ripple.min.js +1 -1
  679. package/row/row.cjs.js +28 -41
  680. package/row/row.cjs.min.js +1 -1
  681. package/row/row.d.ts +28 -0
  682. package/row/row.esm.js +15 -28
  683. package/row/row.esm.min.js +1 -1
  684. package/row/row.js +49 -64
  685. package/row/row.min.js +1 -1
  686. package/scrollpanel/scrollpanel.cjs.js +3 -1
  687. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  688. package/scrollpanel/scrollpanel.esm.js +3 -1
  689. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  690. package/scrollpanel/scrollpanel.js +4 -3
  691. package/scrollpanel/scrollpanel.min.js +1 -1
  692. package/scrolltop/scrolltop.cjs.js +9 -7
  693. package/scrolltop/scrolltop.cjs.min.js +1 -1
  694. package/scrolltop/scrolltop.esm.js +11 -9
  695. package/scrolltop/scrolltop.esm.min.js +1 -1
  696. package/scrolltop/scrolltop.js +10 -8
  697. package/scrolltop/scrolltop.min.js +1 -1
  698. package/selectbutton/selectbutton.cjs.js +37 -25
  699. package/selectbutton/selectbutton.cjs.min.js +1 -1
  700. package/selectbutton/selectbutton.d.ts +52 -1
  701. package/selectbutton/selectbutton.esm.js +38 -26
  702. package/selectbutton/selectbutton.esm.min.js +1 -1
  703. package/selectbutton/selectbutton.js +37 -27
  704. package/selectbutton/selectbutton.min.js +1 -1
  705. package/sidebar/sidebar.cjs.js +7 -6
  706. package/sidebar/sidebar.cjs.min.js +1 -1
  707. package/sidebar/sidebar.esm.js +8 -7
  708. package/sidebar/sidebar.esm.min.js +1 -1
  709. package/sidebar/sidebar.js +8 -7
  710. package/sidebar/sidebar.min.js +1 -1
  711. package/skeleton/skeleton.cjs.js +4 -3
  712. package/skeleton/skeleton.cjs.min.js +1 -1
  713. package/skeleton/skeleton.esm.js +4 -3
  714. package/skeleton/skeleton.esm.min.js +1 -1
  715. package/skeleton/skeleton.js +5 -5
  716. package/skeleton/skeleton.min.js +1 -1
  717. package/slidemenu/slidemenu.cjs.js +5 -4
  718. package/slidemenu/slidemenu.cjs.min.js +1 -1
  719. package/slidemenu/slidemenu.d.ts +5 -0
  720. package/slidemenu/slidemenu.esm.js +6 -5
  721. package/slidemenu/slidemenu.esm.min.js +1 -1
  722. package/slidemenu/slidemenu.js +6 -5
  723. package/slidemenu/slidemenu.min.js +1 -1
  724. package/slider/slider.cjs.js +71 -39
  725. package/slider/slider.cjs.min.js +1 -1
  726. package/slider/slider.d.ts +34 -1
  727. package/slider/slider.esm.js +72 -40
  728. package/slider/slider.esm.min.js +1 -1
  729. package/slider/slider.js +71 -41
  730. package/slider/slider.min.js +1 -1
  731. package/speeddial/speeddial.cjs.js +3 -1
  732. package/speeddial/speeddial.cjs.min.js +1 -1
  733. package/speeddial/speeddial.esm.js +3 -1
  734. package/speeddial/speeddial.esm.min.js +1 -1
  735. package/speeddial/speeddial.js +4 -3
  736. package/speeddial/speeddial.min.js +1 -1
  737. package/splitbutton/splitbutton.cjs.js +74 -63
  738. package/splitbutton/splitbutton.cjs.min.js +1 -1
  739. package/splitbutton/splitbutton.d.ts +39 -11
  740. package/splitbutton/splitbutton.esm.js +76 -65
  741. package/splitbutton/splitbutton.esm.min.js +1 -1
  742. package/splitbutton/splitbutton.js +74 -63
  743. package/splitbutton/splitbutton.min.js +1 -1
  744. package/splitter/splitter.cjs.js +3 -1
  745. package/splitter/splitter.cjs.min.js +1 -1
  746. package/splitter/splitter.d.ts +10 -0
  747. package/splitter/splitter.esm.js +3 -1
  748. package/splitter/splitter.esm.min.js +1 -1
  749. package/splitter/splitter.js +4 -3
  750. package/splitter/splitter.min.js +1 -1
  751. package/steps/steps.cjs.js +3 -1
  752. package/steps/steps.cjs.min.js +1 -1
  753. package/steps/steps.esm.js +3 -1
  754. package/steps/steps.esm.min.js +1 -1
  755. package/steps/steps.js +4 -3
  756. package/steps/steps.min.js +1 -1
  757. package/styleclass/styleclass.cjs.js +3 -1
  758. package/styleclass/styleclass.cjs.min.js +1 -1
  759. package/styleclass/styleclass.esm.js +3 -1
  760. package/styleclass/styleclass.esm.min.js +1 -1
  761. package/styleclass/styleclass.js +4 -3
  762. package/styleclass/styleclass.min.js +1 -1
  763. package/tabmenu/tabmenu.cjs.js +3 -1
  764. package/tabmenu/tabmenu.cjs.min.js +1 -1
  765. package/tabmenu/tabmenu.esm.js +3 -1
  766. package/tabmenu/tabmenu.esm.min.js +1 -1
  767. package/tabmenu/tabmenu.js +4 -3
  768. package/tabmenu/tabmenu.min.js +1 -1
  769. package/tabview/tabview.cjs.js +8 -5
  770. package/tabview/tabview.cjs.min.js +1 -1
  771. package/tabview/tabview.esm.js +9 -6
  772. package/tabview/tabview.esm.min.js +1 -1
  773. package/tabview/tabview.js +7 -4
  774. package/tabview/tabview.min.js +1 -1
  775. package/tag/tag.cjs.js +3 -1
  776. package/tag/tag.cjs.min.js +1 -1
  777. package/tag/tag.esm.js +3 -1
  778. package/tag/tag.esm.min.js +1 -1
  779. package/tag/tag.js +4 -3
  780. package/tag/tag.min.js +1 -1
  781. package/terminal/terminal.cjs.js +3 -1
  782. package/terminal/terminal.cjs.min.js +1 -1
  783. package/terminal/terminal.esm.js +3 -1
  784. package/terminal/terminal.esm.min.js +1 -1
  785. package/terminal/terminal.js +4 -3
  786. package/terminal/terminal.min.js +1 -1
  787. package/tieredmenu/tieredmenu.cjs.js +6 -5
  788. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  789. package/tieredmenu/tieredmenu.esm.js +7 -6
  790. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  791. package/tieredmenu/tieredmenu.js +6 -5
  792. package/tieredmenu/tieredmenu.min.js +1 -1
  793. package/timeline/timeline.cjs.js +51 -43
  794. package/timeline/timeline.cjs.min.js +1 -1
  795. package/timeline/timeline.d.ts +51 -1
  796. package/timeline/timeline.esm.js +52 -44
  797. package/timeline/timeline.esm.min.js +1 -1
  798. package/timeline/timeline.js +51 -45
  799. package/timeline/timeline.min.js +1 -1
  800. package/toast/toast.cjs.js +46 -4
  801. package/toast/toast.cjs.min.js +1 -1
  802. package/toast/toast.d.ts +2 -2
  803. package/toast/toast.esm.js +47 -5
  804. package/toast/toast.esm.min.js +1 -1
  805. package/toast/toast.js +46 -4
  806. package/toast/toast.min.js +1 -1
  807. package/togglebutton/togglebutton.cjs.js +68 -21
  808. package/togglebutton/togglebutton.cjs.min.js +1 -1
  809. package/togglebutton/togglebutton.d.ts +40 -2
  810. package/togglebutton/togglebutton.esm.js +69 -22
  811. package/togglebutton/togglebutton.esm.min.js +1 -1
  812. package/togglebutton/togglebutton.js +68 -23
  813. package/togglebutton/togglebutton.min.js +1 -1
  814. package/toolbar/toolbar.cjs.js +3 -1
  815. package/toolbar/toolbar.cjs.min.js +1 -1
  816. package/toolbar/toolbar.d.ts +5 -11
  817. package/toolbar/toolbar.esm.js +3 -1
  818. package/toolbar/toolbar.esm.min.js +1 -1
  819. package/toolbar/toolbar.js +4 -3
  820. package/toolbar/toolbar.min.js +1 -1
  821. package/tooltip/tooltip.cjs.js +3 -2
  822. package/tooltip/tooltip.cjs.min.js +1 -1
  823. package/tooltip/tooltip.d.ts +7 -7
  824. package/tooltip/tooltip.esm.js +4 -3
  825. package/tooltip/tooltip.esm.min.js +1 -1
  826. package/tooltip/tooltip.js +3 -2
  827. package/tooltip/tooltip.min.js +1 -1
  828. package/tree/tree.cjs.js +118 -88
  829. package/tree/tree.cjs.min.js +1 -1
  830. package/tree/tree.d.ts +139 -1
  831. package/tree/tree.esm.js +120 -90
  832. package/tree/tree.esm.min.js +1 -1
  833. package/tree/tree.js +116 -87
  834. package/tree/tree.min.js +1 -1
  835. package/treeselect/treeselect.cjs.js +132 -102
  836. package/treeselect/treeselect.cjs.min.js +1 -1
  837. package/treeselect/treeselect.d.ts +138 -2
  838. package/treeselect/treeselect.esm.js +134 -104
  839. package/treeselect/treeselect.esm.min.js +1 -1
  840. package/treeselect/treeselect.js +133 -104
  841. package/treeselect/treeselect.min.js +1 -1
  842. package/treetable/treetable.cjs.js +385 -198
  843. package/treetable/treetable.cjs.min.js +1 -1
  844. package/treetable/treetable.d.ts +305 -2
  845. package/treetable/treetable.esm.js +387 -200
  846. package/treetable/treetable.esm.min.js +1 -1
  847. package/treetable/treetable.js +383 -197
  848. package/treetable/treetable.min.js +1 -1
  849. package/tristatecheckbox/tristatecheckbox.cjs.js +83 -33
  850. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  851. package/tristatecheckbox/tristatecheckbox.d.ts +59 -1
  852. package/tristatecheckbox/tristatecheckbox.esm.js +85 -35
  853. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  854. package/tristatecheckbox/tristatecheckbox.js +84 -35
  855. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  856. package/utils/utils.cjs.js +13 -11
  857. package/utils/utils.cjs.min.js +1 -1
  858. package/utils/utils.d.ts +1 -1
  859. package/utils/utils.esm.js +13 -11
  860. package/utils/utils.esm.min.js +1 -1
  861. package/utils/utils.js +13 -11
  862. package/utils/utils.min.js +1 -1
  863. package/virtualscroller/virtualscroller.cjs.js +43 -29
  864. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  865. package/virtualscroller/virtualscroller.d.ts +78 -1
  866. package/virtualscroller/virtualscroller.esm.js +44 -30
  867. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  868. package/virtualscroller/virtualscroller.js +43 -31
  869. package/virtualscroller/virtualscroller.min.js +1 -1
  870. package/web-types.json +1 -1
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
- import PrimeReact, { FilterMatchMode, ariaLabel, localeOption, FilterOperator, FilterService } from 'primereact/api';
3
- import { ObjectUtils, classNames, IconUtils, DomHandler, ZIndexUtils, UniqueComponentId } from 'primereact/utils';
2
+ import PrimeReact, { FilterMatchMode, ariaLabel, localeOption, PrimeReactContext, FilterOperator, FilterService } from 'primereact/api';
3
+ import { ComponentBase } from 'primereact/componentbase';
4
+ import { ObjectUtils, classNames, mergeProps, IconUtils, DomHandler, ZIndexUtils, UniqueComponentId } from 'primereact/utils';
4
5
  import { useEventListener, useUpdateEffect, useUnmountEffect, useOverlayListener, usePrevious, useMountEffect } from 'primereact/hooks';
5
6
  import { ArrowDownIcon } from 'primereact/icons/arrowdown';
6
7
  import { ArrowUpIcon } from 'primereact/icons/arrowup';
@@ -156,7 +157,7 @@ function _slicedToArray(arr, i) {
156
157
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
157
158
  }
158
159
 
159
- var ColumnBase = {
160
+ var ColumnBase = ComponentBase.extend({
160
161
  defaultProps: {
161
162
  __TYPE: 'Column',
162
163
  align: null,
@@ -246,9 +247,9 @@ var ColumnBase = {
246
247
  getCOtherProps: function getCOtherProps(column) {
247
248
  return ObjectUtils.getComponentDiffProps(column, ColumnBase.defaultProps);
248
249
  }
249
- };
250
+ });
250
251
 
251
- var DataTableBase = {
252
+ var DataTableBase = ComponentBase.extend({
252
253
  defaultProps: {
253
254
  __TYPE: 'DataTable',
254
255
  alwaysShowPaginator: true,
@@ -391,14 +392,8 @@ var DataTableBase = {
391
392
  value: null,
392
393
  virtualScrollerOptions: null,
393
394
  children: undefined
394
- },
395
- getProps: function getProps(props) {
396
- return ObjectUtils.getMergedProps(props, DataTableBase.defaultProps);
397
- },
398
- getOtherProps: function getOtherProps(props) {
399
- return ObjectUtils.getDiffProps(props, DataTableBase.defaultProps);
400
395
  }
401
- };
396
+ });
402
397
 
403
398
  function _objectWithoutPropertiesLoose(source, excluded) {
404
399
  if (source == null) return {};
@@ -429,61 +424,88 @@ function _objectWithoutProperties(source, excluded) {
429
424
  return target;
430
425
  }
431
426
 
427
+ function ownKeys$a(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; }
428
+ function _objectSpread$a(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$a(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$a(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
432
429
  var RowCheckbox = /*#__PURE__*/React.memo(function (props) {
433
430
  var _React$useState = React.useState(false),
434
431
  _React$useState2 = _slicedToArray(_React$useState, 2),
435
432
  focusedState = _React$useState2[0],
436
433
  setFocusedState = _React$useState2[1];
437
- var onFocus = function onFocus() {
434
+ var getColumnProps = function getColumnProps() {
435
+ return ColumnBase.getCProps(props.column);
436
+ };
437
+ var getColumnPTOptions = function getColumnPTOptions(key) {
438
+ return props.ptCallbacks.ptmo(ColumnBase.getCProp(props.column, 'pt'), key, {
439
+ props: getColumnProps(),
440
+ parent: props.metaData,
441
+ context: {
442
+ checked: props.checked,
443
+ disabled: props.disabled
444
+ },
445
+ state: {
446
+ focused: focusedState
447
+ }
448
+ });
449
+ };
450
+ var _onFocus = function onFocus() {
438
451
  setFocusedState(true);
439
452
  };
440
- var onBlur = function onBlur() {
453
+ var _onBlur = function onBlur() {
441
454
  setFocusedState(false);
442
455
  };
443
- var onClick = function onClick(event) {
456
+ var _onClick = function onClick(event) {
444
457
  if (!props.disabled) {
445
458
  setFocusedState(true);
446
459
  props.onChange(event);
447
460
  }
448
461
  };
449
- var onKeyDown = function onKeyDown(event) {
462
+ var _onKeyDown = function onKeyDown(event) {
450
463
  if (event.code === 'Space' || event.key === ' ') {
451
464
  // event.key is for Android support
452
- onClick(event);
465
+ _onClick(event);
453
466
  event.preventDefault();
454
467
  }
455
468
  };
456
469
  var className = classNames('p-checkbox p-component', {
457
- 'p-checkbox-focused': focusedState
470
+ 'p-checkbox-focused': focusedState,
471
+ 'p-disabled': props.disabled
458
472
  });
459
473
  var boxClassName = classNames('p-checkbox-box p-component', {
460
474
  'p-highlight': props.checked,
461
- 'p-disabled': props.disabled,
462
475
  'p-focus': focusedState
463
476
  });
464
477
  var iconClassName = 'p-checkbox-icon';
465
- var icon = props.checked ? props.checkIcon || /*#__PURE__*/React.createElement(CheckIcon, {
478
+ var checkboxIconProps = mergeProps({
466
479
  className: iconClassName
467
- }) : null;
468
- var checkIcon = IconUtils.getJSXIcon(icon, {
469
- className: iconClassName
470
- }, {
480
+ }, getColumnPTOptions('checkboxIcon'));
481
+ var icon = props.checked ? props.checkIcon || /*#__PURE__*/React.createElement(CheckIcon, checkboxIconProps) : null;
482
+ var checkIcon = IconUtils.getJSXIcon(icon, _objectSpread$a({}, checkboxIconProps), {
471
483
  props: props
472
484
  });
473
485
  var tabIndex = props.disabled ? null : '0';
474
- return /*#__PURE__*/React.createElement("div", {
486
+ var checkboxWrapperProps = mergeProps({
475
487
  className: className,
476
- onClick: onClick
477
- }, /*#__PURE__*/React.createElement("div", {
488
+ onClick: function onClick(e) {
489
+ return _onClick(e);
490
+ }
491
+ }, getColumnPTOptions('checkboxWrapper'));
492
+ var checkboxProps = mergeProps({
478
493
  className: boxClassName,
479
- role: "checkbox",
480
- "aria-checked": props.checked,
494
+ role: 'checkbox',
495
+ 'aria-checked': props.checked,
481
496
  tabIndex: tabIndex,
482
- onKeyDown: onKeyDown,
483
- onFocus: onFocus,
484
- onBlur: onBlur,
485
- "aria-label": props.ariaLabel
486
- }, checkIcon));
497
+ onKeyDown: function onKeyDown(e) {
498
+ return _onKeyDown(e);
499
+ },
500
+ onFocus: function onFocus(e) {
501
+ return _onFocus();
502
+ },
503
+ onBlur: function onBlur(e) {
504
+ return _onBlur();
505
+ },
506
+ 'aria-label': props.ariaLabel
507
+ }, getColumnPTOptions('checkbox'));
508
+ return /*#__PURE__*/React.createElement("div", checkboxWrapperProps, /*#__PURE__*/React.createElement("div", checkboxProps, checkIcon));
487
509
  });
488
510
  RowCheckbox.displayName = 'RowCheckbox';
489
511
 
@@ -493,64 +515,96 @@ var RowRadioButton = /*#__PURE__*/React.memo(function (props) {
493
515
  focusedState = _React$useState2[0],
494
516
  setFocusedState = _React$useState2[1];
495
517
  var inputRef = React.useRef(null);
496
- var onFocus = function onFocus() {
518
+ var getColumnProps = function getColumnProps() {
519
+ return ColumnBase.getCProps(props.column);
520
+ };
521
+ var getColumnPTOptions = function getColumnPTOptions(key) {
522
+ return props.ptCallbacks.ptmo(ColumnBase.getCProp(props.column, 'pt'), key, {
523
+ props: getColumnProps(),
524
+ parent: props.metaData,
525
+ context: {
526
+ checked: props.checked,
527
+ disabled: props.disabled
528
+ },
529
+ state: {
530
+ focused: focusedState
531
+ }
532
+ });
533
+ };
534
+ var _onFocus = function onFocus() {
497
535
  setFocusedState(true);
498
536
  };
499
- var onBlur = function onBlur() {
537
+ var _onBlur = function onBlur() {
500
538
  setFocusedState(false);
501
539
  };
502
- var onClick = function onClick(event) {
540
+ var _onClick = function onClick(event) {
503
541
  if (!props.disabled) {
504
542
  props.onChange(event);
505
543
  DomHandler.focus(inputRef.current);
506
544
  }
507
545
  };
508
- var onKeyDown = function onKeyDown(event) {
546
+ var _onKeyDown = function onKeyDown(event) {
509
547
  if (event.code === 'Space' || event.key === ' ') {
510
548
  // event.key is for Android support
511
- onClick(event);
549
+ _onClick(event);
512
550
  event.preventDefault();
513
551
  }
514
552
  };
515
- var onChange = function onChange(event) {
516
- onClick(event);
553
+ var _onChange = function onChange(event) {
554
+ _onClick(event);
517
555
  };
518
556
  var className = classNames('p-radiobutton p-component', {
519
- 'p-radiobutton-focused': focusedState
557
+ 'p-radiobutton-focused': focusedState,
558
+ 'p-disabled': props.disabled
520
559
  });
521
560
  var boxClassName = classNames('p-radiobutton-box p-component', {
522
561
  'p-highlight': props.checked,
523
- 'p-focus': focusedState,
524
- 'p-disabled': props.disabled
562
+ 'p-focus': focusedState
525
563
  });
526
564
  var name = "".concat(props.tableSelector, "_dt_radio");
527
- return /*#__PURE__*/React.createElement("div", {
565
+ var radiobuttonWrapperProps = mergeProps({
528
566
  className: className
529
- }, /*#__PURE__*/React.createElement("div", {
530
- className: "p-hidden-accessible"
531
- }, /*#__PURE__*/React.createElement("input", {
567
+ }, getColumnPTOptions('radiobuttonWrapper'));
568
+ var hiddenInputWrapperProps = mergeProps({
569
+ className: 'p-hidden-accessible'
570
+ }, getColumnPTOptions('hiddenInputWrapper'));
571
+ var hiddenInputProps = mergeProps({
532
572
  name: name,
533
- ref: inputRef,
534
- type: "radio",
573
+ type: 'radio',
535
574
  checked: props.checked,
536
- onFocus: onFocus,
537
- onBlur: onBlur,
538
- onChange: onChange,
539
- onKeyDown: onKeyDown,
540
- "aria-label": props.ariaLabel
541
- })), /*#__PURE__*/React.createElement("div", {
575
+ onFocus: function onFocus(e) {
576
+ return _onFocus();
577
+ },
578
+ onBlur: function onBlur(e) {
579
+ return _onBlur();
580
+ },
581
+ onChange: function onChange(e) {
582
+ return _onChange(e);
583
+ },
584
+ onKeyDown: function onKeyDown(e) {
585
+ return _onKeyDown(e);
586
+ },
587
+ 'aria-label': props.ariaLabel
588
+ }, getColumnPTOptions('hiddenInput'));
589
+ var radiobuttonProps = mergeProps({
542
590
  className: boxClassName,
543
- onClick: onClick,
544
- role: "radio",
545
- "aria-checked": props.checked
546
- }, /*#__PURE__*/React.createElement("div", {
547
- className: "p-radiobutton-icon"
548
- })));
591
+ onClick: function onClick(e) {
592
+ return _onClick(e);
593
+ },
594
+ role: 'radio',
595
+ 'aria-checked': props.checked
596
+ }, getColumnPTOptions('radiobutton'));
597
+ var radiobuttonIconProps = mergeProps({
598
+ className: 'p-radiobutton-icon'
599
+ }, getColumnPTOptions('radiobuttonIcon'));
600
+ return /*#__PURE__*/React.createElement("div", radiobuttonWrapperProps, /*#__PURE__*/React.createElement("div", hiddenInputWrapperProps, /*#__PURE__*/React.createElement("input", _extends({
601
+ ref: inputRef
602
+ }, hiddenInputProps))), /*#__PURE__*/React.createElement("div", radiobuttonProps, /*#__PURE__*/React.createElement("div", radiobuttonIconProps)));
549
603
  });
550
604
  RowRadioButton.displayName = 'RowRadioButton';
551
605
 
552
- function ownKeys$8(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; }
553
- function _objectSpread$8(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$8(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$8(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
606
+ function ownKeys$9(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; }
607
+ function _objectSpread$9(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$9(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$9(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
554
608
  var BodyCell = /*#__PURE__*/React.memo(function (props) {
555
609
  var _React$useState = React.useState(props.editing),
556
610
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -573,6 +627,21 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
573
627
  var getColumnProp = function getColumnProp(name) {
574
628
  return ColumnBase.getCProp(props.column, name);
575
629
  };
630
+ var getColumnProps = function getColumnProps(column) {
631
+ return ColumnBase.getCProps(column);
632
+ };
633
+ var getColumnPTOptions = function getColumnPTOptions(key) {
634
+ var cProps = getColumnProps(props.column);
635
+ return props.ptCallbacks.ptmo(getColumnProp('pt'), key, {
636
+ props: cProps,
637
+ parent: props.metaData,
638
+ state: {
639
+ styleObject: styleObjectState,
640
+ editing: editingState,
641
+ editingRowData: editingRowDataState
642
+ }
643
+ });
644
+ };
576
645
  var field = getColumnProp('field') || "field_".concat(props.index);
577
646
  var editingKey = props.dataKey ? props.rowData && props.rowData[props.dataKey] || props.rowIndex : props.rowIndex;
578
647
  var _useEventListener = useEventListener({
@@ -628,7 +697,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
628
697
  };
629
698
  var getCellCallbackParams = function getCellCallbackParams(event) {
630
699
  var params = getCellParams();
631
- return _objectSpread$8({
700
+ return _objectSpread$9({
632
701
  originalEvent: event
633
702
  }, params);
634
703
  };
@@ -666,7 +735,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
666
735
  var callbackParams = getCellCallbackParams(event);
667
736
  var newRowData = editingRowDataState;
668
737
  var newValue = resolveFieldData(newRowData);
669
- var params = _objectSpread$8(_objectSpread$8({}, callbackParams), {}, {
738
+ var params = _objectSpread$9(_objectSpread$9({}, callbackParams), {}, {
670
739
  newRowData: newRowData,
671
740
  newValue: newValue
672
741
  });
@@ -732,7 +801,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
732
801
  };
733
802
  var updateStickyPosition = function updateStickyPosition() {
734
803
  if (getColumnProp('frozen')) {
735
- var styleObject = _objectSpread$8({}, styleObjectState);
804
+ var styleObject = _objectSpread$9({}, styleObjectState);
736
805
  var align = getColumnProp('alignFrozen');
737
806
  if (align === 'right') {
738
807
  var right = 0;
@@ -754,7 +823,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
754
823
  }
755
824
  };
756
825
  var editorCallback = function editorCallback(val) {
757
- var editingRowData = _objectSpread$8({}, editingRowDataState);
826
+ var editingRowData = _objectSpread$9({}, editingRowDataState);
758
827
  editingRowData[field] = val;
759
828
  setEditingRowDataState(editingRowData);
760
829
 
@@ -764,7 +833,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
764
833
  currentData[field] = val;
765
834
  }
766
835
  };
767
- var onClick = function onClick(event) {
836
+ var _onClick = function onClick(event) {
768
837
  var params = getCellCallbackParams(event);
769
838
  if (props.editMode !== 'row' && isEditable() && !editingState && (props.selectOnEdit || !props.selectOnEdit && props.selected)) {
770
839
  selfClick.current = true;
@@ -811,15 +880,15 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
811
880
  props.onClick(params);
812
881
  }
813
882
  };
814
- var onMouseDown = function onMouseDown(event) {
883
+ var _onMouseDown = function onMouseDown(event) {
815
884
  var params = getCellCallbackParams(event);
816
885
  props.onMouseDown && props.onMouseDown(params);
817
886
  };
818
- var onMouseUp = function onMouseUp(event) {
887
+ var _onMouseUp = function onMouseUp(event) {
819
888
  var params = getCellCallbackParams(event);
820
889
  props.onMouseUp && props.onMouseUp(params);
821
890
  };
822
- var onKeyDown = function onKeyDown(event) {
891
+ var _onKeyDown = function onKeyDown(event) {
823
892
  if (props.editMode !== 'row') {
824
893
  if (event.which === 13 || event.which === 9) {
825
894
  // tab || enter
@@ -878,7 +947,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
878
947
  case 13:
879
948
  // @deprecated
880
949
  if (!DomHandler.isClickable(target)) {
881
- onClick(event);
950
+ _onClick(event);
882
951
  event.preventDefault();
883
952
  }
884
953
  break;
@@ -886,21 +955,21 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
886
955
  //space
887
956
  case 32:
888
957
  if (!DomHandler.isClickable(target) && !target.readOnly) {
889
- onClick(event);
958
+ _onClick(event);
890
959
  event.preventDefault();
891
960
  }
892
961
  break;
893
962
  }
894
963
  }
895
964
  };
896
- var onBlur = function onBlur(event) {
965
+ var _onBlur = function onBlur(event) {
897
966
  selfClick.current = false;
898
967
  if (props.editMode !== 'row' && editingState && getColumnProp('cellEditValidatorEvent') === 'blur') {
899
968
  switchCellToViewMode(event, true);
900
969
  }
901
970
  };
902
971
  var onEditorFocus = function onEditorFocus(event) {
903
- onClick(event);
972
+ _onClick(event);
904
973
  };
905
974
  var onRadioChange = function onRadioChange(event) {
906
975
  props.onRadioChange({
@@ -968,7 +1037,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
968
1037
  React.useEffect(function () {
969
1038
  if (props.editMode === 'cell' || props.editMode === 'row') {
970
1039
  var callbackParams = getCellCallbackParams();
971
- var params = _objectSpread$8(_objectSpread$8({}, callbackParams), {}, {
1040
+ var params = _objectSpread$9(_objectSpread$9({}, callbackParams), {}, {
972
1041
  editing: editingState,
973
1042
  editingKey: editingKey
974
1043
  });
@@ -993,7 +1062,8 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
993
1062
  field: field
994
1063
  });
995
1064
  var content = ObjectUtils.getJSXElement(getVirtualScrollerOption('loadingTemplate'), options);
996
- return /*#__PURE__*/React.createElement("td", null, content);
1065
+ var bodyCellProps = mergeProps(getColumnPTOptions('bodyCell'));
1066
+ return /*#__PURE__*/React.createElement("td", bodyCellProps, content);
997
1067
  };
998
1068
  var createElement = function createElement() {
999
1069
  var content, editorKeyHelper;
@@ -1031,9 +1101,10 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1031
1101
  'p-highlight': cellSelected
1032
1102
  }, "p-align-".concat(align), !!align));
1033
1103
  var style = getStyle();
1034
- var title = props.responsiveLayout === 'stack' && /*#__PURE__*/React.createElement("span", {
1035
- className: "p-column-title"
1036
- }, ObjectUtils.getJSXElement(header, {
1104
+ var columnTitleProps = mergeProps({
1105
+ className: 'p-column-title'
1106
+ }, getColumnProp('columnTitle'));
1107
+ var title = props.responsiveLayout === 'stack' && /*#__PURE__*/React.createElement("span", columnTitleProps, ObjectUtils.getJSXElement(header, {
1037
1108
  props: props.tableProps
1038
1109
  }));
1039
1110
  if (selectionMode) {
@@ -1048,17 +1119,31 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1048
1119
  label = "".concat(props.selected ? ariaLabel('unselectLabel') : ariaLabel('selectLabel'), " ").concat(ariaLabelText);
1049
1120
  }
1050
1121
  content = showSelection && /*#__PURE__*/React.createElement(React.Fragment, null, selectionMode === 'single' && /*#__PURE__*/React.createElement(RowRadioButton, {
1122
+ column: props.column,
1051
1123
  checked: props.selected,
1124
+ disabled: !props.isSelectable({
1125
+ data: props.rowData,
1126
+ index: props.rowIndex
1127
+ }),
1052
1128
  onChange: onRadioChange,
1053
1129
  tabIndex: props.tabIndex,
1054
1130
  tableSelector: props.tableSelector,
1055
- ariaLabel: label
1131
+ ariaLabel: label,
1132
+ ptCallbacks: props.ptCallbacks,
1133
+ metaData: props.metaData
1056
1134
  }), selectionMode === 'multiple' && /*#__PURE__*/React.createElement(RowCheckbox, {
1135
+ column: props.column,
1057
1136
  checked: props.selected,
1137
+ disabled: !props.isSelectable({
1138
+ data: props.rowData,
1139
+ index: props.rowIndex
1140
+ }),
1058
1141
  onChange: onCheckboxChange,
1059
1142
  tabIndex: props.tabIndex,
1060
1143
  ariaLabel: label,
1061
- checkIcon: props.checkIcon
1144
+ checkIcon: props.checkIcon,
1145
+ ptCallbacks: props.ptCallbacks,
1146
+ metaData: props.metaData
1062
1147
  }));
1063
1148
  } else if (rowReorder) {
1064
1149
  var showReorder = props.showRowReorderElement ? props.showRowReorderElement(props.rowData, {
@@ -1066,21 +1151,20 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1066
1151
  props: props.tableProps
1067
1152
  }) : true;
1068
1153
  var rowReorderIconClassName = 'p-datatable-reorderablerow-handle';
1069
- var rowReorderIcon = getColumnProp('rowReorderIcon') || /*#__PURE__*/React.createElement(BarsIcon, {
1070
- className: rowReorderIconClassName
1071
- });
1072
- content = showReorder && IconUtils.getJSXIcon(rowReorderIcon, {
1154
+ var rowReorderIconProps = mergeProps({
1073
1155
  className: rowReorderIconClassName
1074
- }, {
1156
+ }, getColumnProp('rowReorderIcon'));
1157
+ var rowReorderIcon = getColumnProp('rowReorderIcon') || /*#__PURE__*/React.createElement(BarsIcon, rowReorderIconProps);
1158
+ content = showReorder && IconUtils.getJSXIcon(rowReorderIcon, _objectSpread$9({}, rowReorderIconProps), {
1075
1159
  props: props
1076
1160
  });
1077
1161
  } else if (expander) {
1078
- var iconProps = {
1162
+ var rowTogglerIconProps = mergeProps({
1079
1163
  className: 'p-row-toggler-icon',
1080
1164
  'aria-hidden': true
1081
- };
1082
- var icon = props.expanded ? props.expandedRowIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, iconProps) : props.collapsedRowIcon || /*#__PURE__*/React.createElement(ChevronRightIcon, iconProps);
1083
- var togglerIcon = IconUtils.getJSXIcon(icon, _objectSpread$8({}, iconProps), {
1165
+ }, getColumnProp('rowTogglerIcon'));
1166
+ var icon = props.expanded ? props.expandedRowIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, rowTogglerIconProps) : props.collapsedRowIcon || /*#__PURE__*/React.createElement(ChevronRightIcon, rowTogglerIconProps);
1167
+ var togglerIcon = IconUtils.getJSXIcon(icon, _objectSpread$9({}, rowTogglerIconProps), {
1084
1168
  props: props
1085
1169
  });
1086
1170
  var ariaControls = "".concat(props.tableSelector, "_content_").concat(props.rowIndex, "_expanded");
@@ -1091,13 +1175,14 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1091
1175
  onClick: onRowToggle,
1092
1176
  className: 'p-row-toggler p-link'
1093
1177
  };
1094
- content = /*#__PURE__*/React.createElement("button", _extends({}, expanderProps, {
1095
- type: "button",
1096
- "aria-expanded": props.expanded,
1097
- "aria-controls": ariaControls,
1178
+ var rowTogglerProps = mergeProps(_objectSpread$9(_objectSpread$9({}, expanderProps), {}, {
1179
+ type: 'button',
1180
+ 'aria-expanded': props.expanded,
1181
+ 'aria-controls': ariaControls,
1098
1182
  tabIndex: props.tabIndex,
1099
- "aria-label": _label
1100
- }), togglerIcon, /*#__PURE__*/React.createElement(Ripple, null));
1183
+ 'aria-label': _label
1184
+ }), getColumnPTOptions('rowToggler'));
1185
+ content = /*#__PURE__*/React.createElement("button", rowTogglerProps, togglerIcon, /*#__PURE__*/React.createElement(Ripple, null));
1101
1186
  if (body) {
1102
1187
  expanderProps['element'] = content;
1103
1188
  content = ObjectUtils.getJSXElement(body, props.rowData, {
@@ -1114,25 +1199,22 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1114
1199
  var rowEditorSaveIconClassName = 'p-row-editor-save-icon',
1115
1200
  rowEditorCancelIconClassName = 'p-row-editor-cancel-icon',
1116
1201
  rowEditorInitIconClassName = 'p-row-editor-init-icon';
1117
- var rowEditorSaveIcon = IconUtils.getJSXIcon(props.rowEditorSaveIcon || /*#__PURE__*/React.createElement(CheckIcon, {
1202
+ var rowEditorSaveIconProps = mergeProps({
1118
1203
  className: rowEditorSaveIconClassName
1119
- }), {
1120
- className: rowEditorSaveIconClassName
1121
- }, {
1204
+ }, getColumnProp('rowEditorSaveIconProps'));
1205
+ var rowEditorCancelIconProps = mergeProps({
1206
+ className: rowEditorCancelIconClassName
1207
+ }, getColumnProp('rowEditorCancelIconProps'));
1208
+ var rowEditorInitIconProps = mergeProps({
1209
+ className: rowEditorInitIconClassName
1210
+ }, getColumnProp('rowEditorInitIconProps'));
1211
+ var rowEditorSaveIcon = IconUtils.getJSXIcon(props.rowEditorSaveIcon || /*#__PURE__*/React.createElement(CheckIcon, rowEditorSaveIconProps), _objectSpread$9({}, rowEditorSaveIconProps), {
1122
1212
  props: props
1123
1213
  });
1124
- var rowEditorCancelIcon = IconUtils.getJSXIcon(props.rowEditorCancelIcon || /*#__PURE__*/React.createElement(TimesIcon, {
1125
- className: rowEditorCancelIconClassName
1126
- }), {
1127
- className: rowEditorCancelIconClassName
1128
- }, {
1214
+ var rowEditorCancelIcon = IconUtils.getJSXIcon(props.rowEditorCancelIcon || /*#__PURE__*/React.createElement(TimesIcon, rowEditorCancelIconProps), _objectSpread$9({}, rowEditorCancelIconProps), {
1129
1215
  props: props
1130
1216
  });
1131
- var rowEditorInitIcon = IconUtils.getJSXIcon(props.rowEditorInitIcon || /*#__PURE__*/React.createElement(PencilIcon, {
1132
- className: rowEditorInitIconClassName
1133
- }), {
1134
- className: rowEditorInitIconClassName
1135
- }, {
1217
+ var rowEditorInitIcon = IconUtils.getJSXIcon(props.rowEditorInitIcon || /*#__PURE__*/React.createElement(PencilIcon, rowEditorInitIconProps), _objectSpread$9({}, rowEditorInitIconProps), {
1136
1218
  props: props
1137
1219
  });
1138
1220
  if (editingState) {
@@ -1143,32 +1225,35 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1143
1225
  onCancelClick: onRowEditCancel,
1144
1226
  cancelClassName: 'p-row-editor-cancel p-link'
1145
1227
  };
1146
- content = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", {
1147
- type: "button",
1148
- name: "row-save",
1228
+ var rowEditorEditButtonProps = mergeProps({
1229
+ type: 'button',
1230
+ name: 'row-save',
1149
1231
  onClick: rowEditorProps.onSaveClick,
1150
1232
  className: rowEditorProps.saveClassName,
1151
1233
  tabIndex: props.tabIndex
1152
- }, rowEditorSaveIcon, /*#__PURE__*/React.createElement(Ripple, null)), /*#__PURE__*/React.createElement("button", {
1153
- type: "button",
1154
- name: "row-cancel",
1234
+ }, getColumnPTOptions('rowEditorSaveButtonProps'));
1235
+ var rowEditorCancelButtonProps = mergeProps({
1236
+ type: 'button',
1237
+ name: 'row-cancel',
1155
1238
  onClick: rowEditorProps.onCancelClick,
1156
1239
  className: rowEditorProps.cancelClassName,
1157
1240
  tabIndex: props.tabIndex
1158
- }, rowEditorCancelIcon, /*#__PURE__*/React.createElement(Ripple, null)));
1241
+ }, getColumnPTOptions('rowEditorCancelButtonProps'));
1242
+ content = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", rowEditorEditButtonProps, rowEditorSaveIcon, /*#__PURE__*/React.createElement(Ripple, null)), /*#__PURE__*/React.createElement("button", rowEditorCancelButtonProps, rowEditorCancelIcon, /*#__PURE__*/React.createElement(Ripple, null)));
1159
1243
  } else {
1160
1244
  rowEditorProps = {
1161
1245
  editing: false,
1162
1246
  onInitClick: onRowEditInit,
1163
1247
  initClassName: 'p-row-editor-init p-link'
1164
1248
  };
1165
- content = /*#__PURE__*/React.createElement("button", {
1166
- type: "button",
1167
- name: "row-edit",
1249
+ var rowEditorInitButtonProps = mergeProps({
1250
+ type: 'button',
1251
+ name: 'row-edit',
1168
1252
  onClick: rowEditorProps.onInitClick,
1169
1253
  className: rowEditorProps.initClassName,
1170
1254
  tabIndex: props.tabIndex
1171
- }, rowEditorInitIcon, /*#__PURE__*/React.createElement(Ripple, null));
1255
+ }, getColumnPTOptions('rowEditorInitButtonProps'));
1256
+ content = /*#__PURE__*/React.createElement("button", rowEditorInitButtonProps, rowEditorInitIcon, /*#__PURE__*/React.createElement(Ripple, null));
1172
1257
  }
1173
1258
  if (body) {
1174
1259
  rowEditorProps['element'] = content;
@@ -1205,42 +1290,72 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1205
1290
  }
1206
1291
  content = typeof content == 'boolean' ? content.toString() : content;
1207
1292
  if (!isRowEditor && editor) {
1293
+ var editorKeyHelperProps = mergeProps({
1294
+ tabIndex: '0',
1295
+ className: 'p-cell-editor-key-helper p-hidden-accessible',
1296
+ onFocus: function onFocus(e) {
1297
+ return onEditorFocus(e);
1298
+ }
1299
+ }, getColumnPTOptions('editorKeyHelperLabel'));
1300
+ var editorKeyHelperLabelProps = mergeProps(getColumnPTOptions('editorKeyHelper'));
1208
1301
  /* eslint-disable */
1209
- editorKeyHelper = /*#__PURE__*/React.createElement("a", {
1210
- tabIndex: "0",
1211
- ref: keyHelperRef,
1212
- className: "p-cell-editor-key-helper p-hidden-accessible",
1213
- onFocus: onEditorFocus
1214
- }, /*#__PURE__*/React.createElement("span", null));
1302
+ editorKeyHelper = /*#__PURE__*/React.createElement("a", _extends({
1303
+ ref: keyHelperRef
1304
+ }, editorKeyHelperProps), /*#__PURE__*/React.createElement("span", editorKeyHelperLabelProps));
1215
1305
  /* eslint-enable */
1216
1306
  }
1217
1307
 
1218
- return /*#__PURE__*/React.createElement("td", {
1219
- ref: elementRef,
1308
+ var bodyCellProps = mergeProps({
1220
1309
  style: style,
1221
1310
  className: className,
1222
1311
  rowSpan: props.rowSpan,
1223
1312
  tabIndex: tabIndex,
1224
- role: "cell",
1225
- onClick: onClick,
1226
- onKeyDown: onKeyDown,
1227
- onBlur: onBlur,
1228
- onMouseDown: onMouseDown,
1229
- onMouseUp: onMouseUp
1230
- }, editorKeyHelper, title, content);
1313
+ role: 'cell',
1314
+ onClick: function onClick(e) {
1315
+ return _onClick(e);
1316
+ },
1317
+ onKeyDown: function onKeyDown(e) {
1318
+ return _onKeyDown(e);
1319
+ },
1320
+ onBlur: function onBlur(e) {
1321
+ return _onBlur(e);
1322
+ },
1323
+ onMouseDown: function onMouseDown(e) {
1324
+ return _onMouseDown(e);
1325
+ },
1326
+ onMouseUp: function onMouseUp(e) {
1327
+ return _onMouseUp(e);
1328
+ }
1329
+ }, getColumnPTOptions('bodyCell'), getColumnPTOptions('root'));
1330
+ return /*#__PURE__*/React.createElement("td", _extends({
1331
+ ref: elementRef
1332
+ }, bodyCellProps), editorKeyHelper, title, content);
1231
1333
  };
1232
1334
  return getVirtualScrollerOption('loading') ? createLoading() : createElement();
1233
1335
  });
1234
1336
  BodyCell.displayName = 'BodyCell';
1235
1337
 
1236
- function ownKeys$7(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; }
1237
- function _objectSpread$7(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$7(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$7(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1338
+ function ownKeys$8(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; }
1339
+ function _objectSpread$8(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$8(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$8(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1238
1340
  var BodyRow = /*#__PURE__*/React.memo(function (props) {
1239
1341
  var _React$useState = React.useState(false),
1240
1342
  _React$useState2 = _slicedToArray(_React$useState, 2),
1241
1343
  editingState = _React$useState2[0],
1242
1344
  setEditingState = _React$useState2[1];
1243
1345
  var editing = props.onRowEditChange ? props.editing : editingState;
1346
+ var getColumnProps = function getColumnProps(column) {
1347
+ return ColumnBase.getCProps(column);
1348
+ };
1349
+ var getColumnPTOptions = function getColumnPTOptions(key) {
1350
+ var cProps = getColumnProps(props.column);
1351
+ return props.ptCallbacks.ptmo(cProps, key, {
1352
+ props: cProps,
1353
+ parent: props.metaData,
1354
+ state: {
1355
+ editing: editingState
1356
+ }
1357
+ });
1358
+ };
1244
1359
  var getColumnProp = function getColumnProp(column, name) {
1245
1360
  return ColumnBase.getCProp(column, name);
1246
1361
  };
@@ -1311,14 +1426,14 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1311
1426
  return null;
1312
1427
  }
1313
1428
  };
1314
- var onClick = function onClick(event) {
1429
+ var _onClick = function onClick(event) {
1315
1430
  props.onRowClick({
1316
1431
  originalEvent: event,
1317
1432
  data: props.rowData,
1318
1433
  index: props.rowIndex
1319
1434
  });
1320
1435
  };
1321
- var onDoubleClick = function onDoubleClick(event) {
1436
+ var _onDoubleClick = function onDoubleClick(event) {
1322
1437
  props.onRowDoubleClick({
1323
1438
  originalEvent: event,
1324
1439
  data: props.rowData,
@@ -1332,24 +1447,24 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1332
1447
  index: props.rowIndex
1333
1448
  });
1334
1449
  };
1335
- var onMouseEnter = function onMouseEnter(event) {
1450
+ var _onMouseEnter = function onMouseEnter(event) {
1336
1451
  props.onRowMouseEnter({
1337
1452
  originalEvent: event,
1338
1453
  data: props.rowData,
1339
1454
  index: props.rowIndex
1340
1455
  });
1341
1456
  };
1342
- var onMouseLeave = function onMouseLeave(event) {
1457
+ var _onMouseLeave = function onMouseLeave(event) {
1343
1458
  props.onRowMouseLeave({
1344
1459
  originalEvent: event,
1345
1460
  data: props.rowData,
1346
1461
  index: props.rowIndex
1347
1462
  });
1348
1463
  };
1349
- var onTouchEnd = function onTouchEnd(event) {
1464
+ var _onTouchEnd = function onTouchEnd(event) {
1350
1465
  props.onRowTouchEnd(event);
1351
1466
  };
1352
- var onKeyDown = function onKeyDown(event) {
1467
+ var _onKeyDown = function onKeyDown(event) {
1353
1468
  if (isFocusable() && !props.allowCellSelection) {
1354
1469
  var target = event.target,
1355
1470
  row = event.currentTarget;
@@ -1378,7 +1493,7 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1378
1493
  case 13:
1379
1494
  // @deprecated
1380
1495
  if (!DomHandler.isClickable(target)) {
1381
- onClick(event);
1496
+ _onClick(event);
1382
1497
  event.preventDefault();
1383
1498
  }
1384
1499
  break;
@@ -1386,56 +1501,56 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1386
1501
  //space
1387
1502
  case 32:
1388
1503
  if (!DomHandler.isClickable(target) && !target.readOnly) {
1389
- onClick(event);
1504
+ _onClick(event);
1390
1505
  event.preventDefault();
1391
1506
  }
1392
1507
  break;
1393
1508
  }
1394
1509
  }
1395
1510
  };
1396
- var onMouseDown = function onMouseDown(event) {
1511
+ var _onMouseDown = function onMouseDown(event) {
1397
1512
  props.onRowMouseDown({
1398
1513
  originalEvent: event,
1399
1514
  data: props.rowData,
1400
1515
  index: props.rowIndex
1401
1516
  });
1402
1517
  };
1403
- var onMouseUp = function onMouseUp(event) {
1518
+ var _onMouseUp = function onMouseUp(event) {
1404
1519
  props.onRowMouseUp({
1405
1520
  originalEvent: event,
1406
1521
  data: props.rowData,
1407
1522
  index: props.rowIndex
1408
1523
  });
1409
1524
  };
1410
- var onDragStart = function onDragStart(event) {
1525
+ var _onDragStart = function onDragStart(event) {
1411
1526
  props.onRowDragStart({
1412
1527
  originalEvent: event,
1413
1528
  data: props.rowData,
1414
1529
  index: props.rowIndex
1415
1530
  });
1416
1531
  };
1417
- var onDragOver = function onDragOver(event) {
1532
+ var _onDragOver = function onDragOver(event) {
1418
1533
  props.onRowDragOver({
1419
1534
  originalEvent: event,
1420
1535
  data: props.rowData,
1421
1536
  index: props.rowIndex
1422
1537
  });
1423
1538
  };
1424
- var onDragLeave = function onDragLeave(event) {
1539
+ var _onDragLeave = function onDragLeave(event) {
1425
1540
  props.onRowDragLeave({
1426
1541
  originalEvent: event,
1427
1542
  data: props.rowData,
1428
1543
  index: props.rowIndex
1429
1544
  });
1430
1545
  };
1431
- var onDragEnd = function onDragEnd(event) {
1546
+ var _onDragEnd = function onDragEnd(event) {
1432
1547
  props.onRowDragEnd({
1433
1548
  originalEvent: event,
1434
1549
  data: props.rowData,
1435
1550
  index: props.rowIndex
1436
1551
  });
1437
1552
  };
1438
- var onDrop = function onDrop(event) {
1553
+ var _onDrop = function onDrop(event) {
1439
1554
  props.onRowDrop({
1440
1555
  originalEvent: event,
1441
1556
  data: props.rowData,
@@ -1452,7 +1567,7 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1452
1567
  newData = e.newData;
1453
1568
  if (dataKey) {
1454
1569
  var dataKeyValue = String(ObjectUtils.resolveFieldData(data, dataKey));
1455
- editingRows = props.editingRows ? _objectSpread$7({}, props.editingRows) : {};
1570
+ editingRows = props.editingRows ? _objectSpread$8({}, props.editingRows) : {};
1456
1571
  if (!isEditing) {
1457
1572
  delete editingRows[dataKeyValue];
1458
1573
  // if the key value was changed, stop editing for the new key value too
@@ -1572,7 +1687,9 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1572
1687
  tableProps: props.tableProps,
1573
1688
  tableSelector: props.tableSelector,
1574
1689
  value: props.value,
1575
- virtualScrollerOptions: props.virtualScrollerOptions
1690
+ virtualScrollerOptions: props.virtualScrollerOptions,
1691
+ ptCallbacks: props.ptCallbacks,
1692
+ metaData: props.metaData
1576
1693
  });
1577
1694
  }
1578
1695
  return null;
@@ -1595,65 +1712,119 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1595
1712
  };
1596
1713
  var content = createContent();
1597
1714
  var tabIndex = getTabIndex();
1598
- return /*#__PURE__*/React.createElement("tr", {
1599
- role: "row",
1715
+ var rowProps = mergeProps({
1716
+ role: 'row',
1600
1717
  tabIndex: tabIndex,
1601
1718
  className: className,
1602
1719
  style: style,
1603
- onMouseDown: onMouseDown,
1604
- onMouseUp: onMouseUp,
1605
- onMouseEnter: onMouseEnter,
1606
- onMouseLeave: onMouseLeave,
1607
- onClick: onClick,
1608
- onDoubleClick: onDoubleClick,
1609
- onContextMenu: onRightClick,
1610
- onTouchEnd: onTouchEnd,
1611
- onKeyDown: onKeyDown,
1612
- onDragStart: onDragStart,
1613
- onDragOver: onDragOver,
1614
- onDragLeave: onDragLeave,
1615
- onDragEnd: onDragEnd,
1616
- onDrop: onDrop
1617
- }, content);
1720
+ onMouseDown: function onMouseDown(e) {
1721
+ return _onMouseDown(e);
1722
+ },
1723
+ onMouseUp: function onMouseUp(e) {
1724
+ return _onMouseUp(e);
1725
+ },
1726
+ onMouseEnter: function onMouseEnter(e) {
1727
+ return _onMouseEnter(e);
1728
+ },
1729
+ onMouseLeave: function onMouseLeave(e) {
1730
+ return _onMouseLeave(e);
1731
+ },
1732
+ onClick: function onClick(e) {
1733
+ return _onClick(e);
1734
+ },
1735
+ onDoubleClick: function onDoubleClick(e) {
1736
+ return _onDoubleClick(e);
1737
+ },
1738
+ onContextMenu: function onContextMenu(e) {
1739
+ return onRightClick(e);
1740
+ },
1741
+ onTouchEnd: function onTouchEnd(e) {
1742
+ return _onTouchEnd(e);
1743
+ },
1744
+ onKeyDown: function onKeyDown(e) {
1745
+ return _onKeyDown(e);
1746
+ },
1747
+ onDragStart: function onDragStart(e) {
1748
+ return _onDragStart(e);
1749
+ },
1750
+ onDragOver: function onDragOver(e) {
1751
+ return _onDragOver(e);
1752
+ },
1753
+ onDragLeave: function onDragLeave(e) {
1754
+ return _onDragLeave(e);
1755
+ },
1756
+ onDragEnd: function onDragEnd(e) {
1757
+ return _onDragEnd(e);
1758
+ },
1759
+ onDrop: function onDrop(e) {
1760
+ return _onDrop(e);
1761
+ }
1762
+ }, getColumnPTOptions('row'));
1763
+ return /*#__PURE__*/React.createElement("tr", rowProps, content);
1618
1764
  });
1619
1765
  BodyRow.displayName = 'BodyRow';
1620
1766
 
1621
- function ownKeys$6(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; }
1622
- function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1767
+ function ownKeys$7(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; }
1768
+ function _objectSpread$7(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$7(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$7(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1623
1769
  var RowTogglerButton = /*#__PURE__*/React.memo(function (props) {
1624
- var onClick = function onClick(event) {
1770
+ var _onClick = function onClick(event) {
1625
1771
  props.onClick({
1626
1772
  originalEvent: event,
1627
1773
  data: props.rowData
1628
1774
  });
1629
1775
  };
1630
- var iconProps = {
1776
+ var getColumnProps = function getColumnProps() {
1777
+ return ColumnBase.getCProps(props.column);
1778
+ };
1779
+ var getColumnPTOptions = function getColumnPTOptions(key) {
1780
+ return props.ptCallbacks.ptmo(ColumnBase.getCProp(props.column, 'pt'), key, {
1781
+ props: getColumnProps(),
1782
+ parent: props.metaData
1783
+ });
1784
+ };
1785
+ var rowGroupTogglerIconProps = mergeProps({
1631
1786
  className: 'p-row-toggler-icon',
1632
1787
  'aria-hidden': true
1633
- };
1634
- var icon = props.expanded ? props.expandedRowIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, iconProps) : props.collapsedRowIcon || /*#__PURE__*/React.createElement(ChevronRightIcon, iconProps);
1635
- var togglerIcon = IconUtils.getJSXIcon(icon, _objectSpread$6({}, iconProps), {
1788
+ }, getColumnPTOptions('rowGroupTogglerIcon'));
1789
+ var icon = props.expanded ? props.expandedRowIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, rowGroupTogglerIconProps) : props.collapsedRowIcon || /*#__PURE__*/React.createElement(ChevronRightIcon, rowGroupTogglerIconProps);
1790
+ var togglerIcon = IconUtils.getJSXIcon(icon, _objectSpread$7({}, rowGroupTogglerIconProps), {
1636
1791
  props: props
1637
1792
  });
1638
1793
  var label = props.expanded ? ariaLabel('collapseLabel') : ariaLabel('expandLabel');
1639
- return /*#__PURE__*/React.createElement("button", {
1640
- type: "button",
1641
- onClick: onClick,
1642
- className: "p-row-toggler p-link",
1794
+ var rowGroupTogglerProps = mergeProps({
1795
+ type: 'button',
1796
+ onClick: function onClick(e) {
1797
+ return _onClick(e);
1798
+ },
1799
+ className: 'p-row-toggler p-link',
1643
1800
  tabIndex: props.tabIndex,
1644
- "aria-label": label
1645
- }, togglerIcon, /*#__PURE__*/React.createElement(Ripple, null));
1801
+ 'aria-label': label
1802
+ }, getColumnPTOptions('rowGroupToggler'));
1803
+ return /*#__PURE__*/React.createElement("button", rowGroupTogglerProps, togglerIcon, /*#__PURE__*/React.createElement(Ripple, null));
1646
1804
  });
1647
1805
  RowTogglerButton.displayName = 'RowTogglerButton';
1648
1806
 
1649
1807
  var _excluded = ["originalEvent"];
1650
- function ownKeys$5(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; }
1651
- function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1808
+ function ownKeys$6(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; }
1809
+ function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1652
1810
  var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (props, ref) {
1653
1811
  var _React$useState = React.useState({}),
1654
1812
  _React$useState2 = _slicedToArray(_React$useState, 2),
1655
1813
  rowGroupHeaderStyleObjectState = _React$useState2[0],
1656
1814
  setRowGroupHeaderStyleObjectState = _React$useState2[1];
1815
+ var getColumnProps = function getColumnProps(column) {
1816
+ return ColumnBase.getCProps(column);
1817
+ };
1818
+ var getColumnPTOptions = function getColumnPTOptions(key) {
1819
+ var cProps = getColumnProps(props.column);
1820
+ return props.ptCallbacks.ptmo(cProps, key, {
1821
+ props: cProps,
1822
+ parent: props.metaData,
1823
+ state: {
1824
+ rowGroupHeaderStyleObject: rowGroupHeaderStyleObjectState
1825
+ }
1826
+ });
1827
+ };
1657
1828
  var elementRef = React.useRef(null);
1658
1829
  var refCallback = React.useCallback(function (el) {
1659
1830
  elementRef.current = el;
@@ -2029,14 +2200,14 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2029
2200
  return selection;
2030
2201
  };
2031
2202
  var onSelect = function onSelect(event) {
2032
- if (allowCellSelection()) props.onCellSelect && props.onCellSelect(_objectSpread$5(_objectSpread$5({
2203
+ if (allowCellSelection()) props.onCellSelect && props.onCellSelect(_objectSpread$6(_objectSpread$6({
2033
2204
  originalEvent: event.originalEvent
2034
2205
  }, event.data), {}, {
2035
2206
  type: event.type
2036
2207
  }));else props.onRowSelect && props.onRowSelect(event);
2037
2208
  };
2038
2209
  var onUnselect = function onUnselect(event) {
2039
- if (allowCellSelection()) props.onCellUnselect && props.onCellUnselect(_objectSpread$5(_objectSpread$5({
2210
+ if (allowCellSelection()) props.onCellUnselect && props.onCellUnselect(_objectSpread$6(_objectSpread$6({
2040
2211
  originalEvent: event.originalEvent
2041
2212
  }, event.data), {}, {
2042
2213
  type: event.type
@@ -2094,12 +2265,12 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2094
2265
  rangeRowIndex.current = event.index;
2095
2266
  anchorRowFirst.current = props.first;
2096
2267
  if (isSingleSelection()) {
2097
- onSingleSelection(_objectSpread$5(_objectSpread$5({}, event), {}, {
2268
+ onSingleSelection(_objectSpread$6(_objectSpread$6({}, event), {}, {
2098
2269
  toggleable: toggleable,
2099
2270
  type: 'row'
2100
2271
  }));
2101
2272
  } else {
2102
- onMultipleSelection(_objectSpread$5(_objectSpread$5({}, event), {}, {
2273
+ onMultipleSelection(_objectSpread$6(_objectSpread$6({}, event), {}, {
2103
2274
  toggleable: toggleable,
2104
2275
  type: 'row'
2105
2276
  }));
@@ -2169,7 +2340,7 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2169
2340
  var hasDataKey = props.groupRowsBy ? dataKey === props.groupRowsBy : !!dataKey;
2170
2341
  if (hasDataKey) {
2171
2342
  var dataKeyValue = String(ObjectUtils.resolveFieldData(event.data, dataKey));
2172
- expandedRows = props.expandedRows ? _objectSpread$5({}, props.expandedRows) : {};
2343
+ expandedRows = props.expandedRows ? _objectSpread$6({}, props.expandedRows) : {};
2173
2344
  if (expandedRows[dataKeyValue] != null) {
2174
2345
  delete expandedRows[dataKeyValue];
2175
2346
  if (props.onRowCollapse) {
@@ -2286,13 +2457,13 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2286
2457
  event.preventDefault();
2287
2458
  };
2288
2459
  var onRadioChange = function onRadioChange(event) {
2289
- onSingleSelection(_objectSpread$5(_objectSpread$5({}, event), {}, {
2460
+ onSingleSelection(_objectSpread$6(_objectSpread$6({}, event), {}, {
2290
2461
  toggleable: true,
2291
2462
  type: 'radio'
2292
2463
  }));
2293
2464
  };
2294
2465
  var onCheckboxChange = function onCheckboxChange(event) {
2295
- onMultipleSelection(_objectSpread$5(_objectSpread$5({}, event), {}, {
2466
+ onMultipleSelection(_objectSpread$6(_objectSpread$6({}, event), {}, {
2296
2467
  toggleable: true,
2297
2468
  type: 'checkbox'
2298
2469
  }));
@@ -2403,13 +2574,15 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2403
2574
  props: props.tableProps,
2404
2575
  frozen: props.frozenRow
2405
2576
  }) || localeOption('emptyMessage');
2406
- return /*#__PURE__*/React.createElement("tr", {
2407
- className: "p-datatable-emptymessage",
2408
- role: "row"
2409
- }, /*#__PURE__*/React.createElement("td", {
2577
+ var emptyMessageProps = mergeProps({
2578
+ className: 'p-datatable-emptymessage',
2579
+ role: 'row'
2580
+ }, getColumnPTOptions('emptyMessage'));
2581
+ var bodyCellProps = mergeProps({
2410
2582
  colSpan: colSpan,
2411
- role: "cell"
2412
- }, _content));
2583
+ role: 'cell'
2584
+ }, getColumnPTOptions('bodyCell'), getColumnPTOptions('root'));
2585
+ return /*#__PURE__*/React.createElement("tr", emptyMessageProps, /*#__PURE__*/React.createElement("td", bodyCellProps, _content));
2413
2586
  }
2414
2587
  return null;
2415
2588
  };
@@ -2421,7 +2594,9 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2421
2594
  rowData: rowData,
2422
2595
  expanded: expanded,
2423
2596
  expandedRowIcon: props.expandedRowIcon,
2424
- collapsedRowIcon: props.collapsedRowIcon
2597
+ collapsedRowIcon: props.collapsedRowIcon,
2598
+ ptCallbacks: props.ptCallbacks,
2599
+ metaData: props.metaData
2425
2600
  });
2426
2601
  var options = {
2427
2602
  index: rowIndex,
@@ -2432,17 +2607,20 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2432
2607
 
2433
2608
  // check if the user wants complete control of the rendering
2434
2609
  if (!options.customRendering) {
2435
- _content2 = /*#__PURE__*/React.createElement("td", {
2610
+ var bodyCellProps = mergeProps({
2436
2611
  colSpan: colSpan
2437
- }, toggler, /*#__PURE__*/React.createElement("span", {
2438
- className: "p-rowgroup-header-name"
2439
- }, _content2));
2612
+ }, getColumnPTOptions('bodyCell'), getColumnPTOptions('root'));
2613
+ var rowgroupHeaderNameProps = mergeProps({
2614
+ className: 'p-rowgroup-header-name'
2615
+ }, getColumnPTOptions('rowgroupHeaderName'));
2616
+ _content2 = /*#__PURE__*/React.createElement("td", bodyCellProps, toggler, /*#__PURE__*/React.createElement("span", rowgroupHeaderNameProps, _content2));
2440
2617
  }
2441
- return /*#__PURE__*/React.createElement("tr", {
2442
- className: "p-rowgroup-header",
2618
+ var rowgroupHeaderProps = mergeProps({
2619
+ className: 'p-rowgroup-header',
2443
2620
  style: style,
2444
- role: "row"
2445
- }, _content2);
2621
+ role: 'row'
2622
+ }, getColumnPTOptions('rowgroupHeader'));
2623
+ return /*#__PURE__*/React.createElement("tr", rowgroupHeaderProps, _content2);
2446
2624
  }
2447
2625
  return null;
2448
2626
  };
@@ -2518,7 +2696,9 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2518
2696
  tableProps: props.tableProps,
2519
2697
  tableSelector: props.tableSelector,
2520
2698
  value: props.value,
2521
- virtualScrollerOptions: props.virtualScrollerOptions
2699
+ virtualScrollerOptions: props.virtualScrollerOptions,
2700
+ ptCallbacks: props.ptCallbacks,
2701
+ metaData: props.metaData
2522
2702
  });
2523
2703
  }
2524
2704
  };
@@ -2533,16 +2713,18 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2533
2713
 
2534
2714
  // check if the user wants complete control of the rendering
2535
2715
  if (!options.customRendering) {
2536
- _content3 = /*#__PURE__*/React.createElement("td", {
2537
- role: "cell",
2538
- colSpan: colSpan
2539
- }, _content3);
2716
+ var bodyCellProps = mergeProps({
2717
+ colSpan: colSpan,
2718
+ role: 'cell'
2719
+ }, getColumnPTOptions('bodyCell'), getColumnPTOptions('root'));
2720
+ _content3 = /*#__PURE__*/React.createElement("td", bodyCellProps, _content3);
2540
2721
  }
2541
- return /*#__PURE__*/React.createElement("tr", {
2722
+ var rowExpansionProps = mergeProps({
2542
2723
  id: id,
2543
- className: "p-datatable-row-expansion",
2544
- role: "row"
2545
- }, _content3);
2724
+ className: 'p-datatable-row-expansion',
2725
+ role: 'row'
2726
+ }, getColumnPTOptions('rowExpansion'));
2727
+ return /*#__PURE__*/React.createElement("tr", rowExpansionProps, _content3);
2546
2728
  }
2547
2729
  return null;
2548
2730
  };
@@ -2553,10 +2735,11 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2553
2735
  colSpan: colSpan,
2554
2736
  props: props.tableProps
2555
2737
  });
2556
- return /*#__PURE__*/React.createElement("tr", {
2557
- className: "p-rowgroup-footer",
2558
- role: "row"
2559
- }, _content4);
2738
+ var rowgroupFooterProps = mergeProps({
2739
+ className: 'p-rowgroup-footer',
2740
+ role: 'row'
2741
+ }, getColumnPTOptions('rowgroupFooter'));
2742
+ return /*#__PURE__*/React.createElement("tr", rowgroupFooterProps, _content4);
2560
2743
  }
2561
2744
  return null;
2562
2745
  };
@@ -2576,15 +2759,18 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2576
2759
  });
2577
2760
  };
2578
2761
  var content = props.empty ? createEmptyContent() : createContent();
2579
- return /*#__PURE__*/React.createElement("tbody", {
2580
- ref: refCallback,
2762
+ var ptKey = props.className === 'p-datatable-virtualscroller-spacer' ? 'virtualScrollerSpacer' : 'tbody';
2763
+ var tbodyProps = mergeProps({
2581
2764
  style: props.style,
2582
2765
  className: props.className
2583
- }, content);
2766
+ }, getColumnPTOptions(ptKey));
2767
+ return /*#__PURE__*/React.createElement("tbody", _extends({
2768
+ ref: refCallback
2769
+ }, tbodyProps), content);
2584
2770
  }));
2585
2771
  TableBody.displayName = 'TableBody';
2586
2772
 
2587
- var ColumnGroupBase = {
2773
+ var ColumnGroupBase = ComponentBase.extend({
2588
2774
  defaultProps: {
2589
2775
  __TYPE: 'ColumnGroup',
2590
2776
  children: undefined
@@ -2595,34 +2781,40 @@ var ColumnGroupBase = {
2595
2781
  getCProps: function getCProps(group) {
2596
2782
  return ObjectUtils.getComponentProps(group, ColumnGroupBase.defaultProps);
2597
2783
  }
2598
- };
2784
+ });
2599
2785
 
2600
- var RowBase = {
2786
+ var RowBase = ComponentBase.extend({
2601
2787
  defaultProps: {
2602
2788
  __TYPE: 'Row',
2603
2789
  style: null,
2604
2790
  className: null,
2605
2791
  children: undefined
2606
2792
  },
2607
- getProps: function getProps(props) {
2608
- return ObjectUtils.getMergedProps(props, RowBase.defaultProps);
2609
- },
2610
- getOtherProps: function getOtherProps(props) {
2611
- return ObjectUtils.getDiffProps(props, RowBase.defaultProps);
2612
- },
2613
2793
  getCProp: function getCProp(row, name) {
2614
2794
  return ObjectUtils.getComponentProp(row, name, RowBase.defaultProps);
2615
2795
  }
2616
- };
2796
+ });
2617
2797
 
2618
- function ownKeys$4(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; }
2619
- function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2798
+ function ownKeys$5(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; }
2799
+ function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2620
2800
  var FooterCell = /*#__PURE__*/React.memo(function (props) {
2621
2801
  var _React$useState = React.useState({}),
2622
2802
  _React$useState2 = _slicedToArray(_React$useState, 2),
2623
2803
  styleObjectState = _React$useState2[0],
2624
2804
  setStyleObjectState = _React$useState2[1];
2625
2805
  var elementRef = React.useRef(null);
2806
+ var getColumnProps = function getColumnProps() {
2807
+ return ColumnBase.getCProps(props.column);
2808
+ };
2809
+ var getColumnPTOptions = function getColumnPTOptions(key) {
2810
+ return props.ptCallbacks.ptmo(ColumnBase.getCProp(props.column, 'pt'), key, {
2811
+ props: getColumnProps(),
2812
+ parent: props.metaData,
2813
+ state: {
2814
+ styleObject: styleObjectState
2815
+ }
2816
+ });
2817
+ };
2626
2818
  var getColumnProp = function getColumnProp(name) {
2627
2819
  return ColumnBase.getCProp(props.column, name);
2628
2820
  };
@@ -2633,7 +2825,7 @@ var FooterCell = /*#__PURE__*/React.memo(function (props) {
2633
2825
  };
2634
2826
  var updateStickyPosition = function updateStickyPosition() {
2635
2827
  if (getColumnProp('frozen')) {
2636
- var styleObject = _objectSpread$4({}, styleObjectState);
2828
+ var styleObject = _objectSpread$5({}, styleObjectState);
2637
2829
  var _align = getColumnProp('alignFrozen');
2638
2830
  if (_align === 'right') {
2639
2831
  var right = 0;
@@ -2669,18 +2861,39 @@ var FooterCell = /*#__PURE__*/React.memo(function (props) {
2669
2861
  var content = ObjectUtils.getJSXElement(getColumnProp('footer'), {
2670
2862
  props: props.tableProps
2671
2863
  });
2672
- return /*#__PURE__*/React.createElement("td", {
2673
- ref: elementRef,
2864
+ var footerCellProps = mergeProps({
2674
2865
  style: style,
2675
2866
  className: className,
2676
- role: "cell",
2867
+ role: 'cell',
2677
2868
  colSpan: colSpan,
2678
2869
  rowSpan: rowSpan
2679
- }, content);
2870
+ }, getColumnPTOptions('footerCell'), getColumnPTOptions('root'));
2871
+ return /*#__PURE__*/React.createElement("td", _extends({
2872
+ ref: elementRef
2873
+ }, footerCellProps), content);
2680
2874
  });
2681
2875
  FooterCell.displayName = 'FooterCell';
2682
2876
 
2683
2877
  var TableFooter = /*#__PURE__*/React.memo(function (props) {
2878
+ var getRowProps = function getRowProps(row) {
2879
+ return ColumnGroupBase.getCProps(row);
2880
+ };
2881
+ var getColumnGroupProps = function getColumnGroupProps() {
2882
+ return props.footerColumnGroup ? props.ptCallbacks.ptmo(ColumnGroupBase.getCProps(props.footerColumnGroup)) : undefined;
2883
+ };
2884
+ var getRowPTOptions = function getRowPTOptions(row, key) {
2885
+ var rProps = getRowProps(row);
2886
+ return props.ptCallbacks.ptmo(ColumnGroupBase.getCProp(row, 'pt'), key, {
2887
+ props: rProps,
2888
+ parent: props.metaData
2889
+ });
2890
+ };
2891
+ var getColumnGroupPTOptions = function getColumnGroupPTOptions(key) {
2892
+ return props.ptCallbacks.ptmo(ColumnGroupBase.getCProp(props.footerColumnGroup, 'pt')), {
2893
+ props: getColumnGroupProps(),
2894
+ parent: props.metaData
2895
+ };
2896
+ };
2684
2897
  var hasFooter = function hasFooter() {
2685
2898
  return props.footerColumnGroup ? true : props.columns ? props.columns.some(function (col) {
2686
2899
  return col && getColumnProp(col, 'footer');
@@ -2700,7 +2913,9 @@ var TableFooter = /*#__PURE__*/React.memo(function (props) {
2700
2913
  return isVisible && /*#__PURE__*/React.createElement(FooterCell, {
2701
2914
  key: key,
2702
2915
  tableProps: props.tableProps,
2703
- column: col
2916
+ column: col,
2917
+ ptCallbacks: props.ptCallbacks,
2918
+ metaData: props.metaData
2704
2919
  });
2705
2920
  });
2706
2921
  };
@@ -2708,28 +2923,32 @@ var TableFooter = /*#__PURE__*/React.memo(function (props) {
2708
2923
  if (props.footerColumnGroup) {
2709
2924
  var rows = React.Children.toArray(ColumnGroupBase.getCProp(props.footerColumnGroup, 'children'));
2710
2925
  return rows.map(function (row, i) {
2711
- return /*#__PURE__*/React.createElement("tr", {
2712
- key: i,
2713
- role: "row"
2714
- }, createGroupFooterCells(row));
2926
+ var rootProps = mergeProps({
2927
+ role: 'row'
2928
+ }, getRowPTOptions(row, 'root'));
2929
+ return /*#__PURE__*/React.createElement("tr", _extends({}, rootProps, {
2930
+ key: i
2931
+ }), createGroupFooterCells(row));
2715
2932
  });
2716
2933
  }
2717
- return /*#__PURE__*/React.createElement("tr", {
2718
- role: "row"
2719
- }, createFooterCells(props.columns));
2934
+ var footerRowProps = mergeProps({
2935
+ role: 'row'
2936
+ }, props.ptCallbacks.ptm('footerRow'));
2937
+ return /*#__PURE__*/React.createElement("tr", footerRowProps, createFooterCells(props.columns));
2720
2938
  };
2721
2939
  if (hasFooter()) {
2722
2940
  var content = createContent();
2723
- return /*#__PURE__*/React.createElement("tfoot", {
2724
- className: "p-datatable-tfoot"
2725
- }, content);
2941
+ var tfootProps = mergeProps({
2942
+ className: 'p-datatable-tfoot'
2943
+ }, props.ptCallbacks.ptm('tfoot'), getColumnGroupPTOptions());
2944
+ return /*#__PURE__*/React.createElement("tfoot", tfootProps, content);
2726
2945
  }
2727
2946
  return null;
2728
2947
  });
2729
2948
  TableFooter.displayName = 'TableFooter';
2730
2949
 
2731
- function ownKeys$3(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; }
2732
- function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2950
+ function ownKeys$4(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; }
2951
+ function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2733
2952
  var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2734
2953
  var _React$useState = React.useState(false),
2735
2954
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -2742,6 +2961,19 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2742
2961
  var getColumnProp = function getColumnProp(name) {
2743
2962
  return ColumnBase.getCProp(props.column, name);
2744
2963
  };
2964
+ var getColumnProps = function getColumnProps() {
2965
+ return ColumnBase.getCProps(props.column);
2966
+ };
2967
+ var context = React.useContext(PrimeReactContext);
2968
+ var getColumnPTOptions = function getColumnPTOptions(key) {
2969
+ return props.ptCallbacks.ptmo(getColumnProps(), key, {
2970
+ props: getColumnProps(),
2971
+ parent: props.metaData,
2972
+ state: {
2973
+ overlayVisible: overlayVisibleState
2974
+ }
2975
+ });
2976
+ };
2745
2977
  var field = getColumnProp('filterField') || getColumnProp('field');
2746
2978
  var filterModel = props.filters[field];
2747
2979
  var filterStoreModel = props.filtersStore && props.filtersStore[field];
@@ -2778,7 +3010,12 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2778
3010
  return getColumnProp('showFilterMenu') && (props.display === 'row' ? getColumnProp('dataType') !== 'boolean' : true);
2779
3011
  };
2780
3012
  var matchModes = function matchModes() {
2781
- return getColumnProp('filterMatchModeOptions') || PrimeReact.filterMatchModeOptions[findDataType()].map(function (key) {
3013
+ return getColumnProp('filterMatchModeOptions') || context && context.filterMatchModeOptions[findDataType()].map(function (key) {
3014
+ return {
3015
+ label: localeOption(key),
3016
+ value: key
3017
+ };
3018
+ }) || PrimeReact.filterMatchModeOptions[findDataType()].map(function (key) {
2782
3019
  return {
2783
3020
  label: localeOption(key),
2784
3021
  value: key
@@ -2821,15 +3058,17 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2821
3058
  var dataType = getColumnProp('dataType');
2822
3059
  var matchMode = getColumnProp('filterMatchMode');
2823
3060
  var hasMatchMode = function hasMatchMode(key) {
2824
- return PrimeReact.filterMatchModeOptions[key].some(function (mode) {
3061
+ return context && context.filterMatchModeOptions[key].some(function (mode) {
3062
+ return mode === matchMode;
3063
+ }) || PrimeReact.filterMatchModeOptions[key].some(function (mode) {
2825
3064
  return mode === matchMode;
2826
3065
  });
2827
3066
  };
2828
3067
  if (matchMode === 'custom' && !hasMatchMode(dataType)) {
2829
- PrimeReact.filterMatchModeOptions[dataType].push(FilterMatchMode.CUSTOM);
3068
+ context && context.filterMatchModeOptions[dataType].push(FilterMatchMode.CUSTOM) || PrimeReact.filterMatchModeOptions[dataType].push(FilterMatchMode.CUSTOM);
2830
3069
  return dataType;
2831
3070
  } else if (matchMode) {
2832
- return Object.keys(PrimeReact.filterMatchModeOptions).find(function (key) {
3071
+ return Object.keys(context && context.filterMatchModeOptions || PrimeReact.filterMatchModeOptions).find(function (key) {
2833
3072
  return hasMatchMode(key);
2834
3073
  }) || dataType;
2835
3074
  }
@@ -2838,7 +3077,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2838
3077
  var clearFilter = function clearFilter() {
2839
3078
  var filterClearCallback = getColumnProp('onFilterClear');
2840
3079
  var defaultConstraint = getDefaultConstraint();
2841
- var filters = _objectSpread$3({}, props.filters);
3080
+ var filters = _objectSpread$4({}, props.filters);
2842
3081
  if (filters[field].operator) {
2843
3082
  filters[field].constraints.splice(1);
2844
3083
  filters[field].operator = defaultConstraint.operator;
@@ -2894,7 +3133,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2894
3133
  }
2895
3134
  };
2896
3135
  var onInputChange = function onInputChange(event, index) {
2897
- var filters = _objectSpread$3({}, props.filters);
3136
+ var filters = _objectSpread$4({}, props.filters);
2898
3137
  var value = event.target.value;
2899
3138
  if (props.display === 'menu') {
2900
3139
  filters[field].constraints[index].value = value;
@@ -2915,7 +3154,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2915
3154
  };
2916
3155
  var onRowMatchModeChange = function onRowMatchModeChange(matchMode) {
2917
3156
  var filterMatchModeChangeCallback = getColumnProp('onFilterMatchModeChange');
2918
- var filters = _objectSpread$3({}, props.filters);
3157
+ var filters = _objectSpread$4({}, props.filters);
2919
3158
  filters[field].matchMode = matchMode;
2920
3159
  filterMatchModeChangeCallback && filterMatchModeChangeCallback({
2921
3160
  field: field,
@@ -2955,7 +3194,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2955
3194
  var onOperatorChange = function onOperatorChange(e) {
2956
3195
  var filterOperationChangeCallback = getColumnProp('onFilterOperatorChange');
2957
3196
  var value = e.value;
2958
- var filters = _objectSpread$3({}, props.filters);
3197
+ var filters = _objectSpread$4({}, props.filters);
2959
3198
  filters[field].operator = value;
2960
3199
  props.onFilterChange(filters);
2961
3200
  filterOperationChangeCallback && filterOperationChangeCallback({
@@ -2968,7 +3207,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2968
3207
  };
2969
3208
  var onMenuMatchModeChange = function onMenuMatchModeChange(value, index) {
2970
3209
  var filterMatchModeChangeCallback = getColumnProp('onFilterMatchModeChange');
2971
- var filters = _objectSpread$3({}, props.filters);
3210
+ var filters = _objectSpread$4({}, props.filters);
2972
3211
  filters[field].constraints[index].matchMode = value;
2973
3212
  props.onFilterChange(filters);
2974
3213
  filterMatchModeChangeCallback && filterMatchModeChangeCallback({
@@ -2983,7 +3222,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
2983
3222
  var addConstraint = function addConstraint() {
2984
3223
  var filterConstraintAddCallback = getColumnProp('onFilterConstraintAdd');
2985
3224
  var defaultConstraint = getDefaultConstraint();
2986
- var filters = _objectSpread$3({}, props.filters);
3225
+ var filters = _objectSpread$4({}, props.filters);
2987
3226
  var newConstraint = {
2988
3227
  value: null,
2989
3228
  matchMode: defaultConstraint.matchMode
@@ -3000,7 +3239,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3000
3239
  };
3001
3240
  var removeConstraint = function removeConstraint(index) {
3002
3241
  var filterConstraintRemoveCallback = getColumnProp('onFilterConstraintRemove');
3003
- var filters = _objectSpread$3({}, props.filters);
3242
+ var filters = _objectSpread$4({}, props.filters);
3004
3243
  var removedConstraint = filters[field].constraints.splice(index, 1);
3005
3244
  filterConstraintRemoveCallback && filterConstraintRemoveCallback({
3006
3245
  field: field,
@@ -3033,8 +3272,8 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3033
3272
  selfClick.current = true;
3034
3273
  };
3035
3274
  var onOverlayEnter = function onOverlayEnter() {
3036
- ZIndexUtils.set('overlay', overlayRef.current, PrimeReact.autoZIndex, PrimeReact.zIndex['overlay']);
3037
- DomHandler.alignOverlay(overlayRef.current, iconRef.current, PrimeReact.appendTo, false);
3275
+ ZIndexUtils.set('overlay', overlayRef.current, context && context.autoZIndex || PrimeReact.autoZIndex, context && context.zIndex['overlay'] || PrimeReact.zIndex['overlay']);
3276
+ DomHandler.alignOverlay(overlayRef.current, iconRef.current, context && context.appendTo || PrimeReact.appendTo, false);
3038
3277
  overlayEventListener.current = function (e) {
3039
3278
  if (!isOutsideClicked(e.target)) {
3040
3279
  selfClick.current = true;
@@ -3092,7 +3331,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3092
3331
  };
3093
3332
  var filterCallback = function filterCallback(value) {
3094
3333
  var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
3095
- var filters = _objectSpread$3({}, props.filters);
3334
+ var filters = _objectSpread$4({}, props.filters);
3096
3335
  var meta = filters[field];
3097
3336
  props.display === 'menu' && meta && meta.operator ? filters[field].constraints[index].value = value : filters[field].value = value;
3098
3337
  props.onFilterChange(filters);
@@ -3106,7 +3345,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3106
3345
  };
3107
3346
  useUpdateEffect(function () {
3108
3347
  if (props.display === 'menu' && overlayVisibleState) {
3109
- DomHandler.alignOverlay(overlayRef.current, iconRef.current, PrimeReact.appendTo, false);
3348
+ DomHandler.alignOverlay(overlayRef.current, iconRef.current, context && context.appendTo || PrimeReact.appendTo, false);
3110
3349
  }
3111
3350
  });
3112
3351
  useUnmountEffect(function () {
@@ -3145,9 +3384,10 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3145
3384
  var createRowFilterElement = function createRowFilterElement() {
3146
3385
  if (props.display === 'row') {
3147
3386
  var content = createFilterElement(filterModel, 0);
3148
- return /*#__PURE__*/React.createElement("div", {
3149
- className: "p-fluid p-column-filter-element"
3150
- }, content);
3387
+ var filterInputProps = mergeProps({
3388
+ className: 'p-fluid p-column-filter-element'
3389
+ }, getColumnPTOptions('filterInput'));
3390
+ return /*#__PURE__*/React.createElement("div", filterInputProps, content);
3151
3391
  }
3152
3392
  return null;
3153
3393
  };
@@ -3155,38 +3395,44 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3155
3395
  return props.display === 'menu' ? createFilterElement(fieldConstraint, index) : null;
3156
3396
  };
3157
3397
  var createMenuButton = function createMenuButton() {
3158
- var iconProps = {
3159
- 'aria-hidden': true
3160
- };
3161
- var icon = props.filterIcon || /*#__PURE__*/React.createElement(FilterIcon, iconProps);
3162
- var columnFilterIcon = IconUtils.getJSXIcon(icon, _objectSpread$3({}, iconProps), {
3163
- props: props
3164
- });
3165
3398
  if (showMenuButton()) {
3399
+ var filterIconProps = mergeProps({
3400
+ 'aria-hidden': true
3401
+ }, getColumnPTOptions('filterIcon'));
3402
+ var icon = props.filterIcon || /*#__PURE__*/React.createElement(FilterIcon, filterIconProps);
3403
+ var columnFilterIcon = IconUtils.getJSXIcon(icon, _objectSpread$4({}, filterIconProps), {
3404
+ props: props
3405
+ });
3166
3406
  var _className = classNames('p-column-filter-menu-button p-link', {
3167
3407
  'p-column-filter-menu-button-open': overlayVisibleState,
3168
3408
  'p-column-filter-menu-button-active': hasFilter()
3169
3409
  });
3170
3410
  var label = filterLabel();
3171
- return /*#__PURE__*/React.createElement("button", {
3172
- ref: iconRef,
3173
- type: "button",
3411
+ var filterMenuButtonProps = mergeProps({
3412
+ type: 'button',
3174
3413
  className: _className,
3175
- "aria-haspopup": true,
3176
- "aria-expanded": overlayVisibleState,
3177
- onClick: toggleMenu,
3178
- onKeyDown: onToggleButtonKeyDown,
3179
- "aria-label": label
3180
- }, columnFilterIcon, /*#__PURE__*/React.createElement(Ripple, null));
3414
+ 'aria-haspopup': true,
3415
+ 'aria-expanded': overlayVisibleState,
3416
+ onClick: function onClick(e) {
3417
+ return toggleMenu();
3418
+ },
3419
+ onKeyDown: function onKeyDown(e) {
3420
+ return onToggleButtonKeyDown(e);
3421
+ },
3422
+ 'aria-label': label
3423
+ }, getColumnPTOptions('filterMenuButton'));
3424
+ return /*#__PURE__*/React.createElement("button", _extends({
3425
+ ref: iconRef
3426
+ }, filterMenuButtonProps), columnFilterIcon, /*#__PURE__*/React.createElement(Ripple, null));
3181
3427
  }
3182
3428
  return null;
3183
3429
  };
3184
3430
  var createClearButton = function createClearButton() {
3185
- var iconProps = {
3431
+ var filterClearIconProps = mergeProps({
3186
3432
  'aria-hidden': true
3187
- };
3188
- var icon = props.filterClearIcon || /*#__PURE__*/React.createElement(FilterSlashIcon, iconProps);
3189
- var filterClearIcon = IconUtils.getJSXIcon(icon, _objectSpread$3({}, iconProps), {
3433
+ }, getColumnPTOptions('filterClearIcon'));
3434
+ var icon = props.filterClearIcon || /*#__PURE__*/React.createElement(FilterSlashIcon, filterClearIconProps);
3435
+ var filterClearIcon = IconUtils.getJSXIcon(icon, _objectSpread$4({}, filterClearIconProps), {
3190
3436
  props: props
3191
3437
  });
3192
3438
  if (getColumnProp('showClearButton') && props.display === 'row') {
@@ -3194,12 +3440,15 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3194
3440
  'p-hidden-space': !hasRowFilter()
3195
3441
  });
3196
3442
  var clearLabel = clearButtonLabel();
3197
- return /*#__PURE__*/React.createElement("button", {
3443
+ var headerFilterClearButtonProps = mergeProps({
3198
3444
  className: _className2,
3199
- type: "button",
3200
- onClick: clearFilter,
3201
- "aria-label": clearLabel
3202
- }, filterClearIcon, /*#__PURE__*/React.createElement(Ripple, null));
3445
+ type: 'button',
3446
+ onClick: function onClick(e) {
3447
+ return clearFilter();
3448
+ },
3449
+ 'aria-label': clearLabel
3450
+ }, getColumnPTOptions('headerFilterClearButton'));
3451
+ return /*#__PURE__*/React.createElement("button", headerFilterClearButtonProps, filterClearIcon, /*#__PURE__*/React.createElement(Ripple, null));
3203
3452
  }
3204
3453
  return null;
3205
3454
  };
@@ -3207,18 +3456,30 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3207
3456
  if (isShowMatchModes()) {
3208
3457
  var _matchModes = matchModes();
3209
3458
  var _noFilterLabel = noFilterLabel();
3210
- return /*#__PURE__*/React.createElement("ul", {
3211
- className: "p-column-filter-row-items"
3212
- }, _matchModes.map(function (matchMode, i) {
3459
+ var filterSeparatorProps = mergeProps({
3460
+ className: 'p-column-filter-separator'
3461
+ }, getColumnPTOptions('filterSeparator'));
3462
+ var filterRowItemProps = mergeProps({
3463
+ className: 'p-column-filter-row-item',
3464
+ onClick: function onClick(e) {
3465
+ return clearFilter();
3466
+ },
3467
+ onKeyDown: function onKeyDown(e) {
3468
+ return onRowMatchModeKeyDown(e, null, true);
3469
+ }
3470
+ }, getColumnPTOptions('filterRowItem'));
3471
+ var filterRowItemsProps = mergeProps({
3472
+ className: 'p-column-filter-row-items'
3473
+ }, getColumnPTOptions('filterRowItems'));
3474
+ return /*#__PURE__*/React.createElement("ul", filterRowItemsProps, _matchModes.map(function (matchMode, i) {
3213
3475
  var value = matchMode.value,
3214
3476
  label = matchMode.label;
3215
3477
  var className = classNames('p-column-filter-row-item', {
3216
3478
  'p-highlight': isRowMatchModeSelected(value)
3217
3479
  });
3218
3480
  var tabIndex = i === 0 ? 0 : null;
3219
- return /*#__PURE__*/React.createElement("li", {
3481
+ var filterRowItemProps = mergeProps({
3220
3482
  className: className,
3221
- key: label,
3222
3483
  onClick: function onClick() {
3223
3484
  return onRowMatchModeChange(value);
3224
3485
  },
@@ -3226,16 +3487,11 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3226
3487
  return onRowMatchModeKeyDown(e, matchMode);
3227
3488
  },
3228
3489
  tabIndex: tabIndex
3229
- }, label);
3230
- }), /*#__PURE__*/React.createElement("li", {
3231
- className: "p-column-filter-separator"
3232
- }), /*#__PURE__*/React.createElement("li", {
3233
- className: "p-column-filter-row-item",
3234
- onClick: clearFilter,
3235
- onKeyDown: function onKeyDown(e) {
3236
- return onRowMatchModeKeyDown(e, null, true);
3237
- }
3238
- }, _noFilterLabel));
3490
+ }, getColumnPTOptions('filterRowItem'));
3491
+ return /*#__PURE__*/React.createElement("li", _extends({}, filterRowItemProps, {
3492
+ key: label
3493
+ }), label);
3494
+ }), /*#__PURE__*/React.createElement("li", filterSeparatorProps), /*#__PURE__*/React.createElement("li", filterRowItemProps, _noFilterLabel));
3239
3495
  }
3240
3496
  return null;
3241
3497
  };
@@ -3243,13 +3499,15 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3243
3499
  if (isShowOperator()) {
3244
3500
  var options = operatorOptions();
3245
3501
  var value = operator();
3246
- return /*#__PURE__*/React.createElement("div", {
3247
- className: "p-column-filter-operator"
3248
- }, /*#__PURE__*/React.createElement(Dropdown, {
3502
+ var filterOperatorProps = mergeProps({
3503
+ className: 'p-column-filter-operator'
3504
+ }, getColumnPTOptions('filterOperator'));
3505
+ return /*#__PURE__*/React.createElement("div", filterOperatorProps, /*#__PURE__*/React.createElement(Dropdown, {
3249
3506
  options: options,
3250
3507
  value: value,
3251
3508
  onChange: onOperatorChange,
3252
- className: "p-column-filter-operator-dropdown"
3509
+ className: "p-column-filter-operator-dropdown",
3510
+ pt: getColumnPTOptions('filterOperatorDropdown')
3253
3511
  }));
3254
3512
  }
3255
3513
  return null;
@@ -3263,7 +3521,8 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3263
3521
  onChange: function onChange(e) {
3264
3522
  return onMenuMatchModeChange(e.value, index);
3265
3523
  },
3266
- className: "p-column-filter-matchmode-dropdown"
3524
+ className: "p-column-filter-matchmode-dropdown",
3525
+ pt: getColumnPTOptions('filterMatchModeDropdown')
3267
3526
  });
3268
3527
  }
3269
3528
  return null;
@@ -3278,36 +3537,43 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3278
3537
  onClick: function onClick() {
3279
3538
  return removeConstraint(index);
3280
3539
  },
3281
- label: removeRuleLabel
3540
+ label: removeRuleLabel,
3541
+ pt: getColumnPTOptions('filterRemoveButton')
3282
3542
  });
3283
3543
  }
3284
3544
  return null;
3285
3545
  };
3286
3546
  var createConstraints = function createConstraints() {
3287
3547
  var _fieldConstraints = fieldConstraints();
3288
- return /*#__PURE__*/React.createElement("div", {
3289
- className: "p-column-filter-constraints"
3290
- }, _fieldConstraints.map(function (fieldConstraint, i) {
3548
+ var filterConstraintsProps = mergeProps({
3549
+ className: 'p-column-filter-constraints'
3550
+ }, getColumnPTOptions('filterConstraints'));
3551
+ var filterConstraintProps = mergeProps({
3552
+ className: 'p-column-filter-constraint'
3553
+ }, getColumnPTOptions('filterConstraint'));
3554
+ return /*#__PURE__*/React.createElement("div", filterConstraintsProps, _fieldConstraints.map(function (fieldConstraint, i) {
3291
3555
  var matchModeDropdown = createMatchModeDropdown(fieldConstraint, i);
3292
3556
  var menuFilterElement = createMenuFilterElement(fieldConstraint, i);
3293
3557
  var removeButton = createRemoveButton(i);
3294
- return /*#__PURE__*/React.createElement("div", {
3295
- key: i,
3296
- className: "p-column-filter-constraint"
3297
- }, matchModeDropdown, menuFilterElement, /*#__PURE__*/React.createElement("div", null, removeButton));
3558
+ var filterRemoveProps = mergeProps(getColumnPTOptions('filterRemove'));
3559
+ return /*#__PURE__*/React.createElement("div", _extends({}, filterConstraintProps, {
3560
+ key: i
3561
+ }), matchModeDropdown, menuFilterElement, /*#__PURE__*/React.createElement("div", filterRemoveProps, removeButton));
3298
3562
  }));
3299
3563
  };
3300
3564
  var createAddRule = function createAddRule() {
3301
3565
  if (isShowAddConstraint()) {
3302
3566
  var addRuleLabel = addRuleButtonLabel();
3303
- return /*#__PURE__*/React.createElement("div", {
3304
- className: "p-column-filter-add-rule"
3305
- }, /*#__PURE__*/React.createElement(Button, {
3567
+ var filterAddRuleProps = mergeProps({
3568
+ className: 'p-column-filter-add-rule'
3569
+ }, getColumnPTOptions('filterAddRule'));
3570
+ return /*#__PURE__*/React.createElement("div", filterAddRuleProps, /*#__PURE__*/React.createElement(Button, {
3306
3571
  type: "button",
3307
3572
  label: addRuleLabel,
3308
3573
  icon: props.filterAddIcon || /*#__PURE__*/React.createElement(PlusIcon, null),
3309
3574
  className: "p-column-filter-add-button p-button-text p-button-sm",
3310
- onClick: addConstraint
3575
+ onClick: addConstraint,
3576
+ pt: getColumnPTOptions('filterAddRuleButton')
3311
3577
  }));
3312
3578
  }
3313
3579
  return null;
@@ -3320,7 +3586,8 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3320
3586
  type: "button",
3321
3587
  className: "p-button-outlined p-button-sm",
3322
3588
  onClick: clearFilter,
3323
- label: clearLabel
3589
+ label: clearLabel,
3590
+ pt: getColumnPTOptions('filterClearButton')
3324
3591
  });
3325
3592
  }
3326
3593
  return ObjectUtils.getJSXElement(getColumnProp('filterClear'), {
@@ -3339,7 +3606,8 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3339
3606
  type: "button",
3340
3607
  className: "p-button-sm",
3341
3608
  onClick: applyFilter,
3342
- label: applyLabel
3609
+ label: applyLabel,
3610
+ pt: getColumnPTOptions('filterApplyButton')
3343
3611
  });
3344
3612
  }
3345
3613
  return ObjectUtils.getJSXElement(getColumnProp('filterApply'), {
@@ -3353,9 +3621,10 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3353
3621
  var createButtonBar = function createButtonBar() {
3354
3622
  var clearButton = createFilterClearButton();
3355
3623
  var applyButton = createFilterApplyButton();
3356
- return /*#__PURE__*/React.createElement("div", {
3357
- className: "p-column-filter-buttonbar"
3358
- }, clearButton, applyButton);
3624
+ var filterButtonbarProps = mergeProps({
3625
+ className: 'p-column-filter-buttonbar'
3626
+ }, getColumnPTOptions('filterButtonBar'));
3627
+ return /*#__PURE__*/React.createElement("div", filterButtonbarProps, clearButton, applyButton);
3359
3628
  };
3360
3629
  var createItems = function createItems() {
3361
3630
  var operator = createOperator();
@@ -3368,8 +3637,8 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3368
3637
  var style = getColumnProp('filterMenuStyle');
3369
3638
  var className = classNames('p-column-filter-overlay p-component p-fluid', getColumnProp('filterMenuClassName'), {
3370
3639
  'p-column-filter-overlay-menu': props.display === 'menu',
3371
- 'p-input-filled': PrimeReact.inputStyle === 'filled',
3372
- 'p-ripple-disabled': PrimeReact.ripple === false
3640
+ 'p-input-filled': context && context.inputStyle === 'filled' || PrimeReact.inputStyle === 'filled',
3641
+ 'p-ripple-disabled': context && context.ripple === false || PrimeReact.ripple === false
3373
3642
  });
3374
3643
  var filterHeader = ObjectUtils.getJSXElement(getColumnProp('filterHeader'), {
3375
3644
  field: field,
@@ -3382,6 +3651,19 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3382
3651
  filterApplyCallback: filterApplyCallback
3383
3652
  });
3384
3653
  var items = props.display === 'row' ? createRowItems() : createItems();
3654
+ var filterOverlayProps = mergeProps({
3655
+ style: style,
3656
+ className: className,
3657
+ onKeyDown: function onKeyDown(e) {
3658
+ return onContentKeyDown(e);
3659
+ },
3660
+ onClick: function onClick(e) {
3661
+ return onContentClick(e);
3662
+ },
3663
+ onMouseDown: function onMouseDown(e) {
3664
+ return onContentMouseDown();
3665
+ }
3666
+ }, getColumnPTOptions('filterOverlay'));
3385
3667
  return /*#__PURE__*/React.createElement(Portal, null, /*#__PURE__*/React.createElement(CSSTransition, {
3386
3668
  nodeRef: overlayRef,
3387
3669
  classNames: "p-connected-overlay",
@@ -3395,14 +3677,9 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3395
3677
  onEntered: onOverlayEntered,
3396
3678
  onExit: onOverlayExit,
3397
3679
  onExited: onOverlayExited
3398
- }, /*#__PURE__*/React.createElement("div", {
3399
- ref: overlayRef,
3400
- style: style,
3401
- className: className,
3402
- onKeyDown: onContentKeyDown,
3403
- onClick: onContentClick,
3404
- onMouseDown: onContentMouseDown
3405
- }, filterHeader, items, filterFooter)));
3680
+ }, /*#__PURE__*/React.createElement("div", _extends({
3681
+ ref: overlayRef
3682
+ }, filterOverlayProps), filterHeader, items, filterFooter)));
3406
3683
  };
3407
3684
  var className = classNames('p-column-filter p-fluid', {
3408
3685
  'p-column-filter-row': props.display === 'row',
@@ -3412,24 +3689,43 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3412
3689
  var menuButton = createMenuButton();
3413
3690
  var clearButton = createClearButton();
3414
3691
  var overlay = createOverlay();
3415
- return /*#__PURE__*/React.createElement("div", {
3692
+ var columnFilter = mergeProps({
3416
3693
  className: className
3417
- }, rowFilterElement, menuButton, clearButton, overlay);
3694
+ }, getColumnPTOptions('columnFilter'));
3695
+ return /*#__PURE__*/React.createElement("div", columnFilter, rowFilterElement, menuButton, clearButton, overlay);
3418
3696
  });
3419
3697
  ColumnFilter.displayName = 'ColumnFilter';
3420
3698
 
3699
+ function ownKeys$3(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; }
3700
+ function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3421
3701
  var HeaderCheckbox = /*#__PURE__*/React.memo(function (props) {
3422
3702
  var _React$useState = React.useState(false),
3423
3703
  _React$useState2 = _slicedToArray(_React$useState, 2),
3424
3704
  focusedState = _React$useState2[0],
3425
3705
  setFocusedState = _React$useState2[1];
3426
- var onFocus = function onFocus() {
3706
+ var getColumnProps = function getColumnProps() {
3707
+ return ColumnBase.getCProps(props.column);
3708
+ };
3709
+ var getColumnPTOptions = function getColumnPTOptions(key) {
3710
+ return props.ptCallbacks.ptmo(ColumnBase.getCProp(props.column, 'pt'), key, {
3711
+ props: getColumnProps(),
3712
+ parent: props.metaData,
3713
+ context: {
3714
+ checked: props.checked,
3715
+ disabled: props.disabled
3716
+ },
3717
+ state: {
3718
+ focused: focusedState
3719
+ }
3720
+ });
3721
+ };
3722
+ var _onFocus = function onFocus() {
3427
3723
  setFocusedState(true);
3428
3724
  };
3429
- var onBlur = function onBlur() {
3725
+ var _onBlur = function onBlur() {
3430
3726
  setFocusedState(false);
3431
3727
  };
3432
- var onClick = function onClick(event) {
3728
+ var _onClick = function onClick(event) {
3433
3729
  if (!props.disabled) {
3434
3730
  setFocusedState(true);
3435
3731
  props.onChange({
@@ -3438,10 +3734,10 @@ var HeaderCheckbox = /*#__PURE__*/React.memo(function (props) {
3438
3734
  });
3439
3735
  }
3440
3736
  };
3441
- var onKeyDown = function onKeyDown(event) {
3737
+ var _onKeyDown = function onKeyDown(event) {
3442
3738
  if (event.code === 'Space' || event.key === ' ') {
3443
3739
  // event.key is for Android support
3444
- onClick(event);
3740
+ _onClick(event);
3445
3741
  event.preventDefault();
3446
3742
  }
3447
3743
  };
@@ -3451,27 +3747,36 @@ var HeaderCheckbox = /*#__PURE__*/React.memo(function (props) {
3451
3747
  'p-focus': focusedState
3452
3748
  });
3453
3749
  var iconClassName = 'p-checkbox-icon';
3454
- var icon = props.checked ? props.checkIcon || /*#__PURE__*/React.createElement(CheckIcon, {
3750
+ var headerCheckboxIconProps = mergeProps({
3455
3751
  className: iconClassName
3456
- }) : null;
3457
- var checkIcon = IconUtils.getJSXIcon(icon, {
3458
- className: iconClassName
3459
- }, {
3752
+ }, getColumnPTOptions('headerCheckboxIcon'));
3753
+ var icon = props.checked ? props.checkIcon || /*#__PURE__*/React.createElement(CheckIcon, headerCheckboxIconProps) : null;
3754
+ var checkIcon = IconUtils.getJSXIcon(icon, _objectSpread$3({}, headerCheckboxIconProps), {
3460
3755
  props: props
3461
3756
  });
3462
3757
  var tabIndex = props.disabled ? null : 0;
3463
- return /*#__PURE__*/React.createElement("div", {
3464
- className: "p-checkbox p-component",
3465
- onClick: onClick
3466
- }, /*#__PURE__*/React.createElement("div", {
3758
+ var headerCheckboxWrapperProps = mergeProps({
3759
+ className: 'p-checkbox p-component',
3760
+ onClick: function onClick(e) {
3761
+ return _onClick(e);
3762
+ }
3763
+ }, getColumnPTOptions('headerCheckboxWrapper'));
3764
+ var headerCheckboxProps = mergeProps({
3467
3765
  className: boxClassName,
3468
- role: "checkbox",
3469
- "aria-checked": props.checked,
3766
+ role: 'checkbox',
3767
+ 'aria-checked': props.checked,
3470
3768
  tabIndex: tabIndex,
3471
- onFocus: onFocus,
3472
- onBlur: onBlur,
3473
- onKeyDown: onKeyDown
3474
- }, checkIcon));
3769
+ onFocus: function onFocus(e) {
3770
+ return _onFocus();
3771
+ },
3772
+ onBlur: function onBlur(e) {
3773
+ return _onBlur();
3774
+ },
3775
+ onKeyDown: function onKeyDown(e) {
3776
+ return _onKeyDown(e);
3777
+ }
3778
+ }, getColumnPTOptions('headerCheckbox'));
3779
+ return /*#__PURE__*/React.createElement("div", headerCheckboxWrapperProps, /*#__PURE__*/React.createElement("div", headerCheckboxProps, checkIcon));
3475
3780
  });
3476
3781
  HeaderCheckbox.displayName = 'HeaderCheckbox';
3477
3782
 
@@ -3484,6 +3789,25 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3484
3789
  setStyleObjectState = _React$useState2[1];
3485
3790
  var elementRef = React.useRef(null);
3486
3791
  var prevColumn = usePrevious(props.column);
3792
+ var parentMetaData = props.metaData,
3793
+ ptCallbacks = props.ptCallbacks,
3794
+ index = props.index;
3795
+ var params = {
3796
+ index: index
3797
+ };
3798
+ var parentParams = _objectSpread$2(_objectSpread$2({}, parentMetaData), params);
3799
+ var getColumnProps = function getColumnProps() {
3800
+ return ColumnBase.getCProps(props.column);
3801
+ };
3802
+ var getColumnPTOptions = function getColumnPTOptions(key) {
3803
+ return ptCallbacks.ptmo(ColumnBase.getCProp(props.column, 'pt'), key, {
3804
+ props: getColumnProps(),
3805
+ parent: parentParams,
3806
+ state: {
3807
+ styleObject: styleObjectState
3808
+ }
3809
+ });
3810
+ };
3487
3811
  var isBadgeVisible = function isBadgeVisible() {
3488
3812
  return props.multiSortMeta && props.multiSortMeta.length > 1;
3489
3813
  };
@@ -3552,9 +3876,9 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3552
3876
  }
3553
3877
  var filterRow = elementRef.current.parentElement.nextElementSibling;
3554
3878
  if (filterRow) {
3555
- var index = DomHandler.index(elementRef.current);
3556
- filterRow.children[index].style.left = styleObject['left'];
3557
- filterRow.children[index].style.right = styleObject['right'];
3879
+ var _index = DomHandler.index(elementRef.current);
3880
+ filterRow.children[_index].style.left = styleObject['left'];
3881
+ filterRow.children[_index].style.right = styleObject['right'];
3558
3882
  }
3559
3883
  var isSameStyle = styleObjectState['left'] === styleObject['left'] && styleObjectState['right'] === styleObject['right'];
3560
3884
  !isSameStyle && setStyleObjectState(styleObject);
@@ -3565,7 +3889,7 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3565
3889
  props.onSortableChange();
3566
3890
  }
3567
3891
  };
3568
- var onClick = function onClick(event) {
3892
+ var _onClick = function onClick(event) {
3569
3893
  if (!isSortableDisabled()) {
3570
3894
  var targetNode = event.target;
3571
3895
  if (DomHandler.hasClass(targetNode, 'p-sortable-column') || DomHandler.hasClass(targetNode, 'p-column-title') || DomHandler.hasClass(targetNode, 'p-column-header-content') || DomHandler.hasClass(targetNode, 'p-sortable-column-icon') || DomHandler.hasClass(targetNode.parentElement, 'p-sortable-column-icon')) {
@@ -3578,37 +3902,37 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3578
3902
  }
3579
3903
  }
3580
3904
  };
3581
- var onMouseDown = function onMouseDown(event) {
3905
+ var _onMouseDown = function onMouseDown(event) {
3582
3906
  props.onColumnMouseDown({
3583
3907
  originalEvent: event,
3584
3908
  column: props.column
3585
3909
  });
3586
3910
  };
3587
- var onKeyDown = function onKeyDown(event) {
3911
+ var _onKeyDown = function onKeyDown(event) {
3588
3912
  if (event.key === 'Enter' && event.currentTarget === elementRef.current && DomHandler.hasClass(event.currentTarget, 'p-sortable-column')) {
3589
- onClick(event);
3913
+ _onClick(event);
3590
3914
  event.preventDefault();
3591
3915
  }
3592
3916
  };
3593
- var onDragStart = function onDragStart(event) {
3917
+ var _onDragStart = function onDragStart(event) {
3594
3918
  props.onColumnDragStart({
3595
3919
  originalEvent: event,
3596
3920
  column: props.column
3597
3921
  });
3598
3922
  };
3599
- var onDragOver = function onDragOver(event) {
3923
+ var _onDragOver = function onDragOver(event) {
3600
3924
  props.onColumnDragOver({
3601
3925
  originalEvent: event,
3602
3926
  column: props.column
3603
3927
  });
3604
3928
  };
3605
- var onDragLeave = function onDragLeave(event) {
3929
+ var _onDragLeave = function onDragLeave(event) {
3606
3930
  props.onColumnDragLeave({
3607
3931
  originalEvent: event,
3608
3932
  column: props.column
3609
3933
  });
3610
3934
  };
3611
- var onDrop = function onDrop(event) {
3935
+ var _onDrop = function onDrop(event) {
3612
3936
  props.onColumnDrop({
3613
3937
  originalEvent: event,
3614
3938
  column: props.column
@@ -3648,12 +3972,19 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3648
3972
  });
3649
3973
  var createResizer = function createResizer() {
3650
3974
  if (props.resizableColumns && !getColumnProp('frozen')) {
3651
- return /*#__PURE__*/React.createElement("span", {
3652
- className: "p-column-resizer",
3653
- onMouseDown: onResizerMouseDown,
3654
- onClick: onResizerClick,
3655
- onDoubleClick: onResizerDoubleClick
3656
- });
3975
+ var columnResizerProps = mergeProps({
3976
+ className: 'p-column-resizer',
3977
+ onMouseDown: function onMouseDown(e) {
3978
+ return onResizerMouseDown(e);
3979
+ },
3980
+ onClick: function onClick(e) {
3981
+ return onResizerClick(e);
3982
+ },
3983
+ onDoubleClick: function onDoubleClick(e) {
3984
+ return onResizerDoubleClick(e);
3985
+ }
3986
+ }, getColumnPTOptions('columnResizer'));
3987
+ return /*#__PURE__*/React.createElement("span", columnResizerProps);
3657
3988
  }
3658
3989
  return null;
3659
3990
  };
@@ -3661,24 +3992,27 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3661
3992
  var title = ObjectUtils.getJSXElement(getColumnProp('header'), {
3662
3993
  props: props.tableProps
3663
3994
  });
3664
- return /*#__PURE__*/React.createElement("span", {
3665
- className: "p-column-title"
3666
- }, title);
3995
+ var headerTitleProps = mergeProps({
3996
+ className: 'p-column-title'
3997
+ }, getColumnPTOptions('headerTitle'));
3998
+ return /*#__PURE__*/React.createElement("span", headerTitleProps, title);
3667
3999
  };
3668
4000
  var createSortIcon = function createSortIcon(_ref2) {
3669
4001
  var sorted = _ref2.sorted,
3670
4002
  sortOrder = _ref2.sortOrder;
3671
4003
  if (getColumnProp('sortable')) {
3672
4004
  var iconClassName = 'p-sortable-column-icon';
3673
- var icon = sorted ? sortOrder < 0 ? /*#__PURE__*/React.createElement(SortAmountDownIcon, null) : /*#__PURE__*/React.createElement(SortAmountUpAltIcon, null) : /*#__PURE__*/React.createElement(SortAltIcon, null);
3674
- var sortIcon = IconUtils.getJSXIcon(props.sortIcon || icon, undefined, {
4005
+ var sortIconProps = mergeProps({
4006
+ className: iconClassName
4007
+ }, getColumnPTOptions('sortIcon'));
4008
+ var sortProps = mergeProps(getColumnPTOptions('sort'));
4009
+ var icon = sorted ? sortOrder < 0 ? /*#__PURE__*/React.createElement(SortAmountDownIcon, sortIconProps) : /*#__PURE__*/React.createElement(SortAmountUpAltIcon, sortIconProps) : /*#__PURE__*/React.createElement(SortAltIcon, sortIconProps);
4010
+ var sortIcon = IconUtils.getJSXIcon(props.sortIcon || icon, _objectSpread$2({}, sortIconProps), {
3675
4011
  props: props,
3676
4012
  sorted: sorted,
3677
4013
  sortOrder: sortOrder
3678
4014
  });
3679
- return /*#__PURE__*/React.createElement("span", {
3680
- className: iconClassName
3681
- }, sortIcon);
4015
+ return /*#__PURE__*/React.createElement("span", sortProps, sortIcon);
3682
4016
  }
3683
4017
  return null;
3684
4018
  };
@@ -3686,9 +4020,10 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3686
4020
  var metaIndex = _ref3.metaIndex;
3687
4021
  if (metaIndex !== -1 && isBadgeVisible()) {
3688
4022
  var value = props.groupRowsBy && props.groupRowsBy === props.groupRowSortField ? metaIndex : metaIndex + 1;
3689
- return /*#__PURE__*/React.createElement("span", {
3690
- className: "p-sortable-column-badge"
3691
- }, value);
4023
+ var sortBadgeProps = mergeProps({
4024
+ className: 'p-sortable-column-badge'
4025
+ }, getColumnPTOptions('sortBadge'), getColumnPTOptions('root'));
4026
+ return /*#__PURE__*/React.createElement("span", sortBadgeProps, value);
3692
4027
  }
3693
4028
  return null;
3694
4029
  };
@@ -3698,7 +4033,9 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3698
4033
  return /*#__PURE__*/React.createElement(HeaderCheckbox, {
3699
4034
  checked: allRowsSelected,
3700
4035
  onChange: props.onColumnCheckboxChange,
3701
- disabled: props.empty
4036
+ disabled: props.empty,
4037
+ ptCallbacks: ptCallbacks,
4038
+ metaData: parentMetaData
3702
4039
  });
3703
4040
  }
3704
4041
  return null;
@@ -3713,7 +4050,9 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3713
4050
  onFilterApply: props.onFilterApply,
3714
4051
  filtersStore: props.filtersStore,
3715
4052
  filterIcon: props.filterIcon,
3716
- filterClearIcon: props.filterClearIcon
4053
+ filterClearIcon: props.filterClearIcon,
4054
+ ptCallbacks: ptCallbacks,
4055
+ metaData: parentMetaData
3717
4056
  });
3718
4057
  }
3719
4058
  return null;
@@ -3724,9 +4063,10 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3724
4063
  var badge = createBadge(sortMeta);
3725
4064
  var checkbox = createCheckbox();
3726
4065
  var filter = createFilter();
3727
- return /*#__PURE__*/React.createElement("div", {
3728
- className: "p-column-header-content"
3729
- }, title, sortIcon, badge, checkbox, filter);
4066
+ var headerContentProps = mergeProps({
4067
+ className: 'p-column-header-content'
4068
+ }, getColumnPTOptions('headerContent'));
4069
+ return /*#__PURE__*/React.createElement("div", headerContentProps, title, sortIcon, badge, checkbox, filter);
3730
4070
  };
3731
4071
  var createElement = function createElement() {
3732
4072
  var _isSortableDisabled = isSortableDisabled();
@@ -3752,26 +4092,44 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
3752
4092
  var headerTooltipOptions = getColumnProp('headerTooltipOptions');
3753
4093
  var resizer = createResizer();
3754
4094
  var header = createHeader(sortMeta);
3755
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("th", {
3756
- ref: elementRef,
3757
- style: style,
4095
+ var headerCellProps = mergeProps({
3758
4096
  className: className,
4097
+ style: style,
4098
+ role: 'columnheader',
4099
+ onClick: function onClick(e) {
4100
+ return _onClick(e);
4101
+ },
4102
+ onKeyDown: function onKeyDown(e) {
4103
+ return _onKeyDown(e);
4104
+ },
4105
+ onMouseDown: function onMouseDown(e) {
4106
+ return _onMouseDown(e);
4107
+ },
4108
+ onDragStart: function onDragStart(e) {
4109
+ return _onDragStart(e);
4110
+ },
4111
+ onDragOver: function onDragOver(e) {
4112
+ return _onDragOver(e);
4113
+ },
4114
+ onDragLeave: function onDragLeave(e) {
4115
+ return _onDragLeave(e);
4116
+ },
4117
+ onDrop: function onDrop(e) {
4118
+ return _onDrop(e);
4119
+ },
3759
4120
  tabIndex: tabIndex,
3760
- role: "columnheader",
3761
- onClick: onClick,
3762
- onKeyDown: onKeyDown,
3763
- onMouseDown: onMouseDown,
3764
- onDragStart: onDragStart,
3765
- onDragOver: onDragOver,
3766
- onDragLeave: onDragLeave,
3767
- onDrop: onDrop,
3768
4121
  colSpan: colSpan,
3769
4122
  rowSpan: rowSpan,
3770
- "aria-sort": ariaSort
3771
- }, resizer, header), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
4123
+ 'aria-sort': ariaSort
4124
+ }, getColumnPTOptions('headerCell'), getColumnPTOptions('root'));
4125
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("th", _extends({
4126
+ ref: elementRef
4127
+ }, headerCellProps), resizer, header), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
3772
4128
  target: elementRef,
3773
4129
  content: headerTooltip
3774
- }, headerTooltipOptions)));
4130
+ }, headerTooltipOptions, {
4131
+ pt: getColumnPTOptions('tooltip')
4132
+ })));
3775
4133
  };
3776
4134
  var element = createElement();
3777
4135
  return element;
@@ -3795,6 +4153,43 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3795
4153
  var getColumnProp = function getColumnProp(column, name) {
3796
4154
  return ColumnBase.getCProp(column, name);
3797
4155
  };
4156
+ var getColumnProps = function getColumnProps(column) {
4157
+ return ColumnBase.getCProps(column);
4158
+ };
4159
+ var getRowProps = function getRowProps(row) {
4160
+ return ColumnGroupBase.getCProps(row);
4161
+ };
4162
+ var getColumnGroupProps = function getColumnGroupProps() {
4163
+ return props.headerColumnGroup ? props.ptCallbacks.ptmo(ColumnGroupBase.getCProps(props.headerColumnGroup)) : undefined;
4164
+ };
4165
+ var getColumnGroupPTOptions = function getColumnGroupPTOptions(key) {
4166
+ return props.ptCallbacks.ptmo(ColumnGroupBase.getCProp(props.headerColumnGroup, 'pt')), {
4167
+ props: getColumnGroupProps(),
4168
+ parent: props.metaData,
4169
+ state: {
4170
+ sortableDisabledFields: sortableDisabledFieldsState,
4171
+ allSortableDisabled: allSortableDisabledState
4172
+ }
4173
+ };
4174
+ };
4175
+ var getColumnPTOptions = function getColumnPTOptions(column, key) {
4176
+ var cProps = getColumnProps(column);
4177
+ return props.ptCallbacks.ptmo(cProps, key, {
4178
+ props: cProps,
4179
+ parent: props.metaData,
4180
+ state: {
4181
+ sortableDisabledFields: sortableDisabledFieldsState,
4182
+ allSortableDisabled: allSortableDisabledState
4183
+ }
4184
+ });
4185
+ };
4186
+ var getRowPTOptions = function getRowPTOptions(row, key) {
4187
+ var rProps = getRowProps(row);
4188
+ return props.ptCallbacks.ptmo(rProps, key, {
4189
+ props: rProps,
4190
+ parent: props.metaData
4191
+ });
4192
+ };
3798
4193
  var isColumnSorted = function isColumnSorted(column) {
3799
4194
  return props.sortField !== null ? getColumnProp(column, 'field') === props.sortField || getColumnProp(column, 'sortField') === props.sortField : false;
3800
4195
  };
@@ -3835,6 +4230,7 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3835
4230
  allRowsSelected: props.allRowsSelected,
3836
4231
  allSortableDisabled: isAllSortableDisabled,
3837
4232
  column: col,
4233
+ index: i,
3838
4234
  empty: props.empty,
3839
4235
  filterClearIcon: props.filterClearIcon,
3840
4236
  filterDisplay: props.filterDisplay,
@@ -3868,7 +4264,9 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3868
4264
  sortableDisabledFields: sortableDisabledFieldsState,
3869
4265
  tabIndex: props.tabIndex,
3870
4266
  tableProps: props.tableProps,
3871
- value: props.value
4267
+ value: props.value,
4268
+ ptCallbacks: props.ptCallbacks,
4269
+ metaData: props.metaData
3872
4270
  });
3873
4271
  });
3874
4272
  };
@@ -3878,7 +4276,9 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3878
4276
  return /*#__PURE__*/React.createElement(HeaderCheckbox, {
3879
4277
  checked: allRowsSelected,
3880
4278
  onChange: onCheckboxChange,
3881
- disabled: props.empty
4279
+ disabled: props.empty,
4280
+ ptCallbacks: props.ptCallbacks,
4281
+ metaData: props.metaData
3882
4282
  });
3883
4283
  }
3884
4284
  return null;
@@ -3891,7 +4291,9 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3891
4291
  filters: props.filters,
3892
4292
  filtersStore: props.filtersStore,
3893
4293
  onFilterChange: props.onFilterChange,
3894
- onFilterApply: props.onFilterApply
4294
+ onFilterApply: props.onFilterApply,
4295
+ ptCallbacks: props.ptCallbacks,
4296
+ metaData: props.metaData
3895
4297
  });
3896
4298
  }
3897
4299
  return null;
@@ -3917,11 +4319,12 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3917
4319
  var colKey = columnKey || field || i;
3918
4320
  var checkbox = createCheckbox(selectionMode);
3919
4321
  var filterRow = createFilter(col, filter);
3920
- return /*#__PURE__*/React.createElement("th", {
3921
- key: colKey,
4322
+ var headerCellProps = mergeProps({
3922
4323
  style: colStyle,
3923
- className: colClassName
3924
- }, checkbox, filterRow);
4324
+ className: colClassName,
4325
+ key: colKey
4326
+ }, getColumnPTOptions(col, 'headerCell'), getColumnPTOptions(col, 'root'));
4327
+ return /*#__PURE__*/React.createElement("th", headerCellProps, checkbox, filterRow);
3925
4328
  }
3926
4329
  return null;
3927
4330
  });
@@ -3930,32 +4333,35 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
3930
4333
  if (props.headerColumnGroup) {
3931
4334
  var rows = React.Children.toArray(ColumnGroupBase.getCProp(props.headerColumnGroup, 'children'));
3932
4335
  return rows.map(function (row, i) {
3933
- return /*#__PURE__*/React.createElement("tr", {
3934
- key: i,
3935
- role: "row"
3936
- }, createGroupHeaderCells(row));
4336
+ var headerRowProps = mergeProps({
4337
+ role: 'row'
4338
+ }, getRowPTOptions(row, 'root'));
4339
+ return /*#__PURE__*/React.createElement("tr", _extends({}, headerRowProps, {
4340
+ key: i
4341
+ }), createGroupHeaderCells(row));
3937
4342
  });
3938
4343
  } else {
3939
- var headerRow = /*#__PURE__*/React.createElement("tr", {
3940
- role: "row"
3941
- }, createHeaderCells(props.columns));
3942
- var filterRow = props.filterDisplay === 'row' && /*#__PURE__*/React.createElement("tr", {
3943
- role: "row"
3944
- }, createFilterCells());
4344
+ var headerRowProps = mergeProps({
4345
+ role: 'row'
4346
+ }, props.ptCallbacks.ptm('headerRow'));
4347
+ var headerRow = /*#__PURE__*/React.createElement("tr", headerRowProps, createHeaderCells(props.columns));
4348
+ var filterRow = props.filterDisplay === 'row' && /*#__PURE__*/React.createElement("tr", headerRowProps, createFilterCells());
3945
4349
  return /*#__PURE__*/React.createElement(React.Fragment, null, headerRow, filterRow);
3946
4350
  }
3947
4351
  };
3948
4352
  var content = createContent();
3949
- return /*#__PURE__*/React.createElement("thead", {
3950
- className: "p-datatable-thead"
3951
- }, content);
4353
+ var theadProps = mergeProps({
4354
+ className: 'p-datatable-thead'
4355
+ }, props.ptCallbacks.ptm('thead'), getColumnGroupPTOptions());
4356
+ return /*#__PURE__*/React.createElement("thead", theadProps, content);
3952
4357
  });
3953
4358
  TableHeader.displayName = 'TableHeader';
3954
4359
 
3955
4360
  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; }
3956
4361
  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; }
3957
4362
  var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
3958
- var props = DataTableBase.getProps(inProps);
4363
+ var context = React.useContext(PrimeReactContext);
4364
+ var props = DataTableBase.getProps(inProps, context);
3959
4365
  var _React$useState = React.useState(props.first),
3960
4366
  _React$useState2 = _slicedToArray(_React$useState, 2),
3961
4367
  firstState = _React$useState2[0],
@@ -4000,6 +4406,23 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
4000
4406
  _React$useState22 = _slicedToArray(_React$useState21, 2),
4001
4407
  d_filtersState = _React$useState22[0],
4002
4408
  setD_filtersState = _React$useState22[1];
4409
+ var metaData = {
4410
+ props: props,
4411
+ state: {
4412
+ first: firstState,
4413
+ rows: rowsState,
4414
+ sortField: sortFieldState,
4415
+ sortOrder: sortOrderState,
4416
+ multiSortMeta: multiSortMetaState,
4417
+ filters: filtersState,
4418
+ columnOrder: columnOrderState,
4419
+ groupRowsSortMeta: groupRowsSortMetaState,
4420
+ editingMeta: editingMetaState,
4421
+ d_rows: d_rowsState,
4422
+ d_filters: d_filtersState
4423
+ }
4424
+ };
4425
+ var ptCallbacks = DataTableBase.setMetaData(metaData);
4003
4426
  var attributeSelector = React.useRef('');
4004
4427
  var elementRef = React.useRef(null);
4005
4428
  var tableRef = React.useRef(null);
@@ -4623,11 +5046,11 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
4623
5046
  }
4624
5047
  };
4625
5048
  var createStyleElement = function createStyleElement() {
4626
- styleElement.current = DomHandler.createInlineStyle(PrimeReact.nonce);
5049
+ styleElement.current = DomHandler.createInlineStyle(context && context.nonce || PrimeReact.nonce);
4627
5050
  };
4628
5051
  var createResponsiveStyle = function createResponsiveStyle() {
4629
5052
  if (!responsiveStyleElement.current) {
4630
- responsiveStyleElement.current = DomHandler.createInlineStyle(PrimeReact.nonce);
5053
+ responsiveStyleElement.current = DomHandler.createInlineStyle(context && context.nonce || PrimeReact.nonce);
4631
5054
  var tableSelector = ".p-datatable-wrapper ".concat(isVirtualScrollerDisabled() ? '' : '> .p-virtualscroller', " > .p-datatable-table");
4632
5055
  var selector = ".p-datatable[".concat(attributeSelector.current, "] > ").concat(tableSelector);
4633
5056
  var gridLinesSelector = ".p-datatable[".concat(attributeSelector.current, "].p-datatable-gridlines > ").concat(tableSelector);
@@ -4719,7 +5142,7 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
4719
5142
  return props.removableSort ? props.defaultSortOrder === currentOrder ? currentOrder * -1 : 0 : currentOrder * -1;
4720
5143
  };
4721
5144
  var compareValuesOnSort = function compareValuesOnSort(value1, value2, order) {
4722
- return ObjectUtils.sort(value1, value2, order, PrimeReact.locale, PrimeReact.nullSortOrder);
5145
+ return ObjectUtils.sort(value1, value2, order, context && context.locale || PrimeReact.locale, context && context.nullSortOrder || PrimeReact.nullSortOrder);
4723
5146
  };
4724
5147
  var addSortMeta = function addSortMeta(meta, multiSortMeta) {
4725
5148
  var index = multiSortMeta.findIndex(function (sortMeta) {
@@ -4805,7 +5228,7 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
4805
5228
  var value2 = ObjectUtils.resolveFieldData(data2, multiSortMeta[index].field);
4806
5229
 
4807
5230
  // check if they are equal handling dates and locales
4808
- if (ObjectUtils.compare(value1, value2, PrimeReact.locale) === 0) {
5231
+ if (ObjectUtils.compare(value1, value2, context && context.locale || PrimeReact.locale) === 0) {
4809
5232
  return multiSortMeta.length - 1 > index ? multisortField(data1, data2, multiSortMeta, index + 1) : 0;
4810
5233
  }
4811
5234
  return compareValuesOnSort(value1, value2, multiSortMeta[index].order);
@@ -4929,7 +5352,7 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
4929
5352
  var field = getColumnProp(col, 'filterField') || getColumnProp(col, 'field');
4930
5353
  var filterFunction = getColumnProp(col, 'filterFunction');
4931
5354
  var dataType = getColumnProp(col, 'dataType');
4932
- var matchMode = getColumnProp(col, 'filterMatchMode') || (PrimeReact.filterMatchModeOptions[dataType] ? PrimeReact.filterMatchModeOptions[dataType][0] : FilterMatchMode.STARTS_WITH);
5355
+ var matchMode = getColumnProp(col, 'filterMatchMode') || (context && context.filterMatchModeOptions[dataType] || PrimeReact.filterMatchModeOptions[dataType] ? context && context.filterMatchModeOptions[dataType][0] || PrimeReact.filterMatchModeOptions[dataType][0] : FilterMatchMode.STARTS_WITH);
4933
5356
  var constraint = {
4934
5357
  value: null,
4935
5358
  matchMode: matchMode
@@ -5194,18 +5617,19 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5194
5617
  var createLoader = function createLoader() {
5195
5618
  if (props.loading) {
5196
5619
  var iconClassName = 'p-datatable-loading-icon';
5197
- var icon = props.loadingIcon || /*#__PURE__*/React.createElement(SpinnerIcon, {
5198
- className: iconClassName,
5199
- spin: true
5200
- });
5201
- var loadingIcon = IconUtils.getJSXIcon(icon, {
5620
+ var loadingIconProps = mergeProps({
5202
5621
  className: iconClassName
5203
- }, {
5622
+ }, ptCallbacks.ptm('loadingIcon'));
5623
+ var icon = props.loadingIcon || /*#__PURE__*/React.createElement(SpinnerIcon, _extends({}, loadingIconProps, {
5624
+ spin: true
5625
+ }));
5626
+ var loadingIcon = IconUtils.getJSXIcon(icon, _objectSpread({}, loadingIconProps), {
5204
5627
  props: props
5205
5628
  });
5206
- return /*#__PURE__*/React.createElement("div", {
5207
- className: "p-datatable-loading-overlay p-component-overlay"
5208
- }, loadingIcon);
5629
+ var loadingOverlayProps = mergeProps({
5630
+ className: 'p-datatable-loading-overlay p-component-overlay'
5631
+ }, ptCallbacks.ptm('loadingOverlay'));
5632
+ return /*#__PURE__*/React.createElement("div", loadingOverlayProps, loadingIcon);
5209
5633
  }
5210
5634
  return null;
5211
5635
  };
@@ -5214,9 +5638,10 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5214
5638
  var _content = ObjectUtils.getJSXElement(props.header, {
5215
5639
  props: props
5216
5640
  });
5217
- return /*#__PURE__*/React.createElement("div", {
5218
- className: "p-datatable-header"
5219
- }, _content);
5641
+ var headerProps = mergeProps({
5642
+ className: 'p-datatable-header'
5643
+ }, ptCallbacks.ptm('header'));
5644
+ return /*#__PURE__*/React.createElement("div", headerProps, _content);
5220
5645
  }
5221
5646
  return null;
5222
5647
  };
@@ -5269,7 +5694,9 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5269
5694
  onColumnDragLeave: onColumnHeaderDragLeave,
5270
5695
  onColumnDrop: onColumnHeaderDrop,
5271
5696
  rowGroupMode: props.rowGroupMode,
5272
- reorderableColumns: props.reorderableColumns
5697
+ reorderableColumns: props.reorderableColumns,
5698
+ ptCallbacks: ptCallbacks,
5699
+ metaData: metaData
5273
5700
  });
5274
5701
  };
5275
5702
  var createTableBody = function createTableBody(options, selectionModeInColumn, empty, isVirtualScrollerDisabled) {
@@ -5354,7 +5781,9 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5354
5781
  tableProps: props,
5355
5782
  tableSelector: attributeSelector.current,
5356
5783
  value: props.frozenValue,
5357
- virtualScrollerOptions: options
5784
+ virtualScrollerOptions: options,
5785
+ ptCallbacks: ptCallbacks,
5786
+ metaData: metaData
5358
5787
  });
5359
5788
  var body = /*#__PURE__*/React.createElement(TableBody, {
5360
5789
  ref: bodyRef,
@@ -5429,13 +5858,17 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5429
5858
  rowClassName: props.rowClassName,
5430
5859
  virtualScrollerContentRef: contentRef,
5431
5860
  virtualScrollerOptions: options,
5432
- isVirtualScrollerDisabled: isVirtualScrollerDisabled
5861
+ isVirtualScrollerDisabled: isVirtualScrollerDisabled,
5862
+ ptCallbacks: ptCallbacks,
5863
+ metaData: metaData
5433
5864
  });
5434
5865
  var spacerBody = ObjectUtils.isNotEmpty(spacerStyle) ? /*#__PURE__*/React.createElement(TableBody, {
5435
5866
  style: {
5436
5867
  height: "calc(".concat(spacerStyle.height, " - ").concat(rows.length * itemSize, "px)")
5437
5868
  },
5438
- className: "p-datatable-virtualscroller-spacer"
5869
+ className: "p-datatable-virtualscroller-spacer",
5870
+ ptCallbacks: ptCallbacks,
5871
+ metaData: metaData
5439
5872
  }) : null;
5440
5873
  return /*#__PURE__*/React.createElement(React.Fragment, null, frozenBody, body, spacerBody);
5441
5874
  };
@@ -5444,20 +5877,24 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5444
5877
  return /*#__PURE__*/React.createElement(TableFooter, {
5445
5878
  tableProps: props,
5446
5879
  columns: columns,
5447
- footerColumnGroup: props.footerColumnGroup
5880
+ footerColumnGroup: props.footerColumnGroup,
5881
+ ptCallbacks: ptCallbacks,
5882
+ metaData: metaData
5448
5883
  });
5449
5884
  };
5450
5885
  var createContent = function createContent(processedData, columns, selectionModeInColumn, empty) {
5451
5886
  if (!columns) return;
5452
5887
  var _isVirtualScrollerDisabled = isVirtualScrollerDisabled();
5453
5888
  var virtualScrollerOptions = props.virtualScrollerOptions || {};
5454
- return /*#__PURE__*/React.createElement("div", {
5455
- ref: wrapperRef,
5456
- className: "p-datatable-wrapper",
5889
+ var wrapperProps = mergeProps({
5890
+ className: 'p-datatable-wrapper',
5457
5891
  style: {
5458
5892
  maxHeight: _isVirtualScrollerDisabled ? props.scrollHeight : null
5459
5893
  }
5460
- }, /*#__PURE__*/React.createElement(VirtualScroller, _extends({
5894
+ }, ptCallbacks.ptm('wrapper'));
5895
+ return /*#__PURE__*/React.createElement("div", _extends({
5896
+ ref: wrapperRef
5897
+ }, wrapperProps), /*#__PURE__*/React.createElement(VirtualScroller, _extends({
5461
5898
  ref: virtualScrollerRef
5462
5899
  }, virtualScrollerOptions, {
5463
5900
  items: processedData,
@@ -5470,6 +5907,7 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5470
5907
  loaderDisabled: true,
5471
5908
  inline: true,
5472
5909
  autoSize: true,
5910
+ pt: ptCallbacks.ptm('virtualScroller'),
5473
5911
  showSpacer: false,
5474
5912
  contentTemplate: function contentTemplate(options) {
5475
5913
  var ref = function ref(el) {
@@ -5484,12 +5922,13 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5484
5922
  var tableHeader = createTableHeader(options, empty, _isVirtualScrollerDisabled);
5485
5923
  var tableBody = createTableBody(options, selectionModeInColumn, empty, _isVirtualScrollerDisabled);
5486
5924
  var tableFooter = createTableFooter(options);
5487
- return /*#__PURE__*/React.createElement("table", {
5925
+ var tableProps = mergeProps({
5488
5926
  ref: ref,
5489
- style: props.tableStyle,
5490
5927
  className: tableClassName,
5491
- role: "table"
5492
- }, tableHeader, tableBody, tableFooter);
5928
+ style: props.tableStyle,
5929
+ role: 'table'
5930
+ }, ptCallbacks.ptm('table'));
5931
+ return /*#__PURE__*/React.createElement("table", tableProps, tableHeader, tableBody, tableFooter);
5493
5932
  }
5494
5933
  })));
5495
5934
  };
@@ -5498,9 +5937,10 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5498
5937
  var _content2 = ObjectUtils.getJSXElement(props.footer, {
5499
5938
  props: props
5500
5939
  });
5501
- return /*#__PURE__*/React.createElement("div", {
5502
- className: "p-datatable-footer"
5503
- }, _content2);
5940
+ var footerProps = mergeProps({
5941
+ className: 'p-datatable-footer'
5942
+ }, ptCallbacks.ptm('footer'));
5943
+ return /*#__PURE__*/React.createElement("div", footerProps, _content2);
5504
5944
  }
5505
5945
  return null;
5506
5946
  };
@@ -5519,7 +5959,8 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5519
5959
  leftContent: props.paginatorLeft,
5520
5960
  rightContent: props.paginatorRight,
5521
5961
  alwaysShow: props.alwaysShowPaginator,
5522
- dropdownAppendTo: props.paginatorDropdownAppendTo
5962
+ dropdownAppendTo: props.paginatorDropdownAppendTo,
5963
+ pt: ptCallbacks.ptm('paginator')
5523
5964
  });
5524
5965
  };
5525
5966
  var createPaginatorTop = function createPaginatorTop(totalRecords) {
@@ -5536,13 +5977,15 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5536
5977
  };
5537
5978
  var createResizeHelper = function createResizeHelper() {
5538
5979
  if (props.resizableColumns) {
5539
- return /*#__PURE__*/React.createElement("div", {
5540
- ref: resizeHelperRef,
5541
- className: "p-column-resizer-helper",
5980
+ var resizeHelperProps = mergeProps({
5981
+ className: 'p-column-resizer-helper',
5542
5982
  style: {
5543
5983
  display: 'none'
5544
5984
  }
5545
- });
5985
+ }, ptCallbacks.ptm('resizeHelper'));
5986
+ return /*#__PURE__*/React.createElement("div", _extends({
5987
+ ref: resizeHelperRef
5988
+ }, resizeHelperProps));
5546
5989
  }
5547
5990
  return null;
5548
5991
  };
@@ -5552,18 +5995,20 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5552
5995
  position: 'absolute',
5553
5996
  display: 'none'
5554
5997
  };
5555
- var reorderIndicatorUpProps = {
5998
+ var reorderIndicatorUpProps = mergeProps({
5556
5999
  className: 'p-datatable-reorder-indicator-up',
5557
6000
  style: _objectSpread({}, style)
5558
- };
5559
- var reorderIndicatorUpIcon = IconUtils.getJSXIcon(props.reorderIndicatorUpIcon || /*#__PURE__*/React.createElement(ArrowDownIcon, null), undefined, {
6001
+ }, ptCallbacks.ptm('reorderIndicatorUp'));
6002
+ var reorderIndicatorUpIconProps = mergeProps(ptCallbacks.ptm('reorderIndicatorUpIcon'));
6003
+ var reorderIndicatorUpIcon = IconUtils.getJSXIcon(props.reorderIndicatorUpIcon || /*#__PURE__*/React.createElement(ArrowDownIcon, reorderIndicatorUpIconProps), _objectSpread({}, reorderIndicatorUpIconProps), {
5560
6004
  props: props
5561
6005
  });
5562
- var reorderIndicatorDownProps = {
6006
+ var reorderIndicatorDownProps = mergeProps({
5563
6007
  className: 'p-datatable-reorder-indicator-down',
5564
6008
  style: _objectSpread({}, style)
5565
- };
5566
- var reorderIndicatorDownIcon = IconUtils.getJSXIcon(props.reorderIndicatorDownIcon || /*#__PURE__*/React.createElement(ArrowUpIcon, null), undefined, {
6009
+ }, ptCallbacks.ptm('reorderIndicatorDown'));
6010
+ var reorderIndicatorDownIconProps = mergeProps(ptCallbacks.ptm('reorderIndicatorDownIcon'));
6011
+ var reorderIndicatorDownIcon = IconUtils.getJSXIcon(props.reorderIndicatorDownIcon || /*#__PURE__*/React.createElement(ArrowUpIcon, reorderIndicatorDownIconProps), _objectSpread({}, reorderIndicatorDownIconProps), {
5567
6012
  props: props
5568
6013
  });
5569
6014
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", _extends({
@@ -5580,7 +6025,6 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5580
6025
  var empty = ObjectUtils.isEmpty(data);
5581
6026
  var selectionModeInColumn = getSelectionModeInColumn(columns);
5582
6027
  var selectable = props.selectionMode || selectionModeInColumn;
5583
- var otherProps = DataTableBase.getOtherProps(props);
5584
6028
  var className = classNames('p-datatable p-component', {
5585
6029
  'p-datatable-hoverable-rows': props.rowHover,
5586
6030
  'p-datatable-selectable': selectable && !props.cellSelection,
@@ -5606,14 +6050,15 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5606
6050
  var footer = createFooter();
5607
6051
  var resizeHelper = createResizeHelper();
5608
6052
  var reorderIndicators = createReorderIndicators();
5609
- return /*#__PURE__*/React.createElement("div", _extends({
5610
- ref: elementRef,
6053
+ var rootProps = mergeProps({
5611
6054
  id: props.id,
5612
6055
  className: className,
5613
- style: props.style
5614
- }, otherProps, {
5615
- "data-scrollselectors": ".p-datatable-wrapper"
5616
- }), loader, header, paginatorTop, content, paginatorBottom, footer, resizeHelper, reorderIndicators);
6056
+ style: props.style,
6057
+ 'data-scrollselectors': '.p-datatable-wrapper'
6058
+ }, DataTableBase.getOtherProps(props), ptCallbacks.ptm('root'));
6059
+ return /*#__PURE__*/React.createElement("div", _extends({
6060
+ ref: elementRef
6061
+ }, rootProps), loader, header, paginatorTop, content, paginatorBottom, footer, resizeHelper, reorderIndicators);
5617
6062
  });
5618
6063
  DataTable.displayName = 'DataTable';
5619
6064