primereact 10.6.5 → 10.6.6

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 (169) hide show
  1. package/README.md +1 -1
  2. package/api/api.d.ts +8 -0
  3. package/chart/chart.d.ts +1 -13
  4. package/column/column.d.ts +6 -0
  5. package/core/core.js +94 -30
  6. package/core/core.min.js +8 -8
  7. package/datatable/datatable.cjs.js +56 -46
  8. package/datatable/datatable.cjs.min.js +1 -1
  9. package/datatable/datatable.esm.js +56 -46
  10. package/datatable/datatable.esm.min.js +1 -1
  11. package/datatable/datatable.js +56 -46
  12. package/datatable/datatable.min.js +1 -1
  13. package/dialog/dialog.cjs.js +5 -3
  14. package/dialog/dialog.cjs.min.js +1 -1
  15. package/dialog/dialog.esm.js +5 -3
  16. package/dialog/dialog.esm.min.js +1 -1
  17. package/dialog/dialog.js +5 -3
  18. package/dialog/dialog.min.js +1 -1
  19. package/dropdown/dropdown.cjs.js +3 -3
  20. package/dropdown/dropdown.cjs.min.js +1 -1
  21. package/dropdown/dropdown.esm.js +3 -3
  22. package/dropdown/dropdown.esm.min.js +1 -1
  23. package/dropdown/dropdown.js +3 -3
  24. package/dropdown/dropdown.min.js +1 -1
  25. package/galleria/galleria.cjs.js +7 -0
  26. package/galleria/galleria.cjs.min.js +1 -1
  27. package/galleria/galleria.esm.js +8 -1
  28. package/galleria/galleria.esm.min.js +1 -1
  29. package/galleria/galleria.js +7 -0
  30. package/galleria/galleria.min.js +1 -1
  31. package/inputnumber/inputnumber.cjs.js +14 -11
  32. package/inputnumber/inputnumber.cjs.min.js +1 -1
  33. package/inputnumber/inputnumber.esm.js +14 -11
  34. package/inputnumber/inputnumber.esm.min.js +1 -1
  35. package/inputnumber/inputnumber.js +14 -11
  36. package/inputnumber/inputnumber.min.js +1 -1
  37. package/inputotp/inputotp.cjs.js +25 -1
  38. package/inputotp/inputotp.cjs.min.js +1 -1
  39. package/inputotp/inputotp.esm.js +26 -2
  40. package/inputotp/inputotp.esm.min.js +1 -1
  41. package/inputotp/inputotp.js +25 -1
  42. package/inputotp/inputotp.min.js +1 -1
  43. package/keyfilter/keyfilter.cjs.js +1 -1
  44. package/keyfilter/keyfilter.cjs.min.js +1 -1
  45. package/keyfilter/keyfilter.esm.js +1 -1
  46. package/keyfilter/keyfilter.esm.min.js +1 -1
  47. package/keyfilter/keyfilter.js +1 -1
  48. package/keyfilter/keyfilter.min.js +1 -1
  49. package/metergroup/metergroup.cjs.js +2 -1
  50. package/metergroup/metergroup.cjs.min.js +1 -1
  51. package/metergroup/metergroup.esm.js +2 -1
  52. package/metergroup/metergroup.esm.min.js +1 -1
  53. package/metergroup/metergroup.js +2 -1
  54. package/metergroup/metergroup.min.js +1 -1
  55. package/multiselect/multiselect.cjs.js +2 -2
  56. package/multiselect/multiselect.cjs.min.js +1 -1
  57. package/multiselect/multiselect.esm.js +2 -2
  58. package/multiselect/multiselect.esm.min.js +1 -1
  59. package/multiselect/multiselect.js +2 -2
  60. package/multiselect/multiselect.min.js +1 -1
  61. package/package.json +1 -1
  62. package/paginator/paginator.cjs.js +1 -1
  63. package/paginator/paginator.cjs.min.js +1 -1
  64. package/paginator/paginator.esm.js +1 -1
  65. package/paginator/paginator.esm.min.js +1 -1
  66. package/paginator/paginator.js +1 -1
  67. package/paginator/paginator.min.js +1 -1
  68. package/panelmenu/panelmenu.cjs.js +13 -12
  69. package/panelmenu/panelmenu.cjs.min.js +1 -1
  70. package/panelmenu/panelmenu.esm.js +13 -12
  71. package/panelmenu/panelmenu.esm.min.js +1 -1
  72. package/panelmenu/panelmenu.js +13 -12
  73. package/panelmenu/panelmenu.min.js +1 -1
  74. package/password/password.cjs.js +2 -2
  75. package/password/password.cjs.min.js +1 -1
  76. package/password/password.esm.js +2 -2
  77. package/password/password.esm.min.js +1 -1
  78. package/password/password.js +2 -2
  79. package/password/password.min.js +1 -1
  80. package/primereact.all.cjs.js +2859 -1916
  81. package/primereact.all.cjs.min.js +1 -1
  82. package/primereact.all.esm.js +2856 -1917
  83. package/primereact.all.esm.min.js +1 -1
  84. package/primereact.all.js +2859 -1916
  85. package/primereact.all.min.js +1 -1
  86. package/resources/themes/arya-blue/theme.css +62 -0
  87. package/resources/themes/arya-green/theme.css +62 -0
  88. package/resources/themes/arya-orange/theme.css +62 -0
  89. package/resources/themes/bootstrap4-dark-blue/theme.css +62 -0
  90. package/resources/themes/bootstrap4-dark-purple/theme.css +207 -43
  91. package/resources/themes/bootstrap4-light-blue/theme.css +62 -0
  92. package/resources/themes/bootstrap4-light-purple/theme.css +207 -43
  93. package/resources/themes/fluent-light/theme.css +62 -0
  94. package/resources/themes/lara-dark-amber/theme.css +62 -9
  95. package/resources/themes/lara-dark-blue/theme.css +62 -9
  96. package/resources/themes/lara-dark-cyan/theme.css +62 -9
  97. package/resources/themes/lara-dark-green/theme.css +62 -9
  98. package/resources/themes/lara-dark-indigo/theme.css +62 -9
  99. package/resources/themes/lara-dark-pink/theme.css +62 -9
  100. package/resources/themes/lara-dark-teal/theme.css +62 -9
  101. package/resources/themes/lara-light-amber/theme.css +62 -9
  102. package/resources/themes/lara-light-blue/theme.css +62 -9
  103. package/resources/themes/lara-light-cyan/theme.css +62 -9
  104. package/resources/themes/lara-light-green/theme.css +62 -9
  105. package/resources/themes/lara-light-indigo/theme.css +62 -9
  106. package/resources/themes/lara-light-pink/theme.css +62 -9
  107. package/resources/themes/lara-light-teal/theme.css +62 -9
  108. package/resources/themes/luna-amber/theme.css +62 -0
  109. package/resources/themes/luna-blue/theme.css +62 -0
  110. package/resources/themes/luna-green/theme.css +62 -0
  111. package/resources/themes/luna-pink/theme.css +62 -0
  112. package/resources/themes/md-dark-deeppurple/theme.css +225 -43
  113. package/resources/themes/md-dark-indigo/theme.css +213 -151
  114. package/resources/themes/md-light-deeppurple/theme.css +225 -43
  115. package/resources/themes/md-light-indigo/theme.css +62 -0
  116. package/resources/themes/mdc-dark-deeppurple/theme.css +225 -43
  117. package/resources/themes/mdc-dark-indigo/theme.css +213 -151
  118. package/resources/themes/mdc-light-deeppurple/theme.css +225 -43
  119. package/resources/themes/mdc-light-indigo/theme.css +62 -0
  120. package/resources/themes/mira/theme.css +62 -0
  121. package/resources/themes/nano/theme.css +62 -0
  122. package/resources/themes/nova/theme.css +62 -0
  123. package/resources/themes/nova-accent/theme.css +62 -0
  124. package/resources/themes/nova-alt/theme.css +62 -0
  125. package/resources/themes/rhea/theme.css +62 -0
  126. package/resources/themes/saga-blue/theme.css +62 -0
  127. package/resources/themes/saga-green/theme.css +62 -0
  128. package/resources/themes/saga-orange/theme.css +62 -0
  129. package/resources/themes/soho-dark/theme.css +87 -25
  130. package/resources/themes/soho-light/theme.css +62 -0
  131. package/resources/themes/tailwind-light/theme.css +62 -0
  132. package/resources/themes/vela-blue/theme.css +62 -0
  133. package/resources/themes/vela-green/theme.css +62 -0
  134. package/resources/themes/vela-orange/theme.css +62 -0
  135. package/resources/themes/viva-dark/theme.css +62 -0
  136. package/resources/themes/viva-light/theme.css +62 -0
  137. package/tabview/tabview.cjs.js +0 -2
  138. package/tabview/tabview.cjs.min.js +1 -1
  139. package/tabview/tabview.esm.js +0 -2
  140. package/tabview/tabview.esm.min.js +1 -1
  141. package/tabview/tabview.js +0 -2
  142. package/tabview/tabview.min.js +1 -1
  143. package/tooltip/tooltip.cjs.js +2 -2
  144. package/tooltip/tooltip.cjs.min.js +1 -1
  145. package/tooltip/tooltip.esm.js +2 -2
  146. package/tooltip/tooltip.esm.min.js +1 -1
  147. package/tooltip/tooltip.js +2 -2
  148. package/tooltip/tooltip.min.js +1 -1
  149. package/tree/tree.cjs.js +45 -8
  150. package/tree/tree.cjs.min.js +1 -1
  151. package/tree/tree.esm.js +45 -8
  152. package/tree/tree.esm.min.js +1 -1
  153. package/tree/tree.js +45 -8
  154. package/tree/tree.min.js +1 -1
  155. package/treetable/treetable.cjs.js +240 -7
  156. package/treetable/treetable.cjs.min.js +1 -1
  157. package/treetable/treetable.d.ts +29 -0
  158. package/treetable/treetable.esm.js +240 -7
  159. package/treetable/treetable.esm.min.js +1 -1
  160. package/treetable/treetable.js +240 -7
  161. package/treetable/treetable.min.js +1 -1
  162. package/utils/utils.d.ts +7 -4
  163. package/virtualscroller/virtualscroller.cjs.js +23 -1
  164. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  165. package/virtualscroller/virtualscroller.esm.js +23 -1
  166. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  167. package/virtualscroller/virtualscroller.js +23 -1
  168. package/virtualscroller/virtualscroller.min.js +1 -1
  169. package/web-types.json +66 -28
