primereact 8.1.1 → 8.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (335) hide show
  1. package/autocomplete/autocomplete.cjs.js +19 -10
  2. package/autocomplete/autocomplete.cjs.min.js +1 -1
  3. package/autocomplete/autocomplete.esm.js +20 -11
  4. package/autocomplete/autocomplete.esm.min.js +1 -1
  5. package/autocomplete/autocomplete.js +19 -10
  6. package/autocomplete/autocomplete.min.js +1 -1
  7. package/avatar/avatar.cjs.js +7 -7
  8. package/avatar/avatar.cjs.min.js +1 -1
  9. package/avatar/avatar.d.ts +1 -3
  10. package/avatar/avatar.esm.js +7 -7
  11. package/avatar/avatar.esm.min.js +1 -1
  12. package/avatar/avatar.js +7 -7
  13. package/avatar/avatar.min.js +1 -1
  14. package/badge/badge.cjs.js +2 -2
  15. package/badge/badge.cjs.min.js +1 -1
  16. package/badge/badge.d.ts +2 -4
  17. package/badge/badge.esm.js +2 -2
  18. package/badge/badge.esm.min.js +1 -1
  19. package/badge/badge.js +2 -2
  20. package/badge/badge.min.js +1 -1
  21. package/calendar/calendar.cjs.js +77 -4
  22. package/calendar/calendar.cjs.min.js +1 -1
  23. package/calendar/calendar.d.ts +1 -0
  24. package/calendar/calendar.esm.js +77 -4
  25. package/calendar/calendar.esm.min.js +1 -1
  26. package/calendar/calendar.js +77 -4
  27. package/calendar/calendar.min.js +1 -1
  28. package/card/card.d.ts +1 -4
  29. package/cascadeselect/cascadeselect.cjs.js +3 -3
  30. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  31. package/cascadeselect/cascadeselect.d.ts +1 -1
  32. package/cascadeselect/cascadeselect.esm.js +3 -3
  33. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  34. package/cascadeselect/cascadeselect.js +3 -3
  35. package/cascadeselect/cascadeselect.min.js +1 -1
  36. package/chart/chart.cjs.js +13 -7
  37. package/chart/chart.cjs.min.js +1 -1
  38. package/chart/chart.esm.js +13 -7
  39. package/chart/chart.esm.min.js +1 -1
  40. package/chart/chart.js +13 -7
  41. package/chart/chart.min.js +1 -1
  42. package/checkbox/checkbox.cjs.js +1 -1
  43. package/checkbox/checkbox.cjs.min.js +1 -1
  44. package/checkbox/checkbox.esm.js +2 -2
  45. package/checkbox/checkbox.esm.min.js +1 -1
  46. package/checkbox/checkbox.js +1 -1
  47. package/checkbox/checkbox.min.js +1 -1
  48. package/chip/chip.d.ts +1 -3
  49. package/chips/chips.cjs.js +18 -2
  50. package/chips/chips.cjs.min.js +1 -1
  51. package/chips/chips.d.ts +3 -0
  52. package/chips/chips.esm.js +19 -3
  53. package/chips/chips.esm.min.js +1 -1
  54. package/chips/chips.js +19 -4
  55. package/chips/chips.min.js +1 -1
  56. package/column/column.d.ts +1 -0
  57. package/confirmdialog/confirmdialog.d.ts +1 -6
  58. package/contextmenu/contextmenu.cjs.js +1 -0
  59. package/contextmenu/contextmenu.cjs.min.js +1 -1
  60. package/contextmenu/contextmenu.esm.js +1 -0
  61. package/contextmenu/contextmenu.esm.min.js +1 -1
  62. package/contextmenu/contextmenu.js +1 -0
  63. package/contextmenu/contextmenu.min.js +1 -1
  64. package/core/core.js +249 -117
  65. package/core/core.min.js +9 -9
  66. package/datatable/datatable.cjs.js +63 -25
  67. package/datatable/datatable.cjs.min.js +1 -1
  68. package/datatable/datatable.esm.js +64 -26
  69. package/datatable/datatable.esm.min.js +1 -1
  70. package/datatable/datatable.js +63 -25
  71. package/datatable/datatable.min.js +1 -1
  72. package/dialog/dialog.cjs.js +2 -2
  73. package/dialog/dialog.cjs.min.js +1 -1
  74. package/dialog/dialog.esm.js +2 -2
  75. package/dialog/dialog.esm.min.js +1 -1
  76. package/dialog/dialog.js +2 -2
  77. package/dialog/dialog.min.js +1 -1
  78. package/dropdown/dropdown.cjs.js +29 -17
  79. package/dropdown/dropdown.cjs.min.js +1 -1
  80. package/dropdown/dropdown.d.ts +1 -1
  81. package/dropdown/dropdown.esm.js +29 -17
  82. package/dropdown/dropdown.esm.min.js +1 -1
  83. package/dropdown/dropdown.js +29 -17
  84. package/dropdown/dropdown.min.js +1 -1
  85. package/editor/editor.cjs.js +11 -3
  86. package/editor/editor.cjs.min.js +1 -1
  87. package/editor/editor.esm.js +11 -3
  88. package/editor/editor.esm.min.js +1 -1
  89. package/editor/editor.js +11 -3
  90. package/editor/editor.min.js +1 -1
  91. package/image/image.cjs.js +5 -5
  92. package/image/image.cjs.min.js +1 -1
  93. package/image/image.d.ts +1 -3
  94. package/image/image.esm.js +5 -5
  95. package/image/image.esm.min.js +1 -1
  96. package/image/image.js +5 -5
  97. package/image/image.min.css +1 -1
  98. package/image/image.min.js +1 -1
  99. package/inplace/inplace.cjs.js +1 -1
  100. package/inplace/inplace.cjs.min.js +1 -1
  101. package/inplace/inplace.esm.js +1 -1
  102. package/inplace/inplace.esm.min.js +1 -1
  103. package/inplace/inplace.js +1 -1
  104. package/inplace/inplace.min.js +1 -1
  105. package/inputmask/inputmask.cjs.js +7 -5
  106. package/inputmask/inputmask.cjs.min.js +1 -1
  107. package/inputmask/inputmask.d.ts +0 -1
  108. package/inputmask/inputmask.esm.js +7 -5
  109. package/inputmask/inputmask.esm.min.js +1 -1
  110. package/inputmask/inputmask.js +7 -5
  111. package/inputmask/inputmask.min.js +1 -1
  112. package/inputnumber/inputnumber.cjs.js +2 -2
  113. package/inputnumber/inputnumber.cjs.min.js +1 -1
  114. package/inputnumber/inputnumber.esm.js +2 -2
  115. package/inputnumber/inputnumber.esm.min.js +1 -1
  116. package/inputnumber/inputnumber.js +2 -2
  117. package/inputnumber/inputnumber.min.js +1 -1
  118. package/inputswitch/inputswitch.cjs.js +1 -1
  119. package/inputswitch/inputswitch.cjs.min.js +1 -1
  120. package/inputswitch/inputswitch.esm.js +2 -2
  121. package/inputswitch/inputswitch.esm.min.js +1 -1
  122. package/inputswitch/inputswitch.js +1 -1
  123. package/inputswitch/inputswitch.min.css +1 -1
  124. package/inputswitch/inputswitch.min.js +1 -1
  125. package/inputtext/inputtext.min.css +1 -1
  126. package/listbox/listbox.cjs.js +66 -6
  127. package/listbox/listbox.cjs.min.js +1 -1
  128. package/listbox/listbox.d.ts +1 -1
  129. package/listbox/listbox.esm.js +66 -6
  130. package/listbox/listbox.esm.min.js +1 -1
  131. package/listbox/listbox.js +67 -8
  132. package/listbox/listbox.min.js +1 -1
  133. package/megamenu/megamenu.cjs.js +32 -12
  134. package/megamenu/megamenu.cjs.min.js +1 -1
  135. package/megamenu/megamenu.d.ts +7 -0
  136. package/megamenu/megamenu.esm.js +32 -12
  137. package/megamenu/megamenu.esm.min.js +1 -1
  138. package/megamenu/megamenu.js +32 -12
  139. package/megamenu/megamenu.min.css +1 -1
  140. package/megamenu/megamenu.min.js +1 -1
  141. package/mention/mention.cjs.js +1 -1
  142. package/mention/mention.cjs.min.js +1 -1
  143. package/mention/mention.esm.js +1 -1
  144. package/mention/mention.esm.min.js +1 -1
  145. package/mention/mention.js +1 -1
  146. package/mention/mention.min.js +1 -1
  147. package/menubar/menubar.cjs.js +1 -0
  148. package/menubar/menubar.cjs.min.js +1 -1
  149. package/menubar/menubar.esm.js +1 -0
  150. package/menubar/menubar.esm.min.js +1 -1
  151. package/menubar/menubar.js +1 -0
  152. package/menubar/menubar.min.js +1 -1
  153. package/menuitem/menuitem.d.ts +2 -0
  154. package/message/message.d.ts +1 -1
  155. package/messages/messages.cjs.js +3 -2
  156. package/messages/messages.cjs.min.js +1 -1
  157. package/messages/messages.d.ts +1 -1
  158. package/messages/messages.esm.js +3 -2
  159. package/messages/messages.esm.min.js +1 -1
  160. package/messages/messages.js +3 -2
  161. package/messages/messages.min.js +1 -1
  162. package/multiselect/multiselect.cjs.js +20 -10
  163. package/multiselect/multiselect.cjs.min.js +1 -1
  164. package/multiselect/multiselect.d.ts +1 -1
  165. package/multiselect/multiselect.esm.js +20 -10
  166. package/multiselect/multiselect.esm.min.js +1 -1
  167. package/multiselect/multiselect.js +20 -10
  168. package/multiselect/multiselect.min.js +1 -1
  169. package/overlaypanel/overlaypanel.cjs.js +1 -1
  170. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  171. package/overlaypanel/overlaypanel.esm.js +1 -1
  172. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  173. package/overlaypanel/overlaypanel.js +1 -1
  174. package/overlaypanel/overlaypanel.min.js +1 -1
  175. package/package.json +1 -1
  176. package/panelmenu/panelmenu.cjs.js +1 -0
  177. package/panelmenu/panelmenu.cjs.min.js +1 -1
  178. package/panelmenu/panelmenu.esm.js +1 -0
  179. package/panelmenu/panelmenu.esm.min.js +1 -1
  180. package/panelmenu/panelmenu.js +1 -0
  181. package/panelmenu/panelmenu.min.js +1 -1
  182. package/picklist/picklist.cjs.js +169 -14
  183. package/picklist/picklist.cjs.min.js +1 -1
  184. package/picklist/picklist.d.ts +29 -0
  185. package/picklist/picklist.esm.js +169 -14
  186. package/picklist/picklist.esm.min.js +1 -1
  187. package/picklist/picklist.js +170 -16
  188. package/picklist/picklist.min.css +1 -1
  189. package/picklist/picklist.min.js +1 -1
  190. package/primereact.all.cjs.js +924 -387
  191. package/primereact.all.cjs.min.js +1 -1
  192. package/primereact.all.esm.js +924 -387
  193. package/primereact.all.esm.min.js +1 -1
  194. package/primereact.all.js +924 -387
  195. package/primereact.all.min.js +1 -1
  196. package/radiobutton/radiobutton.cjs.js +1 -1
  197. package/radiobutton/radiobutton.cjs.min.js +1 -1
  198. package/radiobutton/radiobutton.esm.js +2 -2
  199. package/radiobutton/radiobutton.esm.min.js +1 -1
  200. package/radiobutton/radiobutton.js +1 -1
  201. package/radiobutton/radiobutton.min.js +1 -1
  202. package/resources/primereact.css +248 -194
  203. package/resources/primereact.min.css +1 -1
  204. package/resources/themes/arya-blue/theme.css +20 -6
  205. package/resources/themes/arya-green/theme.css +20 -6
  206. package/resources/themes/arya-orange/theme.css +20 -6
  207. package/resources/themes/arya-purple/theme.css +20 -6
  208. package/resources/themes/bootstrap4-dark-blue/theme.css +20 -6
  209. package/resources/themes/bootstrap4-dark-purple/theme.css +20 -6
  210. package/resources/themes/bootstrap4-light-blue/theme.css +19 -5
  211. package/resources/themes/bootstrap4-light-purple/theme.css +19 -5
  212. package/resources/themes/fluent-light/theme.css +20 -6
  213. package/resources/themes/lara-dark-blue/theme.css +20 -6
  214. package/resources/themes/lara-dark-indigo/theme.css +20 -6
  215. package/resources/themes/lara-dark-purple/theme.css +20 -6
  216. package/resources/themes/lara-dark-teal/theme.css +20 -6
  217. package/resources/themes/lara-light-blue/theme.css +20 -6
  218. package/resources/themes/lara-light-indigo/theme.css +20 -6
  219. package/resources/themes/lara-light-purple/theme.css +20 -6
  220. package/resources/themes/lara-light-teal/theme.css +20 -6
  221. package/resources/themes/luna-amber/theme.css +20 -6
  222. package/resources/themes/luna-blue/theme.css +20 -6
  223. package/resources/themes/luna-green/theme.css +20 -6
  224. package/resources/themes/luna-pink/theme.css +20 -6
  225. package/resources/themes/md-dark-deeppurple/theme.css +20 -6
  226. package/resources/themes/md-dark-indigo/theme.css +20 -6
  227. package/resources/themes/md-light-deeppurple/theme.css +20 -6
  228. package/resources/themes/md-light-indigo/theme.css +20 -6
  229. package/resources/themes/mdc-dark-deeppurple/theme.css +20 -6
  230. package/resources/themes/mdc-dark-indigo/theme.css +20 -6
  231. package/resources/themes/mdc-light-deeppurple/theme.css +20 -6
  232. package/resources/themes/mdc-light-indigo/theme.css +20 -6
  233. package/resources/themes/nova/theme.css +20 -6
  234. package/resources/themes/nova-accent/theme.css +20 -6
  235. package/resources/themes/nova-alt/theme.css +20 -6
  236. package/resources/themes/rhea/theme.css +20 -6
  237. package/resources/themes/saga-blue/theme.css +20 -6
  238. package/resources/themes/saga-green/theme.css +20 -6
  239. package/resources/themes/saga-orange/theme.css +20 -6
  240. package/resources/themes/saga-purple/theme.css +20 -6
  241. package/resources/themes/tailwind-light/theme.css +20 -6
  242. package/resources/themes/vela-blue/theme.css +20 -6
  243. package/resources/themes/vela-green/theme.css +20 -6
  244. package/resources/themes/vela-orange/theme.css +20 -6
  245. package/resources/themes/vela-purple/theme.css +20 -6
  246. package/selectbutton/selectbutton.d.ts +1 -1
  247. package/slidemenu/slidemenu.cjs.js +1 -0
  248. package/slidemenu/slidemenu.cjs.min.js +1 -1
  249. package/slidemenu/slidemenu.esm.js +1 -0
  250. package/slidemenu/slidemenu.esm.min.js +1 -1
  251. package/slidemenu/slidemenu.js +1 -0
  252. package/slidemenu/slidemenu.min.js +1 -1
  253. package/slider/slider.d.ts +1 -1
  254. package/splitbutton/splitbutton.cjs.js +4 -0
  255. package/splitbutton/splitbutton.cjs.min.js +1 -1
  256. package/splitbutton/splitbutton.d.ts +2 -0
  257. package/splitbutton/splitbutton.esm.js +4 -0
  258. package/splitbutton/splitbutton.esm.min.js +1 -1
  259. package/splitbutton/splitbutton.js +4 -0
  260. package/splitbutton/splitbutton.min.js +1 -1
  261. package/splitter/splitter.cjs.js +9 -5
  262. package/splitter/splitter.cjs.min.js +1 -1
  263. package/splitter/splitter.esm.js +10 -6
  264. package/splitter/splitter.esm.min.js +1 -1
  265. package/splitter/splitter.js +9 -5
  266. package/splitter/splitter.min.js +1 -1
  267. package/steps/steps.cjs.js +1 -0
  268. package/steps/steps.cjs.min.js +1 -1
  269. package/steps/steps.esm.js +1 -0
  270. package/steps/steps.esm.min.js +1 -1
  271. package/steps/steps.js +1 -0
  272. package/steps/steps.min.js +1 -1
  273. package/styleclass/styleclass.d.ts +1 -1
  274. package/tag/tag.d.ts +1 -1
  275. package/terminal/terminal.cjs.js +1 -1
  276. package/terminal/terminal.cjs.min.js +1 -1
  277. package/terminal/terminal.esm.js +2 -2
  278. package/terminal/terminal.esm.min.js +1 -1
  279. package/terminal/terminal.js +1 -1
  280. package/terminal/terminal.min.js +1 -1
  281. package/tieredmenu/tieredmenu.cjs.js +3 -1
  282. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  283. package/tieredmenu/tieredmenu.esm.js +3 -1
  284. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  285. package/tieredmenu/tieredmenu.js +3 -1
  286. package/tieredmenu/tieredmenu.min.js +1 -1
  287. package/toast/toast.cjs.js +30 -35
  288. package/toast/toast.cjs.min.js +1 -1
  289. package/toast/toast.d.ts +2 -1
  290. package/toast/toast.esm.js +30 -35
  291. package/toast/toast.esm.min.js +1 -1
  292. package/toast/toast.js +30 -35
  293. package/toast/toast.min.css +1 -1
  294. package/toast/toast.min.js +1 -1
  295. package/tooltip/tooltip.cjs.js +28 -22
  296. package/tooltip/tooltip.cjs.min.js +1 -1
  297. package/tooltip/tooltip.esm.js +28 -22
  298. package/tooltip/tooltip.esm.min.js +1 -1
  299. package/tooltip/tooltip.js +28 -22
  300. package/tooltip/tooltip.min.js +1 -1
  301. package/tree/tree.cjs.js +9 -1
  302. package/tree/tree.cjs.min.js +1 -1
  303. package/tree/tree.esm.js +9 -1
  304. package/tree/tree.esm.min.js +1 -1
  305. package/tree/tree.js +9 -1
  306. package/tree/tree.min.js +1 -1
  307. package/treeselect/treeselect.cjs.js +2 -2
  308. package/treeselect/treeselect.cjs.min.js +1 -1
  309. package/treeselect/treeselect.esm.js +2 -2
  310. package/treeselect/treeselect.esm.min.js +1 -1
  311. package/treeselect/treeselect.js +2 -2
  312. package/treeselect/treeselect.min.js +1 -1
  313. package/treetable/treetable.cjs.js +1 -0
  314. package/treetable/treetable.cjs.min.js +1 -1
  315. package/treetable/treetable.d.ts +2 -2
  316. package/treetable/treetable.esm.js +1 -0
  317. package/treetable/treetable.esm.min.js +1 -1
  318. package/treetable/treetable.js +1 -0
  319. package/treetable/treetable.min.js +1 -1
  320. package/utils/utils.cjs.js +21 -5
  321. package/utils/utils.cjs.min.js +1 -1
  322. package/utils/utils.d.ts +1 -0
  323. package/utils/utils.esm.js +21 -5
  324. package/utils/utils.esm.min.js +1 -1
  325. package/utils/utils.js +21 -5
  326. package/utils/utils.min.js +1 -1
  327. package/virtualscroller/virtualscroller.cjs.js +154 -65
  328. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  329. package/virtualscroller/virtualscroller.d.ts +12 -0
  330. package/virtualscroller/virtualscroller.esm.js +156 -67
  331. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  332. package/virtualscroller/virtualscroller.js +154 -65
  333. package/virtualscroller/virtualscroller.min.css +1 -1
  334. package/virtualscroller/virtualscroller.min.js +1 -1
  335. package/web-types.json +167 -4
