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
@@ -245,7 +245,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
245
245
  var onClick = function onClick(event) {
246
246
  if (!props.disabled) {
247
247
  props.onChange(event);
248
- inputRef.current.focus();
248
+ utils.DomHandler.focus(inputRef.current);
249
249
  }
250
250
  };
251
251
 
@@ -1405,12 +1405,16 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
1405
1405
  }),
1406
1406
  'p-row-odd': props.index % 2 !== 0
1407
1407
  });
1408
+ var style = {
1409
+ height: props.virtualScrollerOptions ? props.virtualScrollerOptions.itemSize : undefined
1410
+ };
1408
1411
  var content = createContent();
1409
1412
  var tabIndex = getTabIndex();
1410
1413
  return /*#__PURE__*/React__namespace.createElement("tr", {
1411
1414
  role: "row",
1412
1415
  tabIndex: tabIndex,
1413
1416
  className: className,
1417
+ style: style,
1414
1418
  onMouseDown: onMouseDown,
1415
1419
  onMouseUp: onMouseUp,
1416
1420
  onClick: onClick,
@@ -1452,14 +1456,14 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
1452
1456
  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; }
1453
1457
 
1454
1458
  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; }
1455
- var TableBody = /*#__PURE__*/React__namespace.memo(function (props) {
1459
+ var TableBody = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
1456
1460
  var _React$useState = React__namespace.useState({}),
1457
1461
  _React$useState2 = _slicedToArray(_React$useState, 2),
1458
1462
  rowGroupHeaderStyleObjectState = _React$useState2[0],
1459
1463
  setRowGroupHeaderStyleObjectState = _React$useState2[1];
1460
1464
 
1461
1465
  var elementRef = React__namespace.useRef(null);
1462
- var ref = React__namespace.useCallback(function (el) {
1466
+ var refCallback = React__namespace.useCallback(function (el) {
1463
1467
  elementRef.current = el;
1464
1468
  props.virtualScrollerContentRef && props.virtualScrollerContentRef(el);
1465
1469
  }, [props]);
@@ -2113,9 +2117,12 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
2113
2117
  var onRowDragStart = function onRowDragStart(e) {
2114
2118
  var event = e.originalEvent,
2115
2119
  index = e.index;
2116
- rowDragging.current = true;
2117
- draggedRowIndex.current = index;
2118
- event.dataTransfer.setData('text', 'b'); // For firefox
2120
+
2121
+ if (allowRowDrag(event)) {
2122
+ rowDragging.current = true;
2123
+ draggedRowIndex.current = index;
2124
+ event.dataTransfer.setData('text', 'b'); // For firefox
2125
+ }
2119
2126
  };
2120
2127
 
2121
2128
  var onRowDragOver = function onRowDragOver(e) {
@@ -2511,10 +2518,10 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
2511
2518
  var className = utils.classNames('p-datatable-tbody', props.className);
2512
2519
  var content = props.empty ? createEmptyContent() : createContent();
2513
2520
  return /*#__PURE__*/React__namespace.createElement("tbody", {
2514
- ref: ref,
2521
+ ref: refCallback,
2515
2522
  className: className
2516
2523
  }, content);
2517
- });
2524
+ }));
2518
2525
  TableBody.displayName = 'TableBody';
2519
2526
 
2520
2527
  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; }
@@ -2564,7 +2571,8 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
2564
2571
  styleObject['left'] = left + 'px';
2565
2572
  }
2566
2573
 
2567
- setStyleObjectState(styleObject);
2574
+ var isSameStyle = styleObjectState['left'] === styleObject['left'] && styleObjectState['right'] === styleObject['right'];
2575
+ !isSameStyle && setStyleObjectState(styleObject);
2568
2576
  }
2569
2577
  };
2570
2578
 
@@ -3801,14 +3809,15 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
3801
3809
  var sortMeta = getSortMeta();
3802
3810
  var style = getStyle();
3803
3811
  var align = getColumnProp('alignHeader') || getColumnProp('align');
3812
+ var frozen = getColumnProp('frozen');
3804
3813
  var className = utils.classNames(getColumnProp('headerClassName'), getColumnProp('className'), _defineProperty({
3805
3814
  'p-sortable-column': getColumnProp('sortable'),
3806
3815
  'p-resizable-column': props.resizableColumns && getColumnProp('resizeable'),
3807
3816
  'p-highlight': sortMeta.sorted,
3808
- 'p-frozen-column': getColumnProp('frozen'),
3817
+ 'p-frozen-column': frozen,
3809
3818
  'p-selection-column': getColumnProp('selectionMode'),
3810
3819
  'p-sortable-disabled': getColumnProp('sortable') && _isSortableDisabled,
3811
- 'p-reorderable-column': props.reorderableColumns && getColumnProp('reorderable')
3820
+ 'p-reorderable-column': props.reorderableColumns && getColumnProp('reorderable') && !frozen
3812
3821
  }, "p-align-".concat(align), !!align));