@@ -161,6 +161,7 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
161
161
  body: null,
162
162
  bodyClassName: null,
163
163
  bodyStyle: null,
164
+ cellEditValidateOnClose: false,
164
165
  cellEditValidator: null,
165
166
  cellEditValidatorEvent: 'click',
166
167
  className: null,
@@ -354,6 +355,8 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
354
355
  columnResizeMode: 'fit',
355
356
  contextMenuSelectionKey: null,
356
357
  currentPageReportTemplate: '({currentPage} of {totalPages})',
358
+ customRestoreState: null,
359
+ customSaveState: null,
357
360
  defaultSortOrder: 1,
358
361
  emptyMessage: null,
359
362
  expandedKeys: null,
@@ -391,6 +394,8 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
391
394
  onSelect: null,
392
395
  onSelectionChange: null,
393
396
  onSort: null,
397
+ onStateRestore: null,
398
+ onStateSave: null,
394
399
  onToggle: null,
395
400
  onUnselect: null,
396
401
  onValueChange: null,
@@ -423,6 +428,8 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
423
428
  sortIcon: null,
424
429
  sortMode: 'single',
425
430
  sortOrder: null,
431
+ stateKey: null,
432
+ stateStorage: null,
426
433
  stripedRows: false,
427
434
  style: null,