@@ -259,7 +259,7 @@ var RowRadioButton = /*#__PURE__*/React__namespace.memo(function (props) {
259
259
  var onClick = function onClick(event) {
260
260
  if (!props.disabled) {
261
261
  props.onChange(event);
262
- inputRef.current.focus();
262
+ utils.DomHandler.focus(inputRef.current);
263
263
  }
264
264
  };
265
265
 
@@ -1419,12 +1419,16 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
1419
1419
  }),
1420
1420
  'p-row-odd': props.index % 2 !== 0
1421
1421
  });
1422
+ var style = {
1423
+ height: props.virtualScrollerOptions ? props.virtualScrollerOptions.itemSize : undefined
1424
+ };
1422
1425
  var content = createContent();
1423
1426
  var tabIndex = getTabIndex();
1424
1427
  return /*#__PURE__*/React__namespace.createElement("tr", {
1425
1428
  role: "row",
1426
1429
  tabIndex: tabIndex,
1427
1430
  className: className,
1431
+ style: style,
1428
1432
  onMouseDown: onMouseDown,
1429
1433
  onMouseUp: onMouseUp,
1430
1434
  onClick: onClick,
@@ -1466,14 +1470,14 @@ var _excluded = ["originalEvent"];
1466
1470
  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; }
1467
1471
 
1468
1472
  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; }
