primereact 10.9.5 → 10.9.7

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 (211) hide show
  1. package/accordion/accordion.cjs.js +3 -2
  2. package/accordion/accordion.cjs.min.js +1 -1
  3. package/accordion/accordion.esm.js +3 -2
  4. package/accordion/accordion.esm.min.js +1 -1
  5. package/accordion/accordion.js +3 -2
  6. package/accordion/accordion.min.js +1 -1
  7. package/api/api.cjs.js +9 -1
  8. package/api/api.cjs.min.js +1 -1
  9. package/api/api.d.ts +9 -3
  10. package/api/api.esm.js +9 -1
  11. package/api/api.esm.min.js +1 -1
  12. package/api/api.js +9 -1
  13. package/api/api.min.js +1 -1
  14. package/autocomplete/autocomplete.cjs.js +2 -1
  15. package/autocomplete/autocomplete.cjs.min.js +1 -1
  16. package/autocomplete/autocomplete.d.ts +5 -5
  17. package/autocomplete/autocomplete.esm.js +2 -1
  18. package/autocomplete/autocomplete.esm.min.js +1 -1
  19. package/autocomplete/autocomplete.js +2 -1
  20. package/autocomplete/autocomplete.min.js +1 -1
  21. package/calendar/calendar.cjs.js +36 -13
  22. package/calendar/calendar.cjs.min.js +1 -1
  23. package/calendar/calendar.esm.js +36 -13
  24. package/calendar/calendar.esm.min.js +1 -1
  25. package/calendar/calendar.js +36 -13
  26. package/calendar/calendar.min.js +1 -1
  27. package/carousel/carousel.cjs.js +9 -1
  28. package/carousel/carousel.cjs.min.js +1 -1
  29. package/carousel/carousel.esm.js +9 -1
  30. package/carousel/carousel.esm.min.js +1 -1
  31. package/carousel/carousel.js +9 -1
  32. package/carousel/carousel.min.js +1 -1
  33. package/cascadeselect/cascadeselect.cjs.js +54 -3
  34. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  35. package/cascadeselect/cascadeselect.d.ts +13 -0
  36. package/cascadeselect/cascadeselect.esm.js +55 -4
  37. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  38. package/cascadeselect/cascadeselect.js +55 -5
  39. package/cascadeselect/cascadeselect.min.js +1 -1
  40. package/colorpicker/colorpicker.cjs.js +2 -1
  41. package/colorpicker/colorpicker.cjs.min.js +1 -1
  42. package/colorpicker/colorpicker.esm.js +2 -1
  43. package/colorpicker/colorpicker.esm.min.js +1 -1
  44. package/colorpicker/colorpicker.js +2 -1
  45. package/colorpicker/colorpicker.min.js +1 -1
  46. package/componentbase/componentbase.cjs.js +1 -1
  47. package/componentbase/componentbase.cjs.min.js +1 -1
  48. package/componentbase/componentbase.esm.js +1 -1
  49. package/componentbase/componentbase.esm.min.js +1 -1
  50. package/componentbase/componentbase.js +1 -1
  51. package/componentbase/componentbase.min.js +1 -1
  52. package/contextmenu/contextmenu.cjs.js +8 -6
  53. package/contextmenu/contextmenu.cjs.min.js +1 -1
  54. package/contextmenu/contextmenu.esm.js +8 -6
  55. package/contextmenu/contextmenu.esm.min.js +1 -1
  56. package/contextmenu/contextmenu.js +8 -6
  57. package/contextmenu/contextmenu.min.js +1 -1
  58. package/core/core.js +79 -33
  59. package/core/core.min.js +8 -8
  60. package/datatable/datatable.cjs.js +149 -95
  61. package/datatable/datatable.cjs.min.js +1 -1
  62. package/datatable/datatable.d.ts +145 -10
  63. package/datatable/datatable.esm.js +149 -95
  64. package/datatable/datatable.esm.min.js +1 -1
  65. package/datatable/datatable.js +150 -96
  66. package/datatable/datatable.min.js +1 -1
  67. package/dialog/dialog.cjs.js +6 -5
  68. package/dialog/dialog.cjs.min.js +1 -1
  69. package/dialog/dialog.d.ts +6 -1
  70. package/dialog/dialog.esm.js +6 -5
  71. package/dialog/dialog.esm.min.js +1 -1
  72. package/dialog/dialog.js +6 -5
  73. package/dialog/dialog.min.js +1 -1
  74. package/dropdown/dropdown.cjs.js +17 -5
  75. package/dropdown/dropdown.cjs.min.js +1 -1
  76. package/dropdown/dropdown.esm.js +17 -5
  77. package/dropdown/dropdown.esm.min.js +1 -1
  78. package/dropdown/dropdown.js +17 -5
  79. package/dropdown/dropdown.min.js +1 -1
  80. package/fileupload/fileupload.cjs.js +4 -2
  81. package/fileupload/fileupload.cjs.min.js +1 -1
  82. package/fileupload/fileupload.esm.js +4 -2
  83. package/fileupload/fileupload.esm.min.js +1 -1
  84. package/fileupload/fileupload.js +4 -2
  85. package/fileupload/fileupload.min.js +1 -1
  86. package/galleria/galleria.cjs.js +1 -0
  87. package/galleria/galleria.cjs.min.js +1 -1
  88. package/galleria/galleria.esm.js +1 -0
  89. package/galleria/galleria.esm.min.js +1 -1
  90. package/galleria/galleria.js +1 -0
  91. package/galleria/galleria.min.js +1 -1
  92. package/inputnumber/inputnumber.cjs.js +12 -3
  93. package/inputnumber/inputnumber.cjs.min.js +1 -1
  94. package/inputnumber/inputnumber.esm.js +12 -3
  95. package/inputnumber/inputnumber.esm.min.js +1 -1
  96. package/inputnumber/inputnumber.js +12 -3
  97. package/inputnumber/inputnumber.min.js +1 -1
  98. package/inputotp/inputotp.cjs.js +11 -7
  99. package/inputotp/inputotp.cjs.min.js +1 -1
  100. package/inputotp/inputotp.esm.js +11 -7
  101. package/inputotp/inputotp.esm.min.js +1 -1
  102. package/inputotp/inputotp.js +11 -7
  103. package/inputotp/inputotp.min.js +1 -1
  104. package/listbox/listbox.d.ts +4 -4
  105. package/megamenu/megamenu.cjs.js +19 -12
  106. package/megamenu/megamenu.cjs.min.js +1 -1
  107. package/megamenu/megamenu.esm.js +19 -12
  108. package/megamenu/megamenu.esm.min.js +1 -1
  109. package/megamenu/megamenu.js +19 -12
  110. package/megamenu/megamenu.min.js +1 -1
  111. package/mention/mention.cjs.js +3 -2
  112. package/mention/mention.cjs.min.js +1 -1
  113. package/mention/mention.esm.js +3 -2
  114. package/mention/mention.esm.min.js +1 -1
  115. package/mention/mention.js +3 -2
  116. package/mention/mention.min.js +1 -1
  117. package/menu/menu.cjs.js +3 -0
  118. package/menu/menu.cjs.min.js +1 -1
  119. package/menu/menu.esm.js +3 -0
  120. package/menu/menu.esm.min.js +1 -1
  121. package/menu/menu.js +3 -0
  122. package/menu/menu.min.js +1 -1
  123. package/menubar/menubar.cjs.js +8 -3
  124. package/menubar/menubar.cjs.min.js +1 -1
  125. package/menubar/menubar.esm.js +8 -3
  126. package/menubar/menubar.esm.min.js +1 -1
  127. package/menubar/menubar.js +8 -3
  128. package/menubar/menubar.min.js +1 -1
  129. package/multiselect/multiselect.cjs.js +64 -16
  130. package/multiselect/multiselect.cjs.min.js +1 -1
  131. package/multiselect/multiselect.esm.js +64 -16
  132. package/multiselect/multiselect.esm.min.js +1 -1
  133. package/multiselect/multiselect.js +64 -16
  134. package/multiselect/multiselect.min.js +1 -1
  135. package/multistatecheckbox/multistatecheckbox.cjs.js +16 -8
  136. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  137. package/multistatecheckbox/multistatecheckbox.d.ts +10 -0
  138. package/multistatecheckbox/multistatecheckbox.esm.js +16 -8
  139. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  140. package/multistatecheckbox/multistatecheckbox.js +16 -8
  141. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  142. package/package.json +1 -1
  143. package/paginator/paginator.cjs.js +9 -1
  144. package/paginator/paginator.cjs.min.js +1 -1
  145. package/paginator/paginator.esm.js +9 -1
  146. package/paginator/paginator.esm.min.js +1 -1
  147. package/paginator/paginator.js +9 -1
  148. package/paginator/paginator.min.js +1 -1
  149. package/picklist/picklist.cjs.js +9 -1
  150. package/picklist/picklist.cjs.min.js +1 -1
  151. package/picklist/picklist.esm.js +9 -1
  152. package/picklist/picklist.esm.min.js +1 -1
  153. package/picklist/picklist.js +9 -1
  154. package/picklist/picklist.min.js +1 -1
  155. package/primereact.all.cjs.js +481 -223
  156. package/primereact.all.cjs.min.js +1 -1
  157. package/primereact.all.esm.js +481 -223
  158. package/primereact.all.esm.min.js +1 -1
  159. package/primereact.all.js +481 -223
  160. package/primereact.all.min.js +1 -1
  161. package/slidemenu/slidemenu.cjs.js +6 -4
  162. package/slidemenu/slidemenu.cjs.min.js +1 -1
  163. package/slidemenu/slidemenu.esm.js +6 -4
  164. package/slidemenu/slidemenu.esm.min.js +1 -1
  165. package/slidemenu/slidemenu.js +6 -4
  166. package/slidemenu/slidemenu.min.js +1 -1
  167. package/splitbutton/splitbutton.cjs.js +11 -5
  168. package/splitbutton/splitbutton.cjs.min.js +1 -1
  169. package/splitbutton/splitbutton.esm.js +11 -5
  170. package/splitbutton/splitbutton.esm.min.js +1 -1
  171. package/splitbutton/splitbutton.js +11 -5
  172. package/splitbutton/splitbutton.min.js +1 -1
  173. package/tieredmenu/tieredmenu.cjs.js +9 -4
  174. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  175. package/tieredmenu/tieredmenu.esm.js +9 -4
  176. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  177. package/tieredmenu/tieredmenu.js +9 -4
  178. package/tieredmenu/tieredmenu.min.js +1 -1
  179. package/togglebutton/togglebutton.cjs.js +3 -3
  180. package/togglebutton/togglebutton.cjs.min.js +1 -1
  181. package/togglebutton/togglebutton.esm.js +3 -3
  182. package/togglebutton/togglebutton.esm.min.js +1 -1
  183. package/togglebutton/togglebutton.js +3 -3
  184. package/togglebutton/togglebutton.min.js +1 -1
  185. package/tree/tree.cjs.js +22 -16
  186. package/tree/tree.cjs.min.js +1 -1
  187. package/tree/tree.esm.js +22 -16
  188. package/tree/tree.esm.min.js +1 -1
  189. package/tree/tree.js +22 -16
  190. package/tree/tree.min.js +1 -1
  191. package/treeselect/treeselect.cjs.js +4 -0
  192. package/treeselect/treeselect.cjs.min.js +1 -1
  193. package/treeselect/treeselect.d.ts +33 -0
  194. package/treeselect/treeselect.esm.js +4 -0
  195. package/treeselect/treeselect.esm.min.js +1 -1
  196. package/treeselect/treeselect.js +4 -0
  197. package/treeselect/treeselect.min.js +1 -1
  198. package/tristatecheckbox/tristatecheckbox.cjs.js +1 -0
  199. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  200. package/tristatecheckbox/tristatecheckbox.esm.js +1 -0
  201. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  202. package/tristatecheckbox/tristatecheckbox.js +1 -0
  203. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  204. package/utils/utils.cjs.js +3 -1
  205. package/utils/utils.cjs.min.js +1 -1
  206. package/utils/utils.d.ts +1 -1
  207. package/utils/utils.esm.js +3 -1
  208. package/utils/utils.esm.min.js +1 -1
  209. package/utils/utils.js +3 -1
  210. package/utils/utils.min.js +1 -1
  211. package/web-types.json +95 -10