428
435
  tabIndex: 0,
@@ -2377,6 +2384,19 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
2377
2384
  });
2378
2385
  TreeTableScrollableView.displayName = 'TreeTableScrollableView';
2379
2386
 
2387
+ var getStorage = function getStorage(stateStorageProp) {
2388
+ switch (stateStorageProp) {
2389
+ case 'local':
2390
+ return window.localStorage;
2391
+ case 'session':
2392
+ return window.sessionStorage;
2393
+ case 'custom':
2394
+ return null;
2395
+ default:
2396
+ throw new Error(stateStorageProp + ' is not a valid value for the state storage, supported values are "local", "session" and "custom".');
2397
+ }
2398
+ };
2399
+
2380
2400
  function ownKeys(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; }
2381
2401
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2382
2402
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
@@ -2479,6 +2499,152 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
2479
2499
  _useEventListener4 = _slicedToArray(_useEventListener3, 2),
2480
2500
  bindDocumentMouseUpListener = _useEventListener4[0],
2481
2501
  unbindDocumentMouseUpListener = _useEventListener4[1];
2502
+ var isCustomStateStorage = function isCustomStateStorage() {
2503
+ return props.stateStorage === 'custom';
2504
+ };
2505
+ var isStateful = function isStateful() {
2506
+ return props.stateKey != null || isCustomStateStorage();
2507
+ };
2508
+ var saveState = function saveState() {
2509
+ var state = {};
2510
+ if (props.paginator) {
2511
+ state.first = getFirst();
2512
+ state.rows = getRows();
2513
+ }
2514
+ var sortField = getSortField();
2515
+ if (sortField) {
2516
+ state.sortField = sortField;
2517
+ state.sortOrder = getSortOrder();
2518
+ }
2519
+ var multiSortMeta = getMultiSortMeta();
2520
+ if (multiSortMeta) {
2521
+ state.multiSortMeta = multiSortMeta;
2522
+ }
2523
+ if (hasFilter()) {
2524
+ state.filters = getFilters();
2525
+ }
2526
+ if (props.reorderableColumns) {
2527
+ state.columnOrder = columnOrderState;
2528
+ }
2529
+ state.expandedKeysState = expandedKeysState;
2530
+ if (props.selectionKeys && props.onSelectionChange) {
2531
+ state.selectionKeys = props.selectionKeys;
2532
+ }
2533
+ if (isCustomStateStorage()) {
2534
+ if (props.customSaveState) {
2535
+ props.customSaveState(state);
2536
+ }
2537
+ } else {
2538
+ var storage = getStorage(props.stateStorage);
2539
+ if (utils.ObjectUtils.isNotEmpty(state)) {
2540
+ storage.setItem(props.stateKey, JSON.stringify(state));
2541
+ }
2542
+ }
2543
+ if (props.onStateSave) {
2544
+ props.onStateSave(state);
2545
+ }
2546
+ };
2547
+ var clearState = function clearState() {
2548
+ var storage = getStorage(props.stateStorage);
2549
+ if (storage && props.stateKey) {
2550
+ storage.removeItem(props.stateKey);
2551
+ }
2552
+ };
2553
+ var restoreState = function restoreState() {
2554
+ var restoredState = {};
2555
+ if (isCustomStateStorage()) {
2556
+ if (props.customRestoreState) {
2557
+ restoredState = props.customRestoreState();
2558
+ }
2559
+ } else {
2560
+ var storage = getStorage(props.stateStorage);
2561
+ var stateString = storage.getItem(props.stateKey);
2562
+ var dateFormat = /\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/;
2563
+ var reviver = function reviver(key, value) {
2564
+ return typeof value === 'string' && dateFormat.test(value) ? new Date(value) : value;
2565
+ };
2566
+ if (stateString) {
2567
+ restoredState = JSON.parse(stateString, reviver);
2568
+ }
2569
+ }
2570
+ _restoreState(restoredState);
2571
+ };
2572
+ var restoreTableState = function restoreTableState(restoredState) {
2573
+ _restoreState(restoredState);
2574
+ };
2575
+ var _restoreState = function _restoreState() {
2576
+ var restoredState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2577
+ if (utils.ObjectUtils.isNotEmpty(restoredState)) {
2578
+ if (props.paginator) {
2579
+ if (props.onPage) {
2580
+ var getOnPageParams = function getOnPageParams(first, rows) {
2581
+ var totalRecords = getTotalRecords(processedData());
2582
+ var pageCount = Math.ceil(totalRecords / rows) || 1;
2583
+ var page = Math.floor(first / rows);
2584
+ return {
2585
+ first: first,
2586
+ rows: rows,
2587
+ page: page,
2588
+ pageCount: pageCount
2589
+ };
2590
+ };
2591
+ props.onPage(createEvent(getOnPageParams(restoredState.first, restoredState.rows)));
2592
+ } else {
2593
+ setFirstState(restoredState.first);
2594
+ setRowsState(restoredState.rows);
2595
+ }
2596
+ }
2597
+ if (restoredState.sortField) {
2598
+ if (props.onSort) {
2599
+ props.onSort(createEvent({
2600
+ sortField: restoredState.sortField,
2601
+ sortOrder: restoredState.sortOrder
2602
+ }));
2603
+ } else {
2604
+ setSortFieldState(restoredState.sortField);
2605
+ setSortOrderState(restoredState.sortOrder);
2606
+ }
2607
+ }
2608
+ if (restoredState.multiSortMeta) {
2609
+ if (props.onSort) {
2610
+ props.onSort(createEvent({
2611
+ multiSortMeta: restoredState.multiSortMeta
2612
+ }));
2613
+ } else {
2614
+ setMultiSortMetaState(restoredState.multiSortMeta);
2615
+ }
2616
+ }
2617
+ if (restoredState.filters) {
2618
+ if (props.onFilter) {
2619
+ props.onFilter(createEvent({
2620
+ filters: restoredState.filters
2621
+ }));
2622
+ } else {
2623
+ setFiltersState(cloneFilters(restoredState.filters));
2624
+ }
2625
+ }
2626
+ if (props.reorderableColumns) {
2627
+ setColumnOrderState(restoredState.columnOrder);
2628
+ }
2629
+ if (restoredState.expandedKeysState) {
2630
+ if (props.onToggle) {
2631
+ props.onRowToggle({
2632
+ data: restoredState.expandedKeysState
2633
+ });
2634
+ } else {
2635
+ setExpandedKeysState(restoredState.expandedKeysState);
2636
+ }
2637
+ }
2638
+ if (restoredState.selectionKeys && props.onSelectionChange) {
2639
+ props.onSelectionChange({
2640
+ value: restoredState.selectionKeys
2641
+ });
2642
+ }
2643
+ if (props.onStateRestore) {
2644
+ props.onStateRestore(restoredState);
2645
+ }
2646
+ }
2647
+ };
2482
2648
  var onToggle = function onToggle(event) {
2483
2649
  var originalEvent = event.originalEvent,
2484
2650
  value = event.value,
@@ -2703,6 +2869,46 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
2703
2869
  }));
