primereact 10.0.2 → 10.0.4

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 (333) hide show
  1. package/README.md +1 -4
  2. package/autocomplete/autocomplete.cjs.js +4 -2
  3. package/autocomplete/autocomplete.cjs.min.js +1 -1
  4. package/autocomplete/autocomplete.esm.js +4 -2
  5. package/autocomplete/autocomplete.esm.min.js +1 -1
  6. package/autocomplete/autocomplete.js +4 -2
  7. package/autocomplete/autocomplete.min.js +1 -1
  8. package/blockui/blockui.cjs.js +3 -6
  9. package/blockui/blockui.cjs.min.js +1 -1
  10. package/blockui/blockui.esm.js +3 -6
  11. package/blockui/blockui.esm.min.js +1 -1
  12. package/blockui/blockui.js +3 -6
  13. package/blockui/blockui.min.js +1 -1
  14. package/calendar/calendar.cjs.js +11 -11
  15. package/calendar/calendar.cjs.min.js +1 -1
  16. package/calendar/calendar.esm.js +11 -11
  17. package/calendar/calendar.esm.min.js +1 -1
  18. package/calendar/calendar.js +11 -11
  19. package/calendar/calendar.min.js +1 -1
  20. package/carousel/carousel.cjs.js +3 -1
  21. package/carousel/carousel.cjs.min.js +1 -1
  22. package/carousel/carousel.esm.js +3 -1
  23. package/carousel/carousel.esm.min.js +1 -1
  24. package/carousel/carousel.js +3 -1
  25. package/carousel/carousel.min.js +1 -1
  26. package/checkbox/checkbox.d.ts +5 -5
  27. package/componentbase/componentbase.d.ts +8 -0
  28. package/contextmenu/contextmenu.cjs.js +4 -1
  29. package/contextmenu/contextmenu.cjs.min.js +1 -1
  30. package/contextmenu/contextmenu.esm.js +4 -1
  31. package/contextmenu/contextmenu.esm.min.js +1 -1
  32. package/contextmenu/contextmenu.js +4 -1
  33. package/contextmenu/contextmenu.min.js +1 -1
  34. package/core/core.js +288 -31
  35. package/core/core.min.js +8 -8
  36. package/datatable/datatable.cjs.js +92 -41
  37. package/datatable/datatable.cjs.min.js +1 -1
  38. package/datatable/datatable.d.ts +27 -0
  39. package/datatable/datatable.esm.js +92 -41
  40. package/datatable/datatable.esm.min.js +1 -1
  41. package/datatable/datatable.js +92 -41
  42. package/datatable/datatable.min.js +1 -1
  43. package/dataview/dataview.cjs.js +24 -22
  44. package/dataview/dataview.cjs.min.js +1 -1
  45. package/dataview/dataview.esm.js +24 -22
  46. package/dataview/dataview.esm.min.js +1 -1
  47. package/dataview/dataview.js +24 -22
  48. package/dataview/dataview.min.js +1 -1
  49. package/dialog/dialog.cjs.js +2 -4
  50. package/dialog/dialog.cjs.min.js +1 -1
  51. package/dialog/dialog.esm.js +2 -4
  52. package/dialog/dialog.esm.min.js +1 -1
  53. package/dialog/dialog.js +2 -4
  54. package/dialog/dialog.min.js +1 -1
  55. package/dropdown/dropdown.cjs.js +29 -17
  56. package/dropdown/dropdown.cjs.min.js +1 -1
  57. package/dropdown/dropdown.esm.js +29 -17
  58. package/dropdown/dropdown.esm.min.js +1 -1
  59. package/dropdown/dropdown.js +29 -17
  60. package/dropdown/dropdown.min.js +1 -1
  61. package/editor/editor.cjs.js +1 -1
  62. package/editor/editor.cjs.min.js +1 -1
  63. package/editor/editor.esm.js +1 -1
  64. package/editor/editor.esm.min.js +1 -1
  65. package/editor/editor.js +1 -1
  66. package/editor/editor.min.js +1 -1
  67. package/fieldset/fieldset.cjs.js +2 -2
  68. package/fieldset/fieldset.cjs.min.js +1 -1
  69. package/fieldset/fieldset.esm.js +2 -2
  70. package/fieldset/fieldset.esm.min.js +1 -1
  71. package/fieldset/fieldset.js +3 -3
  72. package/fieldset/fieldset.min.js +1 -1
  73. package/galleria/galleria.cjs.js +3 -5
  74. package/galleria/galleria.cjs.min.js +1 -1
  75. package/galleria/galleria.esm.js +3 -5
  76. package/galleria/galleria.esm.min.js +1 -1
  77. package/galleria/galleria.js +3 -5
  78. package/galleria/galleria.min.js +1 -1
  79. package/hooks/hooks.cjs.js +2 -1
  80. package/hooks/hooks.cjs.min.js +1 -1
  81. package/hooks/hooks.d.ts +1 -1
  82. package/hooks/hooks.esm.js +2 -1
  83. package/hooks/hooks.esm.min.js +1 -1
  84. package/hooks/hooks.js +2 -1
  85. package/hooks/hooks.min.js +1 -1
  86. package/icons/arrowdown/index.cjs.js +7 -0
  87. package/icons/arrowdown/index.esm.js +7 -0
  88. package/icons/arrowdown/index.js +7 -0
  89. package/icons/arrowup/index.cjs.js +7 -0
  90. package/icons/arrowup/index.esm.js +7 -0
  91. package/icons/arrowup/index.js +7 -0
  92. package/icons/ban/index.cjs.js +7 -0
  93. package/icons/ban/index.esm.js +7 -0
  94. package/icons/ban/index.js +7 -0
  95. package/icons/download/index.cjs.js +7 -0
  96. package/icons/download/index.esm.js +7 -0
  97. package/icons/download/index.js +7 -0
  98. package/icons/exclamationtriangle/index.cjs.js +7 -0
  99. package/icons/exclamationtriangle/index.esm.js +7 -0
  100. package/icons/exclamationtriangle/index.js +7 -0
  101. package/icons/eyeslash/index.cjs.js +7 -0
  102. package/icons/eyeslash/index.esm.js +7 -0
  103. package/icons/eyeslash/index.js +7 -0
  104. package/icons/filter/index.cjs.js +7 -0
  105. package/icons/filter/index.esm.js +7 -0
  106. package/icons/filter/index.js +7 -0
  107. package/icons/filterslash/index.cjs.js +7 -0
  108. package/icons/filterslash/index.esm.js +7 -0
  109. package/icons/filterslash/index.js +7 -0
  110. package/icons/infocircle/index.cjs.js +7 -0
  111. package/icons/infocircle/index.esm.js +7 -0
  112. package/icons/infocircle/index.js +7 -0
  113. package/icons/pencil/index.cjs.js +7 -0
  114. package/icons/pencil/index.esm.js +7 -0
  115. package/icons/pencil/index.js +7 -0
  116. package/icons/plus/index.cjs.js +7 -0
  117. package/icons/plus/index.esm.js +7 -0
  118. package/icons/plus/index.js +7 -0
  119. package/icons/refresh/index.cjs.js +7 -0
  120. package/icons/refresh/index.esm.js +7 -0
  121. package/icons/refresh/index.js +7 -0
  122. package/icons/search/index.cjs.js +7 -0
  123. package/icons/search/index.esm.js +7 -0
  124. package/icons/search/index.js +7 -0
  125. package/icons/searchminus/index.cjs.js +7 -0
  126. package/icons/searchminus/index.esm.js +7 -0
  127. package/icons/searchminus/index.js +7 -0
  128. package/icons/searchplus/index.cjs.js +7 -0
  129. package/icons/searchplus/index.esm.js +7 -0
  130. package/icons/searchplus/index.js +7 -0
  131. package/icons/sortalt/index.cjs.js +7 -0
  132. package/icons/sortalt/index.esm.js +7 -0
  133. package/icons/sortalt/index.js +7 -0
  134. package/icons/sortamountdown/index.cjs.js +7 -0
  135. package/icons/sortamountdown/index.esm.js +7 -0
  136. package/icons/sortamountdown/index.js +7 -0
  137. package/icons/sortamountupalt/index.cjs.js +7 -0
  138. package/icons/sortamountupalt/index.esm.js +7 -0
  139. package/icons/sortamountupalt/index.js +7 -0
  140. package/icons/spinner/index.cjs.js +7 -0
  141. package/icons/spinner/index.esm.js +7 -0
  142. package/icons/spinner/index.js +7 -0
  143. package/icons/star/index.cjs.js +7 -0
  144. package/icons/star/index.esm.js +7 -0
  145. package/icons/star/index.js +7 -0
  146. package/icons/starfill/index.cjs.js +7 -0
  147. package/icons/starfill/index.esm.js +7 -0
  148. package/icons/starfill/index.js +7 -0
  149. package/icons/thlarge/index.cjs.js +7 -0
  150. package/icons/thlarge/index.esm.js +7 -0
  151. package/icons/thlarge/index.js +7 -0
  152. package/icons/timescircle/index.cjs.js +7 -0
  153. package/icons/timescircle/index.esm.js +7 -0
  154. package/icons/timescircle/index.js +7 -0
  155. package/icons/trash/index.cjs.js +7 -0
  156. package/icons/trash/index.esm.js +7 -0
  157. package/icons/trash/index.js +7 -0
  158. package/icons/undo/index.cjs.js +7 -0
  159. package/icons/undo/index.esm.js +7 -0
  160. package/icons/undo/index.js +7 -0
  161. package/icons/upload/index.cjs.js +7 -0
  162. package/icons/upload/index.esm.js +7 -0
  163. package/icons/upload/index.js +7 -0
  164. package/icons/windowmaximize/index.cjs.js +7 -0
  165. package/icons/windowmaximize/index.esm.js +7 -0
  166. package/icons/windowmaximize/index.js +7 -0
  167. package/icons/windowminimize/index.cjs.js +7 -0
  168. package/icons/windowminimize/index.esm.js +7 -0
  169. package/icons/windowminimize/index.js +7 -0
  170. package/image/image.cjs.js +111 -106
  171. package/image/image.cjs.min.js +1 -1
  172. package/image/image.esm.js +111 -106
  173. package/image/image.esm.min.js +1 -1
  174. package/image/image.js +112 -107
  175. package/image/image.min.js +1 -1
  176. package/inputnumber/inputnumber.cjs.js +7 -4
  177. package/inputnumber/inputnumber.cjs.min.js +1 -1
  178. package/inputnumber/inputnumber.esm.js +7 -4
  179. package/inputnumber/inputnumber.esm.min.js +1 -1
  180. package/inputnumber/inputnumber.js +7 -4
  181. package/inputnumber/inputnumber.min.js +1 -1
  182. package/menu/menu.cjs.js +105 -1
  183. package/menu/menu.cjs.min.js +1 -1
  184. package/menu/menu.d.ts +5 -0
  185. package/menu/menu.esm.js +108 -4
  186. package/menu/menu.esm.min.js +1 -1
  187. package/menu/menu.js +105 -1
  188. package/menu/menu.min.js +1 -1
  189. package/message/message.cjs.js +1 -1
  190. package/message/message.cjs.min.js +1 -1
  191. package/message/message.esm.js +1 -1
  192. package/message/message.esm.min.js +1 -1
  193. package/message/message.js +1 -1
  194. package/message/message.min.js +1 -1
  195. package/messages/messages.cjs.js +4 -2
  196. package/messages/messages.cjs.min.js +1 -1
  197. package/messages/messages.esm.js +5 -3
  198. package/messages/messages.esm.min.js +1 -1
  199. package/messages/messages.js +4 -2
  200. package/messages/messages.min.js +1 -1
  201. package/multiselect/multiselect.cjs.js +26 -12
  202. package/multiselect/multiselect.cjs.min.js +1 -1
  203. package/multiselect/multiselect.d.ts +4 -0
  204. package/multiselect/multiselect.esm.js +26 -12
  205. package/multiselect/multiselect.esm.min.js +1 -1
  206. package/multiselect/multiselect.js +26 -12
  207. package/multiselect/multiselect.min.js +1 -1
  208. package/orderlist/orderlist.cjs.js +32 -34
  209. package/orderlist/orderlist.cjs.min.js +1 -1
  210. package/orderlist/orderlist.esm.js +32 -34
  211. package/orderlist/orderlist.esm.min.js +1 -1
  212. package/orderlist/orderlist.js +32 -34
  213. package/orderlist/orderlist.min.js +1 -1
  214. package/package.json +1 -1
  215. package/panel/panel.cjs.js +2 -2
  216. package/panel/panel.cjs.min.js +1 -1
  217. package/panel/panel.esm.js +2 -2
  218. package/panel/panel.esm.min.js +1 -1
  219. package/panel/panel.js +3 -3
  220. package/panel/panel.min.js +1 -1
  221. package/passthrough/tailwind/index.cjs.js +436 -373
  222. package/passthrough/tailwind/index.cjs.min.js +1 -1
  223. package/passthrough/tailwind/index.esm.js +436 -373
  224. package/passthrough/tailwind/index.esm.min.js +1 -1
  225. package/passthrough/tailwind/index.js +436 -373
  226. package/passthrough/tailwind/index.min.js +1 -1
  227. package/primereact.all.cjs.js +330 -191
  228. package/primereact.all.cjs.min.js +1 -1
  229. package/primereact.all.esm.js +330 -191
  230. package/primereact.all.esm.min.js +1 -1
  231. package/primereact.all.js +330 -191
  232. package/primereact.all.min.js +1 -1
  233. package/progressbar/progressbar.cjs.js +1 -1
  234. package/progressbar/progressbar.cjs.min.js +1 -1
  235. package/progressbar/progressbar.esm.js +1 -1
  236. package/progressbar/progressbar.esm.min.js +1 -1
  237. package/progressbar/progressbar.js +1 -1
  238. package/progressbar/progressbar.min.js +1 -1
  239. package/radiobutton/radiobutton.d.ts +3 -3
  240. package/resources/themes/arya-blue/theme.css +397 -518
  241. package/resources/themes/arya-green/theme.css +397 -518
  242. package/resources/themes/arya-orange/theme.css +397 -518
  243. package/resources/themes/arya-purple/theme.css +397 -518
  244. package/resources/themes/bootstrap4-dark-blue/theme.css +398 -518
  245. package/resources/themes/bootstrap4-dark-purple/theme.css +398 -518
  246. package/resources/themes/bootstrap4-light-blue/theme.css +398 -518
  247. package/resources/themes/bootstrap4-light-purple/theme.css +398 -518
  248. package/resources/themes/fluent-light/theme.css +424 -529
  249. package/resources/themes/lara-dark-blue/theme.css +402 -518
  250. package/resources/themes/lara-dark-indigo/theme.css +402 -518
  251. package/resources/themes/lara-dark-purple/theme.css +402 -518
  252. package/resources/themes/lara-dark-teal/theme.css +402 -518
  253. package/resources/themes/lara-light-blue/theme.css +571 -687
  254. package/resources/themes/lara-light-indigo/theme.css +409 -525
  255. package/resources/themes/lara-light-purple/theme.css +409 -525
  256. package/resources/themes/lara-light-teal/theme.css +409 -525
  257. package/resources/themes/luna-amber/theme.css +411 -531
  258. package/resources/themes/luna-blue/theme.css +411 -531
  259. package/resources/themes/luna-green/theme.css +411 -531
  260. package/resources/themes/luna-pink/theme.css +411 -531
  261. package/resources/themes/md-dark-deeppurple/theme.css +669 -739
  262. package/resources/themes/md-dark-indigo/theme.css +669 -739
  263. package/resources/themes/md-light-deeppurple/theme.css +574 -644
  264. package/resources/themes/md-light-indigo/theme.css +574 -644
  265. package/resources/themes/mdc-dark-deeppurple/theme.css +669 -739
  266. package/resources/themes/mdc-dark-indigo/theme.css +669 -739
  267. package/resources/themes/mdc-light-deeppurple/theme.css +574 -644
  268. package/resources/themes/mdc-light-indigo/theme.css +574 -644
  269. package/resources/themes/mira/theme.css +435 -525
  270. package/resources/themes/nano/theme.css +395 -518
  271. package/resources/themes/nova/theme.css +399 -518
  272. package/resources/themes/nova-accent/theme.css +396 -518
  273. package/resources/themes/nova-alt/theme.css +399 -518
  274. package/resources/themes/rhea/theme.css +396 -518
  275. package/resources/themes/saga-blue/theme.css +397 -518
  276. package/resources/themes/saga-green/theme.css +397 -518
  277. package/resources/themes/saga-orange/theme.css +397 -518
  278. package/resources/themes/saga-purple/theme.css +397 -518
  279. package/resources/themes/soho-dark/theme.css +428 -546
  280. package/resources/themes/soho-light/theme.css +407 -523
  281. package/resources/themes/tailwind-light/theme.css +432 -547
  282. package/resources/themes/vela-blue/theme.css +397 -518
  283. package/resources/themes/vela-green/theme.css +397 -518
  284. package/resources/themes/vela-orange/theme.css +397 -518
  285. package/resources/themes/vela-purple/theme.css +397 -518
  286. package/resources/themes/viva-dark/theme.css +421 -523
  287. package/resources/themes/viva-light/theme.css +421 -523
  288. package/scrollpanel/scrollpanel.cjs.js +33 -17
  289. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  290. package/scrollpanel/scrollpanel.esm.js +19 -3
  291. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  292. package/scrollpanel/scrollpanel.js +226 -210
  293. package/scrollpanel/scrollpanel.min.js +1 -1
  294. package/selectbutton/selectbutton.cjs.js +3 -2
  295. package/selectbutton/selectbutton.cjs.min.js +1 -1
  296. package/selectbutton/selectbutton.d.ts +6 -0
  297. package/selectbutton/selectbutton.esm.js +3 -2
  298. package/selectbutton/selectbutton.esm.min.js +1 -1
  299. package/selectbutton/selectbutton.js +4 -3
  300. package/selectbutton/selectbutton.min.js +1 -1
  301. package/sidebar/sidebar.cjs.js +87 -89
  302. package/sidebar/sidebar.cjs.min.js +1 -1
  303. package/sidebar/sidebar.esm.js +87 -89
  304. package/sidebar/sidebar.esm.min.js +1 -1
  305. package/sidebar/sidebar.js +88 -90
  306. package/sidebar/sidebar.min.js +1 -1
  307. package/slider/slider.cjs.js +3 -3
  308. package/slider/slider.cjs.min.js +1 -1
  309. package/slider/slider.esm.js +3 -3
  310. package/slider/slider.esm.min.js +1 -1
  311. package/slider/slider.js +3 -3
  312. package/slider/slider.min.js +1 -1
  313. package/toast/toast.cjs.js +7 -5
  314. package/toast/toast.cjs.min.js +1 -1
  315. package/toast/toast.esm.js +7 -5
  316. package/toast/toast.esm.min.js +1 -1
  317. package/toast/toast.js +8 -6
  318. package/toast/toast.min.js +1 -1
  319. package/tree/tree.cjs.js +24 -2
  320. package/tree/tree.cjs.min.js +1 -1
  321. package/tree/tree.esm.js +24 -2
  322. package/tree/tree.esm.min.js +1 -1
  323. package/tree/tree.js +24 -2
  324. package/tree/tree.min.js +1 -1
  325. package/treeselect/treeselect.d.ts +54 -4
  326. package/utils/utils.cjs.js +30 -0
  327. package/utils/utils.cjs.min.js +1 -1
  328. package/utils/utils.d.ts +3 -0
  329. package/utils/utils.esm.js +30 -0
  330. package/utils/utils.esm.min.js +1 -1
  331. package/utils/utils.js +30 -0
  332. package/utils/utils.min.js +1 -1
  333. package/web-types.json +29 -2