3813
3822
  var tabIndex = getColumnProp('sortable') && !_isSortableDisabled ? props.tabIndex : null;
3814
3823
  var colSpan = getColumnProp('colSpan');
@@ -4097,6 +4106,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4097
4106
  var elementRef = React__namespace.useRef(null);
4098
4107
  var tableRef = React__namespace.useRef(null);
4099
4108
  var wrapperRef = React__namespace.useRef(null);
4109
+ var bodyRef = React__namespace.useRef(null);
4110
+ var frozenBodyRef = React__namespace.useRef(null);
4111
+ var virtualScrollerRef = React__namespace.useRef(null);
4100
4112
  var reorderIndicatorUpRef = React__namespace.useRef(null);
4101
4113
  var reorderIndicatorDownRef = React__namespace.useRef(null);
4102
4114
  var colReorderIconWidth = React__namespace.useRef(null);
@@ -4592,8 +4604,22 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4592
4604
  }
4593
4605
  } else if (props.columnResizeMode === 'expand') {
4594
4606
  var tableWidth = tableRef.current.offsetWidth + delta + 'px';
4595
- tableRef.current.style.width = tableWidth;
4596
- tableRef.current.style.minWidth = tableWidth;
4607
+
4608
+ var updateTableWidth = function updateTableWidth(el) {
4609
+ !!el && (el.style.width = el.style.minWidth = tableWidth);
4610
+ };
4611
+
4612
+ updateTableWidth(tableRef.current);
4613
+
4614
+ if (!isVirtualScrollerDisabled()) {
4615
+ updateTableWidth(bodyRef.current);
4616
+ updateTableWidth(frozenBodyRef.current);
4617
+
4618
+ if (wrapperRef.current) {
4619
+ updateTableWidth(utils.DomHandler.findSingle(wrapperRef.current, '.p-virtualscroller-content'));
4620
+ }
4621
+ }
4622
+
4597
4623
  resizeTableCells(newColumnWidth);
4598
4624
  }
4599
4625
 
@@ -4650,7 +4676,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4650
4676
  var event = e.originalEvent,
4651
4677
  column = e.column;
4652
4678
 
4653
- if (props.reorderableColumns && getColumnProp(column, 'reorderable') !== false) {
4679
+ if (props.reorderableColumns && getColumnProp(column, 'reorderable') !== false && !getColumnProp(column, 'frozen')) {
4654
4680
  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;
4655
4681
  }
4656
4682
  };
@@ -4713,10 +4739,11 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4713
4739
  };
4714
4740
 