2704
2870
  }
2705
2871
  };
2872
+ var cloneFilters = function cloneFilters(filters) {
2873
+ filters = filters || props.filters;
2874
+ var cloned = {};
2875
+ if (filters) {
2876
+ Object.entries(filters).forEach(function (_ref) {
2877
+ var _ref2 = _slicedToArray(_ref, 2),
2878
+ prop = _ref2[0],
2879
+ value = _ref2[1];
2880
+ cloned[prop] = value;
2881
+ });
2882
+ } else {
2883
+ var columns = getColumns();
2884
+ cloned = columns.reduce(function (filters, col) {
2885
+ var field = getColumnProp(col, 'filterField') || getColumnProp(col, 'field');
2886
+ var filterFunction = getColumnProp(col, 'filterFunction');
2887
+ var dataType = getColumnProp(col, 'dataType');
2888
+ var matchMode = getColumnProp(col, 'filterMatchMode') || (context && context.filterMatchModeOptions[dataType] || PrimeReact__default["default"].filterMatchModeOptions[dataType] ? context && context.filterMatchModeOptions[dataType][0] || PrimeReact__default["default"].filterMatchModeOptions[dataType][0] : PrimeReact.FilterMatchMode.STARTS_WITH);
2889
+ var constraint = {
2890
+ value: null,
2891
+ matchMode: matchMode
2892
+ };
2893
+ if (filterFunction) {
2894
+ PrimeReact.FilterService.register("custom_".concat(field), function () {
2895
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2896
+ args[_key] = arguments[_key];
2897
+ }
2898
+ return filterFunction.apply(void 0, args.concat([{
2899
+ column: col
2900
+ }]));
2901
+ });
2902
+ }
2903
+ filters[field] = constraint;
2904
+ return filters;
2905
+ }, {});
2906
+ }
2907
+ return cloned;
2908
+ };
2909
+ var hasFilter = function hasFilter() {
2910
+ return utils.ObjectUtils.isNotEmpty(getFilters());
2911
+ };
2706
2912
  var isFilterBlank = function isFilterBlank(filter) {
2707
2913
  if (filter !== null && filter !== undefined) {
2708
2914
  if (typeof filter === 'string' && filter.trim().length === 0 || filter instanceof Array && filter.length === 0) {
@@ -2781,6 +2987,9 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
2781
2987
  delta: delta
2782
2988
  });
2783
2989
  }
