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
@@ -154,6 +154,7 @@ var FilterMatchMode = Object.freeze({
154
154
  EQUALS: 'equals',
155
155
  NOT_EQUALS: 'notEquals',
156
156
  IN: 'in',
157
+ NOT_IN: 'notIn',
157
158
  LESS_THAN: 'lt',
158
159
  LESS_THAN_OR_EQUAL_TO: 'lte',
159
160
  GREATER_THAN: 'gt',
@@ -2158,11 +2159,13 @@ var ObjectUtils = /*#__PURE__*/function () {
2158
2159
  * @param {object} a - The first object to compare.
2159
2160
  * @param {object} b - The second object to compare.
2160
2161
  * @param {string[]} [keysToCompare] - The keys to compare. If not provided, performs a shallow comparison using absoluteCompare.
2162
+ * @param {number} [maxDepth=1] - The maximum depth to compare if the variables are objects.
2161
2163
  * @returns {boolean} True if all specified properties are equal, false otherwise.
2162
2164
  */
2163
2165
  }, {
2164
2166
  key: "selectiveCompare",
2165
2167
  value: function selectiveCompare(a, b, keysToCompare) {
2168
+ var maxDepth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
2166
2169
  if (a === b) return true;
2167
2170
  if (!a || !b || _typeof(a) !== 'object' || _typeof(b) !== 'object') return false;
2168
2171
  if (!keysToCompare) return this.absoluteCompare(a, b, 1); // If no keys are provided, the comparison is limited to one depth level.
@@ -2176,7 +2179,7 @@ var ObjectUtils = /*#__PURE__*/function () {
2176
2179
  var isObject = _typeof(aValue) === 'object' && aValue !== null && _typeof(bValue) === 'object' && bValue !== null;
2177
2180
 
2178
2181
  // If the current key is an object, they are compared in one further level only.
2179
- if (isObject && !this.absoluteCompare(aValue, bValue, 1)) return false;
2182
+ if (isObject && !this.absoluteCompare(aValue, bValue, maxDepth)) return false;
2180
2183
  if (!isObject && aValue !== bValue) return false;
2181
2184
  }
2182
2185
  } catch (err) {
@@ -3104,6 +3107,7 @@ var locales = {
3104
3107
  emptySelectionMessage: 'No selected item',
3105
3108
  endsWith: 'Ends with',
3106
3109
  equals: 'Equals',
3110
+ fileChosenMessage: '{0} files',
3107
3111
  fileSizeTypes: ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'],
3108
3112
  filter: 'Filter',
3109
3113
  firstDayOfWeek: 0,
@@ -3122,6 +3126,7 @@ var locales = {
3122
3126
  nextMonth: 'Next Month',
3123
3127
  nextSecond: 'Next Second',
3124
3128
  nextYear: 'Next Year',
3129
+ noFileChosenMessage: 'No file chosen',
3125
3130
  noFilter: 'No Filter',
3126
3131
  notContains: 'Not contains',
3127
3132
  notEquals: 'Not equals',
@@ -3149,8 +3154,10 @@ var locales = {
3149
3154
  aria: {
3150
3155
  cancelEdit: 'Cancel Edit',
3151
3156
  close: 'Close',
3157
+ collapseLabel: 'Collapse',
3152
3158
  collapseRow: 'Row Collapsed',
3153
3159
  editRow: 'Edit Row',
3160
+ expandLabel: 'Expand',
3154
3161
  expandRow: 'Row Expanded',
3155
3162
  falseLabel: 'False',
3156
3163
  filterConstraint: 'Filter Constraint',
@@ -3175,18 +3182,20 @@ var locales = {
3175
3182
  next: 'Next',
3176
3183
  nextPageLabel: 'Next Page',
3177
3184
  nullLabel: 'Not Selected',
3178
- pageLabel: 'Page {page}',
3179
3185
  otpLabel: 'Please enter one time password character {0}',
3186
+ pageLabel: 'Page {page}',
3180
3187
  passwordHide: 'Hide Password',
3181
3188
  passwordShow: 'Show Password',
3182
3189
  previous: 'Previous',
3183
3190
  prevPageLabel: 'Previous Page',
3191
+ removeLabel: 'Remove',
3184
3192
  rotateLeft: 'Rotate Left',
3185
3193
  rotateRight: 'Rotate Right',
3186
3194
  rowsPerPageLabel: 'Rows per page',
3187
3195
  saveEdit: 'Save Edit',
3188
3196
  scrollTop: 'Scroll Top',
3189
3197
  selectAll: 'All items selected',
3198
+ selectLabel: 'Select',
3190
3199
  selectRow: 'Row Selected',
3191
3200
  showFilterMenu: 'Show Filter Menu',
3192
3201
  slide: 'Slide',
@@ -3195,6 +3204,7 @@ var locales = {
3195
3204
  stars: '{star} stars',
3196
3205
  trueLabel: 'True',
3197
3206
  unselectAll: 'All items unselected',
3207
+ unselectLabel: 'Unselect',
3198
3208
  unselectRow: 'Row Unselected',
3199
3209
  zoomImage: 'Zoom Image',
3200
3210
  zoomIn: 'Zoom In',
@@ -4908,7 +4918,7 @@ var useUpdateEffect = function useUpdateEffect(fn, deps) {
4908
4918
  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; }
4909
4919
  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; }
4910
4920
  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";
4911
- 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";
4921
+ 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";
4912
4922
  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";
4913
4923
  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";
4914
4924
  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");
@@ -5666,12 +5676,13 @@ var Accordion = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
5666
5676
  var tabHeader = createTabHeader(tab, selected, index);
5667
5677
  var tabContent = createTabContent(tab, selected, index);
5668
5678
  var _rootProps = mergeProps({
5669
- key: key,
5670
5679
  className: cx('accordiontab.root', {
5671
5680
  selected: selected
5672
5681
  })
5673
5682
  }, AccordionTabBase.getCOtherProps(tab), getTabPT(tab, 'root', index));
5674
- return /*#__PURE__*/React__namespace.createElement("div", _rootProps, tabHeader, tabContent);
5683
+ return /*#__PURE__*/React__namespace.createElement("div", _extends({}, _rootProps, {
5684
+ key: key
5685
+ }), tabHeader, tabContent);
5675
5686
  }
5676
5687
  return null;
5677
5688
  };
@@ -8182,7 +8193,8 @@ var AutoCompletePanel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__n
8182
8193
  style: style,
8183
8194
  onClick: function onClick(e) {
8184
8195
  return props.onClick(e);
8185
- }
8196
+ },
8197
+ 'data-pr-is-overlay': true
8186
8198
  }, _ptm('panel'));
8187
8199
  var transitionProps = mergeProps({
8188
8200
  classNames: cx('transition'),
@@ -9748,7 +9760,8 @@ var CalendarPanel = /*#__PURE__*/React__namespace.forwardRef(function (props, re
9748
9760
  'aria-label': localeOption('chooseDate', props.locale),
9749
9761
  'aria-modal': props.inline ? null : 'true',
9750
9762
  onClick: props.onClick,
9751
- onMouseUp: props.onMouseUp
9763
+ onMouseUp: props.onMouseUp,
9764
+ 'data-pr-is-overlay': true
9752
9765
  }, props.ptm('panel', {
9753
9766
  hostName: props.hostName
9754
9767
  }));
@@ -10148,14 +10161,14 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
10148
10161
  newViewDate.setMonth(11);
10149
10162
  newViewDate.setFullYear(newYear);
10150
10163
  props.onMonthChange && props.onMonthChange({
10151
- month: 11,
10164
+ month: 12,
10152
10165
  year: newYear
10153
10166
  });
10154
10167
  setCurrentMonth(11);
10155
10168
  } else {
10156
10169
  newViewDate.setMonth(newViewDate.getMonth() - 1);
10157
10170
  props.onMonthChange && props.onMonthChange({
10158
- month: currentMonth - 1,
10171
+ month: currentMonth,
10159
10172
  year: currentYear
10160
10173
  });
10161
10174
  setCurrentMonth(function (prevState) {
@@ -10193,14 +10206,14 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
10193
10206
  newViewDate.setMonth(0);
10194
10207
  newViewDate.setFullYear(newYear);
10195
10208
  props.onMonthChange && props.onMonthChange({
10196
- month: 0,
10209
+ month: 1,
10197
10210
  year: newYear
10198
10211
  });
10199
10212
  setCurrentMonth(0);
10200
10213
  } else {
10201
10214
  newViewDate.setMonth(newViewDate.getMonth() + 1);
10202
10215
  props.onMonthChange && props.onMonthChange({
10203
- month: currentMonth + 1,
10216
+ month: currentMonth + 2,
10204
10217
  year: currentYear
10205
10218
  });
10206
10219
  setCurrentMonth(function (prevState) {
@@ -10277,8 +10290,8 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
10277
10290
  var timeMeta = {
10278
10291
  hours: today.getHours(),
10279
10292
  minutes: today.getMinutes(),
10280
- seconds: today.getSeconds(),
10281
- milliseconds: today.getMilliseconds()
10293
+ seconds: props.showSeconds ? today.getSeconds() : 0,
10294
+ milliseconds: props.showMillisec ? today.getMilliseconds() : 0
10282
10295
  };
10283
10296
  updateViewDate(event, today);
10284
10297
  onDateSelect(event, dateMeta, timeMeta);
@@ -11263,7 +11276,7 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
11263
11276
  milliseconds = timeMeta.milliseconds;
11264
11277
  } else {
11265
11278
  var time = getCurrentDateTime();
11266
- var _ref5 = [time.getHours(), time.getMinutes(), time.getSeconds(), time.getMilliseconds()];
11279
+ var _ref5 = [time.getHours(), time.getMinutes(), props.showSeconds ? time.getSeconds() : 0, props.showMillisec ? time.getMilliseconds() : 0];
11267
11280
  hours = _ref5[0];
11268
11281
  minutes = _ref5[1];
11269
11282
  seconds = _ref5[2];
@@ -12174,13 +12187,32 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
12174
12187
  return props.parseDateTime(text);
12175
12188
  }
12176
12189
  var date;
12177
- var parts = text.split(' ');
12178
12190
  if (props.timeOnly) {
12179
12191
  date = new Date();
12180
- populateTime(date, parts[0], parts[1]);
12192
+ var match = text.match(/(\d{1,2}:\d{2}(?::\d{2})?(?:\.\d{1,3})?)\s?(AM|PM)?/i);
12193
+ if (match) {
12194
+ populateTime(date, match[1], match[2]);
12195
+ } else {
12196
+ return null;
12197
+ }
12181
12198
  } else if (props.showTime) {
12182
- date = parseDate(parts[0], getDateFormat());
12183
- populateTime(date, parts[1], parts[2]);
12199
+ var time12 = /(\d{1,2}:\d{2}(?::\d{2})?(?:\.\d{1,3})?)\s?(AM|PM)/i;
12200
+ var time24 = /(\d{1,2}:\d{2}(?::\d{2})?(?:\.\d{1,3})?)$/;
12201
+ var _match, datePart, timePart, ampm;
12202
+ if (props.hourFormat === '12' && (_match = text.match(time12))) {
12203
+ timePart = _match[1];
12204
+ ampm = _match[2];
12205
+ datePart = text.replace(time12, '').trim();
12206
+ } else if (props.hourFormat === '24' && (_match = text.match(time24))) {
12207
+ timePart = _match[1];
12208
+ datePart = text.replace(time24, '').trim();
12209
+ }
12210
+ if (datePart && timePart) {
12211
+ date = parseDate(datePart, getDateFormat());
12212
+ populateTime(date, timePart, ampm);
12213
+ } else {
12214
+ date = parseDate(text, getDateFormat());
12215
+ }
12184
12216
  } else {
12185
12217
  date = parseDate(text, getDateFormat());
12186
12218
  }
@@ -12569,7 +12601,7 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
12569
12601
  viewDate.setHours(0, 0, 0);
12570
12602
  isClearClicked.current = false;
12571
12603
  }
12572
- if (!prevPropValue && propValue || propValue && propValue instanceof Date && propValue.getTime() !== prevPropValue.getTime()) {
12604
+ if (!prevPropValue && propValue || propValue && propValue instanceof Date && prevPropValue instanceof Date && propValue.getTime() !== prevPropValue.getTime()) {
12573
12605
  validateDate(viewDate);
12574
12606
  }
12575
12607
  setViewDateState(viewDate);
@@ -12823,6 +12855,9 @@ var Calendar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
12823
12855
  }),
12824
12856
  'aria-selected': selected,
12825
12857
  'aria-disabled': !date.selectable,
12858
+ onMouseDown: function onMouseDown(e) {
12859
+ return e.preventDefault();
12860
+ },
12826
12861
  onClick: function onClick(e) {
12827
12862
  return onDateSelect(e, date);
12828
12863
  },
@@ -14027,7 +14062,15 @@ var Carousel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
14027
14062
  }
14028
14063
  if (!carouselStyle.current) {
14029
14064
  calculatePosition();
14030
- changePosition(totalShiftedItemsState);
14065
+
14066
+ // Workaround: force correct initial position for circular
14067
+ if (isCircular) {
14068
+ var initialPosition = -1 * numVisibleState;
14069
+ setTotalShiftedItemsState(initialPosition);
14070
+ changePosition(initialPosition);
14071
+ } else {
14072
+ changePosition(totalShiftedItemsState);
14073
+ }
14031
14074
  bindWindowResizeListener();
14032
14075
  }
14033
14076
  });
@@ -14341,6 +14384,22 @@ var Carousel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
14341
14384
  CarouselItem.displayName = 'CarouselItem';
14342
14385
  Carousel.displayName = 'Carousel';
14343
14386
 
14387
+ var TimesIcon = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
14388
+ var pti = IconBase.getPTI(inProps);
14389
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends({
14390
+ ref: ref,
14391
+ width: "14",
14392
+ height: "14",
14393
+ viewBox: "0 0 14 14",
14394
+ fill: "none",
14395
+ xmlns: "http://www.w3.org/2000/svg"
14396
+ }, pti), /*#__PURE__*/React__namespace.createElement("path", {
14397
+ 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",
14398
+ fill: "currentColor"
14399
+ }));
14400
+ }));
14401
+ TimesIcon.displayName = 'TimesIcon';
14402
+
14344
14403
  var classes$14 = {
14345
14404
  root: function root(_ref) {
14346
14405
  var props = _ref.props,
@@ -14377,6 +14436,7 @@ var classes$14 = {
14377
14436
  });
14378
14437
  },