@@ -127,6 +127,7 @@ var FilterMatchMode = Object.freeze({
127
127
  EQUALS: 'equals',
128
128
  NOT_EQUALS: 'notEquals',
129
129
  IN: 'in',
130
+ NOT_IN: 'notIn',
130
131
  LESS_THAN: 'lt',
131
132
  LESS_THAN_OR_EQUAL_TO: 'lte',
132
133
  GREATER_THAN: 'gt',
@@ -2131,11 +2132,13 @@ var ObjectUtils = /*#__PURE__*/function () {
2131
2132
  * @param {object} a - The first object to compare.
2132
2133
  * @param {object} b - The second object to compare.
2133
2134
  * @param {string[]} [keysToCompare] - The keys to compare. If not provided, performs a shallow comparison using absoluteCompare.
2135
+ * @param {number} [maxDepth=1] - The maximum depth to compare if the variables are objects.
2134
2136
  * @returns {boolean} True if all specified properties are equal, false otherwise.
2135
2137
  */
2136
2138
  }, {
2137
2139
  key: "selectiveCompare",
2138
2140
  value: function selectiveCompare(a, b, keysToCompare) {
2141
+ var maxDepth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
2139
2142
  if (a === b) return true;
2140
2143
  if (!a || !b || _typeof(a) !== 'object' || _typeof(b) !== 'object') return false;
2141
2144
  if (!keysToCompare) return this.absoluteCompare(a, b, 1); // If no keys are provided, the comparison is limited to one depth level.
@@ -2149,7 +2152,7 @@ var ObjectUtils = /*#__PURE__*/function () {
2149
2152
  var isObject = _typeof(aValue) === 'object' && aValue !== null && _typeof(bValue) === 'object' && bValue !== null;
2150
2153
 
2151
2154
  // If the current key is an object, they are compared in one further level only.
2152
- if (isObject && !this.absoluteCompare(aValue, bValue, 1)) return false;
2155
+ if (isObject && !this.absoluteCompare(aValue, bValue, maxDepth)) return false;
2153
2156
  if (!isObject && aValue !== bValue) return false;
2154
2157
  }
2155
2158
  } catch (err) {
@@ -3077,6 +3080,7 @@ var locales = {
3077
3080
  emptySelectionMessage: 'No selected item',
3078
3081
  endsWith: 'Ends with',
3079
3082
  equals: 'Equals',
3083
+ fileChosenMessage: '{0} files',
3080
3084
  fileSizeTypes: ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'],
3081
3085
  filter: 'Filter',
3082
3086
  firstDayOfWeek: 0,
@@ -3095,6 +3099,7 @@ var locales = {
3095
3099
  nextMonth: 'Next Month',
3096
3100
  nextSecond: 'Next Second',
3097
3101
  nextYear: 'Next Year',
3102
+ noFileChosenMessage: 'No file chosen',
3098
3103
  noFilter: 'No Filter',
3099
3104
  notContains: 'Not contains',
3100
3105
  notEquals: 'Not equals',
@@ -3122,8 +3127,10 @@ var locales = {
3122
3127
  aria: {
3123
3128
  cancelEdit: 'Cancel Edit',
3124
3129
  close: 'Close',
3130
+ collapseLabel: 'Collapse',
3125
3131
  collapseRow: 'Row Collapsed',
3126
3132
  editRow: 'Edit Row',
3133
+ expandLabel: 'Expand',
3127
3134
  expandRow: 'Row Expanded',
3128
3135
  falseLabel: 'False',
3129
3136
  filterConstraint: 'Filter Constraint',
@@ -3148,18 +3155,20 @@ var locales = {
3148
3155
  next: 'Next',
3149
3156
  nextPageLabel: 'Next Page',
3150
3157
  nullLabel: 'Not Selected',
3151
- pageLabel: 'Page {page}',
3152
3158
  otpLabel: 'Please enter one time password character {0}',
3159
+ pageLabel: 'Page {page}',
3153
3160
  passwordHide: 'Hide Password',
3154
3161
  passwordShow: 'Show Password',
3155
3162
  previous: 'Previous',
3156
3163
  prevPageLabel: 'Previous Page',
3164
+ removeLabel: 'Remove',
3157
3165
  rotateLeft: 'Rotate Left',
3158
3166
  rotateRight: 'Rotate Right',
3159
3167
  rowsPerPageLabel: 'Rows per page',
3160
3168
  saveEdit: 'Save Edit',
3161
3169
  scrollTop: 'Scroll Top',
3162
3170
  selectAll: 'All items selected',
3171
+ selectLabel: 'Select',
3163
3172
  selectRow: 'Row Selected',
3164
3173
  showFilterMenu: 'Show Filter Menu',
3165
3174
  slide: 'Slide',
@@ -3168,6 +3177,7 @@ var locales = {
3168
3177
  stars: '{star} stars',
3169
3178
  trueLabel: 'True',
3170
3179
  unselectAll: 'All items unselected',
3180
+ unselectLabel: 'Unselect',
3171
3181
  unselectRow: 'Row Unselected',
3172
3182
  zoomImage: 'Zoom Image',
3173
3183
  zoomIn: 'Zoom In',
@@ -4881,7 +4891,7 @@ var useUpdateEffect = function useUpdateEffect(fn, deps) {
4881
4891
  function ownKeys$1Y(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; }
4882
4892
  function _objectSpread$1Y(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1Y(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1Y(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4883
4893
  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";
4884
- 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\n.p-button-group-single .p-button:first-of-type {\n border-top-right-radius: var(--border-radius) !important;\n border-bottom-right-radius: var(--border-radius) !important;\n}\n\n.p-button-group-single .p-button:last-of-type {\n border-top-left-radius: var(--border-radius) !important;\n border-bottom-left-radius: var(--border-radius) !important;\n}\n";
4894
+ 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 {\n pointer-events: none;\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\n.p-button-group-single .p-button:first-of-type {\n border-top-right-radius: var(--border-radius) !important;\n border-bottom-right-radius: var(--border-radius) !important;\n}\n\n.p-button-group-single .p-button:last-of-type {\n border-top-left-radius: var(--border-radius) !important;\n border-bottom-left-radius: var(--border-radius) !important;\n}\n";
4885
4895
  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";
4886
4896
  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";
4887
4897
  var commonStyle = "\n@layer primereact {\n .p-component, .p-component * {\n box-sizing: border-box;\n }\n\n .p-hidden {\n display: none;\n }\n\n .p-hidden-space {\n visibility: hidden;\n }\n\n .p-reset {\n margin: 0;\n padding: 0;\n border: 0;\n outline: 0;\n text-decoration: none;\n font-size: 100%;\n list-style: none;\n }\n\n .p-disabled, .p-disabled * {\n cursor: default;\n pointer-events: none;\n user-select: none;\n }\n\n .p-component-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-unselectable-text {\n user-select: none;\n }\n\n .p-scrollbar-measure {\n width: 100px;\n height: 100px;\n overflow: scroll;\n position: absolute;\n top: -9999px;\n }\n\n @-webkit-keyframes p-fadein {\n 0% { opacity: 0; }\n 100% { opacity: 1; }\n }\n @keyframes p-fadein {\n 0% { opacity: 0; }\n 100% { opacity: 1; }\n }\n\n .p-link {\n text-align: left;\n background-color: transparent;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n user-select: none;\n }\n\n .p-link:disabled {\n cursor: default;\n }\n\n /* Non react overlay animations */\n .p-connected-overlay {\n opacity: 0;\n transform: scaleY(0.8);\n transition: transform .12s cubic-bezier(0, 0, 0.2, 1), opacity .12s cubic-bezier(0, 0, 0.2, 1);\n }\n\n .p-connected-overlay-visible {\n opacity: 1;\n transform: scaleY(1);\n }\n\n .p-connected-overlay-hidden {\n opacity: 0;\n transform: scaleY(1);\n transition: opacity .1s linear;\n }\n\n /* React based overlay animations */\n .p-connected-overlay-enter {\n opacity: 0;\n transform: scaleY(0.8);\n }\n\n .p-connected-overlay-enter-active {\n opacity: 1;\n transform: scaleY(1);\n transition: transform .12s cubic-bezier(0, 0, 0.2, 1), opacity .12s cubic-bezier(0, 0, 0.2, 1);\n }\n\n .p-connected-overlay-enter-done {\n transform: none;\n }\n\n .p-connected-overlay-exit {\n opacity: 1;\n }\n\n .p-connected-overlay-exit-active {\n opacity: 0;\n transition: opacity .1s linear;\n }\n\n /* Toggleable Content */\n .p-toggleable-content-enter {\n max-height: 0;\n }\n\n .p-toggleable-content-enter-active {\n overflow: hidden;\n max-height: 1000px;\n transition: max-height 1s ease-in-out;\n }\n\n .p-toggleable-content-enter-done {\n transform: none;\n }\n\n .p-toggleable-content-exit {\n max-height: 1000px;\n }\n\n .p-toggleable-content-exit-active {\n overflow: hidden;\n max-height: 0;\n transition: max-height 0.45s cubic-bezier(0, 1, 0, 1);\n }\n\n /* @todo Refactor */\n .p-menu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n ".concat(buttonStyles, "\n ").concat(inputTextStyles, "\n ").concat(iconStyles, "\n}\n");
@@ -5639,12 +5649,13 @@ var Accordion = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
5639
5649
  var tabHeader = createTabHeader(tab, selected, index);
5640
5650
  var tabContent = createTabContent(tab, selected, index);
5641
5651
  var _rootProps = mergeProps({
5642
- key: key,
5643
5652
  className: cx('accordiontab.root', {
5644
5653
  selected: selected
5645
5654
  })
5646
5655
  }, AccordionTabBase.getCOtherProps(tab), getTabPT(tab, 'root', index));
5647
- return /*#__PURE__*/React.createElement("div", _rootProps, tabHeader, tabContent);
5656
+ return /*#__PURE__*/React.createElement("div", _extends({}, _rootProps, {
5657
+ key: key
5658
+ }), tabHeader, tabContent);
5648
5659
  }
5649
5660
  return null;
5650
5661
  };
@@ -8155,7 +8166,8 @@ var AutoCompletePanel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(fu
8155
8166
  style: style,
8156
8167
  onClick: function onClick(e) {
8157
8168
  return props.onClick(e);
8158
- }
8169
+ },
8170
+ 'data-pr-is-overlay': true
8159
8171
  }, _ptm('panel'));
8160
8172
  var transitionProps = mergeProps({
8161
8173
  classNames: cx('transition'),
@@ -9721,7 +9733,8 @@ var CalendarPanel = /*#__PURE__*/React.forwardRef(function (props, ref) {
9721
9733
  'aria-label': localeOption('chooseDate', props.locale),
9722
9734
  'aria-modal': props.inline ? null : 'true',
9723
9735
  onClick: props.onClick,
9724
- onMouseUp: props.onMouseUp
9736
+ onMouseUp: props.onMouseUp,
9737
+ 'data-pr-is-overlay': true
9725
9738
  }, props.ptm('panel', {
9726
9739
  hostName: props.hostName
9727
9740
  }));
@@ -10121,14 +10134,14 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
10121
10134
  newViewDate.setMonth(11);
10122
10135
  newViewDate.setFullYear(newYear);
10123
10136
  props.onMonthChange && props.onMonthChange({
10124
- month: 11,
10137
+ month: 12,
10125
10138
  year: newYear
10126
10139
  });
10127
10140
  setCurrentMonth(11);
10128
10141
  } else {
10129
10142
  newViewDate.setMonth(newViewDate.getMonth() - 1);
10130
10143
  props.onMonthChange && props.onMonthChange({
10131
- month: currentMonth - 1,
10144
+ month: currentMonth,
10132
10145
  year: currentYear
10133
10146
  });
10134
10147
  setCurrentMonth(function (prevState) {
@@ -10166,14 +10179,14 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
10166
10179
  newViewDate.setMonth(0);
10167
10180
  newViewDate.setFullYear(newYear);
10168
10181
  props.onMonthChange && props.onMonthChange({
10169
- month: 0,
10182
+ month: 1,
10170
10183
  year: newYear
10171
10184
  });
10172
10185
  setCurrentMonth(0);
10173
10186
  } else {
10174
10187
  newViewDate.setMonth(newViewDate.getMonth() + 1);
10175
10188
  props.onMonthChange && props.onMonthChange({
10176
- month: currentMonth + 1,
10189
+ month: currentMonth + 2,
10177
10190
  year: currentYear
10178
10191
  });
10179
10192
  setCurrentMonth(function (prevState) {
@@ -10250,8 +10263,8 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
10250
10263
  var timeMeta = {
10251
10264
  hours: today.getHours(),
10252
10265
  minutes: today.getMinutes(),
10253
- seconds: today.getSeconds(),
10254
- milliseconds: today.getMilliseconds()
10266
+ seconds: props.showSeconds ? today.getSeconds() : 0,
10267
+ milliseconds: props.showMillisec ? today.getMilliseconds() : 0
10255
10268
  };
10256
10269
  updateViewDate(event, today);
10257
10270
  onDateSelect(event, dateMeta, timeMeta);
@@ -11236,7 +11249,7 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
11236
11249
  milliseconds = timeMeta.milliseconds;
11237
11250
  } else {
11238
11251
  var time = getCurrentDateTime();
11239
- var _ref5 = [time.getHours(), time.getMinutes(), time.getSeconds(), time.getMilliseconds()];
11252
+ var _ref5 = [time.getHours(), time.getMinutes(), props.showSeconds ? time.getSeconds() : 0, props.showMillisec ? time.getMilliseconds() : 0];
11240
11253
  hours = _ref5[0];
11241
11254
  minutes = _ref5[1];
11242
11255
  seconds = _ref5[2];
@@ -12147,13 +12160,32 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
12147
12160
  return props.parseDateTime(text);
12148
12161
  }
12149
12162
  var date;
12150
- var parts = text.split(' ');
12151
12163
  if (props.timeOnly) {
12152
12164
  date = new Date();
12153
- populateTime(date, parts[0], parts[1]);
12165
+ var match = text.match(/(\d{1,2}:\d{2}(?::\d{2})?(?:\.\d{1,3})?)\s?(AM|PM)?/i);
12166
+ if (match) {
12167
+ populateTime(date, match[1], match[2]);
12168
+ } else {
12169
+ return null;
12170
+ }
12154
12171
  } else if (props.showTime) {
12155
- date = parseDate(parts[0], getDateFormat());
12156
- populateTime(date, parts[1], parts[2]);
12172
+ var time12 = /(\d{1,2}:\d{2}(?::\d{2})?(?:\.\d{1,3})?)\s?(AM|PM)/i;
12173
+ var time24 = /(\d{1,2}:\d{2}(?::\d{2})?(?:\.\d{1,3})?)$/;
12174
+ var _match, datePart, timePart, ampm;
12175
+ if (props.hourFormat === '12' && (_match = text.match(time12))) {
12176
+ timePart = _match[1];
12177
+ ampm = _match[2];
12178
+ datePart = text.replace(time12, '').trim();
12179
+ } else if (props.hourFormat === '24' && (_match = text.match(time24))) {
12180
+ timePart = _match[1];
12181
+ datePart = text.replace(time24, '').trim();
12182
+ }
12183
+ if (datePart && timePart) {
12184
+ date = parseDate(datePart, getDateFormat());
12185
+ populateTime(date, timePart, ampm);
12186
+ } else {
12187
+ date = parseDate(text, getDateFormat());
12188
+ }
12157
12189
  } else {
12158
12190
  date = parseDate(text, getDateFormat());
12159
12191
  }
@@ -12542,7 +12574,7 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
12542
12574
  viewDate.setHours(0, 0, 0);
12543
12575
  isClearClicked.current = false;
12544
12576
  }
12545
- if (!prevPropValue && propValue || propValue && propValue instanceof Date && propValue.getTime() !== prevPropValue.getTime()) {
12577
+ if (!prevPropValue && propValue || propValue && propValue instanceof Date && prevPropValue instanceof Date && propValue.getTime() !== prevPropValue.getTime()) {
12546
12578
  validateDate(viewDate);
12547
12579
  }
12548
12580
  setViewDateState(viewDate);
@@ -12796,6 +12828,9 @@ var Calendar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
12796
12828
  }),
12797
12829
  'aria-selected': selected,
12798
12830
  'aria-disabled': !date.selectable,
12831
+ onMouseDown: function onMouseDown(e) {
12832
+ return e.preventDefault();
12833
+ },
12799
12834
  onClick: function onClick(e) {
12800
12835
  return onDateSelect(e, date);
12801
12836
  },
@@ -14000,7 +14035,15 @@ var Carousel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
14000
14035
  }
14001
14036
  if (!carouselStyle.current) {
14002
14037
  calculatePosition();
14003
- changePosition(totalShiftedItemsState);
14038
+
14039
+ // Workaround: force correct initial position for circular
14040
+ if (isCircular) {
14041
+ var initialPosition = -1 * numVisibleState;
14042
+ setTotalShiftedItemsState(initialPosition);
14043
+ changePosition(initialPosition);
14044
+ } else {
14045
+ changePosition(totalShiftedItemsState);
14046
+ }
14004
14047
  bindWindowResizeListener();
14005
14048
  }
14006
14049
  });
@@ -14314,6 +14357,22 @@ var Carousel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
14314
14357
  CarouselItem.displayName = 'CarouselItem';
14315
14358
  Carousel.displayName = 'Carousel';
14316
14359
 
14360
+ var TimesIcon = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inProps, ref) {
14361
+ var pti = IconBase.getPTI(inProps);
14362
+ return /*#__PURE__*/React.createElement("svg", _extends({
14363
+ ref: ref,
14364
+ width: "14",
14365
+ height: "14",
14366
+ viewBox: "0 0 14 14",
14367
+ fill: "none",
14368
+ xmlns: "http://www.w3.org/2000/svg"
14369
+ }, pti), /*#__PURE__*/React.createElement("path", {
14370
+ d: "M8.01186 7.00933L12.27 2.75116C12.341 2.68501 12.398 2.60524 12.4375 2.51661C12.4769 2.42798 12.4982 2.3323 12.4999 2.23529C12.5016 2.13827 12.4838 2.0419 12.4474 1.95194C12.4111 1.86197 12.357 1.78024 12.2884 1.71163C12.2198 1.64302 12.138 1.58893 12.0481 1.55259C11.9581 1.51625 11.8617 1.4984 11.7647 1.50011C11.6677 1.50182 11.572 1.52306 11.4834 1.56255C11.3948 1.60204 11.315 1.65898 11.2488 1.72997L6.99067 5.98814L2.7325 1.72997C2.59553 1.60234 2.41437 1.53286 2.22718 1.53616C2.03999 1.53946 1.8614 1.61529 1.72901 1.74767C1.59663 1.88006 1.5208 2.05865 1.5175 2.24584C1.5142 2.43303 1.58368 2.61419 1.71131 2.75116L5.96948 7.00933L1.71131 11.2675C1.576 11.403 1.5 11.5866 1.5 11.7781C1.5 11.9696 1.576 12.1532 1.71131 12.2887C1.84679 12.424 2.03043 12.5 2.2219 12.5C2.41338 12.5 2.59702 12.424 2.7325 12.2887L6.99067 8.03052L11.2488 12.2887C11.3843 12.424 11.568 12.5 11.7594 12.5C11.9509 12.5 12.1346 12.424 12.27 12.2887C12.4053 12.1532 12.4813 11.9696 12.4813 11.7781C12.4813 11.5866 12.4053 11.403 12.27 11.2675L8.01186 7.00933Z",
14371
+ fill: "currentColor"
14372
+ }));
14373
+ }));
14374
+ TimesIcon.displayName = 'TimesIcon';
14375
+
14317
14376
  var classes$14 = {
14318
14377
  root: function root(_ref) {
14319
14378
  var props = _ref.props,
@@ -14350,6 +14409,7 @@ var classes$14 = {
14350
14409
  });
14351
14410
  },
14352
14411
  dropdownIcon: 'p-cascadeselect-trigger-icon',
14412
+ clearIcon: 'p-cascadeselect-clear-icon p-clickable',
14353
14413
  loadingIcon: 'p-cascadeselect-trigger-icon',
14354
14414
  dropdownButton: 'p-cascadeselect-trigger',
14355
14415
  loadingButton: 'p-cascadeselect-trigger',
@@ -14360,7 +14420,7 @@ var classes$14 = {
14360
14420
  text: 'p-cascadeselect-item-text',
14361
14421
  transition: 'p-connected-overlay'
14362
14422
  };
14363
- var styles$U = "\n@layer primereact {\n .p-cascadeselect {\n display: inline-flex;\n cursor: pointer;\n position: relative;\n user-select: none;\n }\n \n .p-cascadeselect-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n }\n \n .p-cascadeselect-label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n flex: 1 1 auto;\n width: 1%;\n text-overflow: ellipsis;\n cursor: pointer;\n }\n \n .p-cascadeselect-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n .p-cascadeselect .p-cascadeselect-panel {\n min-width: 100%;\n }\n \n .p-cascadeselect-item {\n cursor: pointer;\n font-weight: normal;\n white-space: nowrap;\n }\n \n .p-cascadeselect-item-content {\n display: flex;\n align-items: center;\n overflow: hidden;\n position: relative;\n }\n \n .p-cascadeselect-group-icon {\n margin-left: auto;\n }\n \n .p-cascadeselect-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n min-width: 100%;\n }\n \n .p-fluid .p-cascadeselect {\n display: flex;\n }\n \n .p-fluid .p-cascadeselect .p-cascadeselect-label {\n width: 1%;\n }\n \n .p-cascadeselect-sublist-wrapper {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n \n .p-cascadeselect-item-active {\n overflow: visible;\n }\n \n .p-cascadeselect-item-active > .p-cascadeselect-sublist-wrapper {\n display: block;\n left: 100%;\n top: 0;\n }\n}\n";
14423
+ var styles$U = "\n@layer primereact {\n .p-cascadeselect {\n display: inline-flex;\n cursor: pointer;\n position: relative;\n user-select: none;\n }\n\n .p-cascadeselect-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n }\n\n .p-cascadeselect-label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n flex: 1 1 auto;\n width: 1%;\n text-overflow: ellipsis;\n cursor: pointer;\n }\n\n .p-cascadeselect-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n\n .p-cascadeselect .p-cascadeselect-panel {\n min-width: 100%;\n }\n\n .p-cascadeselect-item {\n cursor: pointer;\n font-weight: normal;\n white-space: nowrap;\n }\n\n .p-cascadeselect-item-content {\n display: flex;\n align-items: center;\n overflow: hidden;\n position: relative;\n }\n\n .p-cascadeselect-group-icon {\n margin-left: auto;\n }\n\n .p-cascadeselect-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n min-width: 100%;\n }\n\n .p-fluid .p-cascadeselect {\n display: flex;\n }\n\n .p-fluid .p-cascadeselect .p-cascadeselect-label {\n width: 1%;\n }\n\n .p-cascadeselect-sublist-wrapper {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n\n .p-cascadeselect-item-active {\n overflow: visible;\n }\n\n .p-cascadeselect-item-active > .p-cascadeselect-sublist-wrapper {\n display: block;\n left: 100%;\n top: 0;\n }\n .p-cascadeselect-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n right: 3rem;\n }\n}\n";
14364
14424
  var CascadeSelectBase = ComponentBase.extend({
14365
14425
  defaultProps: {
14366
14426
  __TYPE: 'CascadeSelect',
@@ -14368,6 +14428,7 @@ var CascadeSelectBase = ComponentBase.extend({
14368
14428
  ariaLabelledBy: null,
14369
14429
  autoFocus: false,
14370
14430
  breakpoint: undefined,
14431
+ showClear: false,
14371
14432
  className: null,
14372
14433
  dataKey: null,
14373
14434
  disabled: false,
@@ -14393,6 +14454,8 @@ var CascadeSelectBase = ComponentBase.extend({
14393
14454
  optionLabel: null,
14394
14455
  optionValue: null,
14395
14456
  options: null,
14457
+ panelClassName: null,
14458
+ panelStyle: null,
14396
14459
  placeholder: null,
14397
14460
  scrollHeight: '400px',
14398
14461
  style: null,
@@ -14705,6 +14768,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
14705
14768
  var styleElementRef = React.useRef(null);
14706
14769
  var dirty = React.useRef(false);
14707
14770
  var selectionPath = React.useRef(null);
14771
+ var selfChange = React.useRef(null);
14708
14772
  var _useOverlayListener = useOverlayListener({
14709
14773
  target: elementRef,
14710
14774
  overlay: overlayRef,
@@ -14734,6 +14798,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
14734
14798
  });
14735
14799
  var onOptionSelect = function onOptionSelect(event) {
14736
14800
  if (props.onChange) {
14801
+ selfChange.current = true;
14737
14802
  props.onChange({
14738
14803
  originalEvent: event,
14739
14804
  value: event.value
@@ -14960,6 +15025,48 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
14960
15025
  }, ariaProps), ptm('input'));
14961
15026
  return /*#__PURE__*/React.createElement("div", hiddenSelectedMessageProps, /*#__PURE__*/React.createElement("input", inputProps));
14962
15027
  };
15028
+ var clear = function clear(event) {
15029
+ if (props.onChange) {
15030
+ selfChange.current = true;
15031
+ props.onChange({
15032
+ originalEvent: event,
15033
+ value: undefined,
15034
+ stopPropagation: function stopPropagation() {
15035
+ event === null || event === void 0 || event.stopPropagation();
15036
+ },
15037
+ preventDefault: function preventDefault() {
15038
+ event === null || event === void 0 || event.preventDefault();
15039
+ },
15040
+ target: {
15041
+ name: props.name,
15042
+ id: props.id,
15043
+ value: undefined
15044
+ }
15045
+ });
15046
+ }
15047
+ };
15048
+ var onClearIconKeyDown = function onClearIconKeyDown(event) {
15049
+ if (event.key === 'Enter' || event.code === 'Space') {
15050
+ clear(event);
15051
+ event.preventDefault();
15052
+ }
15053
+ };
15054
+ var createClearIcon = function createClearIcon() {
15055
+ if (props.value != null && props.showClear && !props.disabled) {
15056
+ var clearIconProps = mergeProps({
15057
+ className: cx('clearIcon'),
15058
+ onPointerUp: clear,
15059
+ tabIndex: props.tabIndex || '0',
15060
+ onKeyDown: onClearIconKeyDown,
15061
+ 'aria-label': localeOption('clear')
15062
+ }, ptm('clearIcon'));
15063
+ var icon = props.clearIcon || /*#__PURE__*/React.createElement(TimesIcon, clearIconProps);
15064
+ return IconUtils.getJSXIcon(icon, _objectSpread$1H({}, clearIconProps), {
15065
+ props: props
15066
+ });
15067
+ }
15068
+ return null;
15069
+ };
14963
15070
  var createLabel = function createLabel() {
14964
15071
  var label = props.value ? getOptionLabel(props.value) : props.placeholder || 'p-emptylabel';
14965
15072
  var labelProps = mergeProps({
@@ -15013,7 +15120,8 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
15013
15120
  }, ptm('wrapper'));
15014
15121
  var panelProps = mergeProps({
15015
15122
  ref: overlayRef,
15016
- className: cx('panel'),
15123
+ className: classNames(props.panelClassName, cx('panel')),
15124
+ style: props.panelStyle,
15017
15125
  onClick: function onClick(e) {
15018
15126
  return onPanelClick(e);
15019
15127
  }
@@ -15062,6 +15170,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
15062
15170
  var createElement = function createElement() {
15063
15171
  var keyboardHelper = createKeyboardHelper();
15064
15172
  var labelElement = createLabel();
15173
+ var clearIcon = createClearIcon();
15065
15174
  var dropdownIcon = props.loading ? createLoadingIcon() : createDropdownIcon();
15066
15175
  var overlay = createOverlay();
15067
15176
  var rootProps = mergeProps({
@@ -15077,7 +15186,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
15077
15186
  return _onClick(e);
15078
15187
  }
15079
15188
  }, otherProps, ptm('root'));
15080
- return /*#__PURE__*/React.createElement("div", rootProps, keyboardHelper, labelElement, dropdownIcon, overlay);
15189
+ return /*#__PURE__*/React.createElement("div", rootProps, keyboardHelper, labelElement, clearIcon, dropdownIcon, overlay);
15081
15190
  };
15082
15191
  var otherProps = CascadeSelectBase.getOtherProps(props);
15083
15192
  ObjectUtils.reduceKeys(otherProps, DomHandler.DATA_PROPS);
@@ -16184,7 +16293,8 @@ var ColorPickerPanel = /*#__PURE__*/React.forwardRef(function (props, ref) {
16184
16293
  context: context
16185
16294
  }),
16186
16295
  style: props.panelStyle,
16187
- onClick: props.onClick
16296
+ onClick: props.onClick,
16297
+ 'data-pr-is-overlay': true
16188
16298
  }, ptm('panel', {
16189
16299
  hostName: props.hostName
16190
16300
  }));
@@ -16926,22 +17036,6 @@ var FocusTrap = /*#__PURE__*/React__default.memo(/*#__PURE__*/React__default.for
16926
17036
  }));
16927
17037
  var FocusTrap$1 = FocusTrap;
16928
17038
 
16929
- var TimesIcon = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inProps, ref) {
16930
- var pti = IconBase.getPTI(inProps);
16931
- return /*#__PURE__*/React.createElement("svg", _extends({
16932
- ref: ref,
16933
- width: "14",
16934
- height: "14",
16935
- viewBox: "0 0 14 14",
16936
- fill: "none",
16937
- xmlns: "http://www.w3.org/2000/svg"
16938
- }, pti), /*#__PURE__*/React.createElement("path", {
16939
- d: "M8.01186 7.00933L12.27 2.75116C12.341 2.68501 12.398 2.60524 12.4375 2.51661C12.4769 2.42798 12.4982 2.3323 12.4999 2.23529C12.5016 2.13827 12.4838 2.0419 12.4474 1.95194C12.4111 1.86197 12.357 1.78024 12.2884 1.71163C12.2198 1.64302 12.138 1.58893 12.0481 1.55259C11.9581 1.51625 11.8617 1.4984 11.7647 1.50011C11.6677 1.50182 11.572 1.52306 11.4834 1.56255C11.3948 1.60204 11.315 1.65898 11.2488 1.72997L6.99067 5.98814L2.7325 1.72997C2.59553 1.60234 2.41437 1.53286 2.22718 1.53616C2.03999 1.53946 1.8614 1.61529 1.72901 1.74767C1.59663 1.88006 1.5208 2.05865 1.5175 2.24584C1.5142 2.43303 1.58368 2.61419 1.71131 2.75116L5.96948 7.00933L1.71131 11.2675C1.576 11.403 1.5 11.5866 1.5 11.7781C1.5 11.9696 1.576 12.1532 1.71131 12.2887C1.84679 12.424 2.03043 12.5 2.2219 12.5C2.41338 12.5 2.59702 12.424 2.7325 12.2887L6.99067 8.03052L11.2488 12.2887C11.3843 12.424 11.568 12.5 11.7594 12.5C11.9509 12.5 12.1346 12.424 12.27 12.2887C12.4053 12.1532 12.4813 11.9696 12.4813 11.7781C12.4813 11.5866 12.4053 11.403 12.27 11.2675L8.01186 7.00933Z",
16940
- fill: "currentColor"
16941
- }));
16942
- }));
16943
- TimesIcon.displayName = 'TimesIcon';
16944
-
16945
17039
  var WindowMaximizeIcon = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inProps, ref) {
16946
17040
  var pti = IconBase.getPTI(inProps);
16947
17041
  return /*#__PURE__*/React.createElement("svg", _extends({
@@ -17095,6 +17189,7 @@ var DialogBase = ComponentBase.extend({
17095
17189
  resizable: true,
17096
17190
  rtl: false,
17097
17191
  showHeader: true,
17192
+ showCloseIcon: true,
17098
17193
  style: null,
17099
17194
  transitionOptions: null,
17100
17195
  visible: false,
@@ -17226,7 +17321,7 @@ var Dialog = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
17226
17321
  var focus = function focus() {
17227
17322
  var activeElement = document.activeElement;
17228
17323
  var isActiveElementInDialog = activeElement && dialogRef.current && dialogRef.current.contains(activeElement);
17229
- if (!isActiveElementInDialog && props.closable && props.showHeader && closeRef.current) {
17324
+ if (!isActiveElementInDialog && props.closable && props.showCloseIcon && props.showHeader && closeRef.current) {
17230
17325
  closeRef.current.focus();
17231
17326
  }
17232
17327
  };
@@ -17285,7 +17380,7 @@ var Dialog = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
17285
17380
  lastPageX.current = event.pageX;
17286
17381
  dialogRef.current.style.left = leftPos - leftMargin + 'px';
17287
17382
  }
17288
- if (topPos >= props.minY && topPos + height < viewport.height) {
17383
+ if (topPos >= props.minY && (deltaY < 0 || topPos + height < viewport.height)) {
17289
17384
  lastPageY.current = event.pageY;
17290
17385
  dialogRef.current.style.top = topPos - topMargin + 'px';
17291
17386
  }
@@ -17339,10 +17434,10 @@ var Dialog = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
17339
17434
  newWidth = newWidth + deltaX;
17340
17435
  newHeight = newHeight + deltaY;
17341
17436
  }
17342
- if ((!minWidth || newWidth > minWidth) && offset.left + newWidth < viewport.width) {
17437
+ if ((!minWidth || newWidth > minWidth) && (deltaX < 0 || offset.left + newWidth < viewport.width)) {
17343
17438
  dialogRef.current.style.width = newWidth + 'px';
17344
17439
  }
17345
- if ((!minHeight || newHeight > minHeight) && offset.top + newHeight < viewport.height) {
17440
+ if ((!minHeight || newHeight > minHeight) && (deltaY < 0 || offset.top + newHeight < viewport.height)) {
17346
17441
  dialogRef.current.style.height = newHeight + 'px';
17347
17442
  }
17348
17443
  lastPageX.current = event.pageX;
@@ -17532,7 +17627,7 @@ var Dialog = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
17532
17627
  };
17533
17628
  });
17534
17629
  var createCloseIcon = function createCloseIcon() {
17535
- if (props.closable) {
17630
+ if (props.closable && props.showCloseIcon) {
17536
17631
  var labelAria = props.ariaCloseIconLabel || ariaLabel('close');
17537
17632
  var closeButtonIconProps = mergeProps({
17538
17633
  className: cx('closeButtonIcon'),
@@ -18616,13 +18711,14 @@ var ContextMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(funct
18616
18711
  var key = props.id + '_separator_' + index;
18617
18712
  var separatorProps = mergeProps({
18618
18713
  id: key,
18619
- key: key,
18620
18714
  className: cx('separator'),
18621
18715
  role: 'separator'
18622
18716
  }, ptm('separator', {
18623
18717
  hostName: props.hostName
18624
18718
  }));
18625
- return /*#__PURE__*/React.createElement("li", separatorProps);
18719
+ return /*#__PURE__*/React.createElement("li", _extends({}, separatorProps, {
18720
+ key: key
18721
+ }));
18626
18722
  };
18627
18723
  var createSubmenu = function createSubmenu(item, index) {
18628
18724
  if (isItemGroup(item)) {
@@ -18707,9 +18803,8 @@ var ContextMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(funct
18707
18803
  },
18708
18804
  className: cx('content')
18709
18805
  }, getPTOptions(processedItem, 'content', index));
18710
- var menuitemProps = mergeProps(_defineProperty({
18806
+ var menuitemProps = mergeProps({
18711
18807
  id: key,
18712
- key: key,
18713
18808
  role: 'menuitem',
18714
18809
  'aria-label': item.label,
18715
18810
  'aria-disabled': disabled,
@@ -18728,8 +18823,10 @@ var ContextMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(funct
18728
18823
  disabled: isItemDisabled(item)
18729
18824
  }),
18730
18825
  style: item.style
18731
- }, "key", key), getPTOptions(processedItem, 'menuitem', index));
18732
- return /*#__PURE__*/React.createElement("li", menuitemProps, /*#__PURE__*/React.createElement("div", contentProps, content), submenu);
18826
+ }, getPTOptions(processedItem, 'menuitem', index));
18827
+ return /*#__PURE__*/React.createElement("li", _extends({}, menuitemProps, {
18828
+ key: key
18829
+ }), /*#__PURE__*/React.createElement("div", contentProps, content), submenu);
18733
18830
  };
18734
18831
  var createItem = function createItem(processedItem, index) {
18735
18832
  if (processedItem.visible === false) {
@@ -20350,7 +20447,7 @@ var InputNumber = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
20350
20447
  var stacked = props.showButtons && props.buttonLayout === 'stacked';
20351
20448
  var horizontal = props.showButtons && props.buttonLayout === 'horizontal';
20352
20449
  var vertical = props.showButtons && props.buttonLayout === 'vertical';
20353
- var inputMode = props.inputMode || (props.mode === 'decimal' && !props.minFractionDigits ? 'numeric' : 'decimal');
20450
+ var inputMode = props.inputMode || (props.mode === 'decimal' && !props.minFractionDigits && !props.maxFractionDigits ? 'numeric' : 'decimal');
20354
20451
  var getOptions = function getOptions() {
20355
20452
  var _props$minFractionDig, _props$maxFractionDig;
20356
20453
  return {
@@ -20491,6 +20588,10 @@ var InputNumber = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
20491
20588
  }
20492
20589
  return null;
20493
20590
  };
20591
+ var addWithPrecision = function addWithPrecision(base, increment) {
20592
+ var precision = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
20593
+ return Math.round((base + increment) * precision) / precision;
20594
+ };
20494
20595
  var _repeat = function repeat(event, interval, dir) {
20495
20596
  var i = interval || 500;
20496
20597
  clearTimer();
@@ -20503,7 +20604,7 @@ var InputNumber = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
20503
20604
  if (inputRef.current) {
20504
20605
  var step = props.step * dir;
20505
20606
  var currentValue = parseValue(inputRef.current.value) || 0;
20506
- var newValue = validateValue(currentValue + step);
20607
+ var newValue = validateValue(addWithPrecision(currentValue, step));
20507
20608
  if (props.maxLength && props.maxLength < formatValue(newValue).length) {
20508
20609
  return;
20509
20610
  }
@@ -20785,6 +20886,10 @@ var InputNumber = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
20785
20886
  event.preventDefault();
20786
20887
  var _char2 = event.key;
20787
20888
  if (_char2) {
20889
+ // get decimal separator in current locale
20890
+ if (_char2 === '.') {
20891
+ _char2 = _decimalSeparator.current;
20892
+ }
20788
20893
  var _isDecimalSign = isDecimalSign(_char2);
20789
20894
  var _isMinusSign = isMinusSign(_char2);
20790
20895
  if (Number(_char2) >= 0 && Number(_char2) <= 9 || _isMinusSign || _isDecimalSign) {
@@ -20899,6 +21004,7 @@ var InputNumber = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
20899
21004
  suffixCharIndex = _getCharIndexes2.suffixCharIndex,
20900
21005
  currencyCharIndex = _getCharIndexes2.currencyCharIndex;
20901
21006
  var maxFractionDigits = numberFormat.current.resolvedOptions().maximumFractionDigits;
21007
+ var hasBoundOrAffix = props.min || props.max || props.suffix || props.prefix; //only exception
20902
21008
  var newValueStr;
20903
21009
  if (sign.isMinusSign) {
20904
21010
  var isNewMinusSign = minusCharIndex === -1;
@@ -20918,7 +21024,7 @@ var InputNumber = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
20918
21024
  newValueStr = insertText(inputValue, text, selectionStart, selectionEnd);
20919
21025
  updateValue(event, newValueStr, text, 'insert');
20920
21026
  } else if (decimalCharIndex === -1 && (maxFractionDigits || props.maxFractionDigits)) {
20921
- var allowedDecimal = inputMode !== 'numeric' || inputMode === 'numeric' && (props.min || props.max);
21027
+ var allowedDecimal = inputMode !== 'numeric' || inputMode === 'numeric' && hasBoundOrAffix;
20922
21028
  if (allowedDecimal) {
20923
21029
  newValueStr = insertText(inputValue, text, selectionStart, selectionEnd);
20924
21030
  updateValue(event, newValueStr, text, 'insert');
@@ -21885,6 +21991,7 @@ var DropdownBase = ComponentBase.extend({
21885
21991
  name: null,
21886
21992
  onBlur: null,
21887
21993
  onChange: null,
21994
+ onClick: null,
21888
21995
  onContextMenu: null,
21889
21996
  onFilter: null,
21890
21997
  onFocus: null,
@@ -22260,8 +22367,9 @@ var DropdownPanel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
22260
22367
  return item && createItem(item, options.index, options);
22261
22368
  },
22262
22369
  contentTemplate: function contentTemplate(options) {
22370
+ var children = options.children || [];
22263
22371
  var emptyMessage = props.hasFilter ? props.emptyFilterMessage : props.emptyMessage;
22264
- var content = isEmptyFilter ? createEmptyMessage(emptyMessage) : options.children;
22372
+ var content = isEmptyFilter || (children === null || children === void 0 ? void 0 : children.length) === 0 ? createEmptyMessage(emptyMessage) : children;
22265
22373
  var listProps = mergeProps({
22266
22374
  ref: options.contentRef,
22267
22375
  style: options.style,
@@ -22301,7 +22409,8 @@ var DropdownPanel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
22301
22409
  context: context
22302
22410
  })),
22303
22411
  style: sx('panel'),
22304
- onClick: props.onClick
22412
+ onClick: props.onClick,
22413
+ 'data-pr-is-overlay': true
22305
22414
  }, getPTOptions('panel'));
22306
22415
  var transitionProps = mergeProps({
22307
22416
  classNames: cx('transition'),
@@ -22774,15 +22883,24 @@ var Dropdown = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
22774
22883
  !pressedInInputText && onEnterKey(event);
22775
22884
  };
22776
22885
  var onEnterKey = function onEnterKey(event) {
22886
+ event.preventDefault();
22777
22887
  if (!overlayVisibleState) {
22778
22888
  setFocusedOptionIndex(-1);
22779
22889
  onArrowDownKey(event);
22780
22890
  } else {
22781
- if (focusedOptionIndex !== -1) {
22782
- onOptionSelect(event, visibleOptions[focusedOptionIndex]);
22891
+ if (focusedOptionIndex === -1) {
22892
+ return;
22893
+ }
22894
+ var focusedOption = visibleOptions[focusedOptionIndex];
22895
+ var optionValue = getOptionValue(focusedOption);
22896
+ if (optionValue == null || optionValue == undefined) {
22897
+ hide();
22898
+ resetFilter();
22899
+ updateEditableLabel(selectedOption);
22900
+ return;
22783
22901
  }
22902
+ onOptionSelect(event, focusedOption);
22784
22903
  }
22785
- event.preventDefault();
22786
22904
  };
22787
22905
  var onEscapeKey = function onEscapeKey(event) {
22788
22906
  overlayVisibleState && hide();
@@ -23905,6 +24023,9 @@ var DataTableBase = ComponentBase.extend({
23905
24023
  alwaysShowPaginator: true,
23906
24024
  breakpoint: '960px',
23907
24025
  cellClassName: null,
24026
+ cellMemo: true,
24027
+ cellMemoProps: ['rowData', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'frozenCol', 'alignFrozenCol'],
24028
+ cellMemoPropsDepth: 1,
23908
24029
  cellSelection: false,
23909
24030
  checkIcon: null,
23910
24031
  className: null,
@@ -24421,8 +24542,6 @@ var Cell = function Cell(props) {
24421
24542
  setStyleObjectState = _React$useState6[1];
24422
24543
  var elementRef = React.useRef(null);
24423
24544
  var keyHelperRef = React.useRef(null);
24424
- var overlayEventListener = React.useRef(null);
24425
- var selfClick = React.useRef(false);
24426
24545
  var focusTimeout = React.useRef(null);
24427
24546
  var initFocusTimeout = React.useRef(null);
24428
24547
  var editingRowDataStateRef = React.useRef(null);
@@ -24459,17 +24578,20 @@ var Cell = function Cell(props) {
24459
24578
  var cellEditValidateOnClose = function cellEditValidateOnClose() {
24460
24579
  return getColumnProp('cellEditValidateOnClose');
24461
24580
  };
24581
+ var isIgnoredElement = function isIgnoredElement(element) {
24582
+ var isOverlay = function isOverlay(el) {
24583
+ return el.getAttribute && el.getAttribute('data-pr-is-overlay');
24584
+ };
24585
+ return isOverlay(element) || DomHandler.getParents(element).find(function (el) {
24586
+ return isOverlay(el);
24587
+ });
24588
+ };
24462
24589
  var _useEventListener = useEventListener({
24463
24590
  type: 'click',
24464
24591
  listener: function listener(e) {
24465
- setTimeout(function () {
24466
- if (!selfClick.current && isOutsideClicked(e.target)) {
24467
- // #2666 for overlay components and outside is clicked
24468
-
24469
- switchCellToViewMode(e, true);
24470
- }
24471
- }, 0);
24472
- selfClick.current = false;
24592
+ if (!isIgnoredElement(e.target) && isOutsideClicked(e.target)) {
24593
+ switchCellToViewMode(e, true);
24594
+ }
24473
24595
  },
24474
24596
  options: true,
24475
24597
  when: isEditable()
@@ -24514,10 +24636,6 @@ var Cell = function Cell(props) {
24514
24636
  setTimeout(function () {
24515
24637
  setEditingState(false);
24516
24638
  unbindDocumentClickListener();
24517
- OverlayService.off('overlay-click', overlayEventListener.current);
24518
- overlayEventListener.current = null;
24519
- editingRowDataStateRef.current = null;
24520
- selfClick.current = false;
24521
24639
  }, 1);
24522
24640
  };
24523
24641
  var switchCellToViewMode = function switchCellToViewMode(event, submit) {
@@ -24561,7 +24679,7 @@ var Cell = function Cell(props) {
24561
24679
  editingRowDataStateRef.current = editingRowData;
24562
24680
  };
24563
24681
  var _onClick = function onClick(event) {
24564
- props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, selfClick, props.column, bindDocumentClickListener, overlayEventListener);
24682
+ props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, props.column, bindDocumentClickListener);
24565
24683
  };
24566
24684
  var _onMouseDown = function onMouseDown(event) {
24567
24685
  var params = getCellCallbackParams(event);
@@ -24633,7 +24751,6 @@ var Cell = function Cell(props) {
24633
24751
  }
24634
24752
  };
24635
24753
  var _onBlur = function onBlur(event) {
24636
- selfClick.current = false;
24637
24754
  if (props.editMode !== 'row' && editingState && getColumnProp('cellEditValidatorEvent') === 'blur') {
24638
24755
  switchCellToViewMode(event, true);
24639
24756
  }
@@ -24683,7 +24800,7 @@ var Cell = function Cell(props) {
24683
24800
  field: props.field,
24684
24801
  index: props.rowIndex
24685
24802
  });
24686
- props.focusOnInit();
24803
+ props.focusOnInit(initFocusTimeout, elementRef);
24687
24804
  };
24688
24805
  React.useEffect(function () {
24689
24806
  if (props.frozenCol) props.updateStickyPosition(elementRef, props.frozenCol, props.alignFrozenCol, styleObjectState, setStyleObjectState);
@@ -24714,9 +24831,8 @@ var Cell = function Cell(props) {
24714
24831
  // eslint-disable-next-line react-hooks/exhaustive-deps
24715
24832
  }, [editingState]);
24716
24833
  useUnmountEffect(function () {
24717
- if (overlayEventListener.current) {
24718
- OverlayService.off('overlay-click', overlayEventListener.current);
24719
- overlayEventListener.current = null;
24834
+ if (editingRowDataStateRef.current) {
24835
+ editingRowDataStateRef.current = null;
24720
24836
  }
24721
24837
  });
24722
24838
  var createLoading = function createLoading() {
@@ -25020,15 +25136,23 @@ var Cell = function Cell(props) {
25020
25136
  var RadioCheckCell = /*#__PURE__*/React.memo(function (props) {
25021
25137
  return /*#__PURE__*/React.createElement(Cell, props);
25022
25138
  }, function (prevProps, nextProps) {
25139
+ if (nextProps.cellMemo === false) return false;
25023
25140
  var keysToCompare = ['isRowSelected', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'rowData'];
25024
25141
  return ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
25025
25142
  });
25026
25143
  RadioCheckCell.displayName = 'RadioCheckCell';
25144
+ var defaultKeysToCompare = ['rowData', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'frozenCol', 'alignFrozenCol'];
25027
25145
  var BodyCell = /*#__PURE__*/React.memo(function (props) {
25028
25146
  return /*#__PURE__*/React.createElement(Cell, props);
25029
25147
  }, function (prevProps, nextProps) {
25030
- var keysToCompare = ['field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'rowData', 'frozenCol', 'alignFrozenCol'];
25031
- return ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
25148
+ if (nextProps.cellMemo === false) return false;
25149
+ var memoProps = nextProps.cellMemoProps;
25150
+ var keysToCompare = Array.isArray(memoProps) && memoProps.every(function (prop) {
25151
+ return typeof prop === 'string';
25152
+ }) ? memoProps : defaultKeysToCompare;
25153
+ var memoPropsDepth = nextProps.cellMemoPropsDepth;
25154
+ var depth = typeof memoPropsDepth === 'number' && memoPropsDepth > 0 ? memoPropsDepth : 1;
25155
+ return ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare, depth);
25032
25156
  });
25033
25157
  BodyCell.displayName = 'BodyCell';
25034
25158
 
@@ -25496,8 +25620,13 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
25496
25620
  } else {
25497
25621
  var left = 0;
25498
25622
  var prev = elementRef.current && elementRef.current.previousElementSibling;
25499
- if (prev && prev.classList.contains('p-frozen-column')) {
25500
- left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
25623
+ while (prev) {
25624
+ if (prev.classList.contains('p-frozen-column')) {
25625
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
25626
+ elementRef.current.style.left = left + 'px';
25627
+ break;
25628
+ }
25629
+ prev = prev.previousElementSibling;
25501
25630
  }
25502
25631
  styleObject.left = left + 'px';
25503
25632
  }
@@ -25505,9 +25634,8 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
25505
25634
  !isSameStyle && setStyleObjectState(styleObject);
25506
25635
  }
25507
25636
  }, []);
25508
- var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, selfClick, column, bindDocumentClickListener, overlayEventListener) {
25637
+ var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, column, bindDocumentClickListener) {
25509
25638
  if (props.editMode !== 'row' && isEditable && !editingState && (props.selectOnEdit || !props.selectOnEdit && props.isRowSelected)) {
25510
- selfClick.current = true;
25511
25639
  var onBeforeCellEditShow = getColumnProp(column, 'onBeforeCellEditShow');
25512
25640
  var onCellEditInit = getColumnProp(column, 'onCellEditInit');
25513
25641
  var cellEditValidatorEvent = getColumnProp(column, 'cellEditValidatorEvent');
@@ -25538,12 +25666,6 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
25538
25666
  }
25539
25667
  if (cellEditValidatorEvent === 'click') {
25540
25668
  bindDocumentClickListener();
25541
- overlayEventListener.current = function (e) {
25542
- if (!isOutsideClicked(e.target)) {
25543
- selfClick.current = true;
25544
- }
25545
- };
25546
- OverlayService.on('overlay-click', overlayEventListener.current);
25547
25669
  }
25548
25670
  }, 1);
25549
25671
  }
@@ -25564,6 +25686,9 @@ var BodyRow = /*#__PURE__*/React.memo(function (props) {
25564
25686
  var cellProps = mergeProps({
25565
25687
  hostName: props.hostName,
25566
25688
  allowCellSelection: props.allowCellSelection,
25689
+ cellMemo: props.cellMemo,
25690
+ cellMemoProps: props.cellMemoProps,
25691
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
25567
25692
  cellClassName: props.cellClassName,
25568
25693
  checkIcon: props.checkIcon,
25569
25694
  collapsedRowIcon: props.collapsedRowIcon,
@@ -25931,9 +26056,6 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
25931
26056
  options = options || props.virtualScrollerOptions;
25932
26057
  return options ? options[option] : null;
25933
26058
  };
25934
- var getProcessedDataIndex = function getProcessedDataIndex(rowIndex) {
25935
- return props.lazy ? rowIndex - props.first : rowIndex;
25936
- };
25937
26059
  var findIndex = function findIndex(collection, rowData) {
25938
26060
  return (collection || []).findIndex(function (data) {
25939
26061
  return equals(rowData, data);
@@ -26104,16 +26226,14 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
26104
26226
  var rangeStart;
26105
26227
  var rangeEnd;
26106
26228
  var isAllowCellSelection = allowCellSelection();
26107
- var rangeRowIndexInProcessedData = getProcessedDataIndex(rangeRowIndex.current);
26108
- var anchorRowIndexInProcessedData = getProcessedDataIndex(anchorRowIndex.current);
26109
- if (rangeRowIndexInProcessedData > anchorRowIndexInProcessedData) {
26110
- rangeStart = anchorRowIndexInProcessedData;
26111
- rangeEnd = rangeRowIndexInProcessedData;
26112
- } else if (rangeRowIndexInProcessedData < anchorRowIndexInProcessedData) {
26113
- rangeStart = rangeRowIndexInProcessedData;
26114
- rangeEnd = anchorRowIndexInProcessedData;
26229
+ if (rangeRowIndex.current > anchorRowIndex.current) {
26230
+ rangeStart = anchorRowIndex.current;
26231
+ rangeEnd = rangeRowIndex.current;
26232
+ } else if (rangeRowIndex.current < anchorRowIndex.current) {
26233
+ rangeStart = rangeRowIndex.current;
26234
+ rangeEnd = anchorRowIndex.current;
26115
26235
  } else {
26116
- rangeStart = rangeEnd = rangeRowIndexInProcessedData;
26236
+ rangeStart = rangeEnd = rangeRowIndex.current;
26117
26237
  }
26118
26238
  return isAllowCellSelection ? selectRangeOnCell(event, rangeStart, rangeEnd) : selectRangeOnRow(event, rangeStart, rangeEnd);
26119
26239
  };
@@ -26154,7 +26274,7 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
26154
26274
  for (var i = rowRangeStart; i <= rowRangeEnd; i++) {
26155
26275
  var rowData = value[i];
26156
26276
  var columns = props.columns;
26157
- var rowIndex = props.lazy ? i + props.first : i;
26277
+ var rowIndex = props.paginator ? i + props.first : i;
26158
26278
  for (var j = cellRangeStart; j <= cellRangeEnd; j++) {
26159
26279
  var field = getColumnProp(columns[j], 'field');
26160
26280
  var _value = ObjectUtils.resolveFieldData(rowData, field);
@@ -26353,13 +26473,17 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
26353
26473
  onRangeSelection(event, 'row');
26354
26474
  }
26355
26475
  };
26476
+ var expandedRowsRef = React.useRef(props.expandedRows);
26477
+ React.useEffect(function () {
26478
+ expandedRowsRef.current = props.expandedRows;
26479
+ }, [props.expandedRows]);
26356
26480
  var onRowToggle = function onRowToggle(event) {
26357
26481
  var expandedRows;
26358
26482
  var dataKey = props.dataKey;
26359
26483
  var hasDataKey = props.groupRowsBy ? dataKey === props.groupRowsBy : !!dataKey;
26360
26484
  if (hasDataKey) {
26361
26485
  var dataKeyValue = String(ObjectUtils.resolveFieldData(event.data, dataKey));
26362
- expandedRows = props.expandedRows ? _objectSpread$1f({}, props.expandedRows) : {};
26486
+ expandedRows = expandedRowsRef.current ? _objectSpread$1f({}, expandedRowsRef.current) : {};
26363
26487
  if (expandedRows[dataKeyValue] != null) {
26364
26488
  delete expandedRows[dataKeyValue];
26365
26489
  if (props.onRowCollapse) {
@@ -26378,8 +26502,8 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
26378
26502
  }
26379
26503
  }
26380
26504
  } else {
26381
- var expandedRowIndex = findIndex(props.expandedRows, event.data);
26382
- expandedRows = props.expandedRows ? _toConsumableArray(props.expandedRows) : [];
26505
+ var expandedRowIndex = findIndex(expandedRowsRef.current, event.data);
26506
+ expandedRows = expandedRowsRef.current ? _toConsumableArray(expandedRowsRef.current) : [];
26383
26507
  if (expandedRowIndex !== -1) {
26384
26508
  expandedRows = expandedRows.filter(function (_, i) {
26385
26509
  return i !== expandedRowIndex;
@@ -26629,7 +26753,7 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
26629
26753
  return null;
26630
26754
  };
26631
26755
  var createGroupHeader = function createGroupHeader(rowData, rowIndex, expanded, colSpan) {
26632
- if (isSubheaderGrouping && shouldRenderRowGroupHeader(props.value, rowData, getProcessedDataIndex(rowIndex))) {
26756
+ if (isSubheaderGrouping && shouldRenderRowGroupHeader(props.value, rowData, rowIndex - props.first)) {
26633
26757
  var style = rowGroupHeaderStyle();
26634
26758
  var toggler = props.expandableRowGroups && /*#__PURE__*/React.createElement(RowTogglerButton, {
26635
26759
  hostName: props.hostName,
@@ -26679,6 +26803,9 @@ var TableBody = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (
26679
26803
  hostName: props.hostName,
26680
26804
  allowCellSelection: _allowCellSelection,
26681
26805
  allowRowSelection: _allowRowSelection,
26806
+ cellMemo: props.cellMemo,
26807
+ cellMemoProps: props.cellMemoProps,
26808
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
26682
26809
  cellClassName: props.cellClassName,
26683
26810
  checkIcon: props.checkIcon,
26684
26811
  collapsedRowIcon: props.collapsedRowIcon,
@@ -26898,16 +27025,21 @@ var FooterCell = /*#__PURE__*/React.memo(function (props) {
26898
27025
  var _align = getColumnProp('alignFrozen');
26899
27026
  if (_align === 'right') {
26900
27027
  var right = 0;
26901
- var next = elementRef.current.nextElementSibling;
27028
+ var next = elementRef.current && elementRef.current.nextElementSibling;
26902
27029
  if (next && next.classList.contains('p-frozen-column')) {
26903
27030
  right = DomHandler.getOuterWidth(next) + parseFloat(next.style.right || 0);
26904
27031
  }
26905
27032
  styleObject.right = right + 'px';
26906
27033
  } else {
26907
27034
  var left = 0;
26908
- var prev = elementRef.current.previousElementSibling;
26909
- if (prev && prev.classList.contains('p-frozen-column')) {
26910
- left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
27035
+ var prev = elementRef.current && elementRef.current.previousElementSibling;
27036
+ while (prev) {
27037
+ if (prev && prev.classList.contains('p-frozen-column')) {
27038
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
27039
+ elementRef.current.style.left = left + 'px';
27040
+ break;
27041
+ }
27042
+ prev = prev.previousElementSibling;
26911
27043
  }
26912
27044
  styleObject.left = left + 'px';
26913
27045
  }
@@ -27278,7 +27410,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
27278
27410
  };
27279
27411
  } else {
27280
27412
  filters[field].value = null;
27281
- filters[field].matchMode = defaultConstraint.matchMode;
27413
+ filters[field].matchMode = defaultConstraint ? defaultConstraint.matchMode : filters[field].matchMode;
27282
27414
  }
27283
27415
  filterClearCallback && filterClearCallback();
27284
27416
  props.onFilterChange(filters);
@@ -27345,6 +27477,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
27345
27477
  }
27346
27478
  };
27347
27479
  var onRowMatchModeChange = function onRowMatchModeChange(matchMode) {
27480
+ var _iconRef$current;
27348
27481
  var filterMatchModeChangeCallback = getColumnProp('onFilterMatchModeChange');
27349
27482
  var filters = _objectSpread$1c({}, props.filters);
27350
27483
  filters[field].matchMode = matchMode;
@@ -27355,6 +27488,7 @@ var ColumnFilter = /*#__PURE__*/React.memo(function (props) {
27355
27488
  props.onFilterChange(filters);
27356
27489
  props.onFilterApply();
27357
27490
  hide();
27491
+ (_iconRef$current = iconRef.current) === null || _iconRef$current === void 0 || _iconRef$current.focus();
27358
27492
  };
27359
27493
  var onRowMatchModeKeyDown = function onRowMatchModeKeyDown(event, matchMode, clear) {
27360
27494
  var item = event.target;
@@ -28171,16 +28305,21 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
28171
28305
  var align = getColumnProp('alignFrozen');
28172
28306
  if (align === 'right') {
28173
28307
  var right = 0;
28174
- var next = elementRef.current.nextElementSibling;
28308
+ var next = elementRef.current && elementRef.current.nextElementSibling;
28175
28309
  if (next && next.classList.contains('p-frozen-column')) {
28176
28310
  right = DomHandler.getOuterWidth(next) + parseFloat(next.style.right || 0);
28177
28311
  }
28178
28312
  styleObject.right = right + 'px';
28179
28313
  } else {
28180
28314
  var left = 0;
28181
- var prev = elementRef.current.previousElementSibling;
28182
- if (prev && prev.classList.contains('p-frozen-column')) {
28183
- left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
28315
+ var prev = elementRef.current && elementRef.current.previousElementSibling;
28316
+ while (prev) {
28317
+ if (prev && prev.classList.contains('p-frozen-column')) {
28318
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
28319
+ elementRef.current.style.left = left + 'px';
28320
+ break;
28321
+ }
28322
+ prev = prev.previousElementSibling;
28184
28323
  }
28185
28324
  styleObject.left = left + 'px';
28186
28325
  }
@@ -29031,6 +29170,20 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
29031
29170
  multiSortMeta: restoredState.multiSortMeta
29032
29171
  }));
29033
29172
  } else {
29173
+ var lastMeta = restoredState.multiSortMeta[restoredState.multiSortMeta.length - 1];
29174
+ var field = lastMeta && lastMeta.field ? lastMeta.field : null;
29175
+ if (field) {
29176
+ var sortColumn = findColumnByKey(getColumns(), field);
29177
+ if (sortColumn) {
29178
+ var sortFunction = getColumnProp(sortColumn, 'sortFunction');
29179
+ var sortable = getColumnProp(sortColumn, 'sortable');
29180
+ if (sortFunction && sortable) {
29181
+ columnSortFunction.current = sortFunction;
29182
+ columnSortable.current = sortable;
29183
+ columnField.current = field;
29184
+ }
29185
+ }
29186
+ }
29034
29187
  setMultiSortMetaState(restoredState.multiSortMeta);
29035
29188
  }
29036
29189
  }
@@ -29929,58 +30082,60 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
29929
30082
  var exportCSV = function exportCSV(options) {
29930
30083
  var data;
29931
30084
  var csv = "\uFEFF";
29932
- var columns = getColumns();
29933
30085
  if (options && options.selectionOnly) {
29934
30086
  data = props.selection || [];
29935
30087
  } else {
29936
30088
  data = [].concat(_toConsumableArray(props.frozenValue || []), _toConsumableArray(processedData() || []));
29937
30089
  }
29938
30090
 
29939
- //headers
29940
- columns.forEach(function (column, i) {
29941
- var _ref5 = [getColumnProp(column, 'field'), getColumnProp(column, 'header'), getColumnProp(column, 'exportHeader'), getColumnProp(column, 'exportable')],
30091
+ // First build collection of exportable columns
30092
+ var exportableColumns = getColumns().filter(function (column) {
30093
+ var exportable = getColumnProp(column, 'exportable');
30094
+ var field = getColumnProp(column, 'field');
30095
+
30096
+ // Column must be exportable (or undefined/not set) and have a field defined
30097
+ return exportable !== false && field;
30098
+ });
30099
+
30100
+ // headers
30101
+ exportableColumns.forEach(function (column, i) {
30102
+ var _ref5 = [getColumnProp(column, 'field'), getColumnProp(column, 'header'), getColumnProp(column, 'exportHeader')],
29942
30103
  field = _ref5[0],
29943
30104
  header = _ref5[1],
29944
- exportHeader = _ref5[2],
29945
- exportable = _ref5[3];
29946
- if (exportable && field) {
29947
- var columnHeader = String(exportHeader || header || field).replace(/"/g, '""').replace(/\n/g, "\u2028");
29948
- csv = csv + ('"' + columnHeader + '"');
29949
- if (i < columns.length - 1) {
29950
- csv = csv + props.csvSeparator;
29951
- }
30105
+ exportHeader = _ref5[2];
30106
+ var columnHeader = String(exportHeader || header || field).replace(/"/g, '""').replace(/\n/g, "\u2028");
30107
+ csv = csv + ('"' + columnHeader + '"');
30108
+ if (i < exportableColumns.length - 1) {
30109
+ csv = csv + props.csvSeparator;
29952
30110
  }
29953
30111
  });
29954
30112
 
29955
- //body
30113
+ // body
29956
30114
  data.forEach(function (record) {
29957
30115
  csv = csv + '\n';
29958
- columns.forEach(function (column, i) {
29959
- var _ref6 = [getColumnProp(column, 'field'), getColumnProp(column, 'exportField'), getColumnProp(column, 'exportable')],
30116
+ exportableColumns.forEach(function (column, i) {
30117
+ var _ref6 = [getColumnProp(column, 'field'), getColumnProp(column, 'exportField')],
29960
30118
  colField = _ref6[0],
29961
- exportField = _ref6[1],
29962
- exportable = _ref6[2];
30119
+ exportField = _ref6[1];
29963
30120
  var field = exportField || colField;
29964
- if (exportable && field) {
29965
- var cellData = ObjectUtils.resolveFieldData(record, field);
29966
- if (cellData != null) {
29967
- if (props.exportFunction) {
29968
- cellData = props.exportFunction({
29969
- data: cellData,
29970
- field: field,
29971
- rowData: record,
29972
- column: column
29973
- });
29974
- } else {
29975
- cellData = String(cellData).replace(/"/g, '""').replace(/\n/g, "\u2028");
29976
- }
30121
+ var cellData = ObjectUtils.resolveFieldData(record, field);
30122
+ if (cellData != null) {
30123
+ if (props.exportFunction) {
30124
+ cellData = props.exportFunction({
30125
+ data: cellData,
30126
+ field: field,
30127
+ rowData: record,
30128
+ column: column
30129
+ });
29977
30130
  } else {
29978
- cellData = '';
29979
- }
29980
- csv = csv + ('"' + cellData + '"');
29981
- if (i < columns.length - 1) {
29982
- csv = csv + props.csvSeparator;
30131
+ cellData = String(cellData).replace(/"/g, '""').replace(/\n/g, "\u2028");
29983
30132
  }
30133
+ } else {
30134
+ cellData = '';
30135
+ }
30136
+ csv = csv + ('"' + cellData + '"');
30137
+ if (i < exportableColumns.length - 1) {
30138
+ csv = csv + props.csvSeparator;
29984
30139
  }
29985
30140
  });
29986
30141
  });
@@ -30144,6 +30299,9 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
30144
30299
  },
30145
30300
  getVirtualScroller: function getVirtualScroller() {
30146
30301
  return virtualScrollerRef.current;
30302
+ },
30303
+ getProcessedData: function getProcessedData() {
30304
+ return processedData();
30147
30305
  }
30148
30306
  };
30149
30307
  });
@@ -30245,6 +30403,9 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
30245
30403
  var frozenBody = ObjectUtils.isNotEmpty(props.frozenValue) && /*#__PURE__*/React.createElement(TableBody, {
30246
30404
  hostName: "DataTable",
30247
30405
  ref: frozenBodyRef,
30406
+ cellMemo: props.cellMemo,
30407
+ cellMemoProps: props.cellMemoProps,
30408
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
30248
30409
  cellClassName: props.cellClassName,
30249
30410
  cellSelection: props.cellSelection,
30250
30411
  checkIcon: props.checkIcon,
@@ -30329,6 +30490,9 @@ var DataTable = /*#__PURE__*/React.forwardRef(function (inProps, ref) {
30329
30490
  var body = /*#__PURE__*/React.createElement(TableBody, {
30330
30491
  hostName: "DataTable",
30331
30492
  ref: bodyRef,
30493
+ cellMemo: props.cellMemo,
30494
+ cellMemoProps: props.cellMemoProps,
30495
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
30332
30496
  cellClassName: props.cellClassName,
30333
30497
  cellSelection: props.cellSelection,
30334
30498
  checkIcon: props.checkIcon,
@@ -32749,7 +32913,7 @@ var FileUpload = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
32749
32913
  var k = 1024;
32750
32914
  var dm = 3;
32751
32915
  var sizes = localeOption('fileSizeTypes');
32752
- if (bytes === 0) {
32916
+ if (bytes <= 0) {
32753
32917
  return "0 ".concat(sizes[0]);
32754
32918
  }
32755
32919
  var i = Math.floor(Math.log(bytes) / Math.log(k));
@@ -32771,7 +32935,8 @@ var FileUpload = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
32771
32935
  var selectedFiles = event.dataTransfer ? event.dataTransfer.files : event.target.files;
32772
32936
  for (var i = 0; i < selectedFiles.length; i++) {
32773
32937
  var file = selectedFiles[i];
32774
- if (!isFileSelected(file) && validate(file)) {
32938
+ var shouldAddFile = props.multiple ? !isFileSelected(file) && validate(file) : validate(file);
32939
+ if (shouldAddFile) {
32775
32940
  file.objectURL = window.URL.createObjectURL(file);
32776
32941
  currentFiles.push(file);
32777
32942
  }
@@ -32787,6 +32952,7 @@ var FileUpload = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
32787
32952
  });
32788
32953
  }
32789
32954
  clearInput();
32955
+ setFocusedState(false);
32790
32956
  if (props.mode === 'basic' && currentFiles.length > 0) {
32791
32957
  fileInputRef.current.style.display = 'none';
32792
32958
  }
@@ -34513,6 +34679,7 @@ var Galleria = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
34513
34679
  },
34514
34680
  options: props.transitionOptions,
34515
34681
  unmountOnExit: true,
34682
+ appear: true,
34516
34683
  onEnter: onEnter,
34517
34684
  onEntering: onEntering,
34518
34685
  onEntered: onEntered,
@@ -38588,11 +38755,12 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38588
38755
  var key = idState + '_separator__' + index;
38589
38756
  var separatorProps = mergeProps({
38590
38757
  id: key,
38591
- key: key,
38592
38758
  className: cx('separator'),
38593
38759
  role: 'separator'
38594
38760
  }, ptm('separator'));
38595
- return /*#__PURE__*/React.createElement("li", separatorProps);
38761
+ return /*#__PURE__*/React.createElement("li", _extends({}, separatorProps, {
38762
+ key: key
38763
+ }));
38596
38764
  };
38597
38765
  var createSubmenuIcon = function createSubmenuIcon(item) {
38598
38766
  if (item.items) {
@@ -38643,7 +38811,6 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38643
38811
  var isGroup = isItemGroup(processedItem);
38644
38812
  var isActive = isItemActive(processedItem);
38645
38813
  var submenuItemProps = mergeProps({
38646
- key: key,
38647
38814
  id: key,
38648
38815
  'aria-label': getItemLabel(processedItem),
38649
38816
  'aria-disabled': isDisabled,
@@ -38683,7 +38850,9 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38683
38850
  };
38684
38851
  content = ObjectUtils.getJSXElement(item.template, item, defaultContentOptions);
38685
38852
  }
38686
- return /*#__PURE__*/React.createElement("li", submenuItemProps, /*#__PURE__*/React.createElement("div", contentProps, content));
38853
+ return /*#__PURE__*/React.createElement("li", _extends({}, submenuItemProps, {
38854
+ key: key
38855
+ }), /*#__PURE__*/React.createElement("div", contentProps, content));
38687
38856
  };
38688
38857
  var createSubmenu = function createSubmenu(submenu, index) {
38689
38858
  if (!isItemVisible(submenu)) {
@@ -38695,7 +38864,6 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38695
38864
  var isDisabled = isItemDisabled(submenu);
38696
38865
  var submenuHeaderProps = mergeProps({
38697
38866
  id: key,
38698
- key: key,
38699
38867
  className: classNames(submenu.className, cx('submenuHeader', {
38700
38868
  disabled: isDisabled
38701
38869
  })),
@@ -38707,7 +38875,7 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38707
38875
  key: key
38708
38876
  }, /*#__PURE__*/React.createElement("li", submenuHeaderProps, label), items);
38709
38877
  };
38710
- var createSubmenus = function createSubmenus(column) {
38878
+ var createSubmenus = function createSubmenus(column, index) {
38711
38879
  return column.map(createSubmenu);
38712
38880
  };
38713
38881
  var createColumn = function createColumn(processedItem, processedColumn, index) {
@@ -38715,7 +38883,6 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38715
38883
  var key = category.label + '_column_' + index;
38716
38884
  var submenus = createSubmenus(processedColumn);
38717
38885
  var columnProps = mergeProps({
38718
- key: key,
38719
38886
  className: cx('column', {
38720
38887
  category: category
38721
38888
  })
@@ -38729,12 +38896,16 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38729
38896
  display: display
38730
38897
  }
38731
38898
  }, ptm('submenu'));
38732
- return /*#__PURE__*/React.createElement("div", columnProps, /*#__PURE__*/React.createElement("ul", submenuProps, submenus));
38899
+ return /*#__PURE__*/React.createElement("div", _extends({}, columnProps, {
38900
+ key: key
38901
+ }), /*#__PURE__*/React.createElement("ul", submenuProps, submenus));
38733
38902
  };
38734
38903
  var createColumns = function createColumns(category) {
38735
38904
  if (category.items) {
38736
38905
  return category.items.map(function (column, index) {
38737
- return createColumn(category, column, index);
38906
+ return /*#__PURE__*/React.createElement(React.Fragment, {
38907
+ key: index
38908
+ }, createColumn(category, column, index));
38738
38909
  });
38739
38910
  }
38740
38911
  return null;
@@ -38795,7 +38966,6 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38795
38966
  var isFocused = isItemFocused(processedItem);
38796
38967
  var isDisabled = isItemDisabled(processedItem);
38797
38968
  var menuItemProps = mergeProps(_defineProperty({
38798
- key: key,
38799
38969
  id: key,
38800
38970
  className: classNames(category.className, cx('menuitem', {
38801
38971
  category: category,
@@ -38831,7 +39001,9 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38831
39001
  },
38832
39002
  className: cx('content')
38833
39003
  }, getPTOptions(processedItem, 'content', index));
38834
- return /*#__PURE__*/React.createElement("li", menuItemProps, /*#__PURE__*/React.createElement("div", contentProps, itemContent), panel);
39004
+ return /*#__PURE__*/React.createElement("li", _extends({}, menuItemProps, {
39005
+ key: key
39006
+ }), /*#__PURE__*/React.createElement("div", contentProps, itemContent), panel);
38835
39007
  };
38836
39008
  var createMenu = function createMenu() {
38837
39009
  var menuProps = mergeProps({
@@ -38850,7 +39022,9 @@ var MegaMenu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (i
38850
39022
  }, ptm('menu'));
38851
39023
  if (processedItems) {
38852
39024
  return /*#__PURE__*/React.createElement("ul", menuProps, processedItems.map(function (item, index) {
38853
- return createCategory(item, index);
39025
+ return /*#__PURE__*/React.createElement(React.Fragment, {
39026
+ key: index
39027
+ }, createCategory(item, index));
38854
39028
  }));
38855
39029
  }
38856
39030
  return null;
@@ -39394,7 +39568,6 @@ var Mention = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (in
39394
39568
  }) : formatValue(suggestion);
39395
39569
  var isSelected = highlightState[index];
39396
39570
  var itemProps = mergeProps({
39397
- key: key,
39398
39571
  className: cx('item', {
39399
39572
  isSelected: isSelected
39400
39573
  }),
@@ -39405,7 +39578,9 @@ var Mention = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (in
39405
39578
  }, getPTOptions(suggestion, 'item', {
39406
39579
  selected: isSelected
39407
39580
  }));
39408
- return /*#__PURE__*/React.createElement("li", itemProps, content, /*#__PURE__*/React.createElement(Ripple, null));
39581
+ return /*#__PURE__*/React.createElement("li", _extends({}, itemProps, {
39582
+ key: key
39583
+ }), content, /*#__PURE__*/React.createElement(Ripple, null));
39409
39584
  };
39410
39585
  var createList = function createList() {
39411
39586
  var itemsProps = mergeProps({
@@ -39957,6 +40132,9 @@ var Menu = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inPro
39957
40132
  className: classNames(item.className, cx('menuitem', {
39958
40133
  focused: focusedOptionIndex === key
39959
40134
  })),
40135
+ onClick: function onClick(event) {
40136
+ return onItemClick(event, item, key);
40137
+ },
39960
40138
  style: sx('menuitem', {
39961
40139
  item: item
39962
40140
  }),
@@ -40416,9 +40594,11 @@ var Menubar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (in
40416
40594
  var _useEventListener = useEventListener({
40417
40595
  type: 'click',
40418
40596
  listener: function listener(event) {
40419
- var isOutsideButton = menuButtonRef.current && !menuButtonRef.current.contains(event.target);
40420
- if (isOutsideButton) {
40421
- hide();
40597
+ if (isOutsideClicked(event)) {
40598
+ var isOutsideContainer = elementRef.current && !elementRef.current.contains(event.target);
40599
+ if (isOutsideContainer) {
40600
+ hide();
40601
+ }
40422
40602
  }
40423
40603
  },
40424
40604
  options: {
@@ -40477,6 +40657,9 @@ var Menubar = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (in
40477
40657
  var menuButtonKeydown = function menuButtonKeydown(event) {
40478
40658
  (event.code === 'Enter' || event.code === 'NumpadEnter' || event.code === 'Space') && toggle(event);
40479
40659
  };
40660
+ var isOutsideClicked = function isOutsideClicked(event) {
40661
+ return rootMenuRef.current !== event.target && !rootMenuRef.current.contains(event.target) && menuButtonRef.current !== event.target && !menuButtonRef.current.contains(event.target);
40662
+ };
40480
40663
  var getItemProp = function getItemProp(item, name) {
40481
40664
  return item ? ObjectUtils.getItemValue(item[name]) : undefined;
40482
40665
  };
@@ -41564,6 +41747,7 @@ var MultiSelectHeader = /*#__PURE__*/React.memo(function (props) {
41564
41747
  role: "searchbox",
41565
41748
  value: props.filterValue,
41566
41749
  onChange: onFilter,
41750
+ onKeyDown: props.onFilterKeyDown,
41567
41751
  className: "p-multiselect-filter",
41568
41752
  placeholder: props.filterPlaceholder,
41569
41753
  pt: ptm('filterInput'),
@@ -41578,6 +41762,7 @@ var MultiSelectHeader = /*#__PURE__*/React.memo(function (props) {
41578
41762
  element: content,
41579
41763
  filterOptions: filterOptions,
41580
41764
  onFilter: onFilter,
41765
+ filterInputKeyDown: props.onFilterKeyDown,
41581
41766
  filterIconClassName: props.filterIconClassName,
41582
41767
  props: props
41583
41768
  };
@@ -41719,9 +41904,7 @@ var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
41719
41904
  'data-p-highlight': props.selected,
41720
41905
  'data-p-disabled': props.disabled
41721
41906
  }, getPTOptions('item'));
41722
- return /*#__PURE__*/React.createElement("li", _extends({}, itemProps, {
41723
- key: props.index + '_multiselectitem'
41724
- }), /*#__PURE__*/React.createElement("div", checkboxContainerProps, /*#__PURE__*/React.createElement(Checkbox, {
41907
+ return /*#__PURE__*/React.createElement("li", itemProps, /*#__PURE__*/React.createElement("div", checkboxContainerProps, /*#__PURE__*/React.createElement(Checkbox, {
41725
41908
  ref: checkboxRef,
41726
41909
  checked: props.selected,
41727
41910
  icon: checkboxIcon,
@@ -41789,6 +41972,7 @@ var MultiSelectPanel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(fun
41789
41972
  getOptionValue: props.getOptionValue,
41790
41973
  updateModel: props.updateModel,
41791
41974
  onFilter: onFilterInputChange,
41975
+ onFilterKeyDown: props.onFilterKeyDown,
41792
41976
  filterPlaceholder: props.filterPlaceholder,
41793
41977
  onClose: props.onCloseClick,
41794
41978
  showSelectAll: props.showSelectAll,
@@ -41954,7 +42138,8 @@ var MultiSelectPanel = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(fun
41954
42138
  allowOptionSelect: allowOptionSelect
41955
42139
  })),
41956
42140
  style: props.panelStyle,
41957
- onClick: props.onClick
42141
+ onClick: props.onClick,
42142
+ 'data-pr-is-overlay': true
41958
42143
  }, getPTOptions('panel'));
41959
42144
  if (props.inline) {
41960
42145
  return /*#__PURE__*/React.createElement("div", _extends({
@@ -42356,6 +42541,52 @@ var MultiSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
42356
42541
  }
42357
42542
  setClicked(false);
42358
42543
  };
42544
+ var onFilterKeyDown = function onFilterKeyDown(event) {
42545
+ switch (event.code) {
42546
+ case 'ArrowUp':
42547
+ if (props.inline) {
42548
+ break;
42549
+ }
42550
+ onArrowUpKey(event);
42551
+ break;
42552
+ case 'ArrowDown':
42553
+ if (props.inline) {
42554
+ break;
42555
+ }
42556
+ onArrowDownKey(event);
42557
+ break;
42558
+ case 'NumpadEnter':
42559
+ case 'Enter':
42560
+ if (props.inline) {
42561
+ break;
42562
+ }
42563
+ onEnterKey(event);
42564
+ break;
42565
+ case 'Home':
42566
+ if (props.inline) {
42567
+ break;
42568
+ }
42569
+ onHomeKey(event);
42570
+ event.preventDefault();
42571
+ break;
42572
+ case 'End':
42573
+ if (props.inline) {
42574
+ break;
42575
+ }
42576
+ onEndKey(event);
42577
+ event.preventDefault();
42578
+ break;
42579
+ case 'Escape':
42580
+ if (props.inline) {
42581
+ break;
42582
+ }
42583
+ hide();
42584
+ break;
42585
+ case 'Tab':
42586
+ onTabKey(event);
42587
+ break;
42588
+ }
42589
+ };
42359
42590
  var onSelectAll = function onSelectAll(event) {
42360
42591
  if (props.onSelectAll) {
42361
42592
  props.onSelectAll(event);
@@ -42768,20 +42999,19 @@ var MultiSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
42768
42999
  return selectedItemsLabel;
42769
43000
  };
42770
43001
  var getLabel = function getLabel() {
42771
- var label;
42772
- if (!empty && !props.fixedPlaceholder) {
42773
- var _props$value;
42774
- if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && ((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.length) > props.maxSelectedLabels) {
42775
- return getSelectedItemsLabel();
42776
- }
42777
- if (ObjectUtils.isArray(props.value)) {
42778
- return props.value.reduce(function (acc, value, index) {
42779
- return acc + (index !== 0 ? ', ' : '') + getLabelByValue(value);
42780
- }, '');
42781
- }
43002
+ var _props$value;
43003
+ if (empty || props.fixedPlaceholder) {
42782
43004
  return '';
42783
43005
  }
42784
- return label;
43006
+ if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && ((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.length) > props.maxSelectedLabels) {
43007
+ return getSelectedItemsLabel();
43008
+ }
43009
+ if (ObjectUtils.isArray(props.value)) {
43010
+ return props.value.reduce(function (acc, value, index) {
43011
+ return acc + (index !== 0 ? ', ' : '') + getLabelByValue(value);
43012
+ }, '');
43013
+ }
43014
+ return '';
42785
43015
  };
42786
43016
  var getLabelContent = function getLabelContent() {
42787
43017
  var valueLength = props.value ? props.value.length : 0;
@@ -43054,6 +43284,7 @@ var MultiSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
43054
43284
  getOptionValue: getOptionValue,
43055
43285
  updateModel: updateModel,
43056
43286
  onFilterInputChange: onFilterInputChange,
43287
+ onFilterKeyDown: onFilterKeyDown,
43057
43288
  resetFilter: resetFilter,
43058
43289
  onCloseClick: onCloseClick,
43059
43290
  onSelectAll: onSelectAll,
@@ -43094,12 +43325,20 @@ var classes$v = {
43094
43325
  },
43095
43326
  root: function root(_ref2) {
43096
43327
  var props = _ref2.props;
43097
- return classNames('p-multistatecheckbox p-checkbox p-component', props.classNames);
43328
+ return classNames('p-multistatecheckbox p-checkbox p-component', props.classNames, {
43329
+ 'p-variant-filled': props.variant === 'filled'
43330
+ });
43331
+ },
43332
+ checkbox: function checkbox(_ref3) {
43333
+ var props = _ref3.props;
43334
+ return classNames(props.className, {
43335
+ 'p-invalid': props.invalid
43336
+ });
43098
43337
  }
43099
43338
  };
43100
43339
  var inlineStyles$9 = {
43101
- checkbox: function checkbox(_ref3) {
43102
- var selectedOption = _ref3.selectedOption;
43340
+ checkbox: function checkbox(_ref4) {
43341
+ var selectedOption = _ref4.selectedOption;
43103
43342
  return selectedOption && selectedOption.style;
43104
43343
  }
43105
43344
  };
@@ -43124,7 +43363,9 @@ var MultiStateCheckboxBase = ComponentBase.extend({
43124
43363
  tooltip: null,
43125
43364
  tooltipOptions: null,
43126
43365
  value: null,
43127
- children: undefined
43366
+ children: undefined,
43367
+ invalid: false,
43368
+ variant: null
43128
43369
  },
43129
43370
  css: {
43130
43371
  classes: classes$v,
@@ -43273,7 +43514,6 @@ var MultiStateCheckbox = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(f
43273
43514
  var ariaProps = ObjectUtils.reduceKeys(otherProps, DomHandler.ARIA_PROPS);
43274
43515
  var icon = createIcon();
43275
43516
  var ariaValueLabel = selectedOption ? getOptionAriaLabel(selectedOption) : ariaLabel('nullLabel');
43276
- var ariaChecked = selectedOption ? 'true' : 'false';
43277
43517
  var rootProps = mergeProps({
43278
43518
  ref: elementRef,
43279
43519
  id: props.id,
@@ -43282,7 +43522,8 @@ var MultiStateCheckbox = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(f
43282
43522
  onClick: onClick
43283
43523
  }, MultiStateCheckboxBase.getOtherProps(props), ptm('root'));
43284
43524
  var checkboxProps = mergeProps(_objectSpread$I({
43285
- className: classNames(props.className),
43525
+ id: props.id + '_checkbox',
43526
+ className: cx('checkbox'),
43286
43527
  style: sx('checkbox', {
43287
43528
  selectedOption: selectedOption
43288
43529
  }),
@@ -43290,8 +43531,6 @@ var MultiStateCheckbox = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(f
43290
43531
  onFocus: onFocus,
43291
43532
  onBlur: onBlur,
43292
43533
  onKeyDown: onKeyDown,
43293
- role: 'checkbox',
43294
- 'aria-checked': ariaChecked,
43295
43534
  onChange: onClick,
43296
43535
  checked: !!selectedOption,
43297
43536
  disabled: props === null || props === void 0 ? void 0 : props.disabled,
@@ -49837,13 +50076,14 @@ var SlideMenuSub = /*#__PURE__*/React.memo(function (props) {
49837
50076
  var key = props.id + '_sep_' + index;
49838
50077
  var separatorProps = mergeProps({
49839
50078
  id: key,
49840
- key: key,
49841
50079
  className: cx('separator'),
49842
50080
  role: 'separator'
49843
50081
  }, ptm('separator', {
49844
50082
  hostName: props.hostName
49845
50083
  }));
49846
- return /*#__PURE__*/React.createElement("li", separatorProps);
50084
+ return /*#__PURE__*/React.createElement("li", _extends({}, separatorProps, {
50085
+ key: key
50086
+ }));
49847
50087
  };
49848
50088
  var createSubmenu = function createSubmenu(item, index) {
49849
50089
  var shouldRender = renderSubMenu[createKey(item, index)];
@@ -49919,14 +50159,15 @@ var SlideMenuSub = /*#__PURE__*/React.memo(function (props) {
49919
50159
  }
49920
50160
  var menuitemProps = mergeProps({
49921
50161
  id: key,
49922
- key: key,
49923
50162
  className: cx('menuitem', {
49924
50163
  active: active,
49925
50164
  item: item
49926
50165
  }),
49927
50166
  style: item.style
49928
50167
  }, getPTOptions(item, 'menuitem'));
49929
- return /*#__PURE__*/React.createElement("li", menuitemProps, content, submenu);
50168
+ return /*#__PURE__*/React.createElement("li", _extends({}, menuitemProps, {
50169
+ key: key
50170
+ }), content, submenu);
49930
50171
  };
49931
50172
  var createItem = function createItem(item, index) {
49932
50173
  if (item.visible === false) {
@@ -51359,6 +51600,9 @@ var TieredMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
51359
51600
  }
51360
51601
  };
51361
51602
  var getItemId = function getItemId(processedItem) {
51603
+ if (processedItem.item && processedItem.item.id) {
51604
+ return processedItem.item.id;
51605
+ }
51362
51606
  return "".concat(props.menuId, "_").concat(processedItem.key);
51363
51607
  };
51364
51608
  var getItemProp = function getItemProp(processedItem, name, params) {
@@ -51412,13 +51656,14 @@ var TieredMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
51412
51656
  var createSeparator = function createSeparator(index) {
51413
51657
  var key = 'separator_' + index;
51414
51658
  var separatorProps = mergeProps({
51415
- key: key,
51416
51659
  className: cx('separator'),
51417
51660
  role: 'separator'
51418
51661
  }, ptm('separator', {
51419
51662
  hostName: props.hostName
51420
51663
  }));
51421
- return /*#__PURE__*/React.createElement("li", separatorProps);
51664
+ return /*#__PURE__*/React.createElement("li", _extends({}, separatorProps, {
51665
+ key: key
51666
+ }));
51422
51667
  };
51423
51668
  var createSubmenu = function createSubmenu(processedItem, index) {
51424
51669
  if (isItemGroup(processedItem)) {
@@ -51512,7 +51757,6 @@ var TieredMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
51512
51757
  className: cx('content')
51513
51758
  }, getPTOptions(processedItem, 'content'));
51514
51759
  var menuitemProps = mergeProps({
51515
- key: key,
51516
51760
  id: key,
51517
51761
  'aria-label': item.label,
51518
51762
  'aria-disabled': disabled,
@@ -51535,7 +51779,9 @@ var TieredMenuSub = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
51535
51779
  },
51536
51780
  role: 'menuitem'
51537
51781
  }, getPTOptions(processedItem, 'menuitem'));
51538
- return /*#__PURE__*/React.createElement("li", menuitemProps, /*#__PURE__*/React.createElement("div", contentProps, content), submenu);
51782
+ return /*#__PURE__*/React.createElement("li", _extends({}, menuitemProps, {
51783
+ key: key
51784
+ }), /*#__PURE__*/React.createElement("div", contentProps, content), submenu);
51539
51785
  };
51540
51786
  var createItem = function createItem(processedItem, index) {
51541
51787
  if (processedItem.visible === false) {
@@ -52367,10 +52613,11 @@ var SplitButtonBase = ComponentBase.extend({
52367
52613
  function ownKeys$n(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; }
52368
52614
  function _objectSpread$n(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$n(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$n(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
52369
52615
  var SplitButton = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inProps, ref) {
52616
+ var _props$id;
52370
52617
  var mergeProps = useMergeProps();
52371
52618
  var context = React.useContext(PrimeReactContext);
52372
52619
  var props = SplitButtonBase.getProps(inProps, context);
52373
- var _React$useState = React.useState(props.id),
52620
+ var _React$useState = React.useState((_props$id = props.id) !== null && _props$id !== void 0 ? _props$id : UniqueComponentId),
52374
52621
  _React$useState2 = _slicedToArray(_React$useState, 2),
52375
52622
  idState = _React$useState2[0],
52376
52623
  setIdState = _React$useState2[1];
@@ -55968,14 +56215,14 @@ var ToggleButton = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functio
55968
56215
  onBlur: onBlur,
55969
56216
  onKeyDown: onKeyDown,
55970
56217
  tabIndex: tabIndex,
55971
- role: 'switch',
55972
56218
  type: 'checkbox',
55973
- 'aria-pressed': props.checked,
55974
56219
  'aria-invalid': props.invalid,
55975
56220
  disabled: props.disabled,
55976
56221
  readOnly: props.readonly,
55977
56222
  value: props.checked,
55978
- checked: props.checked
56223
+ checked: props.checked,
56224
+ 'aria-label': props['aria-label'],
56225
+ 'aria-labelledby': props['aria-labelledby']
55979
56226
  }, ptm('input'));
55980
56227
  var boxProps = mergeProps({
55981
56228
  className: classNames(props.className, cx('box', {
@@ -56980,11 +57227,11 @@ var UITreeNode = /*#__PURE__*/React.memo(function (props) {
56980
57227
  });
56981
57228
  UITreeNode.displayName = 'UITreeNode';
56982
57229
 
56983
- function ownKeys$9(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; }
56984
- function _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
56985
57230
  function _createForOfIteratorHelper$5(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$5(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, 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 o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
56986
57231
  function _unsupportedIterableToArray$5(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$5(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$5(r, a) : void 0; } }
56987
57232
  function _arrayLikeToArray$5(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
57233
+ function ownKeys$9(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; }
57234
+ function _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
56988
57235
  var Tree = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inProps, ref) {
56989
57236
  var mergeProps = useMergeProps();
56990
57237
  var context = React.useContext(PrimeReactContext);
@@ -56998,18 +57245,14 @@ var Tree = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inPro
56998
57245
  _React$useState2 = _slicedToArray(_React$useState, 2),
56999
57246
  expandedKeysState = _React$useState2[0],
57000
57247
  setExpandedKeysState = _React$useState2[1];
57001
- var _React$useState3 = React.useState({}),
57002
- _React$useState4 = _slicedToArray(_React$useState3, 2),
57003
- filterExpandedKeys = _React$useState4[0],
57004
- setFilterExpandedKeys = _React$useState4[1];
57005
57248
  var elementRef = React.useRef(null);
57006
57249
  var filteredNodes = React.useRef([]);
57007
57250
  var dragState = React.useRef(null);
57008
57251
  var filterChanged = React.useRef(false);
57009
57252
  var filteredValue = props.onFilterValueChange ? props.filterValue : filterValueState;
57010
57253
  var isFiltering = props.filter && filteredValue;
57011
- var expandedKeys = isFiltering ? filterExpandedKeys : props.onToggle ? props.expandedKeys : expandedKeysState;
57012
- var currentFilterExpandedKeys = {};
57254
+ var expandedKeys = props.onToggle ? props.expandedKeys : expandedKeysState;
57255
+ var currentFilterExpandedKeys = React.useRef({});
57013
57256
  var childFocusEvent = React.useRef(null);
57014
57257
  var _TreeBase$setMetaData = TreeBase.setMetaData({
57015
57258
  props: props,
@@ -57039,7 +57282,16 @@ var Tree = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inPro
57039
57282
  var originalEvent = event.originalEvent,
57040
57283
  value = event.value,
57041
57284
  navigateFocusToChild = event.navigateFocusToChild;
57042
- if (props.onToggle) {
57285
+ if (originalEvent == null && isFiltering) {
57286
+ if (props.onToggle) {
57287
+ props.onToggle({
57288
+ originalEvent: originalEvent,
57289
+ value: _objectSpread$9(_objectSpread$9({}, props.expandedKeys), value)
57290
+ });
57291
+ } else {
57292
+ setExpandedKeysState(_objectSpread$9(_objectSpread$9({}, expandedKeysState), value));
57293
+ }
57294
+ } else if (props.onToggle) {
57043
57295
  props.onToggle({
57044
57296
  originalEvent: originalEvent,
57045
57297
  value: value
@@ -57048,11 +57300,7 @@ var Tree = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inPro
57048
57300
  if (navigateFocusToChild) {
57049
57301
  childFocusEvent.current = originalEvent;
57050
57302
  }
57051
- if (isFiltering) {
57052
- setFilterExpandedKeys(value);
57053
- } else {
57054
- setExpandedKeysState(value);
57055
- }
57303
+ setExpandedKeysState(value);
57056
57304
  }
57057
57305
  };
57058
57306
  useUpdateEffect(function () {
@@ -57291,7 +57539,12 @@ var Tree = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inPro
57291
57539
  _iterator.f();
57292
57540
  }
57293
57541
  }
57294
- setFilterExpandedKeys(currentFilterExpandedKeys);
57542
+ onToggle({
57543
+ originalEvent: null,
57544
+ value: currentFilterExpandedKeys.current,
57545
+ navigateFocusToChild: false
57546
+ });
57547
+ currentFilterExpandedKeys.current = {};
57295
57548
  filterChanged.current = false;
57296
57549
  };
57297
57550
  var findFilteredNodes = function findFilteredNodes(node, paramsWithoutNode) {
@@ -57318,7 +57571,7 @@ var Tree = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inPro
57318
57571
  }
57319
57572
  }
57320
57573
  if (matched) {
57321
- currentFilterExpandedKeys[node.key] = true;
57574
+ currentFilterExpandedKeys.current[node.key] = true;
57322
57575
  return true;
57323
57576
  }
57324
57577
  }
@@ -57644,7 +57897,9 @@ var TreeSelectBase = ComponentBase.extend({
57644
57897
  onBlur: null,
57645
57898
  onFilterValueChange: null,
57646
57899
  onHide: null,
57900
+ onNodeClick: null,
57647
57901
  onNodeCollapse: null,
57902
+ onNodeDoubleClick: null,
57648
57903
  onNodeExpand: null,
57649
57904
  onNodeSelect: null,
57650
57905
  onNodeUnselect: null,
@@ -58336,6 +58591,8 @@ var TreeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function
58336
58591
  onCollapse: props.onNodeCollapse,
58337
58592
  onExpand: props.onNodeExpand,
58338
58593
  onFilterValueChange: onFilterValueChange,
58594
+ onNodeClick: props.onNodeClick,
58595
+ onNodeDoubleClick: props.onNodeDoubleClick,
58339
58596
  onSelect: onNodeSelect,
58340
58597
  onSelectionChange: onSelectionChange,
58341
58598
  onToggle: onNodeToggle,
@@ -61895,6 +62152,7 @@ var TriStateCheckbox = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(fun
61895
62152
  var ariaValueLabel = checkBoxValue ? ariaLabel('trueLabel') : checkBoxValue === false ? ariaLabel('falseLabel') : ariaLabel('nullLabel');
61896
62153
  var ariaChecked = checkBoxValue ? 'true' : 'false';
61897
62154
  var boxProps = mergeProps(_objectSpread({
62155
+ id: props.id + '_box',
61898
62156
  className: cx('box'),
61899
62157
  tabIndex: props.disabled ? '-1' : props.tabIndex,
61900
62158
  onFocus: onFocus,