@@ -433,6 +433,23 @@ interface DataTableRowMouseEvent extends Omit<DataTableRowEvent, 'originalEvent'
433
433
  index: number;
434
434
  }
435
435
 
436
+ /**
437
+ * Custom row pointer event.
438
+ * @see {@link DataTableProps.onRowPointerDown}, {@link DataTableProps.onRowPointerUp}
439
+ * @extends DataTableRowMouseEvent
440
+ * @event
441
+ */
442
+ interface DataTableRowPointerEvent extends Omit<DataTableRowEvent, 'originalEvent'> {
443
+ /**
444
+ * Browser event.
445
+ */
446
+ originalEvent: React.PointerEvent<HTMLElement>;
447
+ /**
448
+ * Clicked row data index
449
+ */
450
+ index: number;
451
+ }
452
+
436
453
  /**
437
454
  * Custom row click event.
438
455
  * @see {@link DataTableProps.onRowClick}, {@link DataTableProps.onRowDoubleClick}
@@ -1498,6 +1515,16 @@ interface DataTableBaseProps<TValue extends DataTableValueArray> extends Omit<Re
1498
1515
  * @param {DataTableRowClickEvent} event - Custom click event.
1499
1516
  */
1500
1517
  onRowDoubleClick?(event: DataTableRowClickEvent): void;
