primereact 10.9.0 → 10.9.2

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 (178) hide show
  1. package/autocomplete/autocomplete.cjs.js +4 -4
  2. package/autocomplete/autocomplete.cjs.min.js +1 -1
  3. package/autocomplete/autocomplete.d.ts +2 -2
  4. package/autocomplete/autocomplete.esm.js +4 -4
  5. package/autocomplete/autocomplete.esm.min.js +1 -1
  6. package/autocomplete/autocomplete.js +4 -4
  7. package/autocomplete/autocomplete.min.js +1 -1
  8. package/breadcrumb/breadcrumb.cjs.js +1 -1
  9. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  10. package/breadcrumb/breadcrumb.esm.js +1 -1
  11. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  12. package/breadcrumb/breadcrumb.js +1 -1
  13. package/breadcrumb/breadcrumb.min.js +1 -1
  14. package/calendar/calendar.cjs.js +35 -20
  15. package/calendar/calendar.cjs.min.js +1 -1
  16. package/calendar/calendar.d.ts +15 -61
  17. package/calendar/calendar.esm.js +35 -20
  18. package/calendar/calendar.esm.min.js +1 -1
  19. package/calendar/calendar.js +35 -20
  20. package/calendar/calendar.min.js +1 -1
  21. package/componentbase/componentbase.cjs.js +1 -1
  22. package/componentbase/componentbase.cjs.min.js +1 -1
  23. package/componentbase/componentbase.esm.js +1 -1
  24. package/componentbase/componentbase.esm.min.js +1 -1
  25. package/componentbase/componentbase.js +1 -1
  26. package/componentbase/componentbase.min.js +1 -1
  27. package/contextmenu/contextmenu.cjs.js +0 -1
  28. package/contextmenu/contextmenu.cjs.min.js +1 -1
  29. package/contextmenu/contextmenu.esm.js +0 -1
  30. package/contextmenu/contextmenu.esm.min.js +1 -1
  31. package/contextmenu/contextmenu.js +0 -1
  32. package/contextmenu/contextmenu.min.js +1 -1
  33. package/core/core.js +126 -76
  34. package/core/core.min.js +6 -6
  35. package/datatable/datatable.cjs.js +15 -7
  36. package/datatable/datatable.cjs.min.js +1 -1
  37. package/datatable/datatable.esm.js +15 -7
  38. package/datatable/datatable.esm.min.js +1 -1
  39. package/datatable/datatable.js +15 -7
  40. package/datatable/datatable.min.js +1 -1
  41. package/dataview/dataview.cjs.js +6 -2
  42. package/dataview/dataview.cjs.min.js +1 -1
  43. package/dataview/dataview.esm.js +6 -2
  44. package/dataview/dataview.esm.min.js +1 -1
  45. package/dataview/dataview.js +7 -3
  46. package/dataview/dataview.min.js +1 -1
  47. package/dock/dock.cjs.js +0 -1
  48. package/dock/dock.cjs.min.js +1 -1
  49. package/dock/dock.esm.js +0 -1
  50. package/dock/dock.esm.min.js +1 -1
  51. package/dock/dock.js +0 -1
  52. package/dock/dock.min.js +1 -1
  53. package/dropdown/dropdown.cjs.js +24 -22
  54. package/dropdown/dropdown.cjs.min.js +1 -1
  55. package/dropdown/dropdown.d.ts +5 -0
  56. package/dropdown/dropdown.esm.js +25 -23
  57. package/dropdown/dropdown.esm.min.js +1 -1
  58. package/dropdown/dropdown.js +24 -22
  59. package/dropdown/dropdown.min.js +1 -1
  60. package/inputtextarea/inputtextarea.cjs.js +1 -1
  61. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  62. package/inputtextarea/inputtextarea.esm.js +1 -1
  63. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  64. package/inputtextarea/inputtextarea.js +1 -1
  65. package/inputtextarea/inputtextarea.min.js +1 -1
  66. package/megamenu/megamenu.cjs.js +1 -2
  67. package/megamenu/megamenu.cjs.min.js +1 -1
  68. package/megamenu/megamenu.esm.js +1 -2
  69. package/megamenu/megamenu.esm.min.js +1 -1
  70. package/megamenu/megamenu.js +1 -2
  71. package/megamenu/megamenu.min.js +1 -1
  72. package/mention/mention.cjs.js +1 -1
  73. package/mention/mention.cjs.min.js +1 -1
  74. package/mention/mention.esm.js +1 -1
  75. package/mention/mention.esm.min.js +1 -1
  76. package/mention/mention.js +1 -1
  77. package/mention/mention.min.js +1 -1
  78. package/menu/menu.cjs.js +0 -1
  79. package/menu/menu.cjs.min.js +1 -1
  80. package/menu/menu.esm.js +0 -1
  81. package/menu/menu.esm.min.js +1 -1
  82. package/menu/menu.js +0 -1
  83. package/menu/menu.min.js +1 -1
  84. package/menubar/menubar.cjs.js +0 -1
  85. package/menubar/menubar.cjs.min.js +1 -1
  86. package/menubar/menubar.esm.js +0 -1
  87. package/menubar/menubar.esm.min.js +1 -1
  88. package/menubar/menubar.js +0 -1
  89. package/menubar/menubar.min.js +1 -1
  90. package/multiselect/multiselect.cjs.js +24 -22
  91. package/multiselect/multiselect.cjs.min.js +1 -1
  92. package/multiselect/multiselect.d.ts +6 -1
  93. package/multiselect/multiselect.esm.js +25 -23
  94. package/multiselect/multiselect.esm.min.js +1 -1
  95. package/multiselect/multiselect.js +24 -22
  96. package/multiselect/multiselect.min.js +1 -1
  97. package/package.json +1 -1
  98. package/panelmenu/panelmenu.cjs.js +1 -2
  99. package/panelmenu/panelmenu.cjs.min.js +1 -1
  100. package/panelmenu/panelmenu.esm.js +1 -2
  101. package/panelmenu/panelmenu.esm.min.js +1 -1
  102. package/panelmenu/panelmenu.js +1 -2
  103. package/panelmenu/panelmenu.min.js +1 -1
  104. package/passthrough/tailwind/index.cjs.js +1 -1
  105. package/passthrough/tailwind/index.cjs.min.js +1 -1
  106. package/passthrough/tailwind/index.esm.js +1 -1
  107. package/passthrough/tailwind/index.esm.min.js +1 -1
  108. package/passthrough/tailwind/index.js +1 -1
  109. package/passthrough/tailwind/index.min.js +1 -1
  110. package/picklist/picklist.cjs.js +19 -6
  111. package/picklist/picklist.cjs.min.js +1 -1
  112. package/picklist/picklist.esm.js +19 -6
  113. package/picklist/picklist.esm.min.js +1 -1
  114. package/picklist/picklist.js +19 -6
  115. package/picklist/picklist.min.js +1 -1
  116. package/primereact.all.cjs.js +255 -173
  117. package/primereact.all.cjs.min.js +1 -1
  118. package/primereact.all.esm.js +2653 -2571
  119. package/primereact.all.esm.min.js +1 -1
  120. package/primereact.all.js +255 -173
  121. package/primereact.all.min.js +1 -1
  122. package/splitbutton/splitbutton.cjs.js +0 -1
  123. package/splitbutton/splitbutton.cjs.min.js +1 -1
  124. package/splitbutton/splitbutton.esm.js +0 -1
  125. package/splitbutton/splitbutton.esm.min.js +1 -1
  126. package/splitbutton/splitbutton.js +0 -1
  127. package/splitbutton/splitbutton.min.js +1 -1
  128. package/tieredmenu/tieredmenu.cjs.js +0 -1
  129. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  130. package/tieredmenu/tieredmenu.esm.js +0 -1
  131. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  132. package/tieredmenu/tieredmenu.js +0 -1
  133. package/tieredmenu/tieredmenu.min.js +1 -1
  134. package/togglebutton/togglebutton.cjs.js +4 -4
  135. package/togglebutton/togglebutton.cjs.min.js +1 -1
  136. package/togglebutton/togglebutton.esm.js +4 -4
  137. package/togglebutton/togglebutton.esm.min.js +1 -1
  138. package/togglebutton/togglebutton.js +4 -4
  139. package/togglebutton/togglebutton.min.js +1 -1
  140. package/tooltip/tooltip.cjs.js +7 -2
  141. package/tooltip/tooltip.cjs.min.js +1 -1
  142. package/tooltip/tooltip.esm.js +7 -2
  143. package/tooltip/tooltip.esm.min.js +1 -1
  144. package/tooltip/tooltip.js +7 -2
  145. package/tooltip/tooltip.min.js +1 -1
  146. package/tree/tree.cjs.js +37 -38
  147. package/tree/tree.cjs.min.js +1 -1
  148. package/tree/tree.d.ts +11 -1
  149. package/tree/tree.esm.js +38 -39
  150. package/tree/tree.esm.min.js +1 -1
  151. package/tree/tree.js +38 -39
  152. package/tree/tree.min.js +1 -1
  153. package/treeselect/treeselect.cjs.js +10 -6
  154. package/treeselect/treeselect.cjs.min.js +1 -1
  155. package/treeselect/treeselect.d.ts +6 -1
  156. package/treeselect/treeselect.esm.js +11 -7
  157. package/treeselect/treeselect.esm.min.js +1 -1
  158. package/treeselect/treeselect.js +10 -6
  159. package/treeselect/treeselect.min.js +1 -1
  160. package/treetable/treetable.cjs.js +223 -223
  161. package/treetable/treetable.cjs.min.js +1 -1
  162. package/treetable/treetable.esm.js +224 -224
  163. package/treetable/treetable.esm.min.js +1 -1
  164. package/treetable/treetable.js +224 -224
  165. package/treetable/treetable.min.js +1 -1
  166. package/utils/utils.cjs.js +54 -8
  167. package/utils/utils.cjs.min.js +1 -1
  168. package/utils/utils.esm.js +33 -7
  169. package/utils/utils.esm.min.js +1 -1
  170. package/utils/utils.js +54 -10
  171. package/utils/utils.min.js +1 -1
  172. package/virtualscroller/virtualscroller.cjs.js +2 -2
  173. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  174. package/virtualscroller/virtualscroller.esm.js +2 -2
  175. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  176. package/virtualscroller/virtualscroller.js +2 -2
  177. package/virtualscroller/virtualscroller.min.js +1 -1
  178. package/web-types.json +996 -51