2990
+ if (isStateful()) {
2991
+ saveState();
2992
+ }
2784
2993
  }
2785
2994
  resizerHelperRef.current.style.display = 'none';
2786
2995
  resizeColumn.current = null;
@@ -3167,12 +3376,12 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
3167
3376
  }
3168
3377
  }
3169
3378
  };
3170
- var isFilterMatched = function isFilterMatched(node, _ref) {
3171
- var filterField = _ref.filterField,
3172
- filterValue = _ref.filterValue,
3173
- filterConstraint = _ref.filterConstraint,
3174
- isStrictMode = _ref.isStrictMode,
3175
- options = _ref.options;
3379
+ var isFilterMatched = function isFilterMatched(node, _ref3) {
3380
+ var filterField = _ref3.filterField,
3381
+ filterValue = _ref3.filterValue,
3382
+ filterConstraint = _ref3.filterConstraint,
3383
+ isStrictMode = _ref3.isStrictMode,
3384
+ options = _ref3.options;
3176
3385
  var matched = false;
3177
3386
  var dataFieldValue = utils.ObjectUtils.resolveFieldData(node.data, filterField);
3178
3387
  if (filterConstraint(dataFieldValue, filterValue, props.filterLocale, options)) {
@@ -3220,6 +3429,16 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
3220
3429
  }
3221
3430
  return data;
3222
3431
  };
3432
+ hooks.useMountEffect(function () {
3433
+ if (isStateful()) {
3434
+ restoreState();
3435
+ }
3436
+ });
3437
+ hooks.useUpdateEffect(function () {
3438
+ if (isStateful()) {
3439
+ saveState();
3440
+ }
3441
+ });
3223
3442
  hooks.useUpdateEffect(function () {
3224
3443
  if (childFocusEvent.current) {
3225
3444
  var nodeElement = childFocusEvent.current.target;
@@ -3234,12 +3453,26 @@ this.primereact.treetable = (function (exports, React, PrimeReact, componentbase
3234
3453
  React__namespace.useImperativeHandle(ref, function () {
3235
3454
  return {
3236
3455
  props: props,
3456
+ clearState: clearState,
3237
3457
  filter: filter,
3238
3458
  getElement: function getElement() {
3239
3459
  return elementRef.current;
3240
- }
3460
+ },
3461
+ restoreState: restoreState,
3462
+ restoreTableState: restoreTableState,
3463
+ saveState: saveState
3241
3464
  };
3242
3465
  });
3466
+ var createEvent = function createEvent(event) {
3467
+ return _objectSpread({
3468
+ first: getFirst(),
3469
+ rows: getRows(),
3470
+ sortField: getSortField(),
3471
+ sortOrder: getSortOrder(),
3472
+ multiSortMeta: getMultiSortMeta(),
3473
+ filters: getFilters()
3474
+ }, event);
3475
+ };
3243
3476
  var createTableHeader = function createTableHeader(columns, columnGroup) {
3244
3477
  var sortField = getSortField();
3245
3478
  var sortOrder = getSortOrder();