1518
+ /**
1519
+ * Callback to invoke when a row pointerDown event occurs.
1520
+ * @param {DataTableRowPointerEvent} event - Custom click event.
1521
+ */
1522
+ onRowPointerDown?(event: DataTableRowPointerEvent): void;
1523
+ /**
1524
+ * Callback to invoke when a row pointerUp event occurs.
1525
+ * @param {DataTableRowPointerEvent} event - Custom click event.
1526
+ */
1527
+ onRowPointerUp?(event: DataTableRowPointerEvent): void;
1501
1528
  /**
1502
1529
  * Callback to invoke when the cancel icon is clicked on row editing mode.
1503
1530
  * @param {DataTableRowEditEvent} event - Custom row edit event.
@@ -252,7 +252,7 @@ var ColumnBase = ComponentBase.extend({
252
252
 
253
253
  function ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
254
254
  function _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
255
- var styles = "\n@layer primereact {\n .p-datatable {\n position: relative;\n }\n \n .p-datatable > .p-datatable-wrapper {\n overflow: auto;\n }\n \n .p-datatable-table {\n border-spacing: 0px;\n width: 100%;\n }\n \n .p-datatable .p-sortable-disabled {\n cursor: auto;\n }\n \n .p-datatable .p-sortable-column {\n cursor: pointer;\n user-select: none;\n }\n \n .p-datatable .p-sortable-column .p-column-title,\n .p-datatable .p-sortable-column .p-sortable-column-icon,\n .p-datatable .p-sortable-column .p-sortable-column-badge {\n vertical-align: middle;\n }\n \n .p-datatable .p-sortable-column .p-sortable-column-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-datatable-selectable .p-selectable-row,\n .p-datatable-selectable-cell .p-selectable-cell {\n cursor: pointer;\n }\n \n .p-datatable-drag-selection-helper {\n position: absolute;\n z-index: 99999999;\n }\n \n /* Scrollable */\n .p-datatable-scrollable > .p-datatable-wrapper {\n position: relative;\n }\n \n .p-datatable-scrollable-table > .p-datatable-thead {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n \n .p-datatable-scrollable-table > .p-datatable-frozen-tbody {\n position: sticky;\n z-index: 1;\n }\n \n .p-datatable-scrollable-table > .p-datatable-tfoot {\n position: sticky;\n bottom: 0;\n z-index: 1;\n }\n \n .p-datatable-scrollable .p-frozen-column {\n position: sticky;\n background: inherit;\n }\n \n .p-datatable-scrollable th.p-frozen-column {\n z-index: 1;\n }\n \n .p-datatable-flex-scrollable {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n \n .p-datatable-flex-scrollable > .p-datatable-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n }\n \n .p-datatable-scrollable-table > .p-datatable-tbody > .p-rowgroup-header {\n position: sticky;\n z-index: 1;\n }\n \n /* Resizable */\n .p-datatable-resizable-table > .p-datatable-thead > tr > th,\n .p-datatable-resizable-table > .p-datatable-tfoot > tr > td,\n .p-datatable-resizable-table > .p-datatable-tbody > tr > td {\n overflow: hidden;\n white-space: nowrap;\n }\n \n .p-datatable-resizable-table > .p-datatable-thead > tr > th.p-resizable-column:not(.p-frozen-column) {\n background-clip: padding-box;\n position: relative;\n }\n \n .p-datatable-resizable-table-fit > .p-datatable-thead > tr > th.p-resizable-column:last-child .p-column-resizer {\n display: none;\n }\n \n .p-datatable .p-column-resizer {\n display: block;\n position: absolute !important;\n top: 0;\n right: 0;\n margin: 0;\n width: 0.5rem;\n height: 100%;\n padding: 0px;\n cursor: col-resize;\n border: 1px solid transparent;\n }\n \n .p-datatable .p-column-header-content {\n display: flex;\n align-items: center;\n }\n \n .p-datatable .p-column-resizer-helper {\n width: 1px;\n position: absolute;\n z-index: 10;\n display: none;\n }\n \n .p-datatable .p-row-editor-init,\n .p-datatable .p-row-editor-save,\n .p-datatable .p-row-editor-cancel {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n \n /* Expand */\n .p-datatable .p-row-toggler {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n \n /* Reorder */\n .p-datatable-reorder-indicator-up,\n .p-datatable-reorder-indicator-down {\n position: absolute;\n display: none;\n }\n \n .p-reorderable-column,\n .p-datatable-reorderablerow-handle {\n cursor: move;\n }\n \n /* Loader */\n .p-datatable .p-datatable-loading-overlay {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n }\n \n /* Filter */\n .p-column-filter-row {\n display: flex;\n align-items: center;\n width: 100%;\n }\n \n .p-column-filter-menu {\n display: inline-flex;\n margin-left: auto;\n }\n \n .p-column-filter-row .p-column-filter-element {\n flex: 1 1 auto;\n width: 1%;\n }\n \n .p-column-filter-menu-button,\n .p-column-filter-clear-button {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-column-filter-overlay {\n position: absolute;\n top: 0;\n left: 0;\n }\n \n .p-column-filter-row-items {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-column-filter-row-item {\n cursor: pointer;\n }\n \n .p-column-filter-add-button,\n .p-column-filter-remove-button {\n justify-content: center;\n }\n \n .p-column-filter-add-button .p-button-label,\n .p-column-filter-remove-button .p-button-label {\n flex-grow: 0;\n }\n \n .p-column-filter-buttonbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .p-column-filter-buttonbar .p-button:not(.p-button-icon-only) {\n width: auto;\n }\n \n /* Responsive */\n .p-datatable .p-datatable-tbody > tr > td > .p-column-title {\n display: none;\n }\n \n /* VirtualScroller */\n .p-datatable-virtualscroller-spacer {\n display: flex;\n }\n \n .p-datatable .p-virtualscroller .p-virtualscroller-loading {\n transform: none !important;\n min-height: 0;\n position: sticky;\n top: 0;\n left: 0;\n }\n \n /* Alignment */\n .p-datatable .p-datatable-thead > tr > th.p-align-left > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-left,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-left {\n text-align: left;\n justify-content: flex-start;\n }\n \n .p-datatable .p-datatable-thead > tr > th.p-align-right > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-right,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-right {\n text-align: right;\n justify-content: flex-end;\n }\n \n .p-datatable .p-datatable-thead > tr > th.p-align-center > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-center,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-center {\n text-align: center;\n justify-content: center;\n }\n}\n";
255
+ var styles = "\n@layer primereact {\n .p-datatable {\n position: relative;\n }\n\n .p-datatable > .p-datatable-wrapper {\n overflow: auto;\n }\n\n .p-datatable-table {\n border-spacing: 0px;\n width: 100%;\n }\n\n .p-datatable .p-sortable-disabled {\n cursor: auto;\n }\n\n .p-datatable .p-sortable-column {\n cursor: pointer;\n user-select: none;\n }\n\n .p-datatable .p-sortable-column .p-column-title,\n .p-datatable .p-sortable-column .p-sortable-column-icon,\n .p-datatable .p-sortable-column .p-sortable-column-badge {\n vertical-align: middle;\n }\n\n .p-datatable .p-sortable-column .p-sortable-column-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-datatable-selectable .p-selectable-row,\n .p-datatable-selectable-cell .p-selectable-cell {\n cursor: pointer;\n }\n\n .p-datatable-drag-selection-helper {\n position: absolute;\n z-index: 99999999;\n }\n\n /* Scrollable */\n .p-datatable-scrollable > .p-datatable-wrapper {\n position: relative;\n }\n\n .p-datatable-scrollable-table > .p-datatable-thead {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n\n .p-datatable-scrollable-table > .p-datatable-frozen-tbody {\n position: sticky;\n z-index: 1;\n }\n\n .p-datatable-scrollable-table > .p-datatable-tfoot {\n position: sticky;\n bottom: 0;\n z-index: 1;\n }\n\n .p-datatable-scrollable .p-frozen-column {\n position: sticky;\n background: inherit;\n }\n\n .p-datatable-scrollable th.p-frozen-column {\n z-index: 1;\n }\n\n .p-datatable-flex-scrollable {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .p-datatable-flex-scrollable > .p-datatable-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n }\n\n .p-datatable-scrollable-table > .p-datatable-tbody > .p-rowgroup-header {\n position: sticky;\n z-index: 1;\n }\n\n /* Resizable */\n .p-datatable-resizable-table > .p-datatable-thead > tr > th,\n .p-datatable-resizable-table > .p-datatable-tfoot > tr > td,\n .p-datatable-resizable-table > .p-datatable-tbody > tr > td {\n overflow: hidden;\n white-space: nowrap;\n }\n\n .p-datatable-resizable-table > .p-datatable-thead > tr > th.p-resizable-column:not(.p-frozen-column) {\n background-clip: padding-box;\n position: relative;\n }\n\n .p-datatable-resizable-table-fit > .p-datatable-thead > tr > th.p-resizable-column:last-child .p-column-resizer {\n display: none;\n }\n\n .p-datatable .p-column-resizer {\n display: block;\n position: absolute !important;\n top: 0;\n right: 0;\n margin: 0;\n width: 0.5rem;\n height: 100%;\n padding: 0px;\n cursor: col-resize;\n border: 1px solid transparent;\n }\n\n .p-datatable .p-column-header-content {\n display: flex;\n align-items: center;\n }\n\n .p-datatable .p-column-resizer-helper {\n width: 1px;\n position: absolute;\n z-index: 10;\n display: none;\n }\n\n .p-datatable .p-row-editor-init,\n .p-datatable .p-row-editor-save,\n .p-datatable .p-row-editor-cancel {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n\n /* Expand */\n .p-datatable .p-row-toggler {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n\n /* Reorder */\n .p-datatable-reorder-indicator-up,\n .p-datatable-reorder-indicator-down {\n position: absolute;\n display: none;\n }\n\n .p-reorderable-column,\n .p-datatable-reorderablerow-handle {\n cursor: move;\n }\n\n /* Loader */\n .p-datatable .p-datatable-loading-overlay {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n }\n\n /* Filter */\n .p-column-filter-row {\n display: flex;\n align-items: center;\n width: 100%;\n }\n\n .p-column-filter-menu {\n display: inline-flex;\n margin-left: auto;\n }\n\n .p-column-filter-row .p-column-filter-element {\n flex: 1 1 auto;\n width: 1%;\n }\n\n .p-column-filter-menu-button,\n .p-column-filter-clear-button {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n .p-column-filter-overlay {\n position: absolute;\n top: 0;\n left: 0;\n }\n\n .p-column-filter-row-items {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-column-filter-row-item {\n cursor: pointer;\n }\n\n .p-column-filter-add-button,\n .p-column-filter-remove-button {\n justify-content: center;\n }\n\n .p-column-filter-add-button .p-button-label,\n .p-column-filter-remove-button .p-button-label {\n flex-grow: 0;\n }\n\n .p-column-filter-buttonbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n\n .p-column-filter-buttonbar .p-button:not(.p-button-icon-only) {\n width: auto;\n }\n\n /* Responsive */\n .p-datatable .p-datatable-tbody > tr > td > .p-column-title {\n display: none;\n }\n\n /* VirtualScroller */\n .p-datatable-virtualscroller-spacer {\n display: flex;\n }\n\n .p-datatable .p-virtualscroller .p-virtualscroller-loading {\n transform: none !important;\n min-height: 0;\n position: sticky;\n top: 0;\n left: 0;\n }\n\n /* Alignment */\n .p-datatable .p-datatable-thead > tr > th.p-align-left > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-left,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-left {\n text-align: left;\n justify-content: flex-start;\n }\n\n .p-datatable .p-datatable-thead > tr > th.p-align-right > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-right,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-right {\n text-align: right;\n justify-content: flex-end;\n }\n\n .p-datatable .p-datatable-thead > tr > th.p-align-center > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-center,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-center {\n text-align: center;\n justify-content: center;\n }\n}\n";
256
256
  var classes = {
257
257
  root: function root(_ref) {
258
258
  var props = _ref.props,
@@ -566,6 +566,8 @@ var DataTableBase = ComponentBase.extend({
566
566
  onRowClick: null,
567
567
  onRowCollapse: null,
568
568
  onRowDoubleClick: null,
569
+ onRowPointerDown: null,
570
+ onRowPointerUp: null,
569
571
  onRowEditCancel: null,
570
572
  onRowEditChange: null,
571
573
  onRowEditComplete: null,
@@ -720,7 +722,7 @@ var RowCheckbox = /*#__PURE__*/React.memo(function (props) {
720
722
  if (!props.disabled) {
721
723
  setFocusedState(true);
722
724
  props.onChange(event);
723
- event.stopPropagation();
725
+ event.preventDefault();
724
726
  }
725
727
  };
726
728
  var _onKeyDown = function onKeyDown(event) {
@@ -1274,6 +1276,7 @@ var BodyCell = /*#__PURE__*/React.memo(function (props) {
1274
1276
  data: props.rowData
1275
1277
  });
1276
1278
  event.preventDefault();
1279
+ event.stopPropagation();
1277
1280
  };
1278
1281
  var onRowEditInit = function onRowEditInit(event) {
1279
1282
  props.onRowEditInit({
@@ -1737,6 +1740,20 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
1737
1740
  index: props.rowIndex
1738
1741
  });
1739
1742
  };
1743
+ var _onPointerDown = function onPointerDown(event) {
1744
+ props.onRowPointerDown({
1745
+ originalEvent: event,
1746
+ data: props.rowData,
1747
+ index: props.rowIndex
1748
+ });
1749
+ };
1750
+ var _onPointerUp = function onPointerUp(event) {
1751
+ props.onRowPointerUp({
1752
+ originalEvent: event,
1753
+ data: props.rowData,
1754
+ index: props.rowIndex
1755
+ });
1756
+ };
1740
1757
  var onRightClick = function onRightClick(event) {
1741
1758
  props.onRowRightClick({
1742
1759
  originalEvent: event,
@@ -2026,6 +2043,12 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
2026
2043
  onDoubleClick: function onDoubleClick(e) {
2027
2044
  return _onDoubleClick(e);
2028
2045
  },
2046
+ onPointerDown: function onPointerDown(e) {
2047
+ return _onPointerDown(e);
2048
+ },
2049
+ onPointerUp: function onPointerUp(e) {
2050
+ return _onPointerUp(e);
2051
+ },
2029
2052
  onContextMenu: function onContextMenu(e) {
2030
2053
  return onRightClick(e);
2031
2054
  },
@@ -2569,7 +2592,7 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2569
2592
  }
2570
2593
  };
2571
2594
  var onRowClick = function onRowClick(event) {
2572
- if (allowCellSelection() || !allowSelection(event)) {
2595
+ if (allowCellSelection() || !allowSelection(event) || event.defaultPrevented) {
2573
2596
  return;
2574
2597
  }
2575
2598
  props.onRowClick && props.onRowClick(event);
@@ -2608,11 +2631,29 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2608
2631
  props.onRowDoubleClick(e);
2609
2632
  }
2610
2633
  };
2634
+ var onRowPointerDown = function onRowPointerDown(e) {
2635
+ var event = e.originalEvent;
2636
+ if (DomHandler.isClickable(event.target)) {
2637
+ return;
2638
+ }
2639
+ if (props.onRowPointerDown) {
2640
+ props.onRowPointerDown(e);
2641
+ }
2642
+ };
2643
+ var onRowPointerUp = function onRowPointerUp(e) {
2644
+ var event = e.originalEvent;
2645
+ if (DomHandler.isClickable(event.target)) {
2646
+ return;
2647
+ }
2648
+ if (props.onRowPointerUp) {
2649
+ props.onRowPointerUp(e);
2650
+ }
2651
+ };
2611
2652
  var onRowRightClick = function onRowRightClick(event) {
2612
- var isMultiSelection = isCheckboxSelectionModeInColumn && ObjectUtils.isEmpty(props.selection);
2613
- var data = isMultiSelection ? event.data : props.selection;
2614
2653
  if (props.onContextMenu || props.onContextMenuSelectionChange) {
2615
- if (!ObjectUtils.isEmpty(props.selection)) DomHandler.clearSelection();
2654
+ var hasSelection = ObjectUtils.isNotEmpty(props.selection);
2655
+ var data = hasSelection ? props.selection : event.data;
2656
+ if (hasSelection) DomHandler.clearSelection();
2616
2657
  if (props.onContextMenuSelectionChange) {
2617
2658
  props.onContextMenuSelectionChange({
2618
2659
  originalEvent: event.originalEvent,
@@ -2997,6 +3038,8 @@ var TableBody = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
2997
3038
  onRadioChange: onRadioChange,
2998
3039
  onRowClick: onRowClick,
2999
3040
  onRowDoubleClick: onRowDoubleClick,
3041
+ onRowPointerDown: onRowPointerDown,
3042
+ onRowPointerUp: onRowPointerUp,
3000
3043
  onRowDragEnd: onRowDragEnd,
3001
3044
  onRowDragLeave: onRowDragLeave,
3002
3045
  onRowDragOver: onRowDragOver,
@@ -3794,42 +3837,45 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
3794
3837
  return props.display === 'menu' ? createFilterElement(fieldConstraint, index) : null;
3795
3838
  };
3796
3839
  var createMenuButton = function createMenuButton() {
3797
- if (showMenuButton()) {
3798
- var filterIconProps = mergeProps({
3799
- 'aria-hidden': true
3800
- }, getColumnPTOptions('filterIcon'));
3801
- var icon = props.filterIcon || /*#__PURE__*/React.createElement(FilterIcon, filterIconProps);
3802
- var columnFilterIcon = IconUtils.getJSXIcon(icon, _objectSpread$4({}, filterIconProps), {
3803
- props: props
3804
- });
3805
- var label = filterLabel();
3806
- var filterMenuButtonProps = mergeProps({
3807
- type: 'button',
3808
- className: cx('filterMenuButton', {
3809
- overlayVisibleState: overlayVisibleState,
3810
- hasFilter: hasFilter
3811
- }),
3812
- 'aria-haspopup': true,
3813
- 'aria-expanded': overlayVisibleState,
3814
- onClick: function onClick(e) {
3815
- return toggleMenu();
3816
- },
3817
- onKeyDown: function onKeyDown(e) {
3818
- return onToggleButtonKeyDown(e);
3819
- },
3820
- 'aria-label': label
3821
- }, getColumnPTOptions('filterMenuButton', {
3822
- context: {
3823
- active: hasFilter()
3824
- }
3825
- }));
3826
- return /*#__PURE__*/React.createElement("button", _extends({
3827
- ref: iconRef
3828
- }, filterMenuButtonProps), columnFilterIcon, /*#__PURE__*/React.createElement(Ripple, null));
3840
+ if (!showMenuButton()) {
3841
+ return null;
3829
3842
  }
3830
- return null;
3843
+ var filterIconProps = mergeProps({
3844
+ 'aria-hidden': true
3845
+ }, getColumnPTOptions('filterIcon'));
3846
+ var icon = props.filterIcon || /*#__PURE__*/React.createElement(FilterIcon, filterIconProps);
3847
+ var columnFilterIcon = IconUtils.getJSXIcon(icon, _objectSpread$4({}, filterIconProps), {
3848
+ props: props
3849
+ });
3850
+ var label = filterLabel();
3851
+ var filterMenuButtonProps = mergeProps({
3852
+ type: 'button',
3853
+ className: cx('filterMenuButton', {
3854
+ overlayVisibleState: overlayVisibleState,
3855
+ hasFilter: hasFilter
3856
+ }),
3857
+ 'aria-haspopup': true,
3858
+ 'aria-expanded': overlayVisibleState,
3859
+ onClick: function onClick(e) {
3860
+ return toggleMenu();
3861
+ },
3862
+ onKeyDown: function onKeyDown(e) {
3863
+ return onToggleButtonKeyDown(e);
3864
+ },
3865
+ 'aria-label': label
3866
+ }, getColumnPTOptions('filterMenuButton', {
3867
+ context: {
3868
+ active: hasFilter()
3869
+ }
3870
+ }));
3871
+ return /*#__PURE__*/React.createElement("button", _extends({
3872
+ ref: iconRef
3873
+ }, filterMenuButtonProps), columnFilterIcon, /*#__PURE__*/React.createElement(Ripple, null));
3831
3874
  };
3832
3875
  var createClearButton = function createClearButton() {
3876
+ if (!showMenuButton()) {
3877
+ return null;
3878
+ }
3833
3879
  var filterClearIconProps = mergeProps({
3834
3880
  'aria-hidden': true
3835
3881
  }, getColumnPTOptions('filterClearIcon'));
@@ -4541,19 +4587,20 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
4541
4587
  var rowSpan = getColumnProp('rowSpan');
4542
4588
  var ariaSort = getAriaSort(sortMeta);
4543
4589
  var headerTooltip = getColumnProp('headerTooltip');
4590
+ var headerClassName = getColumnProp('headerClassName');
4544
4591
  var hasTooltip = ObjectUtils.isNotEmpty(headerTooltip);
4545
4592
  var headerTooltipOptions = getColumnProp('headerTooltipOptions');
4546
4593
  var resizer = createResizer();
4547
4594
  var header = createHeader(sortMeta);
4548
4595
  var headerCellProps = mergeProps({
4549
- className: cx('headerCell', {
4596
+ className: classNames(headerClassName, cx('headerCell', {
4550
4597
  headerProps: props,
4551
4598
  frozen: frozen,
4552
4599
  sortMeta: sortMeta,
4553
4600
  align: align,
4554
4601
  _isSortableDisabled: _isSortableDisabled,
4555
4602
  getColumnProp: getColumnProp
4556
- }),
4603
+ })),
4557
4604
  style: style,
4558
4605
  role: 'columnheader',
4559
4606
  onClick: function onClick(e) {
@@ -6320,6 +6367,8 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
6320
6367
  onRowClick: props.onRowClick,
6321
6368
  onRowCollapse: props.onRowCollapse,
6322
6369
  onRowDoubleClick: props.onRowDoubleClick,
6370
+ onRowPointerDown: props.onRowPointerDown,
6371
+ onRowPointerUp: props.onRowPointerUp,
6323
6372
  onRowEditCancel: props.onRowEditCancel,
6324
6373
  onRowEditChange: props.onRowEditChange,
6325
6374
  onRowEditComplete: props.onRowEditComplete,
@@ -6379,6 +6428,8 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
6379
6428
  tabIndex: props.tabIndex,
6380
6429
  onRowClick: props.onRowClick,
6381
6430
  onRowDoubleClick: props.onRowDoubleClick,
6431
+ onRowPointerDown: props.onRowPointerDown,
6432
+ onRowPointerUp: props.onRowPointerUp,
6382
6433
  onRowMouseEnter: props.onRowMouseEnter,
6383
6434
  onRowMouseLeave: props.onRowMouseLeave,
6384
6435
  onCellClick: props.onCellClick,