package/core/core.js CHANGED
@@ -1,7 +1,27 @@
1
1
  this.primereact = this.primereact || {};
2
- this.primereact.utils = (function (exports) {
2
+ this.primereact.utils = (function (exports, React) {
3
3
  'use strict';
4
4
 
5
+ function _interopNamespace(e) {
6
+ if (e && e.__esModule) return e;
7
+ var n = Object.create(null);
8
+ if (e) {
9
+ Object.keys(e).forEach(function (k) {
10
+ if (k !== 'default') {
11
+ var d = Object.getOwnPropertyDescriptor(e, k);
12
+ Object.defineProperty(n, k, d.get ? d : {
13
+ enumerable: true,
14
+ get: function () { return e[k]; }
15
+ });
16
+ }
17
+ });
18
+ }
19
+ n["default"] = e;
20
+ return Object.freeze(n);
21
+ }
22
+
23
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
24
+
5
25
  function _arrayWithHoles(arr) {
6
26
  if (Array.isArray(arr)) return arr;
7
27
  }
@@ -753,34 +773,58 @@ this.primereact.utils = (function (exports) {
753
773
  var parents = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
754
774
  return element.parentNode === null ? parents : this.getParents(element.parentNode, parents.concat([element.parentNode]));
755
775
  }
776
+
777
+ /**
778
+ * Gets all scrollable parent elements of a given element
779
+ * @param {HTMLElement} element - The element to find scrollable parents for
780
+ * @param {boolean} hideOverlaysOnDocumentScrolling - Whether to include window/document level scrolling
781
+ * @returns {Array} Array of scrollable parent elements
782
+ */
756
783
  }, {
757
784
  key: "getScrollableParents",
758
785
  value: function getScrollableParents(element) {
759
786
  var hideOverlaysOnDocumentScrolling = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
760
787
  var scrollableParents = [];
761
788
  if (element) {
789
+ // Get all parent elements
762
790
  var parents = this.getParents(element);
791
+ // Regex to match auto or scroll overflow values
763
792
  var overflowRegex = /(auto|scroll)/;
793
+
794
+ /**
795
+ * Checks if an element has overflow scroll/auto in any direction
796
+ * @param {HTMLElement} node - Element to check
797
+ * @returns {boolean} True if element has overflow scroll/auto
798
+ */
764
799
  var overflowCheck = function overflowCheck(node) {
765
800
  var styleDeclaration = node ? getComputedStyle(node) : null;
766
801
  return styleDeclaration && (overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflow-x')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflow-y')));
767
802
  };
803
+
804
+ /**
805
+ * Adds a scrollable parent element to the collection
806
+ * @param {HTMLElement} node - Element to add
807
+ */
768
808
  var addScrollableParent = function addScrollableParent(node) {
769
809
  if (hideOverlaysOnDocumentScrolling) {
770
- // nodeType 9 is for document element
810
+ // For document/body/html elements, add window instead
771
811
  scrollableParents.push(node.nodeName === 'BODY' || node.nodeName === 'HTML' || node.nodeType === 9 ? window : node);
772
- } else {
773
- scrollableParents.push(node);
774
812
  }
775
813
  };
814
+
815
+ // Iterate through all parent elements
776
816
  var _iterator = _createForOfIteratorHelper$1(parents),
777
817
  _step;
778
818
  try {
779
819
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
820
+ var _parent$dataset;
780
821
  var parent = _step.value;
781
- var scrollSelectors = parent.nodeType === 1 && parent.dataset.scrollselectors;
822
+ // Check for custom scroll selectors in data attribute
823
+ var scrollSelectors = parent.nodeType === 1 && ((_parent$dataset = parent.dataset) === null || _parent$dataset === void 0 ? void 0 : _parent$dataset.scrollselectors);
782
824
  if (scrollSelectors) {
783
825
  var selectors = scrollSelectors.split(',');
826
+
827
+ // Check each selector
784
828
  var _iterator2 = _createForOfIteratorHelper$1(selectors),
785
829
  _step2;
786
830
  try {
@@ -798,7 +842,7 @@ this.primereact.utils = (function (exports) {
798
842
  }
799
843
  }
800
844
 
801
- // BODY
845
+ // Check if the parent itself is scrollable
802
846
  if (parent.nodeType === 1 && overflowCheck(parent)) {
803
847
  addScrollableParent(parent);
804
848
  }
@@ -810,11 +854,11 @@ this.primereact.utils = (function (exports) {
810
854
  }
811
855
  }
812
856
 
813
- // we should always at least have the body or window
857
+ // Ensure window/body is always included as fallback
814
858
  if (!scrollableParents.some(function (node) {
815
859
  return node === document.body || node === window;
816
860
  })) {
817
- scrollableParents.push(window);
861
+ scrollableParents.push(hideOverlaysOnDocumentScrolling ? window : document.body);
818
862
  }
819
863
  return scrollableParents;
820
864
  }
@@ -2014,7 +2058,7 @@ this.primereact.utils = (function (exports) {
2014
2058
  if (icon !== null) {
2015
2059
  var iconType = _typeof(icon);
2016
2060
  var className = classNames(iconProps.className, iconType === 'string' && icon);
2017
- content = /*#__PURE__*/React.createElement("span", _extends({}, iconProps, {
2061
+ content = /*#__PURE__*/React__namespace.createElement("span", _extends({}, iconProps, {
2018
2062
  className: className,
2019
2063
  key: UniqueComponentId('icon')
2020
2064
  }));
@@ -2605,7 +2649,7 @@ this.primereact.utils = (function (exports) {
2605
2649
 
2606
2650
  return exports;
2607
2651
 
2608
- })({});
2652
+ })({}, React);
2609
2653
 
2610
2654
  this.primereact = this.primereact || {};
2611
2655
  this.primereact.api = (function (exports, utils, React) {
@@ -3843,7 +3887,7 @@ this.primereact.componentbase = (function (exports, PrimeReact, hooks, utils) {
3843
3887
 
3844
3888
  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; }
3845
3889
  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; }
3846
- var baseStyle = "\n.p-hidden-accessible {\n position: absolute;\n pointer-events: none;\n opacity: 0;\n white-space: nowrap;\n}\n\n.p-overflow-hidden {\n overflow: hidden;\n padding-right: var(--scrollbar-width);\n}\n";
3890
+ var baseStyle = "\n.p-hidden-accessible {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n opacity: 0;\n overflow: hidden;\n padding: 0;\n pointer-events: none;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n.p-overflow-hidden {\n overflow: hidden;\n padding-right: var(--scrollbar-width);\n}\n";
3847
3891
  var buttonStyles = "\n.p-button {\n margin: 0;\n display: inline-flex;\n cursor: pointer;\n user-select: none;\n align-items: center;\n vertical-align: bottom;\n text-align: center;\n overflow: hidden;\n position: relative;\n}\n\n.p-button-label {\n flex: 1 1 auto;\n}\n\n.p-button-icon-right {\n order: 1;\n}\n\n.p-button:disabled {\n cursor: default;\n}\n\n.p-button-icon-only {\n justify-content: center;\n}\n\n.p-button-icon-only .p-button-label {\n visibility: hidden;\n width: 0;\n flex: 0 0 auto;\n}\n\n.p-button-vertical {\n flex-direction: column;\n}\n\n.p-button-icon-bottom {\n order: 2;\n}\n\n.p-button-group .p-button {\n margin: 0;\n}\n\n.p-button-group .p-button:not(:last-child) {\n border-right: 0 none;\n}\n\n.p-button-group .p-button:not(:first-of-type):not(:last-of-type) {\n border-radius: 0;\n}\n\n.p-button-group .p-button:first-of-type {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.p-button-group .p-button:last-of-type {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.p-button-group .p-button:focus {\n position: relative;\n z-index: 1;\n}\n";
3848
3892
  var inputTextStyles = "\n.p-inputtext {\n margin: 0;\n}\n\n.p-fluid .p-inputtext {\n width: 100%;\n}\n\n/* InputGroup */\n.p-inputgroup {\n display: flex;\n align-items: stretch;\n width: 100%;\n}\n\n.p-inputgroup-addon {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-inputgroup .p-float-label {\n display: flex;\n align-items: stretch;\n width: 100%;\n}\n\n.p-inputgroup .p-inputtext,\n.p-fluid .p-inputgroup .p-inputtext,\n.p-inputgroup .p-inputwrapper,\n.p-fluid .p-inputgroup .p-input {\n flex: 1 1 auto;\n width: 1%;\n}\n\n/* Floating Label */\n.p-float-label {\n display: block;\n position: relative;\n}\n\n.p-float-label label {\n position: absolute;\n pointer-events: none;\n top: 50%;\n margin-top: -0.5rem;\n transition-property: all;\n transition-timing-function: ease;\n line-height: 1;\n}\n\n.p-float-label textarea ~ label,\n.p-float-label .p-mention ~ label {\n top: 1rem;\n}\n\n.p-float-label input:focus ~ label,\n.p-float-label input:-webkit-autofill ~ label,\n.p-float-label input.p-filled ~ label,\n.p-float-label textarea:focus ~ label,\n.p-float-label textarea.p-filled ~ label,\n.p-float-label .p-inputwrapper-focus ~ label,\n.p-float-label .p-inputwrapper-filled ~ label,\n.p-float-label .p-tooltip-target-wrapper ~ label {\n top: -0.75rem;\n font-size: 12px;\n}\n\n.p-float-label .p-placeholder,\n.p-float-label input::placeholder,\n.p-float-label .p-inputtext::placeholder {\n opacity: 0;\n transition-property: all;\n transition-timing-function: ease;\n}\n\n.p-float-label .p-focus .p-placeholder,\n.p-float-label input:focus::placeholder,\n.p-float-label .p-inputtext:focus::placeholder {\n opacity: 1;\n transition-property: all;\n transition-timing-function: ease;\n}\n\n.p-input-icon-left,\n.p-input-icon-right {\n position: relative;\n display: inline-block;\n}\n\n.p-input-icon-left > i,\n.p-input-icon-right > i,\n.p-input-icon-left > svg,\n.p-input-icon-right > svg,\n.p-input-icon-left > .p-input-prefix,\n.p-input-icon-right > .p-input-suffix {\n position: absolute;\n top: 50%;\n margin-top: -0.5rem;\n}\n\n.p-fluid .p-input-icon-left,\n.p-fluid .p-input-icon-right {\n display: block;\n width: 100%;\n}\n";
3849
3893
  var iconStyles = "\n.p-icon {\n display: inline-block;\n}\n\n.p-icon-spin {\n -webkit-animation: p-icon-spin 2s infinite linear;\n animation: p-icon-spin 2s infinite linear;\n}\n\nsvg.p-icon {\n pointer-events: auto;\n}\n\nsvg.p-icon g,\n.p-disabled svg.p-icon {\n pointer-events: none;\n}\n\n@-webkit-keyframes p-icon-spin {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(359deg);\n transform: rotate(359deg);\n }\n}\n\n@keyframes p-icon-spin {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(359deg);\n transform: rotate(359deg);\n }\n}\n";
@@ -9525,8 +9569,9 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, componentbase,
9525
9569
  var hide = function hide(e) {
9526
9570
  if (e && e.type === 'blur') setMultipleFocusEvents(false);
9527
9571
  clearTimeouts();
9572
+ var success = true;
9528
9573
  if (visibleState) {
9529
- var success = sendCallback(props.onBeforeHide, {
9574
+ success = sendCallback(props.onBeforeHide, {
9530
9575
  originalEvent: e,
9531
9576
  target: currentTargetRef.current
9532
9577
  });
@@ -9537,7 +9582,6 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, componentbase,
9537
9582
  }
9538
9583
  utils.ZIndexUtils.clear(elementRef.current);
9539
9584
  utils.DomHandler.removeClass(elementRef.current, 'p-tooltip-active');
9540
- setVisibleState(false);
9541
9585
  sendCallback(props.onHide, {
9542
9586
  originalEvent: e,
9543
9587
  target: currentTargetRef.current
@@ -9545,6 +9589,11 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, componentbase,
9545
9589
  });
9546
9590
  }
9547
9591
  }
9592
+
9593
+ // handles the case when visibleState change from mouseenter was queued and mouseleave handler was called earlier than queued re-render
9594
+ if (success) {
9595
+ setVisibleState(false);
9596
+ }
9548
9597
  };
9549
9598
  var align = function align(target, coordinate, position) {
9550
9599
  var left = 0;
@@ -10650,7 +10699,7 @@ this.primereact.virtualscroller = (function (exports, React, api, hooks, spinner
10650
10699
  }
10651
10700
  };
10652
10701
  var init = function init() {
10653
- if (!props.disabled && isVisible(elementRef.current)) {
10702
+ if (!props.disabled && utils.DomHandler.isVisible(elementRef.current)) {
10654
10703
  setSize();
10655
10704
  calculateOptions();
10656
10705
  setSpacerSize();
@@ -10664,7 +10713,7 @@ this.primereact.virtualscroller = (function (exports, React, api, hooks, spinner
10664
10713
  return false;
10665
10714
  };
10666
10715
  React__namespace.useEffect(function () {
10667
- if (!viewInitialized.current && isVisible(elementRef.current)) {
10716
+ if (!viewInitialized.current && isVisible()) {
10668
10717
  viewInit();
10669
10718
  viewInitialized.current = true;
10670
10719
  }
@@ -14122,6 +14171,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14122
14171
  filter: false,
14123
14172
  filterBy: null,
14124
14173
  filterClearIcon: null,
14174
+ filterDelay: 300,
14125
14175
  filterIcon: null,
14126
14176
  filterInputAutoFocus: false,
14127
14177
  filterLocale: undefined,
@@ -14577,22 +14627,23 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14577
14627
  var mergeProps = hooks.useMergeProps();
14578
14628
  var context = React__namespace.useContext(PrimeReact.PrimeReactContext);
14579
14629
  var props = DropdownBase.getProps(inProps, context);
14580
- var _React$useState = React__namespace.useState(''),
14630
+ var _useDebounce = hooks.useDebounce('', props.filterDelay || 0),
14631
+ _useDebounce2 = _slicedToArray(_useDebounce, 3),
14632
+ filterValue = _useDebounce2[0],
14633
+ filterState = _useDebounce2[1],
14634
+ setFilterState = _useDebounce2[2];
14635
+ var _React$useState = React__namespace.useState(false),
14581
14636
  _React$useState2 = _slicedToArray(_React$useState, 2),
14582
- filterState = _React$useState2[0],
14583
- setFilterState = _React$useState2[1];
14584
- var _React$useState3 = React__namespace.useState(false),
14637
+ focusedState = _React$useState2[0],
14638
+ setFocusedState = _React$useState2[1];
14639
+ var _React$useState3 = React__namespace.useState(-1),
14585
14640
  _React$useState4 = _slicedToArray(_React$useState3, 2),
14586
- focusedState = _React$useState4[0],
14587
- setFocusedState = _React$useState4[1];
14588
- var _React$useState5 = React__namespace.useState(-1),
14641
+ focusedOptionIndex = _React$useState4[0],
14642
+ setFocusedOptionIndex = _React$useState4[1];
14643
+ var _React$useState5 = React__namespace.useState(false),
14589
14644
  _React$useState6 = _slicedToArray(_React$useState5, 2),
14590
- focusedOptionIndex = _React$useState6[0],
14591
- setFocusedOptionIndex = _React$useState6[1];
14592
- var _React$useState7 = React__namespace.useState(false),
14593
- _React$useState8 = _slicedToArray(_React$useState7, 2),
14594
- overlayVisibleState = _React$useState8[0],
14595
- setOverlayVisibleState = _React$useState8[1];
14645
+ overlayVisibleState = _React$useState6[0],
14646
+ setOverlayVisibleState = _React$useState6[1];
14596
14647
  var clickedRef = React__namespace.useRef(false);
14597
14648
  var elementRef = React__namespace.useRef(null);
14598
14649
  var overlayRef = React__namespace.useRef(null);
@@ -14653,7 +14704,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14653
14704
  var getVisibleOptions = function getVisibleOptions() {
14654
14705
  var options = props.optionGroupLabel ? flatOptions(props.options) : props.options;
14655
14706
  if (hasFilter && !isLazy) {
14656
- var filterValue = filterState.trim().toLocaleLowerCase(props.filterLocale);
14707
+ var _filterValue = filterState.trim().toLocaleLowerCase(props.filterLocale);
14657
14708
  var searchFields = props.filterBy ? props.filterBy.split(',') : [props.optionLabel || 'label'];
14658
14709
  if (props.optionGroupLabel) {
14659
14710
  var filteredGroups = [];
@@ -14662,7 +14713,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14662
14713
  try {
14663
14714
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
14664
14715
  var optgroup = _step.value;
14665
- var filteredSubOptions = PrimeReact.FilterService.filter(getOptionGroupChildren(optgroup), searchFields, filterValue, props.filterMatchMode, props.filterLocale);
14716
+ var filteredSubOptions = PrimeReact.FilterService.filter(getOptionGroupChildren(optgroup), searchFields, _filterValue, props.filterMatchMode, props.filterLocale);
14666
14717
  if (filteredSubOptions && filteredSubOptions.length) {
14667
14718
  filteredGroups.push(_objectSpread(_objectSpread({}, optgroup), _defineProperty({}, "".concat(props.optionGroupChildren), filteredSubOptions)));
14668
14719
  }
@@ -14674,7 +14725,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14674
14725
  }
14675
14726
  return flatOptions(filteredGroups);
14676
14727
  }
14677
- return PrimeReact.FilterService.filter(options, searchFields, filterValue, props.filterMatchMode, props.filterLocale);
14728
+ return PrimeReact.FilterService.filter(options, searchFields, _filterValue, props.filterMatchMode, props.filterLocale);
14678
14729
  }
14679
14730
  return options;
14680
14731
  };
@@ -14757,7 +14808,6 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14757
14808
  event.preventDefault();
14758
14809
  return;
14759
14810
  }
14760
- var metaKey = event.metaKey || event.ctrlKey;
14761
14811
  var code = utils.DomHandler.isAndroid() ? event.key : event.code;
14762
14812
  switch (code) {
14763
14813
  case 'ArrowDown':
@@ -14803,6 +14853,9 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
14803
14853
  //NOOP
14804
14854
  break;
14805
14855
  default:
14856
+ var metaKey = event.metaKey || event.ctrlKey || event.altKey;
14857
+
14858
+ // Only handle printable characters when no meta keys are pressed
14806
14859
  if (!metaKey && utils.ObjectUtils.isPrintableCharacter(event.key)) {
14807
14860
  !overlayVisibleState && !props.editable && show();
14808
14861
  !props.editable && searchOptions(event, event.key);
@@ -15121,6 +15174,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
15121
15174
  resetFilter();
15122
15175
  }
15123
15176
  updateEditableLabel();
15177
+ setFocusedOptionIndex(-1);
15124
15178
  };
15125
15179
  var selectItem = function selectItem(event) {
15126
15180
  if (selectedOption !== event.option) {
@@ -15381,8 +15435,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
15381
15435
  required: props.required,
15382
15436
  defaultValue: option.value,
15383
15437
  name: props.name,
15384
- tabIndex: -1,
15385
- 'aria-hidden': 'true'
15438
+ tabIndex: -1
15386
15439
  }, ptm('select'));
15387
15440
  var optionProps = mergeProps({
15388
15441
  value: option.value
@@ -15539,7 +15592,6 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
15539
15592
  var firstHiddenFocusableElementProps = mergeProps({
15540
15593
  ref: firstHiddenFocusableElementOnOverlay,
15541
15594
  role: 'presentation',
15542
- 'aria-hidden': 'true',
15543
15595
  className: 'p-hidden-accessible p-hidden-focusable',
15544
15596
  tabIndex: '0',
15545
15597
  onFocus: onFirstHiddenFocus,
@@ -15549,7 +15601,6 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
15549
15601
  var lastHiddenFocusableElementProps = mergeProps({
15550
15602
  ref: lastHiddenFocusableElementOnOverlay,
15551
15603
  role: 'presentation',
15552
- 'aria-hidden': 'true',
15553
15604
  className: 'p-hidden-accessible p-hidden-focusable',
15554
15605
  tabIndex: '0',
15555
15606
  onFocus: onLastHiddenFocus,
@@ -15564,7 +15615,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, componentbase,
15564
15615
  }, props, {
15565
15616
  appendTo: appendTo,
15566
15617
  cx: cx,
15567
- filterValue: filterState,
15618
+ filterValue: filterValue,
15568
15619
  focusedOptionIndex: focusedOptionIndex,
15569
15620
  getOptionGroupChildren: getOptionGroupChildren,
15570
15621
  getOptionGroupLabel: getOptionGroupLabel,
@@ -17880,7 +17931,7 @@ this.primereact.paginator = (function (exports, React, api, componentbase, hooks
17880
17931
  })({}, React, primereact.api, primereact.componentbase, primereact.hooks, primereact.utils, primereact.icons.angledoubleleft, primereact.ripple, primereact.inputnumber, primereact.icons.angledoubleright, primereact.icons.angleright, primereact.icons.angleleft, primereact.dropdown);
17881
17932
 
17882
17933
  this.primereact = this.primereact || {};
17883
- this.primereact.tree = (function (exports, React, api, componentbase, hooks, search, spinner, utils, check, chevrondown, chevronright, minus, ripple, tooltip) {
17934
+ this.primereact.tree = (function (exports, React, api, componentbase, hooks, search, spinner, utils, check, tooltip, chevrondown, chevronright, minus, ripple) {
17884
17935
  'use strict';
17885
17936
 
17886
17937
  function _interopNamespace(e) {
@@ -18030,19 +18081,6 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
18030
18081
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray$2(arr, i) || _nonIterableRest();
18031
18082
  }
18032
18083
 
18033
- /* eslint-disable */
18034
- var useUpdateEffect = function useUpdateEffect(fn, deps) {
18035
- var mounted = React__namespace.useRef(false);
18036
- return React__namespace.useEffect(function () {
18037
- if (!mounted.current) {
18038
- mounted.current = true;
18039
- return;
18040
- }
18041
- return fn && fn();
18042
- }, deps);
18043
- };
18044
- /* eslint-enable */
18045
-
18046
18084
  var classes$1 = {
18047
18085
  root: function root(_ref) {
18048
18086
  var props = _ref.props;
@@ -18059,9 +18097,9 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
18059
18097
  searchIcon: 'p-tree-filter-icon',
18060
18098
  container: 'p-tree-container',
18061
18099
  node: function node(_ref2) {
18062
- var isLeaf = _ref2.isLeaf;
18100
+ var leaf = _ref2.leaf;
18063
18101
  return utils.classNames('p-treenode', {
18064
- 'p-treenode-leaf': isLeaf
18102
+ 'p-treenode-leaf': leaf
18065
18103
  });
18066
18104
  },
18067
18105
  content: function content(_ref3) {
@@ -18114,6 +18152,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
18114
18152
  expandedKeys: null,
18115
18153
  filter: false,
18116
18154
  filterBy: 'label',
18155
+ filterDelay: 300,
18117
18156
  filterIcon: null,
18118
18157
  filterLocale: undefined,
18119
18158
  filterMode: 'lenient',
@@ -18385,7 +18424,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
18385
18424
  var mergeProps = hooks.useMergeProps();
18386
18425
  var isLeaf = props.isNodeLeaf(props.node);
18387
18426
  var label = props.node.label;
18388
- var expanded = (props.expandedKeys ? props.expandedKeys[props.node.key] !== undefined : false) || props.node.expanded;
18427
+ var expanded = props.expandedKeys ? props.expandedKeys[props.node.key] !== undefined : false;
18389
18428
  var ptm = props.ptm,
18390
18429
  cx = props.cx;
18391
18430
  var getPTOptions = function getPTOptions(key) {
@@ -18395,7 +18434,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
18395
18434
  selected: !isCheckboxSelectionMode() ? isSelected() : false,
18396
18435
  expanded: expanded || false,
18397
18436
  checked: isCheckboxSelectionMode() ? isChecked() : false,
18398
- isLeaf: isLeaf
18437
+ leaf: isLeaf
18399
18438
  }
18400
18439
  });
18401
18440
  };
@@ -19154,7 +19193,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19154
19193
  var nodeProps = mergeProps({
19155
19194
  ref: elementRef,
19156
19195
  className: utils.classNames(props.node.className, cx('node', {
19157
- isLeaf: isLeaf
19196
+ leaf: isLeaf
19158
19197
  })),
19159
19198
  style: props.node.style,
19160
19199
  tabIndex: tabIndex,
@@ -19189,20 +19228,27 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19189
19228
  var mergeProps = hooks.useMergeProps();
19190
19229
  var context = React__namespace.useContext(api.PrimeReactContext);
19191
19230
  var props = TreeBase.getProps(inProps, context);
19192
- var _React$useState = React__namespace.useState(''),
19231
+ var _useDebounce = hooks.useDebounce('', props.filterDelay || 0),
19232
+ _useDebounce2 = _slicedToArray(_useDebounce, 3),
19233
+ filterValue = _useDebounce2[0],
19234
+ filterValueState = _useDebounce2[1],
19235
+ setFilterValueState = _useDebounce2[2];
19236
+ var _React$useState = React__namespace.useState(props.expandedKeys),
19193
19237
  _React$useState2 = _slicedToArray(_React$useState, 2),
19194
- filterValueState = _React$useState2[0],
19195
- setFilterValueState = _React$useState2[1];
19196
- var _React$useState3 = React__namespace.useState(props.expandedKeys),
19238
+ expandedKeysState = _React$useState2[0],
19239
+ setExpandedKeysState = _React$useState2[1];
19240
+ var _React$useState3 = React__namespace.useState({}),
19197
19241
  _React$useState4 = _slicedToArray(_React$useState3, 2),
19198
- expandedKeysState = _React$useState4[0],
19199
- setExpandedKeysState = _React$useState4[1];
19242
+ filterExpandedKeys = _React$useState4[0],
19243
+ setFilterExpandedKeys = _React$useState4[1];
19200
19244
  var elementRef = React__namespace.useRef(null);
19201
19245
  var filteredNodes = React__namespace.useRef([]);
19202
19246
  var dragState = React__namespace.useRef(null);
19203
19247
  var filterChanged = React__namespace.useRef(false);
19204
19248
  var filteredValue = props.onFilterValueChange ? props.filterValue : filterValueState;
19205
- var expandedKeys = props.onToggle ? props.expandedKeys : expandedKeysState;
19249
+ var isFiltering = props.filter && filteredValue;
19250
+ var expandedKeys = isFiltering ? filterExpandedKeys : props.onToggle ? props.expandedKeys : expandedKeysState;
19251
+ var currentFilterExpandedKeys = {};
19206
19252
  var childFocusEvent = React__namespace.useRef(null);
19207
19253
  var _TreeBase$setMetaData = TreeBase.setMetaData({
19208
19254
  props: props,
@@ -19241,10 +19287,14 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19241
19287
  if (navigateFocusToChild) {
19242
19288
  childFocusEvent.current = originalEvent;
19243
19289
  }
19244
- setExpandedKeysState(value);
19290
+ if (isFiltering) {
19291
+ setFilterExpandedKeys(value);
19292
+ } else {
19293
+ setExpandedKeysState(value);
19294
+ }
19245
19295
  }
19246
19296
  };
19247
- useUpdateEffect(function () {
19297
+ hooks.useUpdateEffect(function () {
19248
19298
  if (childFocusEvent.current) {
19249
19299
  var event = childFocusEvent.current;
19250
19300
  var nodeElement = event.target.getAttribute('data-pc-section') === 'toggler' ? event.target.closest('[role="treeitem"]') : event.target;
@@ -19264,6 +19314,10 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19264
19314
  childFocusEvent.current = null;
19265
19315
  }
19266
19316
  }, [expandedKeys]);
19317
+ React__namespace.useEffect(function () {
19318
+ if (props.filter) _filter();
19319
+ // eslint-disable-next-line react-hooks/exhaustive-deps
19320
+ }, [filteredValue, props.value, props.filter]);
19267
19321
  var onDragStart = function onDragStart(event) {
19268
19322
  dragState.current = {
19269
19323
  path: event.path,
@@ -19445,12 +19499,9 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19445
19499
  };
19446
19500
  var filter = function filter(value) {
19447
19501
  setFilterValueState(utils.ObjectUtils.isNotEmpty(value) ? value : '');
19448
- _filter();
19449
19502
  };
19450
19503
  var _filter = function _filter() {
19451
- if (!filterChanged.current) {
19452
- return;
19453
- }
19504
+ if (!filterChanged.current) return;
19454
19505
  if (utils.ObjectUtils.isEmpty(filteredValue)) {
19455
19506
  filteredNodes.current = props.value;
19456
19507
  } else {
@@ -19479,6 +19530,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19479
19530
  _iterator.f();
19480
19531
  }
19481
19532
  }
19533
+ setFilterExpandedKeys(currentFilterExpandedKeys);
19482
19534
  filterChanged.current = false;
19483
19535
  };
19484
19536
  var findFilteredNodes = function findFilteredNodes(node, paramsWithoutNode) {
@@ -19505,7 +19557,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19505
19557
  }
19506
19558
  }
19507
19559
  if (matched) {
19508
- node.expanded = true;
19560
+ currentFilterExpandedKeys[node.key] = true;
19509
19561
  return true;
19510
19562
  }
19511
19563
  }
@@ -19622,10 +19674,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19622
19674
  };
19623
19675
  var createModel = function createModel() {
19624
19676
  if (props.value) {
19625
- if (props.filter) {
19626
- filterChanged.current = true;
19627
- _filter();
19628
- }
19677
+ if (props.filter) filterChanged.current = true;
19629
19678
  var value = getRootNode();
19630
19679
  if (value.length > 0) {
19631
19680
  var rootNodes = createRootChildren(value);
@@ -19656,7 +19705,8 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19656
19705
  };
19657
19706
  var createFilter = function createFilter() {
19658
19707
  if (props.filter) {
19659
- var value = utils.ObjectUtils.isNotEmpty(filteredValue) ? filteredValue : '';
19708
+ var value = props.onFilterValueChange ? props.filterValue : filterValue;
19709
+ value = utils.ObjectUtils.isNotEmpty(value) ? value : '';
19660
19710
  var searchIconProps = mergeProps({
19661
19711
  className: cx('searchIcon')
19662
19712
  }, ptm('searchIcon'));
@@ -19750,7 +19800,7 @@ this.primereact.tree = (function (exports, React, api, componentbase, hooks, sea
19750
19800
 
19751
19801
  return exports;
19752
19802
 
19753
- })({}, React, primereact.api, primereact.componentbase, primereact.hooks, primereact.icons.search, primereact.icons.spinner, primereact.utils, primereact.icons.check, primereact.icons.chevrondown, primereact.icons.chevronright, primereact.icons.minus, primereact.ripple, primereact.tooltip);
19803
+ })({}, React, primereact.api, primereact.componentbase, primereact.hooks, primereact.icons.search, primereact.icons.spinner, primereact.utils, primereact.icons.check, primereact.tooltip, primereact.icons.chevrondown, primereact.icons.chevronright, primereact.icons.minus, primereact.ripple);
19754
19804
 
19755
19805
  undefined
19756
19806
  undefined