1469
- var TableBody = /*#__PURE__*/React__namespace.memo(function (props) {
1473
+ var TableBody = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
1470
1474
  var _React$useState = React__namespace.useState({}),
1471
1475
  _React$useState2 = _slicedToArray(_React$useState, 2),
1472
1476
  rowGroupHeaderStyleObjectState = _React$useState2[0],
1473
1477
  setRowGroupHeaderStyleObjectState = _React$useState2[1];
1474
1478
 
1475
1479
  var elementRef = React__namespace.useRef(null);
1476
- var ref = React__namespace.useCallback(function (el) {
1480
+ var refCallback = React__namespace.useCallback(function (el) {
1477
1481
  elementRef.current = el;
1478
1482
  props.virtualScrollerContentRef && props.virtualScrollerContentRef(el);
1479
1483
  }, [props]);
@@ -2127,9 +2131,12 @@ var TableBody = /*#__PURE__*/React__namespace.memo(function (props) {
2127
2131
  var onRowDragStart = function onRowDragStart(e) {
2128
2132
  var event = e.originalEvent,
2129
2133
  index = e.index;
2130
- rowDragging.current = true;
2131
- draggedRowIndex.current = index;
2132
- event.dataTransfer.setData('text', 'b'); // For firefox
2134
+
2135
+ if (allowRowDrag(event)) {
2136
+ rowDragging.current = true;
2137
+ draggedRowIndex.current = index;
2138
+ event.dataTransfer.setData('text', 'b'); // For firefox
2139
+ }
2133
2140
  };
2134
2141
 
2135
2142
  var onRowDragOver = function onRowDragOver(e) {
@@ -2525,10 +2532,10 @@ var TableBody = /*#__PURE__*/React__namespace.memo(function (props) {
2525
2532
  var className = utils.classNames('p-datatable-tbody', props.className);
2526
2533
  var content = props.empty ? createEmptyContent() : createContent();
2527
2534
  return /*#__PURE__*/React__namespace.createElement("tbody", {
2528
- ref: ref,
2535
+ ref: refCallback,
2529
2536
  className: className
2530
2537
  }, content);
2531
- });
2538
+ }));
2532
2539
  TableBody.displayName = 'TableBody';
2533
2540
 
2534
2541
  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; }
@@ -2578,7 +2585,8 @@ var FooterCell = /*#__PURE__*/React__namespace.memo(function (props) {
2578
2585
  styleObject['left'] = left + 'px';
2579
2586
  }
2580
2587
 
2581
- setStyleObjectState(styleObject);
2588
+ var isSameStyle = styleObjectState['left'] === styleObject['left'] && styleObjectState['right'] === styleObject['right'];
2589
+ !isSameStyle && setStyleObjectState(styleObject);
2582
2590
  }
2583
2591
  };
2584
2592
 
@@ -3815,14 +3823,15 @@ var HeaderCell = /*#__PURE__*/React__namespace.memo(function (props) {
3815
3823
  var sortMeta = getSortMeta();
3816
3824
  var style = getStyle();
3817
3825
  var align = getColumnProp('alignHeader') || getColumnProp('align');
3826
+ var frozen = getColumnProp('frozen');
3818
3827
  var className = utils.classNames(getColumnProp('headerClassName'), getColumnProp('className'), _defineProperty({
3819
3828
  'p-sortable-column': getColumnProp('sortable'),
3820
3829
  'p-resizable-column': props.resizableColumns && getColumnProp('resizeable'),
3821
3830
  'p-highlight': sortMeta.sorted,
3822
- 'p-frozen-column': getColumnProp('frozen'),
3831
+ 'p-frozen-column': frozen,
3823
3832
  'p-selection-column': getColumnProp('selectionMode'),
3824
3833
  'p-sortable-disabled': getColumnProp('sortable') && _isSortableDisabled,
3825
- 'p-reorderable-column': props.reorderableColumns && getColumnProp('reorderable')
3834
+ 'p-reorderable-column': props.reorderableColumns && getColumnProp('reorderable') && !frozen
3826
3835
  }, "p-align-".concat(align), !!align));
3827
3836
  var tabIndex = getColumnProp('sortable') && !_isSortableDisabled ? props.tabIndex : null;
3828
3837
  var colSpan = getColumnProp('colSpan');
@@ -4111,6 +4120,9 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4111
4120
  var elementRef = React__namespace.useRef(null);
4112
4121
  var tableRef = React__namespace.useRef(null);
4113
4122
  var wrapperRef = React__namespace.useRef(null);
4123
+ var bodyRef = React__namespace.useRef(null);
4124
+ var frozenBodyRef = React__namespace.useRef(null);
4125
+ var virtualScrollerRef = React__namespace.useRef(null);
4114
4126
  var reorderIndicatorUpRef = React__namespace.useRef(null);
4115
4127
  var reorderIndicatorDownRef = React__namespace.useRef(null);
4116
4128
  var colReorderIconWidth = React__namespace.useRef(null);
@@ -4606,8 +4618,22 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4606
4618
  }
4607
4619
  } else if (props.columnResizeMode === 'expand') {
4608
4620
  var tableWidth = tableRef.current.offsetWidth + delta + 'px';
4609
- tableRef.current.style.width = tableWidth;
4610
- tableRef.current.style.minWidth = tableWidth;
4621
+
4622
+ var updateTableWidth = function updateTableWidth(el) {
4623
+ !!el && (el.style.width = el.style.minWidth = tableWidth);
4624
+ };
4625
+
4626
+ updateTableWidth(tableRef.current);
4627
+
4628
+ if (!isVirtualScrollerDisabled()) {
4629
+ updateTableWidth(bodyRef.current);
4630
+ updateTableWidth(frozenBodyRef.current);
4631
+
4632
+ if (wrapperRef.current) {
4633
+ updateTableWidth(utils.DomHandler.findSingle(wrapperRef.current, '.p-virtualscroller-content'));
4634
+ }
4635
+ }
4636
+
4611
4637
  resizeTableCells(newColumnWidth);
4612
4638
  }
4613
4639
 
@@ -4664,7 +4690,7 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4664
4690
  var event = e.originalEvent,
4665
4691
  column = e.column;
4666
4692
 
4667
- if (props.reorderableColumns && getColumnProp(column, 'reorderable') !== false) {
4693
+ if (props.reorderableColumns && getColumnProp(column, 'reorderable') !== false && !getColumnProp(column, 'frozen')) {
4668
4694
  if (event.target.nodeName === 'INPUT' || event.target.nodeName === 'TEXTAREA' || utils.DomHandler.hasClass(event.target, 'p-column-resizer')) event.currentTarget.draggable = false;else event.currentTarget.draggable = true;
4669
4695
  }
4670
4696
  };
@@ -4727,10 +4753,11 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4727
4753
  };
4728
4754
 
4729
4755
  var onColumnHeaderDragOver = function onColumnHeaderDragOver(e) {
4730
- var event = e.originalEvent;
4756
+ var event = e.originalEvent,
4757
+ column = e.column;
4731
4758
  var dropHeader = findParentHeader(event.currentTarget);
4732
4759
 
4733
- if (props.reorderableColumns && draggedColumnElement.current && dropHeader) {
4760
+ if (props.reorderableColumns && draggedColumnElement.current && dropHeader && !getColumnProp(column, 'frozen')) {
4734
4761
  event.preventDefault();
4735
4762
 
4736
4763
  if (draggedColumnElement.current !== dropHeader) {
@@ -4941,8 +4968,8 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4941
4968
  return props.removableSort ? props.defaultSortOrder === currentOrder ? currentOrder * -1 : 0 : currentOrder * -1;
4942
4969
  };
4943
4970
 
4944
- var compareValuesOnSort = function compareValuesOnSort(value1, value2) {
4945
- return utils.ObjectUtils.sort(value1, value2, 1, PrimeReact__default["default"].locale);
4971
+ var compareValuesOnSort = function compareValuesOnSort(value1, value2, order) {
4972
+ return utils.ObjectUtils.sort(value1, value2, order, PrimeReact__default["default"].locale);
4946
4973
  };
4947
4974
 
4948
4975
  var addSortMeta = function addSortMeta(meta, multiSortMeta) {
@@ -4981,6 +5008,7 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4981
5008
 
4982
5009
  if (columnSortable.current && columnSortFunction.current) {
4983
5010
  value = columnSortFunction.current({
5011
+ rowData: value,
4984
5012
  field: field,
4985
5013
  order: order
4986
5014
  });
@@ -4988,8 +5016,7 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
4988
5016
  value.sort(function (data1, data2) {
4989
5017
  var value1 = utils.ObjectUtils.resolveFieldData(data1, field);
4990
5018
  var value2 = utils.ObjectUtils.resolveFieldData(data2, field);
4991
- var result = compareValuesOnSort(value1, value2);
4992
- return order * result;
5019
+ return compareValuesOnSort(value1, value2, order);
4993
5020
  });
4994
5021
  }
4995
5022
 
@@ -5022,6 +5049,7 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5022
5049
  var field = columnField.current;
5023
5050
  var order = meta ? meta.order : defaultSortOrder;
5024
5051
  value = columnSortFunction.current({
5052
+ rowData: value,
5025
5053
  field: field,
5026
5054
  order: order
5027
5055
  });
@@ -5042,8 +5070,7 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5042
5070
  return multiSortMeta.length - 1 > index ? multisortField(data1, data2, multiSortMeta, index + 1) : 0;
5043
5071
  }
5044
5072
 
5045
- var result = compareValuesOnSort(value1, value2);
5046
- return multiSortMeta[index].order * result;
5073
+ return compareValuesOnSort(value1, value2, multiSortMeta[index].order);
5047
5074
  };
5048
5075
 
5049
5076
  var onFilterChange = function onFilterChange(filters) {
@@ -5422,7 +5449,9 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5422
5449
  }
5423
5450
  }, [props.responsiveLayout]);
5424
5451
  hooks.useUpdateEffect(function () {
5425
- filter(props.globalFilter, 'global', 'contains');
5452
+ if (props.globalFilter) {
5453
+ filter(props.globalFilter, 'global', 'contains');
5454
+ }
5426
5455
  }, [props.globalFilter]);
5427
5456
  hooks.useUnmountEffect(function () {
5428
5457
  unbindColumnResizeEvents();
@@ -5522,7 +5551,9 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5522
5551
  columns = options.columns,
5523
5552
  contentRef = options.contentRef,
5524
5553
  className = options.className;
5554
+ options.itemSize;
5525
5555
  var frozenBody = props.frozenValue && /*#__PURE__*/React__namespace.createElement(TableBody, {
5556
+ ref: frozenBodyRef,
5526
5557
  value: props.frozenValue,
5527
5558
  className: "p-datatable-frozen-tbody",
5528
5559
  frozenRow: true,
@@ -5586,9 +5617,11 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5586
5617
  expandedRowIcon: props.expandedRowIcon,
5587
5618
  collapsedRowIcon: props.collapsedRowIcon,
5588
5619
  rowClassName: props.rowClassName,
5620
+ virtualScrollerOptions: options,
5589
5621
  isVirtualScrollerDisabled: true
5590
5622
  });
5591
5623
  var body = /*#__PURE__*/React__namespace.createElement(TableBody, {
5624
+ ref: bodyRef,
5592
5625
  value: dataToRender(rows),
5593
5626
  className: className,
5594
5627
  empty: empty,
@@ -5681,10 +5714,15 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5681
5714
  style: {
5682
5715
  maxHeight: _isVirtualScrollerDisabled ? props.scrollHeight : null
5683
5716
  }
5684
- }, /*#__PURE__*/React__namespace.createElement(virtualscroller.VirtualScroller, _extends({}, virtualScrollerOptions, {
5717
+ }, /*#__PURE__*/React__namespace.createElement(virtualscroller.VirtualScroller, _extends({
5718
+ ref: virtualScrollerRef
5719
+ }, virtualScrollerOptions, {
5685
5720
  items: processedData,
5686
5721
  columns: columns,
5687
- scrollHeight: props.scrollHeight,
5722
+ style: _objectSpread(_objectSpread({}, virtualScrollerOptions.style), {
5723
+ height: props.scrollHeight !== 'flex' ? props.scrollHeight : undefined
5724
+ }),
5725
+ scrollHeight: props.scrollHeight !== 'flex' ? undefined : '100%',
5688
5726
  disabled: _isVirtualScrollerDisabled,
5689
5727
  loaderDisabled: true,
5690
5728
  showSpacer: false,