14379
14438
  dropdownIcon: 'p-cascadeselect-trigger-icon',
14439
+ clearIcon: 'p-cascadeselect-clear-icon p-clickable',
14380
14440
  loadingIcon: 'p-cascadeselect-trigger-icon',
14381
14441
  dropdownButton: 'p-cascadeselect-trigger',
14382
14442
  loadingButton: 'p-cascadeselect-trigger',
@@ -14387,7 +14447,7 @@ var classes$14 = {
14387
14447
  text: 'p-cascadeselect-item-text',
14388
14448
  transition: 'p-connected-overlay'
14389
14449
  };
14390
- 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";
14450
+ 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";
14391
14451
  var CascadeSelectBase = ComponentBase.extend({
14392
14452
  defaultProps: {
14393
14453
  __TYPE: 'CascadeSelect',
@@ -14395,6 +14455,7 @@ var CascadeSelectBase = ComponentBase.extend({
14395
14455
  ariaLabelledBy: null,
14396
14456
  autoFocus: false,
14397
14457
  breakpoint: undefined,
14458
+ showClear: false,
14398
14459
  className: null,
14399
14460
  dataKey: null,
14400
14461
  disabled: false,
@@ -14420,6 +14481,8 @@ var CascadeSelectBase = ComponentBase.extend({
14420
14481
  optionLabel: null,
14421
14482
  optionValue: null,
14422
14483
  options: null,
14484
+ panelClassName: null,
14485
+ panelStyle: null,
14423
14486
  placeholder: null,
14424
14487
  scrollHeight: '400px',
14425
14488
  style: null,
@@ -14732,6 +14795,7 @@ var CascadeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
14732
14795
  var styleElementRef = React__namespace.useRef(null);
14733
14796
  var dirty = React__namespace.useRef(false);
14734
14797
  var selectionPath = React__namespace.useRef(null);
14798
+ var selfChange = React__namespace.useRef(null);
14735
14799
  var _useOverlayListener = useOverlayListener({
14736
14800
  target: elementRef,
14737
14801
  overlay: overlayRef,
@@ -14761,6 +14825,7 @@ var CascadeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
14761
14825
  });
14762
14826
  var onOptionSelect = function onOptionSelect(event) {
14763
14827
  if (props.onChange) {
14828
+ selfChange.current = true;
14764
14829
  props.onChange({
14765
14830
  originalEvent: event,
14766
14831
  value: event.value
@@ -14987,6 +15052,48 @@ var CascadeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
14987
15052
  }, ariaProps), ptm('input'));
14988
15053
  return /*#__PURE__*/React__namespace.createElement("div", hiddenSelectedMessageProps, /*#__PURE__*/React__namespace.createElement("input", inputProps));
14989
15054
  };
15055
+ var clear = function clear(event) {
15056
+ if (props.onChange) {
15057
+ selfChange.current = true;
15058
+ props.onChange({
15059
+ originalEvent: event,
15060
+ value: undefined,
15061
+ stopPropagation: function stopPropagation() {
15062
+ event === null || event === void 0 || event.stopPropagation();
15063
+ },
15064
+ preventDefault: function preventDefault() {
15065
+ event === null || event === void 0 || event.preventDefault();
15066
+ },
15067
+ target: {
15068
+ name: props.name,
15069
+ id: props.id,
15070
+ value: undefined
15071
+ }
15072
+ });
15073
+ }
15074
+ };
15075
+ var onClearIconKeyDown = function onClearIconKeyDown(event) {
15076
+ if (event.key === 'Enter' || event.code === 'Space') {
15077
+ clear(event);
15078
+ event.preventDefault();
15079
+ }
15080
+ };
15081
+ var createClearIcon = function createClearIcon() {
15082
+ if (props.value != null && props.showClear && !props.disabled) {
15083
+ var clearIconProps = mergeProps({
15084
+ className: cx('clearIcon'),
15085
+ onPointerUp: clear,
15086
+ tabIndex: props.tabIndex || '0',
15087
+ onKeyDown: onClearIconKeyDown,
15088
+ 'aria-label': localeOption('clear')
15089
+ }, ptm('clearIcon'));
15090
+ var icon = props.clearIcon || /*#__PURE__*/React__namespace.createElement(TimesIcon, clearIconProps);
15091
+ return IconUtils.getJSXIcon(icon, _objectSpread$1H({}, clearIconProps), {
15092
+ props: props
15093
+ });
15094
+ }
15095
+ return null;
15096
+ };
14990
15097
  var createLabel = function createLabel() {
14991
15098
  var label = props.value ? getOptionLabel(props.value) : props.placeholder || 'p-emptylabel';
14992
15099
  var labelProps = mergeProps({
@@ -15040,7 +15147,8 @@ var CascadeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
15040
15147
  }, ptm('wrapper'));
15041
15148
  var panelProps = mergeProps({
15042
15149
  ref: overlayRef,
15043
- className: cx('panel'),
15150
+ className: classNames(props.panelClassName, cx('panel')),
15151
+ style: props.panelStyle,
15044
15152
  onClick: function onClick(e) {
15045
15153
  return onPanelClick(e);
15046
15154
  }
@@ -15089,6 +15197,7 @@ var CascadeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
15089
15197
  var createElement = function createElement() {
15090
15198
  var keyboardHelper = createKeyboardHelper();
15091
15199
  var labelElement = createLabel();
15200
+ var clearIcon = createClearIcon();
15092
15201
  var dropdownIcon = props.loading ? createLoadingIcon() : createDropdownIcon();
15093
15202
  var overlay = createOverlay();
15094
15203
  var rootProps = mergeProps({
@@ -15104,7 +15213,7 @@ var CascadeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
15104
15213
  return _onClick(e);
15105
15214
  }
15106
15215
  }, otherProps, ptm('root'));
15107
- return /*#__PURE__*/React__namespace.createElement("div", rootProps, keyboardHelper, labelElement, dropdownIcon, overlay);
15216
+ return /*#__PURE__*/React__namespace.createElement("div", rootProps, keyboardHelper, labelElement, clearIcon, dropdownIcon, overlay);
15108
15217
  };
15109
15218
  var otherProps = CascadeSelectBase.getOtherProps(props);
15110
15219
  ObjectUtils.reduceKeys(otherProps, DomHandler.DATA_PROPS);
@@ -16211,7 +16320,8 @@ var ColorPickerPanel = /*#__PURE__*/React__namespace.forwardRef(function (props,
16211
16320
  context: context
16212
16321
  }),
16213
16322
  style: props.panelStyle,
16214
- onClick: props.onClick
16323
+ onClick: props.onClick,
16324
+ 'data-pr-is-overlay': true
16215
16325
  }, ptm('panel', {
16216
16326
  hostName: props.hostName
16217
16327
  }));
@@ -16953,22 +17063,6 @@ var FocusTrap = /*#__PURE__*/React__default["default"].memo(/*#__PURE__*/React__
16953
17063
  }));
16954
17064
  var FocusTrap$1 = FocusTrap;
16955
17065
 
16956
- var TimesIcon = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
16957
- var pti = IconBase.getPTI(inProps);
16958
- return /*#__PURE__*/React__namespace.createElement("svg", _extends({
16959
- ref: ref,
16960
- width: "14",
16961
- height: "14",
16962
- viewBox: "0 0 14 14",
16963
- fill: "none",
16964
- xmlns: "http://www.w3.org/2000/svg"
16965
- }, pti), /*#__PURE__*/React__namespace.createElement("path", {
16966
- 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",
16967
- fill: "currentColor"
16968
- }));
16969
- }));
16970
- TimesIcon.displayName = 'TimesIcon';
16971
-
16972
17066
  var WindowMaximizeIcon = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
16973
17067
  var pti = IconBase.getPTI(inProps);
16974
17068
  return /*#__PURE__*/React__namespace.createElement("svg", _extends({
@@ -17122,6 +17216,7 @@ var DialogBase = ComponentBase.extend({
17122
17216
  resizable: true,
17123
17217
  rtl: false,
17124
17218
  showHeader: true,
17219
+ showCloseIcon: true,
17125
17220
  style: null,
17126
17221
  transitionOptions: null,
17127
17222
  visible: false,
@@ -17253,7 +17348,7 @@ var Dialog = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
17253
17348
  var focus = function focus() {
17254
17349
  var activeElement = document.activeElement;
17255
17350
  var isActiveElementInDialog = activeElement && dialogRef.current && dialogRef.current.contains(activeElement);
17256
- if (!isActiveElementInDialog && props.closable && props.showHeader && closeRef.current) {
17351
+ if (!isActiveElementInDialog && props.closable && props.showCloseIcon && props.showHeader && closeRef.current) {
17257
17352
  closeRef.current.focus();
17258
17353
  }
17259
17354
  };
@@ -17312,7 +17407,7 @@ var Dialog = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
17312
17407
  lastPageX.current = event.pageX;
17313
17408
  dialogRef.current.style.left = leftPos - leftMargin + 'px';
17314
17409
  }
17315
- if (topPos >= props.minY && topPos + height < viewport.height) {
17410
+ if (topPos >= props.minY && (deltaY < 0 || topPos + height < viewport.height)) {
17316
17411
  lastPageY.current = event.pageY;
17317
17412
  dialogRef.current.style.top = topPos - topMargin + 'px';
17318
17413
  }
@@ -17366,10 +17461,10 @@ var Dialog = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
17366
17461
  newWidth = newWidth + deltaX;
17367
17462
  newHeight = newHeight + deltaY;
17368
17463
  }
17369
- if ((!minWidth || newWidth > minWidth) && offset.left + newWidth < viewport.width) {
17464
+ if ((!minWidth || newWidth > minWidth) && (deltaX < 0 || offset.left + newWidth < viewport.width)) {
17370
17465
  dialogRef.current.style.width = newWidth + 'px';
17371
17466
  }
17372
- if ((!minHeight || newHeight > minHeight) && offset.top + newHeight < viewport.height) {
17467
+ if ((!minHeight || newHeight > minHeight) && (deltaY < 0 || offset.top + newHeight < viewport.height)) {
17373
17468
  dialogRef.current.style.height = newHeight + 'px';
17374
17469
  }
17375
17470
  lastPageX.current = event.pageX;
@@ -17559,7 +17654,7 @@ var Dialog = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
17559
17654
  };
17560
17655
  });
17561
17656
  var createCloseIcon = function createCloseIcon() {
17562
- if (props.closable) {
17657
+ if (props.closable && props.showCloseIcon) {
17563
17658
  var labelAria = props.ariaCloseIconLabel || ariaLabel('close');
17564
17659
  var closeButtonIconProps = mergeProps({
17565
17660
  className: cx('closeButtonIcon'),
@@ -18643,13 +18738,14 @@ var ContextMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__name
18643
18738
  var key = props.id + '_separator_' + index;
18644
18739
  var separatorProps = mergeProps({
18645
18740
  id: key,
18646
- key: key,
18647
18741
  className: cx('separator'),
18648
18742
  role: 'separator'
18649
18743
  }, ptm('separator', {
18650
18744
  hostName: props.hostName
18651
18745
  }));
18652
- return /*#__PURE__*/React__namespace.createElement("li", separatorProps);
18746
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, separatorProps, {
18747
+ key: key
18748
+ }));
18653
18749
  };
18654
18750
  var createSubmenu = function createSubmenu(item, index) {
18655
18751
  if (isItemGroup(item)) {
@@ -18734,9 +18830,8 @@ var ContextMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__name
18734
18830
  },
18735
18831
  className: cx('content')
18736
18832
  }, getPTOptions(processedItem, 'content', index));
18737
- var menuitemProps = mergeProps(_defineProperty({
18833
+ var menuitemProps = mergeProps({
18738
18834
  id: key,
18739
- key: key,
18740
18835
  role: 'menuitem',
18741
18836
  'aria-label': item.label,
18742
18837
  'aria-disabled': disabled,
@@ -18755,8 +18850,10 @@ var ContextMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__name
18755
18850
  disabled: isItemDisabled(item)
18756
18851
  }),
18757
18852
  style: item.style
18758
- }, "key", key), getPTOptions(processedItem, 'menuitem', index));
18759
- return /*#__PURE__*/React__namespace.createElement("li", menuitemProps, /*#__PURE__*/React__namespace.createElement("div", contentProps, content), submenu);
18853
+ }, getPTOptions(processedItem, 'menuitem', index));
18854
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, menuitemProps, {
18855
+ key: key
18856
+ }), /*#__PURE__*/React__namespace.createElement("div", contentProps, content), submenu);
18760
18857
  };
18761
18858
  var createItem = function createItem(processedItem, index) {
18762
18859
  if (processedItem.visible === false) {
@@ -20377,7 +20474,7 @@ var InputNumber = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
20377
20474
  var stacked = props.showButtons && props.buttonLayout === 'stacked';
20378
20475
  var horizontal = props.showButtons && props.buttonLayout === 'horizontal';
20379
20476
  var vertical = props.showButtons && props.buttonLayout === 'vertical';
20380
- var inputMode = props.inputMode || (props.mode === 'decimal' && !props.minFractionDigits ? 'numeric' : 'decimal');
20477
+ var inputMode = props.inputMode || (props.mode === 'decimal' && !props.minFractionDigits && !props.maxFractionDigits ? 'numeric' : 'decimal');
20381
20478
  var getOptions = function getOptions() {
20382
20479
  var _props$minFractionDig, _props$maxFractionDig;
20383
20480
  return {
@@ -20518,6 +20615,10 @@ var InputNumber = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
20518
20615
  }
20519
20616
  return null;
20520
20617
  };
20618
+ var addWithPrecision = function addWithPrecision(base, increment) {
20619
+ var precision = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
20620
+ return Math.round((base + increment) * precision) / precision;
20621
+ };
20521
20622
  var _repeat = function repeat(event, interval, dir) {
20522
20623
  var i = interval || 500;
20523
20624
  clearTimer();
@@ -20530,7 +20631,7 @@ var InputNumber = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
20530
20631
  if (inputRef.current) {
20531
20632
  var step = props.step * dir;
20532
20633
  var currentValue = parseValue(inputRef.current.value) || 0;
20533
- var newValue = validateValue(currentValue + step);
20634
+ var newValue = validateValue(addWithPrecision(currentValue, step));
20534
20635
  if (props.maxLength && props.maxLength < formatValue(newValue).length) {
20535
20636
  return;
20536
20637
  }
@@ -20812,6 +20913,10 @@ var InputNumber = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
20812
20913
  event.preventDefault();
20813
20914
  var _char2 = event.key;
20814
20915
  if (_char2) {
20916
+ // get decimal separator in current locale
20917
+ if (_char2 === '.') {
20918
+ _char2 = _decimalSeparator.current;
20919
+ }
20815
20920
  var _isDecimalSign = isDecimalSign(_char2);
20816
20921
  var _isMinusSign = isMinusSign(_char2);
20817
20922
  if (Number(_char2) >= 0 && Number(_char2) <= 9 || _isMinusSign || _isDecimalSign) {
@@ -20926,6 +21031,7 @@ var InputNumber = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
20926
21031
  suffixCharIndex = _getCharIndexes2.suffixCharIndex,
20927
21032
  currencyCharIndex = _getCharIndexes2.currencyCharIndex;
20928
21033
  var maxFractionDigits = numberFormat.current.resolvedOptions().maximumFractionDigits;
21034
+ var hasBoundOrAffix = props.min || props.max || props.suffix || props.prefix; //only exception
20929
21035
  var newValueStr;
20930
21036
  if (sign.isMinusSign) {
20931
21037
  var isNewMinusSign = minusCharIndex === -1;
@@ -20945,7 +21051,7 @@ var InputNumber = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
20945
21051
  newValueStr = insertText(inputValue, text, selectionStart, selectionEnd);
20946
21052
  updateValue(event, newValueStr, text, 'insert');
20947
21053
  } else if (decimalCharIndex === -1 && (maxFractionDigits || props.maxFractionDigits)) {
20948
- var allowedDecimal = inputMode !== 'numeric' || inputMode === 'numeric' && (props.min || props.max);
21054
+ var allowedDecimal = inputMode !== 'numeric' || inputMode === 'numeric' && hasBoundOrAffix;
20949
21055
  if (allowedDecimal) {
20950
21056
  newValueStr = insertText(inputValue, text, selectionStart, selectionEnd);
20951
21057
  updateValue(event, newValueStr, text, 'insert');
@@ -21912,6 +22018,7 @@ var DropdownBase = ComponentBase.extend({
21912
22018
  name: null,
21913
22019
  onBlur: null,
21914
22020
  onChange: null,
22021
+ onClick: null,
21915
22022
  onContextMenu: null,
21916
22023
  onFilter: null,
21917
22024
  onFocus: null,
@@ -22287,8 +22394,9 @@ var DropdownPanel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
22287
22394
  return item && createItem(item, options.index, options);
22288
22395
  },
22289
22396
  contentTemplate: function contentTemplate(options) {
22397
+ var children = options.children || [];
22290
22398
  var emptyMessage = props.hasFilter ? props.emptyFilterMessage : props.emptyMessage;
22291
- var content = isEmptyFilter ? createEmptyMessage(emptyMessage) : options.children;
22399
+ var content = isEmptyFilter || (children === null || children === void 0 ? void 0 : children.length) === 0 ? createEmptyMessage(emptyMessage) : children;
22292
22400
  var listProps = mergeProps({
22293
22401
  ref: options.contentRef,
22294
22402
  style: options.style,
@@ -22328,7 +22436,8 @@ var DropdownPanel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
22328
22436
  context: context
22329
22437
  })),
22330
22438
  style: sx('panel'),
22331
- onClick: props.onClick
22439
+ onClick: props.onClick,
22440
+ 'data-pr-is-overlay': true
22332
22441
  }, getPTOptions('panel'));
22333
22442
  var transitionProps = mergeProps({
22334
22443
  classNames: cx('transition'),
@@ -22801,15 +22910,24 @@ var Dropdown = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
22801
22910
  !pressedInInputText && onEnterKey(event);
22802
22911
  };
22803
22912
  var onEnterKey = function onEnterKey(event) {
22913
+ event.preventDefault();
22804
22914
  if (!overlayVisibleState) {
22805
22915
  setFocusedOptionIndex(-1);
22806
22916
  onArrowDownKey(event);
22807
22917
  } else {
22808
- if (focusedOptionIndex !== -1) {
22809
- onOptionSelect(event, visibleOptions[focusedOptionIndex]);
22918
+ if (focusedOptionIndex === -1) {
22919
+ return;
22920
+ }
22921
+ var focusedOption = visibleOptions[focusedOptionIndex];
22922
+ var optionValue = getOptionValue(focusedOption);
22923
+ if (optionValue == null || optionValue == undefined) {
22924
+ hide();
22925
+ resetFilter();
22926
+ updateEditableLabel(selectedOption);
22927
+ return;
22810
22928
  }
22929
+ onOptionSelect(event, focusedOption);
22811
22930
  }
22812
- event.preventDefault();
22813
22931
  };
22814
22932
  var onEscapeKey = function onEscapeKey(event) {
22815
22933
  overlayVisibleState && hide();
@@ -23932,6 +24050,9 @@ var DataTableBase = ComponentBase.extend({
23932
24050
  alwaysShowPaginator: true,
23933
24051
  breakpoint: '960px',
23934
24052
  cellClassName: null,
24053
+ cellMemo: true,
24054
+ cellMemoProps: ['rowData', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'frozenCol', 'alignFrozenCol'],
24055
+ cellMemoPropsDepth: 1,
23935
24056
  cellSelection: false,
23936
24057
  checkIcon: null,
23937
24058
  className: null,
@@ -24448,8 +24569,6 @@ var Cell = function Cell(props) {
24448
24569
  setStyleObjectState = _React$useState6[1];
24449
24570
  var elementRef = React__namespace.useRef(null);
24450
24571
  var keyHelperRef = React__namespace.useRef(null);
24451
- var overlayEventListener = React__namespace.useRef(null);
24452
- var selfClick = React__namespace.useRef(false);
24453
24572
  var focusTimeout = React__namespace.useRef(null);
24454
24573
  var initFocusTimeout = React__namespace.useRef(null);
24455
24574
  var editingRowDataStateRef = React__namespace.useRef(null);
@@ -24486,17 +24605,20 @@ var Cell = function Cell(props) {
24486
24605
  var cellEditValidateOnClose = function cellEditValidateOnClose() {
24487
24606
  return getColumnProp('cellEditValidateOnClose');
24488
24607
  };
24608
+ var isIgnoredElement = function isIgnoredElement(element) {
24609
+ var isOverlay = function isOverlay(el) {
24610
+ return el.getAttribute && el.getAttribute('data-pr-is-overlay');
24611
+ };
24612
+ return isOverlay(element) || DomHandler.getParents(element).find(function (el) {
24613
+ return isOverlay(el);
24614
+ });
24615
+ };
24489
24616
  var _useEventListener = useEventListener({
24490
24617
  type: 'click',
24491
24618
  listener: function listener(e) {
24492
- setTimeout(function () {
24493
- if (!selfClick.current && isOutsideClicked(e.target)) {
24494
- // #2666 for overlay components and outside is clicked
24495
-
24496
- switchCellToViewMode(e, true);
24497
- }
24498
- }, 0);
24499
- selfClick.current = false;
24619
+ if (!isIgnoredElement(e.target) && isOutsideClicked(e.target)) {
24620
+ switchCellToViewMode(e, true);
24621
+ }
24500
24622
  },
24501
24623
  options: true,
24502
24624
  when: isEditable()
@@ -24541,10 +24663,6 @@ var Cell = function Cell(props) {
24541
24663
  setTimeout(function () {
24542
24664
  setEditingState(false);
24543
24665
  unbindDocumentClickListener();
24544
- OverlayService.off('overlay-click', overlayEventListener.current);
24545
- overlayEventListener.current = null;
24546
- editingRowDataStateRef.current = null;
24547
- selfClick.current = false;
24548
24666
  }, 1);
24549
24667
  };
24550
24668
  var switchCellToViewMode = function switchCellToViewMode(event, submit) {
@@ -24588,7 +24706,7 @@ var Cell = function Cell(props) {
24588
24706
  editingRowDataStateRef.current = editingRowData;
24589
24707
  };
24590
24708
  var _onClick = function onClick(event) {
24591
- props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, selfClick, props.column, bindDocumentClickListener, overlayEventListener);
24709
+ props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, props.column, bindDocumentClickListener);
24592
24710
  };
24593
24711
  var _onMouseDown = function onMouseDown(event) {
24594
24712
  var params = getCellCallbackParams(event);
@@ -24660,7 +24778,6 @@ var Cell = function Cell(props) {
24660
24778
  }
24661
24779
  };
24662
24780
  var _onBlur = function onBlur(event) {
24663
- selfClick.current = false;
24664
24781
  if (props.editMode !== 'row' && editingState && getColumnProp('cellEditValidatorEvent') === 'blur') {
24665
24782
  switchCellToViewMode(event, true);
24666
24783
  }
@@ -24710,7 +24827,7 @@ var Cell = function Cell(props) {
24710
24827
  field: props.field,
24711
24828
  index: props.rowIndex
24712
24829
  });
24713
- props.focusOnInit();
24830
+ props.focusOnInit(initFocusTimeout, elementRef);
24714
24831
  };
24715
24832
  React__namespace.useEffect(function () {
24716
24833
  if (props.frozenCol) props.updateStickyPosition(elementRef, props.frozenCol, props.alignFrozenCol, styleObjectState, setStyleObjectState);
@@ -24741,9 +24858,8 @@ var Cell = function Cell(props) {
24741
24858
  // eslint-disable-next-line react-hooks/exhaustive-deps
24742
24859
  }, [editingState]);
24743
24860
  useUnmountEffect(function () {
24744
- if (overlayEventListener.current) {
24745
- OverlayService.off('overlay-click', overlayEventListener.current);
24746
- overlayEventListener.current = null;
24861
+ if (editingRowDataStateRef.current) {
24862
+ editingRowDataStateRef.current = null;
24747
24863
  }
24748
24864
  });
24749
24865
  var createLoading = function createLoading() {
@@ -25047,15 +25163,23 @@ var Cell = function Cell(props) {
25047
25163
  var RadioCheckCell = /*#__PURE__*/React__namespace.memo(function (props) {
25048
25164
  return /*#__PURE__*/React__namespace.createElement(Cell, props);
25049
25165
  }, function (prevProps, nextProps) {
25166
+ if (nextProps.cellMemo === false) return false;
25050
25167
  var keysToCompare = ['isRowSelected', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'rowData'];
25051
25168
  return ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
25052
25169
  });
25053
25170
  RadioCheckCell.displayName = 'RadioCheckCell';
25171
+ var defaultKeysToCompare = ['rowData', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'frozenCol', 'alignFrozenCol'];
25054
25172
  var BodyCell = /*#__PURE__*/React__namespace.memo(function (props) {
25055
25173
  return /*#__PURE__*/React__namespace.createElement(Cell, props);
25056
25174
  }, function (prevProps, nextProps) {
25057
- var keysToCompare = ['field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'rowData', 'frozenCol', 'alignFrozenCol'];
25058
- return ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
25175
+ if (nextProps.cellMemo === false) return false;
25176
+ var memoProps = nextProps.cellMemoProps;
25177
+ var keysToCompare = Array.isArray(memoProps) && memoProps.every(function (prop) {
25178
+ return typeof prop === 'string';
25179
+ }) ? memoProps : defaultKeysToCompare;
25180
+ var memoPropsDepth = nextProps.cellMemoPropsDepth;
25181
+ var depth = typeof memoPropsDepth === 'number' && memoPropsDepth > 0 ? memoPropsDepth : 1;
25182
+ return ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare, depth);
25059
25183
  });
25060
25184
  BodyCell.displayName = 'BodyCell';
25061
25185
 
@@ -25523,8 +25647,13 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
25523
25647
  } else {
25524
25648
  var left = 0;
25525
25649
  var prev = elementRef.current && elementRef.current.previousElementSibling;
25526
- if (prev && prev.classList.contains('p-frozen-column')) {
25527
- left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
25650
+ while (prev) {
25651
+ if (prev.classList.contains('p-frozen-column')) {
25652
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
25653
+ elementRef.current.style.left = left + 'px';
25654
+ break;
25655
+ }
25656
+ prev = prev.previousElementSibling;
25528
25657
  }
25529
25658
  styleObject.left = left + 'px';
25530
25659
  }
@@ -25532,9 +25661,8 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
25532
25661
  !isSameStyle && setStyleObjectState(styleObject);
25533
25662
  }
25534
25663
  }, []);
25535
- var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, selfClick, column, bindDocumentClickListener, overlayEventListener) {
25664
+ var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, column, bindDocumentClickListener) {
25536
25665
  if (props.editMode !== 'row' && isEditable && !editingState && (props.selectOnEdit || !props.selectOnEdit && props.isRowSelected)) {
25537
- selfClick.current = true;
25538
25666
  var onBeforeCellEditShow = getColumnProp(column, 'onBeforeCellEditShow');
25539
25667
  var onCellEditInit = getColumnProp(column, 'onCellEditInit');
25540
25668
  var cellEditValidatorEvent = getColumnProp(column, 'cellEditValidatorEvent');
@@ -25565,12 +25693,6 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
25565
25693
  }
25566
25694
  if (cellEditValidatorEvent === 'click') {
25567
25695
  bindDocumentClickListener();
25568
- overlayEventListener.current = function (e) {
25569
- if (!isOutsideClicked(e.target)) {
25570
- selfClick.current = true;
25571
- }
25572
- };
25573
- OverlayService.on('overlay-click', overlayEventListener.current);
25574
25696
  }
25575
25697
  }, 1);
25576
25698
  }
@@ -25591,6 +25713,9 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
25591
25713
  var cellProps = mergeProps({
25592
25714
  hostName: props.hostName,
25593
25715
  allowCellSelection: props.allowCellSelection,
25716
+ cellMemo: props.cellMemo,
25717
+ cellMemoProps: props.cellMemoProps,
25718
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
25594
25719
  cellClassName: props.cellClassName,
25595
25720
  checkIcon: props.checkIcon,
25596
25721
  collapsedRowIcon: props.collapsedRowIcon,
@@ -25958,9 +26083,6 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
25958
26083
  options = options || props.virtualScrollerOptions;
25959
26084
  return options ? options[option] : null;
25960
26085
  };
25961
- var getProcessedDataIndex = function getProcessedDataIndex(rowIndex) {
25962
- return props.lazy ? rowIndex - props.first : rowIndex;
25963
- };
25964
26086
  var findIndex = function findIndex(collection, rowData) {
25965
26087
  return (collection || []).findIndex(function (data) {
25966
26088
  return equals(rowData, data);
@@ -26131,16 +26253,14 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
26131
26253
  var rangeStart;
26132
26254
  var rangeEnd;
26133
26255
  var isAllowCellSelection = allowCellSelection();
26134
- var rangeRowIndexInProcessedData = getProcessedDataIndex(rangeRowIndex.current);
26135
- var anchorRowIndexInProcessedData = getProcessedDataIndex(anchorRowIndex.current);
26136
- if (rangeRowIndexInProcessedData > anchorRowIndexInProcessedData) {
26137
- rangeStart = anchorRowIndexInProcessedData;
26138
- rangeEnd = rangeRowIndexInProcessedData;
26139
- } else if (rangeRowIndexInProcessedData < anchorRowIndexInProcessedData) {
26140
- rangeStart = rangeRowIndexInProcessedData;
26141
- rangeEnd = anchorRowIndexInProcessedData;
26256
+ if (rangeRowIndex.current > anchorRowIndex.current) {
26257
+ rangeStart = anchorRowIndex.current;
26258
+ rangeEnd = rangeRowIndex.current;
26259
+ } else if (rangeRowIndex.current < anchorRowIndex.current) {
26260
+ rangeStart = rangeRowIndex.current;
26261
+ rangeEnd = anchorRowIndex.current;
26142
26262
  } else {
26143
- rangeStart = rangeEnd = rangeRowIndexInProcessedData;
26263
+ rangeStart = rangeEnd = rangeRowIndex.current;
26144
26264
  }
26145
26265
  return isAllowCellSelection ? selectRangeOnCell(event, rangeStart, rangeEnd) : selectRangeOnRow(event, rangeStart, rangeEnd);
26146
26266
  };
@@ -26181,7 +26301,7 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
26181
26301
  for (var i = rowRangeStart; i <= rowRangeEnd; i++) {
26182
26302
  var rowData = value[i];
26183
26303
  var columns = props.columns;
26184
- var rowIndex = props.lazy ? i + props.first : i;
26304
+ var rowIndex = props.paginator ? i + props.first : i;
26185
26305
  for (var j = cellRangeStart; j <= cellRangeEnd; j++) {
26186
26306
  var field = getColumnProp(columns[j], 'field');
26187
26307
  var _value = ObjectUtils.resolveFieldData(rowData, field);
@@ -26380,13 +26500,17 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
26380
26500
  onRangeSelection(event, 'row');
26381
26501
  }
26382
26502
  };
26503
+ var expandedRowsRef = React__namespace.useRef(props.expandedRows);
26504
+ React__namespace.useEffect(function () {
26505
+ expandedRowsRef.current = props.expandedRows;
26506
+ }, [props.expandedRows]);
26383
26507
  var onRowToggle = function onRowToggle(event) {
26384
26508
  var expandedRows;
26385
26509
  var dataKey = props.dataKey;
26386
26510
  var hasDataKey = props.groupRowsBy ? dataKey === props.groupRowsBy : !!dataKey;
26387
26511
  if (hasDataKey) {
26388
26512
  var dataKeyValue = String(ObjectUtils.resolveFieldData(event.data, dataKey));
26389
- expandedRows = props.expandedRows ? _objectSpread$1f({}, props.expandedRows) : {};
26513
+ expandedRows = expandedRowsRef.current ? _objectSpread$1f({}, expandedRowsRef.current) : {};
26390
26514
  if (expandedRows[dataKeyValue] != null) {
26391
26515
  delete expandedRows[dataKeyValue];
26392
26516
  if (props.onRowCollapse) {
@@ -26405,8 +26529,8 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
26405
26529
  }
26406
26530
  }
26407
26531
  } else {
26408
- var expandedRowIndex = findIndex(props.expandedRows, event.data);
26409
- expandedRows = props.expandedRows ? _toConsumableArray(props.expandedRows) : [];
26532
+ var expandedRowIndex = findIndex(expandedRowsRef.current, event.data);
26533
+ expandedRows = expandedRowsRef.current ? _toConsumableArray(expandedRowsRef.current) : [];
26410
26534
  if (expandedRowIndex !== -1) {
26411
26535
  expandedRows = expandedRows.filter(function (_, i) {
26412
26536
  return i !== expandedRowIndex;
@@ -26656,7 +26780,7 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
26656
26780
  return null;
26657
26781
  };
26658
26782
  var createGroupHeader = function createGroupHeader(rowData, rowIndex, expanded, colSpan) {
26659
- if (isSubheaderGrouping && shouldRenderRowGroupHeader(props.value, rowData, getProcessedDataIndex(rowIndex))) {
26783
+ if (isSubheaderGrouping && shouldRenderRowGroupHeader(props.value, rowData, rowIndex - props.first)) {
26660
26784
  var style = rowGroupHeaderStyle();
26661
26785
  var toggler = props.expandableRowGroups && /*#__PURE__*/React__namespace.createElement(RowTogglerButton, {
26662
26786
  hostName: props.hostName,
@@ -26706,6 +26830,9 @@ var TableBody = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace
26706
26830
  hostName: props.hostName,
26707
26831
  allowCellSelection: _allowCellSelection,
26708
26832
  allowRowSelection: _allowRowSelection,
26833
+ cellMemo: props.cellMemo,
26834
+ cellMemoProps: props.cellMemoProps,
26835
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
26709
26836
  cellClassName: props.cellClassName,
26710
26837
  checkIcon: props.checkIcon,
26711
26838
  collapsedRowIcon: props.collapsedRowIcon,
@@ -26925,16 +27052,21 @@ var FooterCell = /*#__PURE__*/React__namespace.memo(function (props) {
26925
27052
  var _align = getColumnProp('alignFrozen');
26926
27053
  if (_align === 'right') {
26927
27054
  var right = 0;
26928
- var next = elementRef.current.nextElementSibling;
27055
+ var next = elementRef.current && elementRef.current.nextElementSibling;
26929
27056
  if (next && next.classList.contains('p-frozen-column')) {
26930
27057
  right = DomHandler.getOuterWidth(next) + parseFloat(next.style.right || 0);
26931
27058
  }
26932
27059
  styleObject.right = right + 'px';
26933
27060
  } else {
26934
27061
  var left = 0;
26935
- var prev = elementRef.current.previousElementSibling;
26936
- if (prev && prev.classList.contains('p-frozen-column')) {
26937
- left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
27062
+ var prev = elementRef.current && elementRef.current.previousElementSibling;
27063
+ while (prev) {
27064
+ if (prev && prev.classList.contains('p-frozen-column')) {
27065
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
27066
+ elementRef.current.style.left = left + 'px';
27067
+ break;
27068
+ }
27069
+ prev = prev.previousElementSibling;
26938
27070
  }
26939
27071
  styleObject.left = left + 'px';
26940
27072
  }
@@ -27305,7 +27437,7 @@ var ColumnFilter = /*#__PURE__*/React__namespace.memo(function (props) {
27305
27437
  };
27306
27438
  } else {
27307
27439
  filters[field].value = null;
27308
- filters[field].matchMode = defaultConstraint.matchMode;
27440
+ filters[field].matchMode = defaultConstraint ? defaultConstraint.matchMode : filters[field].matchMode;
27309
27441
  }
27310
27442
  filterClearCallback && filterClearCallback();
27311
27443
  props.onFilterChange(filters);
@@ -27372,6 +27504,7 @@ var ColumnFilter = /*#__PURE__*/React__namespace.memo(function (props) {
27372
27504
  }
27373
27505
  };
27374
27506
  var onRowMatchModeChange = function onRowMatchModeChange(matchMode) {
27507
+ var _iconRef$current;
27375
27508
  var filterMatchModeChangeCallback = getColumnProp('onFilterMatchModeChange');
27376
27509
  var filters = _objectSpread$1c({}, props.filters);
27377
27510
  filters[field].matchMode = matchMode;
@@ -27382,6 +27515,7 @@ var ColumnFilter = /*#__PURE__*/React__namespace.memo(function (props) {
27382
27515
  props.onFilterChange(filters);
27383
27516
  props.onFilterApply();
27384
27517
  hide();
27518
+ (_iconRef$current = iconRef.current) === null || _iconRef$current === void 0 || _iconRef$current.focus();
27385
27519
  };
27386
27520
  var onRowMatchModeKeyDown = function onRowMatchModeKeyDown(event, matchMode, clear) {
27387
27521
  var item = event.target;
@@ -28198,16 +28332,21 @@ var HeaderCell = /*#__PURE__*/React__namespace.memo(function (props) {
28198
28332
  var align = getColumnProp('alignFrozen');
28199
28333
  if (align === 'right') {
28200
28334
  var right = 0;
28201
- var next = elementRef.current.nextElementSibling;
28335
+ var next = elementRef.current && elementRef.current.nextElementSibling;
28202
28336
  if (next && next.classList.contains('p-frozen-column')) {
28203
28337
  right = DomHandler.getOuterWidth(next) + parseFloat(next.style.right || 0);
28204
28338
  }
28205
28339
  styleObject.right = right + 'px';
28206
28340
  } else {
28207
28341
  var left = 0;
28208
- var prev = elementRef.current.previousElementSibling;
28209
- if (prev && prev.classList.contains('p-frozen-column')) {
28210
- left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
28342
+ var prev = elementRef.current && elementRef.current.previousElementSibling;
28343
+ while (prev) {
28344
+ if (prev && prev.classList.contains('p-frozen-column')) {
28345
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
28346
+ elementRef.current.style.left = left + 'px';
28347
+ break;
28348
+ }
28349
+ prev = prev.previousElementSibling;
28211
28350
  }
28212
28351
  styleObject.left = left + 'px';
28213
28352
  }
@@ -29058,6 +29197,20 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
29058
29197
  multiSortMeta: restoredState.multiSortMeta
29059
29198
  }));
29060
29199
  } else {
29200
+ var lastMeta = restoredState.multiSortMeta[restoredState.multiSortMeta.length - 1];
29201
+ var field = lastMeta && lastMeta.field ? lastMeta.field : null;
29202
+ if (field) {
29203
+ var sortColumn = findColumnByKey(getColumns(), field);
29204
+ if (sortColumn) {
29205
+ var sortFunction = getColumnProp(sortColumn, 'sortFunction');
29206
+ var sortable = getColumnProp(sortColumn, 'sortable');
29207
+ if (sortFunction && sortable) {
29208
+ columnSortFunction.current = sortFunction;
29209
+ columnSortable.current = sortable;
29210
+ columnField.current = field;
29211
+ }
29212
+ }
29213
+ }
29061
29214
  setMultiSortMetaState(restoredState.multiSortMeta);
29062
29215
  }
29063
29216
  }
@@ -29956,58 +30109,60 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
29956
30109
  var exportCSV = function exportCSV(options) {
29957
30110
  var data;
29958
30111
  var csv = "\uFEFF";
29959
- var columns = getColumns();
29960
30112
  if (options && options.selectionOnly) {
29961
30113
  data = props.selection || [];
29962
30114
  } else {
29963
30115
  data = [].concat(_toConsumableArray(props.frozenValue || []), _toConsumableArray(processedData() || []));
29964
30116
  }
29965
30117
 
29966
- //headers
29967
- columns.forEach(function (column, i) {
29968
- var _ref5 = [getColumnProp(column, 'field'), getColumnProp(column, 'header'), getColumnProp(column, 'exportHeader'), getColumnProp(column, 'exportable')],
30118
+ // First build collection of exportable columns
30119
+ var exportableColumns = getColumns().filter(function (column) {
30120
+ var exportable = getColumnProp(column, 'exportable');
30121
+ var field = getColumnProp(column, 'field');
30122
+
30123
+ // Column must be exportable (or undefined/not set) and have a field defined
30124
+ return exportable !== false && field;
30125
+ });
30126
+
30127
+ // headers
30128
+ exportableColumns.forEach(function (column, i) {
30129
+ var _ref5 = [getColumnProp(column, 'field'), getColumnProp(column, 'header'), getColumnProp(column, 'exportHeader')],
29969
30130
  field = _ref5[0],
29970
30131
  header = _ref5[1],
29971
- exportHeader = _ref5[2],
29972
- exportable = _ref5[3];
29973
- if (exportable && field) {
29974
- var columnHeader = String(exportHeader || header || field).replace(/"/g, '""').replace(/\n/g, "\u2028");
29975
- csv = csv + ('"' + columnHeader + '"');
29976
- if (i < columns.length - 1) {
29977
- csv = csv + props.csvSeparator;
29978
- }
30132
+ exportHeader = _ref5[2];
30133
+ var columnHeader = String(exportHeader || header || field).replace(/"/g, '""').replace(/\n/g, "\u2028");
30134
+ csv = csv + ('"' + columnHeader + '"');
30135
+ if (i < exportableColumns.length - 1) {
30136
+ csv = csv + props.csvSeparator;
29979
30137
  }
29980
30138
  });
29981
30139
 
29982
- //body
30140
+ // body
29983
30141
  data.forEach(function (record) {
29984
30142
  csv = csv + '\n';
29985
- columns.forEach(function (column, i) {
29986
- var _ref6 = [getColumnProp(column, 'field'), getColumnProp(column, 'exportField'), getColumnProp(column, 'exportable')],
30143
+ exportableColumns.forEach(function (column, i) {
30144
+ var _ref6 = [getColumnProp(column, 'field'), getColumnProp(column, 'exportField')],
29987
30145
  colField = _ref6[0],
29988
- exportField = _ref6[1],
29989
- exportable = _ref6[2];
30146
+ exportField = _ref6[1];
29990
30147
  var field = exportField || colField;
29991
- if (exportable && field) {
29992
- var cellData = ObjectUtils.resolveFieldData(record, field);
29993
- if (cellData != null) {
29994
- if (props.exportFunction) {
29995
- cellData = props.exportFunction({
29996
- data: cellData,
29997
- field: field,
29998
- rowData: record,
29999
- column: column
30000
- });
30001
- } else {
30002
- cellData = String(cellData).replace(/"/g, '""').replace(/\n/g, "\u2028");
30003
- }
30148
+ var cellData = ObjectUtils.resolveFieldData(record, field);
30149
+ if (cellData != null) {
30150
+ if (props.exportFunction) {
30151
+ cellData = props.exportFunction({
30152
+ data: cellData,
30153
+ field: field,
30154
+ rowData: record,
30155
+ column: column
30156
+ });
30004
30157
  } else {
30005
- cellData = '';
30006
- }
30007
- csv = csv + ('"' + cellData + '"');
30008
- if (i < columns.length - 1) {
30009
- csv = csv + props.csvSeparator;
30158
+ cellData = String(cellData).replace(/"/g, '""').replace(/\n/g, "\u2028");
30010
30159
  }
30160
+ } else {
30161
+ cellData = '';
30162
+ }
30163
+ csv = csv + ('"' + cellData + '"');
30164
+ if (i < exportableColumns.length - 1) {
30165
+ csv = csv + props.csvSeparator;
30011
30166
  }
30012
30167
  });
30013
30168
  });
@@ -30171,6 +30326,9 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
30171
30326
  },
30172
30327
  getVirtualScroller: function getVirtualScroller() {
30173
30328
  return virtualScrollerRef.current;
30329
+ },
30330
+ getProcessedData: function getProcessedData() {
30331
+ return processedData();
30174
30332
  }
30175
30333
  };
30176
30334
  });
@@ -30272,6 +30430,9 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
30272
30430
  var frozenBody = ObjectUtils.isNotEmpty(props.frozenValue) && /*#__PURE__*/React__namespace.createElement(TableBody, {
30273
30431
  hostName: "DataTable",
30274
30432
  ref: frozenBodyRef,
30433
+ cellMemo: props.cellMemo,
30434
+ cellMemoProps: props.cellMemoProps,
30435
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
30275
30436
  cellClassName: props.cellClassName,
30276
30437
  cellSelection: props.cellSelection,
30277
30438
  checkIcon: props.checkIcon,
@@ -30356,6 +30517,9 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
30356
30517
  var body = /*#__PURE__*/React__namespace.createElement(TableBody, {
30357
30518
  hostName: "DataTable",
30358
30519
  ref: bodyRef,
30520
+ cellMemo: props.cellMemo,
30521
+ cellMemoProps: props.cellMemoProps,
30522
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
30359
30523
  cellClassName: props.cellClassName,
30360
30524
  cellSelection: props.cellSelection,
30361
30525
  checkIcon: props.checkIcon,
@@ -32776,7 +32940,7 @@ var FileUpload = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespac
32776
32940
  var k = 1024;
32777
32941
  var dm = 3;
32778
32942
  var sizes = localeOption('fileSizeTypes');
32779
- if (bytes === 0) {
32943
+ if (bytes <= 0) {
32780
32944
  return "0 ".concat(sizes[0]);
32781
32945
  }
32782
32946
  var i = Math.floor(Math.log(bytes) / Math.log(k));
@@ -32798,7 +32962,8 @@ var FileUpload = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespac
32798
32962
  var selectedFiles = event.dataTransfer ? event.dataTransfer.files : event.target.files;
32799
32963
  for (var i = 0; i < selectedFiles.length; i++) {
32800
32964
  var file = selectedFiles[i];
32801
- if (!isFileSelected(file) && validate(file)) {
32965
+ var shouldAddFile = props.multiple ? !isFileSelected(file) && validate(file) : validate(file);
32966
+ if (shouldAddFile) {
32802
32967
  file.objectURL = window.URL.createObjectURL(file);
32803
32968
  currentFiles.push(file);
32804
32969
  }
@@ -32814,6 +32979,7 @@ var FileUpload = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespac
32814
32979
  });
32815
32980
  }
32816
32981
  clearInput();
32982
+ setFocusedState(false);
32817
32983
  if (props.mode === 'basic' && currentFiles.length > 0) {
32818
32984
  fileInputRef.current.style.display = 'none';
32819
32985
  }
@@ -34540,6 +34706,7 @@ var Galleria = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
34540
34706
  },
34541
34707
  options: props.transitionOptions,
34542
34708
  unmountOnExit: true,
34709
+ appear: true,
34543
34710
  onEnter: onEnter,
34544
34711
  onEntering: onEntering,
34545
34712
  onEntered: onEntered,
@@ -38615,11 +38782,12 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38615
38782
  var key = idState + '_separator__' + index;
38616
38783
  var separatorProps = mergeProps({
38617
38784
  id: key,
38618
- key: key,
38619
38785
  className: cx('separator'),
38620
38786
  role: 'separator'
38621
38787
  }, ptm('separator'));
38622
- return /*#__PURE__*/React__namespace.createElement("li", separatorProps);
38788
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, separatorProps, {
38789
+ key: key
38790
+ }));
38623
38791
  };
38624
38792
  var createSubmenuIcon = function createSubmenuIcon(item) {
38625
38793
  if (item.items) {
@@ -38670,7 +38838,6 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38670
38838
  var isGroup = isItemGroup(processedItem);
38671
38839
  var isActive = isItemActive(processedItem);
38672
38840
  var submenuItemProps = mergeProps({
38673
- key: key,
38674
38841
  id: key,
38675
38842
  'aria-label': getItemLabel(processedItem),
38676
38843
  'aria-disabled': isDisabled,
@@ -38710,7 +38877,9 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38710
38877
  };
38711
38878
  content = ObjectUtils.getJSXElement(item.template, item, defaultContentOptions);
38712
38879
  }
38713
- return /*#__PURE__*/React__namespace.createElement("li", submenuItemProps, /*#__PURE__*/React__namespace.createElement("div", contentProps, content));
38880
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, submenuItemProps, {
38881
+ key: key
38882
+ }), /*#__PURE__*/React__namespace.createElement("div", contentProps, content));
38714
38883
  };
38715
38884
  var createSubmenu = function createSubmenu(submenu, index) {
38716
38885
  if (!isItemVisible(submenu)) {
@@ -38722,7 +38891,6 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38722
38891
  var isDisabled = isItemDisabled(submenu);
38723
38892
  var submenuHeaderProps = mergeProps({
38724
38893
  id: key,
38725
- key: key,
38726
38894
  className: classNames(submenu.className, cx('submenuHeader', {
38727
38895
  disabled: isDisabled
38728
38896
  })),
@@ -38734,7 +38902,7 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38734
38902
  key: key
38735
38903
  }, /*#__PURE__*/React__namespace.createElement("li", submenuHeaderProps, label), items);
38736
38904
  };
38737
- var createSubmenus = function createSubmenus(column) {
38905
+ var createSubmenus = function createSubmenus(column, index) {
38738
38906
  return column.map(createSubmenu);
38739
38907
  };
38740
38908
  var createColumn = function createColumn(processedItem, processedColumn, index) {
@@ -38742,7 +38910,6 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38742
38910
  var key = category.label + '_column_' + index;
38743
38911
  var submenus = createSubmenus(processedColumn);
38744
38912
  var columnProps = mergeProps({
38745
- key: key,
38746
38913
  className: cx('column', {
38747
38914
  category: category
38748
38915
  })
@@ -38756,12 +38923,16 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38756
38923
  display: display
38757
38924
  }
38758
38925
  }, ptm('submenu'));
38759
- return /*#__PURE__*/React__namespace.createElement("div", columnProps, /*#__PURE__*/React__namespace.createElement("ul", submenuProps, submenus));
38926
+ return /*#__PURE__*/React__namespace.createElement("div", _extends({}, columnProps, {
38927
+ key: key
38928
+ }), /*#__PURE__*/React__namespace.createElement("ul", submenuProps, submenus));
38760
38929
  };
38761
38930
  var createColumns = function createColumns(category) {
38762
38931
  if (category.items) {
38763
38932
  return category.items.map(function (column, index) {
38764
- return createColumn(category, column, index);
38933
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
38934
+ key: index
38935
+ }, createColumn(category, column, index));
38765
38936
  });
38766
38937
  }
38767
38938
  return null;
@@ -38822,7 +38993,6 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38822
38993
  var isFocused = isItemFocused(processedItem);
38823
38994
  var isDisabled = isItemDisabled(processedItem);
38824
38995
  var menuItemProps = mergeProps(_defineProperty({
38825
- key: key,
38826
38996
  id: key,
38827
38997
  className: classNames(category.className, cx('menuitem', {
38828
38998
  category: category,
@@ -38858,7 +39028,9 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38858
39028
  },
38859
39029
  className: cx('content')
38860
39030
  }, getPTOptions(processedItem, 'content', index));
38861
- return /*#__PURE__*/React__namespace.createElement("li", menuItemProps, /*#__PURE__*/React__namespace.createElement("div", contentProps, itemContent), panel);
39031
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, menuItemProps, {
39032
+ key: key
39033
+ }), /*#__PURE__*/React__namespace.createElement("div", contentProps, itemContent), panel);
38862
39034
  };
38863
39035
  var createMenu = function createMenu() {
38864
39036
  var menuProps = mergeProps({
@@ -38877,7 +39049,9 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.
38877
39049
  }, ptm('menu'));
38878
39050
  if (processedItems) {
38879
39051
  return /*#__PURE__*/React__namespace.createElement("ul", menuProps, processedItems.map(function (item, index) {
38880
- return createCategory(item, index);
39052
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
39053
+ key: index
39054
+ }, createCategory(item, index));
38881
39055
  }));
38882
39056
  }
38883
39057
  return null;
@@ -39421,7 +39595,6 @@ var Mention = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.f
39421
39595
  }) : formatValue(suggestion);
39422
39596
  var isSelected = highlightState[index];
39423
39597
  var itemProps = mergeProps({
39424
- key: key,
39425
39598
  className: cx('item', {
39426
39599
  isSelected: isSelected
39427
39600
  }),
@@ -39432,7 +39605,9 @@ var Mention = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.f
39432
39605
  }, getPTOptions(suggestion, 'item', {
39433
39606
  selected: isSelected
39434
39607
  }));
39435
- return /*#__PURE__*/React__namespace.createElement("li", itemProps, content, /*#__PURE__*/React__namespace.createElement(Ripple, null));
39608
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, itemProps, {
39609
+ key: key
39610
+ }), content, /*#__PURE__*/React__namespace.createElement(Ripple, null));
39436
39611
  };
39437
39612
  var createList = function createList() {
39438
39613
  var itemsProps = mergeProps({
@@ -39984,6 +40159,9 @@ var Menu = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forw
39984
40159
  className: classNames(item.className, cx('menuitem', {
39985
40160
  focused: focusedOptionIndex === key
39986
40161
  })),
40162
+ onClick: function onClick(event) {
40163
+ return onItemClick(event, item, key);
40164
+ },
39987
40165
  style: sx('menuitem', {
39988
40166
  item: item
39989
40167
  }),
@@ -40443,9 +40621,11 @@ var Menubar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.f
40443
40621
  var _useEventListener = useEventListener({
40444
40622
  type: 'click',
40445
40623
  listener: function listener(event) {
40446
- var isOutsideButton = menuButtonRef.current && !menuButtonRef.current.contains(event.target);
40447
- if (isOutsideButton) {
40448
- hide();
40624
+ if (isOutsideClicked(event)) {
40625
+ var isOutsideContainer = elementRef.current && !elementRef.current.contains(event.target);
40626
+ if (isOutsideContainer) {
40627
+ hide();
40628
+ }
40449
40629
  }
40450
40630
  },
40451
40631
  options: {
@@ -40504,6 +40684,9 @@ var Menubar = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.f
40504
40684
  var menuButtonKeydown = function menuButtonKeydown(event) {
40505
40685
  (event.code === 'Enter' || event.code === 'NumpadEnter' || event.code === 'Space') && toggle(event);
40506
40686
  };
40687
+ var isOutsideClicked = function isOutsideClicked(event) {
40688
+ return rootMenuRef.current !== event.target && !rootMenuRef.current.contains(event.target) && menuButtonRef.current !== event.target && !menuButtonRef.current.contains(event.target);
40689
+ };
40507
40690
  var getItemProp = function getItemProp(item, name) {
40508
40691
  return item ? ObjectUtils.getItemValue(item[name]) : undefined;
40509
40692
  };
@@ -41591,6 +41774,7 @@ var MultiSelectHeader = /*#__PURE__*/React__namespace.memo(function (props) {
41591
41774
  role: "searchbox",
41592
41775
  value: props.filterValue,
41593
41776
  onChange: onFilter,
41777
+ onKeyDown: props.onFilterKeyDown,
41594
41778
  className: "p-multiselect-filter",
41595
41779
  placeholder: props.filterPlaceholder,
41596
41780
  pt: ptm('filterInput'),
@@ -41605,6 +41789,7 @@ var MultiSelectHeader = /*#__PURE__*/React__namespace.memo(function (props) {
41605
41789
  element: content,
41606
41790
  filterOptions: filterOptions,
41607
41791
  onFilter: onFilter,
41792
+ filterInputKeyDown: props.onFilterKeyDown,
41608
41793
  filterIconClassName: props.filterIconClassName,
41609
41794
  props: props
41610
41795
  };
@@ -41746,9 +41931,7 @@ var MultiSelectItem = /*#__PURE__*/React__namespace.memo(function (props) {
41746
41931
  'data-p-highlight': props.selected,
41747
41932
  'data-p-disabled': props.disabled
41748
41933
  }, getPTOptions('item'));
41749
- return /*#__PURE__*/React__namespace.createElement("li", _extends({}, itemProps, {
41750
- key: props.index + '_multiselectitem'
41751
- }), /*#__PURE__*/React__namespace.createElement("div", checkboxContainerProps, /*#__PURE__*/React__namespace.createElement(Checkbox, {
41934
+ return /*#__PURE__*/React__namespace.createElement("li", itemProps, /*#__PURE__*/React__namespace.createElement("div", checkboxContainerProps, /*#__PURE__*/React__namespace.createElement(Checkbox, {
41752
41935
  ref: checkboxRef,
41753
41936
  checked: props.selected,
41754
41937
  icon: checkboxIcon,
@@ -41816,6 +41999,7 @@ var MultiSelectPanel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__na
41816
41999
  getOptionValue: props.getOptionValue,
41817
42000
  updateModel: props.updateModel,
41818
42001
  onFilter: onFilterInputChange,
42002
+ onFilterKeyDown: props.onFilterKeyDown,
41819
42003
  filterPlaceholder: props.filterPlaceholder,
41820
42004
  onClose: props.onCloseClick,
41821
42005
  showSelectAll: props.showSelectAll,
@@ -41981,7 +42165,8 @@ var MultiSelectPanel = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__na
41981
42165
  allowOptionSelect: allowOptionSelect
41982
42166
  })),
41983
42167
  style: props.panelStyle,
41984
- onClick: props.onClick
42168
+ onClick: props.onClick,
42169
+ 'data-pr-is-overlay': true
41985
42170
  }, getPTOptions('panel'));
41986
42171
  if (props.inline) {
41987
42172
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
@@ -42383,6 +42568,52 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
42383
42568
  }
42384
42569
  setClicked(false);
42385
42570
  };
42571
+ var onFilterKeyDown = function onFilterKeyDown(event) {
42572
+ switch (event.code) {
42573
+ case 'ArrowUp':
42574
+ if (props.inline) {
42575
+ break;
42576
+ }
42577
+ onArrowUpKey(event);
42578
+ break;
42579
+ case 'ArrowDown':
42580
+ if (props.inline) {
42581
+ break;
42582
+ }
42583
+ onArrowDownKey(event);
42584
+ break;
42585
+ case 'NumpadEnter':
42586
+ case 'Enter':
42587
+ if (props.inline) {
42588
+ break;
42589
+ }
42590
+ onEnterKey(event);
42591
+ break;
42592
+ case 'Home':
42593
+ if (props.inline) {
42594
+ break;
42595
+ }
42596
+ onHomeKey(event);
42597
+ event.preventDefault();
42598
+ break;
42599
+ case 'End':
42600
+ if (props.inline) {
42601
+ break;
42602
+ }
42603
+ onEndKey(event);
42604
+ event.preventDefault();
42605
+ break;
42606
+ case 'Escape':
42607
+ if (props.inline) {
42608
+ break;
42609
+ }
42610
+ hide();
42611
+ break;
42612
+ case 'Tab':
42613
+ onTabKey(event);
42614
+ break;
42615
+ }
42616
+ };
42386
42617
  var onSelectAll = function onSelectAll(event) {
42387
42618
  if (props.onSelectAll) {
42388
42619
  props.onSelectAll(event);
@@ -42795,20 +43026,19 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
42795
43026
  return selectedItemsLabel;
42796
43027
  };
42797
43028
  var getLabel = function getLabel() {
42798
- var label;
42799
- if (!empty && !props.fixedPlaceholder) {
42800
- var _props$value;
42801
- if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && ((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.length) > props.maxSelectedLabels) {
42802
- return getSelectedItemsLabel();
42803
- }
42804
- if (ObjectUtils.isArray(props.value)) {
42805
- return props.value.reduce(function (acc, value, index) {
42806
- return acc + (index !== 0 ? ', ' : '') + getLabelByValue(value);
42807
- }, '');
42808
- }
43029
+ var _props$value;
43030
+ if (empty || props.fixedPlaceholder) {
42809
43031
  return '';
42810
43032
  }
42811
- return label;
43033
+ if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && ((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.length) > props.maxSelectedLabels) {
43034
+ return getSelectedItemsLabel();
43035
+ }
43036
+ if (ObjectUtils.isArray(props.value)) {
43037
+ return props.value.reduce(function (acc, value, index) {
43038
+ return acc + (index !== 0 ? ', ' : '') + getLabelByValue(value);
43039
+ }, '');
43040
+ }
43041
+ return '';
42812
43042
  };
42813
43043
  var getLabelContent = function getLabelContent() {
42814
43044
  var valueLength = props.value ? props.value.length : 0;
@@ -43081,6 +43311,7 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespa
43081
43311
  getOptionValue: getOptionValue,
43082
43312
  updateModel: updateModel,
43083
43313
  onFilterInputChange: onFilterInputChange,
43314
+ onFilterKeyDown: onFilterKeyDown,
43084
43315
  resetFilter: resetFilter,
43085
43316
  onCloseClick: onCloseClick,
43086
43317
  onSelectAll: onSelectAll,
@@ -43121,12 +43352,20 @@ var classes$v = {
43121
43352
  },
43122
43353
  root: function root(_ref2) {
43123
43354
  var props = _ref2.props;
43124
- return classNames('p-multistatecheckbox p-checkbox p-component', props.classNames);
43355
+ return classNames('p-multistatecheckbox p-checkbox p-component', props.classNames, {
43356
+ 'p-variant-filled': props.variant === 'filled'
43357
+ });
43358
+ },
43359
+ checkbox: function checkbox(_ref3) {
43360
+ var props = _ref3.props;
43361
+ return classNames(props.className, {
43362
+ 'p-invalid': props.invalid
43363
+ });
43125
43364
  }
43126
43365
  };
43127
43366
  var inlineStyles$9 = {
43128
- checkbox: function checkbox(_ref3) {
43129
- var selectedOption = _ref3.selectedOption;
43367
+ checkbox: function checkbox(_ref4) {
43368
+ var selectedOption = _ref4.selectedOption;
43130
43369
  return selectedOption && selectedOption.style;
43131
43370
  }
43132
43371
  };
@@ -43151,7 +43390,9 @@ var MultiStateCheckboxBase = ComponentBase.extend({
43151
43390
  tooltip: null,
43152
43391
  tooltipOptions: null,
43153
43392
  value: null,
43154
- children: undefined
43393
+ children: undefined,
43394
+ invalid: false,
43395
+ variant: null
43155
43396
  },
43156
43397
  css: {
43157
43398
  classes: classes$v,
@@ -43300,7 +43541,6 @@ var MultiStateCheckbox = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__
43300
43541
  var ariaProps = ObjectUtils.reduceKeys(otherProps, DomHandler.ARIA_PROPS);
43301
43542
  var icon = createIcon();
43302
43543
  var ariaValueLabel = selectedOption ? getOptionAriaLabel(selectedOption) : ariaLabel('nullLabel');
43303
- var ariaChecked = selectedOption ? 'true' : 'false';
43304
43544
  var rootProps = mergeProps({
43305
43545
  ref: elementRef,
43306
43546
  id: props.id,
@@ -43309,7 +43549,8 @@ var MultiStateCheckbox = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__
43309
43549
  onClick: onClick
43310
43550
  }, MultiStateCheckboxBase.getOtherProps(props), ptm('root'));
43311
43551
  var checkboxProps = mergeProps(_objectSpread$I({
43312
- className: classNames(props.className),
43552
+ id: props.id + '_checkbox',
43553
+ className: cx('checkbox'),
43313
43554
  style: sx('checkbox', {
43314
43555
  selectedOption: selectedOption
43315
43556
  }),
@@ -43317,8 +43558,6 @@ var MultiStateCheckbox = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__
43317
43558
  onFocus: onFocus,
43318
43559
  onBlur: onBlur,
43319
43560
  onKeyDown: onKeyDown,
43320
- role: 'checkbox',
43321
- 'aria-checked': ariaChecked,
43322
43561
  onChange: onClick,
43323
43562
  checked: !!selectedOption,
43324
43563
  disabled: props === null || props === void 0 ? void 0 : props.disabled,
@@ -49864,13 +50103,14 @@ var SlideMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
49864
50103
  var key = props.id + '_sep_' + index;
49865
50104
  var separatorProps = mergeProps({
49866
50105
  id: key,
49867
- key: key,
49868
50106
  className: cx('separator'),
49869
50107
  role: 'separator'
49870
50108
  }, ptm('separator', {
49871
50109
  hostName: props.hostName
49872
50110
  }));
49873
- return /*#__PURE__*/React__namespace.createElement("li", separatorProps);
50111
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, separatorProps, {
50112
+ key: key
50113
+ }));
49874
50114
  };
49875
50115
  var createSubmenu = function createSubmenu(item, index) {
49876
50116
  var shouldRender = renderSubMenu[createKey(item, index)];
@@ -49946,14 +50186,15 @@ var SlideMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
49946
50186
  }
49947
50187
  var menuitemProps = mergeProps({
49948
50188
  id: key,
49949
- key: key,
49950
50189
  className: cx('menuitem', {
49951
50190
  active: active,
49952
50191
  item: item
49953
50192
  }),
49954
50193
  style: item.style
49955
50194
  }, getPTOptions(item, 'menuitem'));
49956
- return /*#__PURE__*/React__namespace.createElement("li", menuitemProps, content, submenu);
50195
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, menuitemProps, {
50196
+ key: key
50197
+ }), content, submenu);
49957
50198
  };
49958
50199
  var createItem = function createItem(item, index) {
49959
50200
  if (item.visible === false) {
@@ -51386,6 +51627,9 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
51386
51627
  }
51387
51628
  };
51388
51629
  var getItemId = function getItemId(processedItem) {
51630
+ if (processedItem.item && processedItem.item.id) {
51631
+ return processedItem.item.id;
51632
+ }
51389
51633
  return "".concat(props.menuId, "_").concat(processedItem.key);
51390
51634
  };
51391
51635
  var getItemProp = function getItemProp(processedItem, name, params) {
@@ -51439,13 +51683,14 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
51439
51683
  var createSeparator = function createSeparator(index) {
51440
51684
  var key = 'separator_' + index;
51441
51685
  var separatorProps = mergeProps({
51442
- key: key,
51443
51686
  className: cx('separator'),
51444
51687
  role: 'separator'
51445
51688
  }, ptm('separator', {
51446
51689
  hostName: props.hostName
51447
51690
  }));
51448
- return /*#__PURE__*/React__namespace.createElement("li", separatorProps);
51691
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, separatorProps, {
51692
+ key: key
51693
+ }));
51449
51694
  };
51450
51695
  var createSubmenu = function createSubmenu(processedItem, index) {
51451
51696
  if (isItemGroup(processedItem)) {
@@ -51539,7 +51784,6 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
51539
51784
  className: cx('content')
51540
51785
  }, getPTOptions(processedItem, 'content'));
51541
51786
  var menuitemProps = mergeProps({
51542
- key: key,
51543
51787
  id: key,
51544
51788
  'aria-label': item.label,
51545
51789
  'aria-disabled': disabled,
@@ -51562,7 +51806,9 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__names
51562
51806
  },
51563
51807
  role: 'menuitem'
51564
51808
  }, getPTOptions(processedItem, 'menuitem'));
51565
- return /*#__PURE__*/React__namespace.createElement("li", menuitemProps, /*#__PURE__*/React__namespace.createElement("div", contentProps, content), submenu);
51809
+ return /*#__PURE__*/React__namespace.createElement("li", _extends({}, menuitemProps, {
51810
+ key: key
51811
+ }), /*#__PURE__*/React__namespace.createElement("div", contentProps, content), submenu);
51566
51812
  };
51567
51813
  var createItem = function createItem(processedItem, index) {
51568
51814
  if (processedItem.visible === false) {
@@ -52394,10 +52640,11 @@ var SplitButtonBase = ComponentBase.extend({
52394
52640
  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; }
52395
52641
  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; }
52396
52642
  var SplitButton = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
52643
+ var _props$id;
52397
52644
  var mergeProps = useMergeProps();
52398
52645
  var context = React__namespace.useContext(PrimeReactContext);
52399
52646
  var props = SplitButtonBase.getProps(inProps, context);
52400
- var _React$useState = React__namespace.useState(props.id),
52647
+ var _React$useState = React__namespace.useState((_props$id = props.id) !== null && _props$id !== void 0 ? _props$id : UniqueComponentId),
52401
52648
  _React$useState2 = _slicedToArray(_React$useState, 2),
52402
52649
  idState = _React$useState2[0],
52403
52650
  setIdState = _React$useState2[1];
@@ -55995,14 +56242,14 @@ var ToggleButton = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namesp
55995
56242
  onBlur: onBlur,
55996
56243
  onKeyDown: onKeyDown,
55997
56244
  tabIndex: tabIndex,
55998
- role: 'switch',
55999
56245
  type: 'checkbox',
56000
- 'aria-pressed': props.checked,
56001
56246
  'aria-invalid': props.invalid,
56002
56247
  disabled: props.disabled,
56003
56248
  readOnly: props.readonly,
56004
56249
  value: props.checked,
56005
- checked: props.checked
56250
+ checked: props.checked,
56251
+ 'aria-label': props['aria-label'],
56252
+ 'aria-labelledby': props['aria-labelledby']
56006
56253
  }, ptm('input'));
56007
56254
  var boxProps = mergeProps({
56008
56255
  className: classNames(props.className, cx('box', {
@@ -57007,11 +57254,11 @@ var UITreeNode = /*#__PURE__*/React__namespace.memo(function (props) {
57007
57254
  });
57008
57255
  UITreeNode.displayName = 'UITreeNode';
57009
57256
 
57010
- 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; }
57011
- 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; }
57012
57257
  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; } } }; }
57013
57258
  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; } }
57014
57259
  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; }
57260
+ 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; }
57261
+ 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; }
57015
57262
  var Tree = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
57016
57263
  var mergeProps = useMergeProps();
57017
57264
  var context = React__namespace.useContext(PrimeReactContext);
@@ -57025,18 +57272,14 @@ var Tree = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forw
57025
57272
  _React$useState2 = _slicedToArray(_React$useState, 2),
57026
57273
  expandedKeysState = _React$useState2[0],
57027
57274
  setExpandedKeysState = _React$useState2[1];
57028
- var _React$useState3 = React__namespace.useState({}),
57029
- _React$useState4 = _slicedToArray(_React$useState3, 2),
57030
- filterExpandedKeys = _React$useState4[0],
57031
- setFilterExpandedKeys = _React$useState4[1];
57032
57275
  var elementRef = React__namespace.useRef(null);
57033
57276
  var filteredNodes = React__namespace.useRef([]);
57034
57277
  var dragState = React__namespace.useRef(null);
57035
57278
  var filterChanged = React__namespace.useRef(false);
57036
57279
  var filteredValue = props.onFilterValueChange ? props.filterValue : filterValueState;
57037
57280
  var isFiltering = props.filter && filteredValue;
57038
- var expandedKeys = isFiltering ? filterExpandedKeys : props.onToggle ? props.expandedKeys : expandedKeysState;
57039
- var currentFilterExpandedKeys = {};
57281
+ var expandedKeys = props.onToggle ? props.expandedKeys : expandedKeysState;
57282
+ var currentFilterExpandedKeys = React__namespace.useRef({});
57040
57283
  var childFocusEvent = React__namespace.useRef(null);
57041
57284
  var _TreeBase$setMetaData = TreeBase.setMetaData({
57042
57285
  props: props,
@@ -57066,7 +57309,16 @@ var Tree = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forw
57066
57309
  var originalEvent = event.originalEvent,
57067
57310
  value = event.value,
57068
57311
  navigateFocusToChild = event.navigateFocusToChild;
57069
- if (props.onToggle) {
57312
+ if (originalEvent == null && isFiltering) {
57313
+ if (props.onToggle) {
57314
+ props.onToggle({
57315
+ originalEvent: originalEvent,
57316
+ value: _objectSpread$9(_objectSpread$9({}, props.expandedKeys), value)
57317
+ });
57318
+ } else {
57319
+ setExpandedKeysState(_objectSpread$9(_objectSpread$9({}, expandedKeysState), value));
57320
+ }
57321
+ } else if (props.onToggle) {
57070
57322
  props.onToggle({
57071
57323
  originalEvent: originalEvent,
57072
57324
  value: value
@@ -57075,11 +57327,7 @@ var Tree = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forw
57075
57327
  if (navigateFocusToChild) {
57076
57328
  childFocusEvent.current = originalEvent;
57077
57329
  }
57078
- if (isFiltering) {
57079
- setFilterExpandedKeys(value);
57080
- } else {
57081
- setExpandedKeysState(value);
57082
- }
57330
+ setExpandedKeysState(value);
57083
57331
  }
57084
57332
  };
57085
57333
  useUpdateEffect(function () {
@@ -57318,7 +57566,12 @@ var Tree = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forw
57318
57566
  _iterator.f();
57319
57567
  }
57320
57568
  }
57321
- setFilterExpandedKeys(currentFilterExpandedKeys);
57569
+ onToggle({
57570
+ originalEvent: null,
57571
+ value: currentFilterExpandedKeys.current,
57572
+ navigateFocusToChild: false
57573
+ });
57574
+ currentFilterExpandedKeys.current = {};
57322
57575
  filterChanged.current = false;
57323
57576
  };
57324
57577
  var findFilteredNodes = function findFilteredNodes(node, paramsWithoutNode) {
@@ -57345,7 +57598,7 @@ var Tree = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forw
57345
57598
  }
57346
57599
  }
57347
57600
  if (matched) {
57348
- currentFilterExpandedKeys[node.key] = true;
57601
+ currentFilterExpandedKeys.current[node.key] = true;
57349
57602
  return true;
57350
57603
  }
57351
57604
  }
@@ -57671,7 +57924,9 @@ var TreeSelectBase = ComponentBase.extend({
57671
57924
  onBlur: null,
57672
57925
  onFilterValueChange: null,
57673
57926
  onHide: null,
57927
+ onNodeClick: null,
57674
57928
  onNodeCollapse: null,
57929
+ onNodeDoubleClick: null,
57675
57930
  onNodeExpand: null,
57676
57931
  onNodeSelect: null,
57677
57932
  onNodeUnselect: null,
@@ -58363,6 +58618,8 @@ var TreeSelect = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespac
58363
58618
  onCollapse: props.onNodeCollapse,
58364
58619
  onExpand: props.onNodeExpand,
58365
58620
  onFilterValueChange: onFilterValueChange,
58621
+ onNodeClick: props.onNodeClick,
58622
+ onNodeDoubleClick: props.onNodeDoubleClick,
58366
58623
  onSelect: onNodeSelect,
58367
58624
  onSelectionChange: onSelectionChange,
58368
58625
  onToggle: onNodeToggle,
@@ -61922,6 +62179,7 @@ var TriStateCheckbox = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__na
61922
62179
  var ariaValueLabel = checkBoxValue ? ariaLabel('trueLabel') : checkBoxValue === false ? ariaLabel('falseLabel') : ariaLabel('nullLabel');
61923
62180
  var ariaChecked = checkBoxValue ? 'true' : 'false';
61924
62181
  var boxProps = mergeProps(_objectSpread({
62182
+ id: props.id + '_box',
61925
62183
  className: cx('box'),
61926
62184
  tabIndex: props.disabled ? '-1' : props.tabIndex,
61927
62185
  onFocus: onFocus,