4715
4741
  var onColumnHeaderDragOver = function onColumnHeaderDragOver(e) {
4716
- var event = e.originalEvent;
4742
+ var event = e.originalEvent,
4743
+ column = e.column;
4717
4744
  var dropHeader = findParentHeader(event.currentTarget);
4718
4745
 
4719
- if (props.reorderableColumns && draggedColumnElement.current && dropHeader) {
4746
+ if (props.reorderableColumns && draggedColumnElement.current && dropHeader && !getColumnProp(column, 'frozen')) {
4720
4747
  event.preventDefault();
4721
4748
 
4722
4749
  if (draggedColumnElement.current !== dropHeader) {
@@ -4927,8 +4954,8 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4927
4954
  return props.removableSort ? props.defaultSortOrder === currentOrder ? currentOrder * -1 : 0 : currentOrder * -1;
4928
4955
  };
4929
4956
 
4930
- var compareValuesOnSort = function compareValuesOnSort(value1, value2) {
4931
- return utils.ObjectUtils.sort(value1, value2, 1, PrimeReact__default["default"].locale);
4957
+ var compareValuesOnSort = function compareValuesOnSort(value1, value2, order) {
4958
+ return utils.ObjectUtils.sort(value1, value2, order, PrimeReact__default["default"].locale);
4932
4959
  };
4933
4960
 
4934
4961
  var addSortMeta = function addSortMeta(meta, multiSortMeta) {
@@ -4967,6 +4994,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4967
4994
 
4968
4995
  if (columnSortable.current && columnSortFunction.current) {
4969
4996
  value = columnSortFunction.current({
4997
+ rowData: value,
4970
4998
  field: field,
4971
4999
  order: order
4972
5000
  });
@@ -4974,8 +5002,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
4974
5002
  value.sort(function (data1, data2) {
4975
5003
  var value1 = utils.ObjectUtils.resolveFieldData(data1, field);
4976
5004
  var value2 = utils.ObjectUtils.resolveFieldData(data2, field);
4977
- var result = compareValuesOnSort(value1, value2);
4978
- return order * result;
5005
+ return compareValuesOnSort(value1, value2, order);
4979
5006
  });
4980
5007
  }
4981
5008
 
@@ -5008,6 +5035,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
5008
5035
  var field = columnField.current;
5009
5036
  var order = meta ? meta.order : defaultSortOrder;
5010
5037
  value = columnSortFunction.current({
5038
+ rowData: value,
5011
5039
  field: field,
5012
5040
  order: order
5013
5041
  });
@@ -5028,8 +5056,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
5028
5056
  return multiSortMeta.length - 1 > index ? multisortField(data1, data2, multiSortMeta, index + 1) : 0;
5029
5057
  }
5030
5058
 
5031
- var result = compareValuesOnSort(value1, value2);
5032
- return multiSortMeta[index].order * result;
5059
+ return compareValuesOnSort(value1, value2, multiSortMeta[index].order);
5033
5060
  };
5034
5061
 
5035
5062
  var onFilterChange = function onFilterChange(filters) {
@@ -5408,7 +5435,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
5408
5435
  }
5409
5436
  }, [props.responsiveLayout]);
5410
5437
  hooks.useUpdateEffect(function () {
5411
- filter(props.globalFilter, 'global', 'contains');
5438
+ if (props.globalFilter) {
5439
+ filter(props.globalFilter, 'global', 'contains');
5440
+ }
5412
5441
  }, [props.globalFilter]);
5413
5442
  hooks.useUnmountEffect(function () {
5414
5443
  unbindColumnResizeEvents();
@@ -5508,7 +5537,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
5508
5537
  columns = options.columns,
5509
5538
  contentRef = options.contentRef,
5510
5539
  className = options.className;
5540
+ options.itemSize;
5511
5541
  var frozenBody = props.frozenValue && /*#__PURE__*/React__namespace.createElement(TableBody, {
5542
+ ref: frozenBodyRef,
5512
5543
  value: props.frozenValue,
5513
5544
  className: "p-datatable-frozen-tbody",
5514
5545
  frozenRow: true,
@@ -5572,9 +5603,11 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
5572
5603
  expandedRowIcon: props.expandedRowIcon,
5573
5604
  collapsedRowIcon: props.collapsedRowIcon,
5574
5605
  rowClassName: props.rowClassName,
5606
+ virtualScrollerOptions: options,
5575
5607
  isVirtualScrollerDisabled: true
5576
5608
  });
5577
5609
  var body = /*#__PURE__*/React__namespace.createElement(TableBody, {
5610
+ ref: bodyRef,
5578
5611
  value: dataToRender(rows),
5579
5612
  className: className,
5580
5613
  empty: empty,
@@ -5667,10 +5700,15 @@ this.primereact.datatable = (function (exports, React, PrimeReact, hooks, pagina
5667
5700
  style: {
5668
5701
  maxHeight: _isVirtualScrollerDisabled ? props.scrollHeight : null
5669
5702
  }
5670
- }, /*#__PURE__*/React__namespace.createElement(virtualscroller.VirtualScroller, _extends({}, virtualScrollerOptions, {
5703
+ }, /*#__PURE__*/React__namespace.createElement(virtualscroller.VirtualScroller, _extends({
5704
+ ref: virtualScrollerRef
5705
+ }, virtualScrollerOptions, {
5671
5706
  items: processedData,
5672
5707
  columns: columns,
5673
- scrollHeight: props.scrollHeight,
5708
+ style: _objectSpread(_objectSpread({}, virtualScrollerOptions.style), {
5709
+ height: props.scrollHeight !== 'flex' ? props.scrollHeight : undefined
5710
+ }),
5711
+ scrollHeight: props.scrollHeight !== 'flex' ? undefined : '100%',
5674
5712
  disabled: _isVirtualScrollerDisabled,
5675
5713
  loaderDisabled: true,
5676
5714
  showSpacer: false,