primereact 10.9.4 → 10.9.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/api/api.cjs.js +9 -1
  2. package/api/api.cjs.min.js +1 -1
  3. package/api/api.d.ts +5 -3
  4. package/api/api.esm.js +9 -1
  5. package/api/api.esm.min.js +1 -1
  6. package/api/api.js +9 -1
  7. package/api/api.min.js +1 -1
  8. package/autocomplete/autocomplete.cjs.js +13 -1
  9. package/autocomplete/autocomplete.cjs.min.js +1 -1
  10. package/autocomplete/autocomplete.d.ts +5 -5
  11. package/autocomplete/autocomplete.esm.js +14 -2
  12. package/autocomplete/autocomplete.esm.min.js +1 -1
  13. package/autocomplete/autocomplete.js +13 -1
  14. package/autocomplete/autocomplete.min.js +1 -1
  15. package/breadcrumb/breadcrumb.cjs.js +2 -1
  16. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  17. package/breadcrumb/breadcrumb.esm.js +2 -1
  18. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  19. package/breadcrumb/breadcrumb.js +2 -1
  20. package/breadcrumb/breadcrumb.min.js +1 -1
  21. package/calendar/calendar.cjs.js +37 -7
  22. package/calendar/calendar.cjs.min.js +1 -1
  23. package/calendar/calendar.esm.js +38 -8
  24. package/calendar/calendar.esm.min.js +1 -1
  25. package/calendar/calendar.js +37 -7
  26. package/calendar/calendar.min.js +1 -1
  27. package/cascadeselect/cascadeselect.cjs.js +62 -5
  28. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  29. package/cascadeselect/cascadeselect.d.ts +22 -0
  30. package/cascadeselect/cascadeselect.esm.js +63 -6
  31. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  32. package/cascadeselect/cascadeselect.js +63 -7
  33. package/cascadeselect/cascadeselect.min.js +1 -1
  34. package/checkbox/checkbox.cjs.js +1 -1
  35. package/checkbox/checkbox.cjs.min.js +1 -1
  36. package/checkbox/checkbox.esm.js +1 -1
  37. package/checkbox/checkbox.esm.min.js +1 -1
  38. package/checkbox/checkbox.js +1 -1
  39. package/checkbox/checkbox.min.js +1 -1
  40. package/chip/chip.cjs.js +15 -2
  41. package/chip/chip.cjs.min.js +1 -1
  42. package/chip/chip.esm.js +17 -4
  43. package/chip/chip.esm.min.js +1 -1
  44. package/chip/chip.js +15 -2
  45. package/chip/chip.min.js +1 -1
  46. package/chips/chips.cjs.js +1 -1
  47. package/chips/chips.cjs.min.js +1 -1
  48. package/chips/chips.esm.js +1 -1
  49. package/chips/chips.esm.min.js +1 -1
  50. package/chips/chips.js +1 -1
  51. package/chips/chips.min.js +1 -1
  52. package/colorpicker/colorpicker.cjs.js +9 -2
  53. package/colorpicker/colorpicker.cjs.min.js +1 -1
  54. package/colorpicker/colorpicker.esm.js +9 -2
  55. package/colorpicker/colorpicker.esm.min.js +1 -1
  56. package/colorpicker/colorpicker.js +9 -2
  57. package/colorpicker/colorpicker.min.js +1 -1
  58. package/confirmpopup/confirmpopup.cjs.js +10 -2
  59. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  60. package/confirmpopup/confirmpopup.esm.js +10 -2
  61. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  62. package/confirmpopup/confirmpopup.js +10 -2
  63. package/confirmpopup/confirmpopup.min.js +1 -1
  64. package/core/core.js +214 -38
  65. package/core/core.min.js +9 -9
  66. package/datatable/datatable.cjs.js +359 -291
  67. package/datatable/datatable.cjs.min.js +1 -1
  68. package/datatable/datatable.d.ts +79 -3
  69. package/datatable/datatable.esm.js +360 -292
  70. package/datatable/datatable.esm.min.js +1 -1
  71. package/datatable/datatable.js +359 -291
  72. package/datatable/datatable.min.js +1 -1
  73. package/dialog/dialog.cjs.js +3 -2
  74. package/dialog/dialog.cjs.min.js +1 -1
  75. package/dialog/dialog.d.ts +6 -1
  76. package/dialog/dialog.esm.js +3 -2
  77. package/dialog/dialog.esm.min.js +1 -1
  78. package/dialog/dialog.js +3 -2
  79. package/dialog/dialog.min.js +1 -1
  80. package/dropdown/dropdown.cjs.js +26 -5
  81. package/dropdown/dropdown.cjs.min.js +1 -1
  82. package/dropdown/dropdown.d.ts +4 -0
  83. package/dropdown/dropdown.esm.js +26 -5
  84. package/dropdown/dropdown.esm.min.js +1 -1
  85. package/dropdown/dropdown.js +26 -5
  86. package/dropdown/dropdown.min.js +1 -1
  87. package/fileupload/fileupload.cjs.js +4 -2
  88. package/fileupload/fileupload.cjs.min.js +1 -1
  89. package/fileupload/fileupload.esm.js +4 -2
  90. package/fileupload/fileupload.esm.min.js +1 -1
  91. package/fileupload/fileupload.js +4 -2
  92. package/fileupload/fileupload.min.js +1 -1
  93. package/galleria/galleria.cjs.js +1 -0
  94. package/galleria/galleria.cjs.min.js +1 -1
  95. package/galleria/galleria.esm.js +1 -0
  96. package/galleria/galleria.esm.min.js +1 -1
  97. package/galleria/galleria.js +1 -0
  98. package/galleria/galleria.min.js +1 -1
  99. package/hooks/hooks.cjs.js +16 -6
  100. package/hooks/hooks.cjs.min.js +1 -1
  101. package/hooks/hooks.esm.js +16 -6
  102. package/hooks/hooks.esm.min.js +1 -1
  103. package/hooks/hooks.js +16 -6
  104. package/hooks/hooks.min.js +1 -1
  105. package/inputmask/inputmask.cjs.js +1 -1
  106. package/inputmask/inputmask.cjs.min.js +1 -1
  107. package/inputmask/inputmask.esm.js +1 -1
  108. package/inputmask/inputmask.esm.min.js +1 -1
  109. package/inputmask/inputmask.js +1 -1
  110. package/inputmask/inputmask.min.js +1 -1
  111. package/inputnumber/inputnumber.cjs.js +11 -3
  112. package/inputnumber/inputnumber.cjs.min.js +1 -1
  113. package/inputnumber/inputnumber.esm.js +11 -3
  114. package/inputnumber/inputnumber.esm.min.js +1 -1
  115. package/inputnumber/inputnumber.js +11 -3
  116. package/inputnumber/inputnumber.min.js +1 -1
  117. package/inputotp/inputotp.cjs.js +1 -0
  118. package/inputotp/inputotp.cjs.min.js +1 -1
  119. package/inputotp/inputotp.esm.js +1 -0
  120. package/inputotp/inputotp.esm.min.js +1 -1
  121. package/inputotp/inputotp.js +1 -0
  122. package/inputotp/inputotp.min.js +1 -1
  123. package/listbox/listbox.d.ts +4 -4
  124. package/mention/mention.cjs.js +18 -9
  125. package/mention/mention.cjs.min.js +1 -1
  126. package/mention/mention.d.ts +5 -0
  127. package/mention/mention.esm.js +18 -9
  128. package/mention/mention.esm.min.js +1 -1
  129. package/mention/mention.js +18 -9
  130. package/mention/mention.min.js +1 -1
  131. package/menu/menu.cjs.js +14 -3
  132. package/menu/menu.cjs.min.js +1 -1
  133. package/menu/menu.esm.js +15 -4
  134. package/menu/menu.esm.min.js +1 -1
  135. package/menu/menu.js +14 -3
  136. package/menu/menu.min.js +1 -1
  137. package/menubar/menubar.cjs.js +6 -9
  138. package/menubar/menubar.cjs.min.js +1 -1
  139. package/menubar/menubar.esm.js +6 -9
  140. package/menubar/menubar.esm.min.js +1 -1
  141. package/menubar/menubar.js +6 -9
  142. package/menubar/menubar.min.js +1 -1
  143. package/multiselect/multiselect.cjs.js +68 -18
  144. package/multiselect/multiselect.cjs.min.js +1 -1
  145. package/multiselect/multiselect.esm.js +68 -18
  146. package/multiselect/multiselect.esm.min.js +1 -1
  147. package/multiselect/multiselect.js +68 -18
  148. package/multiselect/multiselect.min.js +1 -1
  149. package/multistatecheckbox/multistatecheckbox.cjs.js +17 -9
  150. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  151. package/multistatecheckbox/multistatecheckbox.esm.js +17 -9
  152. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  153. package/multistatecheckbox/multistatecheckbox.js +17 -9
  154. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  155. package/orderlist/orderlist.cjs.js +34 -3
  156. package/orderlist/orderlist.cjs.min.js +1 -1
  157. package/orderlist/orderlist.esm.js +34 -3
  158. package/orderlist/orderlist.esm.min.js +1 -1
  159. package/orderlist/orderlist.js +34 -3
  160. package/orderlist/orderlist.min.js +1 -1
  161. package/overlaypanel/overlaypanel.cjs.js +9 -10
  162. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  163. package/overlaypanel/overlaypanel.esm.js +9 -10
  164. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  165. package/overlaypanel/overlaypanel.js +9 -10
  166. package/overlaypanel/overlaypanel.min.js +1 -1
  167. package/package.json +1 -1
  168. package/paginator/paginator.cjs.js +9 -1
  169. package/paginator/paginator.cjs.min.js +1 -1
  170. package/paginator/paginator.esm.js +9 -1
  171. package/paginator/paginator.esm.min.js +1 -1
  172. package/paginator/paginator.js +9 -1
  173. package/paginator/paginator.min.js +1 -1
  174. package/password/password.cjs.js +9 -2
  175. package/password/password.cjs.min.js +1 -1
  176. package/password/password.esm.js +10 -3
  177. package/password/password.esm.min.js +1 -1
  178. package/password/password.js +9 -2
  179. package/password/password.min.js +1 -1
  180. package/picklist/picklist.cjs.js +9 -1
  181. package/picklist/picklist.cjs.min.js +1 -1
  182. package/picklist/picklist.esm.js +9 -1
  183. package/picklist/picklist.esm.min.js +1 -1
  184. package/picklist/picklist.js +9 -1
  185. package/picklist/picklist.min.js +1 -1
  186. package/primereact.all.cjs.js +931 -442
  187. package/primereact.all.cjs.min.js +1 -1
  188. package/primereact.all.esm.js +932 -443
  189. package/primereact.all.esm.min.js +1 -1
  190. package/primereact.all.js +931 -442
  191. package/primereact.all.min.js +1 -1
  192. package/radiobutton/radiobutton.cjs.js +2 -2
  193. package/radiobutton/radiobutton.cjs.min.js +1 -1
  194. package/radiobutton/radiobutton.d.ts +1 -1
  195. package/radiobutton/radiobutton.esm.js +2 -2
  196. package/radiobutton/radiobutton.esm.min.js +1 -1
  197. package/radiobutton/radiobutton.js +2 -2
  198. package/radiobutton/radiobutton.min.js +1 -1
  199. package/slidemenu/slidemenu.cjs.js +9 -2
  200. package/slidemenu/slidemenu.cjs.min.js +1 -1
  201. package/slidemenu/slidemenu.esm.js +10 -3
  202. package/slidemenu/slidemenu.esm.min.js +1 -1
  203. package/slidemenu/slidemenu.js +9 -2
  204. package/slidemenu/slidemenu.min.js +1 -1
  205. package/tree/tree.cjs.js +1 -1
  206. package/tree/tree.cjs.min.js +1 -1
  207. package/tree/tree.esm.js +1 -1
  208. package/tree/tree.esm.min.js +1 -1
  209. package/tree/tree.js +1 -1
  210. package/tree/tree.min.js +1 -1
  211. package/treeselect/treeselect.cjs.js +19 -8
  212. package/treeselect/treeselect.cjs.min.js +1 -1
  213. package/treeselect/treeselect.d.ts +33 -0
  214. package/treeselect/treeselect.esm.js +19 -8
  215. package/treeselect/treeselect.esm.min.js +1 -1
  216. package/treeselect/treeselect.js +19 -8
  217. package/treeselect/treeselect.min.js +1 -1
  218. package/treetable/treetable.cjs.js +1 -1
  219. package/treetable/treetable.cjs.min.js +1 -1
  220. package/treetable/treetable.esm.js +1 -1
  221. package/treetable/treetable.esm.min.js +1 -1
  222. package/treetable/treetable.js +1 -1
  223. package/treetable/treetable.min.js +1 -1
  224. package/tristatecheckbox/tristatecheckbox.cjs.js +7 -6
  225. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  226. package/tristatecheckbox/tristatecheckbox.esm.js +7 -6
  227. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  228. package/tristatecheckbox/tristatecheckbox.js +7 -6
  229. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  230. package/utils/utils.cjs.js +138 -18
  231. package/utils/utils.cjs.min.js +1 -1
  232. package/utils/utils.d.ts +5 -1
  233. package/utils/utils.esm.js +138 -18
  234. package/utils/utils.esm.min.js +1 -1
  235. package/utils/utils.js +138 -18
  236. package/utils/utils.min.js +1 -1
  237. package/web-types.json +105 -11
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/csstransition"),o=require("primereact/hooks"),a=require("primereact/icons/chevrondown"),l=require("primereact/icons/spinner"),i=require("primereact/overlayservice"),c=require("primereact/portal"),s=require("primereact/utils"),u=require("primereact/icons/angleright"),p=require("primereact/ripple");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function f(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var m=f(e),b=d(t);function v(){return v=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},v.apply(null,arguments)}function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function h(e,t){if("object"!=y(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function g(e){var t=h(e,"string");return"symbol"==y(t)?t:t+""}function O(e,t,n){return(t=g(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function w(e){if(Array.isArray(e))return e}function S(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,l,i=[],c=!0,s=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function x(e,t){if(e){if("string"==typeof e)return E(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?E(e,t):void 0}}function I(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function j(e,t){return w(e)||S(e,t)||x(e,t)||I()}var D=n.ComponentBase.extend({defaultProps:{__TYPE:"CascadeSelect",appendTo:null,ariaLabelledBy:null,autoFocus:!1,breakpoint:void 0,className:null,dataKey:null,disabled:!1,loadingIcon:null,dropdownIcon:null,loading:!1,id:null,inputId:null,inputRef:null,invalid:!1,variant:null,itemTemplate:null,name:null,onBeforeHide:null,onBeforeShow:null,onChange:null,onGroupChange:null,onHide:null,onShow:null,optionGroupChildren:null,optionGroupIcon:null,optionGroupLabel:null,optionLabel:null,optionValue:null,options:null,placeholder:null,scrollHeight:"400px",style:null,tabIndex:null,transitionOptions:null,value:null,children:void 0},css:{classes:{root:function(e){var t=e.props,n=e.focusedState,r=e.context;return s.classNames("p-cascadeselect p-component p-inputwrapper",{"p-disabled":t.disabled,"p-invalid":t.invalid,"p-variant-filled":t.variant?"filled"===t.variant:r&&"filled"===r.inputStyle,"p-focus":n,"p-inputwrapper-filled":t.value,"p-inputwrapper-focus":n||e.overlayVisibleState})},label:function(e){var t=e.props,n=e.label;return s.classNames("p-cascadeselect-label ",{"p-placeholder":n===t.placeholder,"p-cascadeselect-label-empty":!t.value&&"p-emptylabel"===n})},list:"p-cascadeselect-panel p-cascadeselect-items",sublistWrapper:"p-cascadeselect-sublist-wrapper",sublist:"p-cascadeselect-panel p-cascadeselect-items p-cascadeselect-sublist",item:function(e){return s.classNames("p-cascadeselect-item",{"p-cascadeselect-item-group":e.isGroup,"p-cascadeselect-item-active p-highlight":e.isSelected})},dropdownIcon:"p-cascadeselect-trigger-icon",loadingIcon:"p-cascadeselect-trigger-icon",dropdownButton:"p-cascadeselect-trigger",loadingButton:"p-cascadeselect-trigger",wrapper:"p-cascadeselect-items-wrapper",panel:"p-cascadeselect-panel p-component",content:"p-cascadeselect-item-content",optionGroupIcon:"p-cascadeselect-group-icon",text:"p-cascadeselect-item-text",transition:"p-connected-overlay"},styles:"\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"}});function P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function C(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?P(Object(n),!0).forEach((function(t){O(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):P(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var H=m.memo((function(e){var n=o.useMergeProps(),r=j(m.useState(null),2),a=r[0],l=r[1],i=m.useRef(null),c=m.useContext(t.PrimeReactContext),d=e.ptm,f=e.cx,b=function(t,n){return d(t,{hostName:e.hostName,state:C({},n)})},y=function(t){e.onOptionSelect&&e.onOptionSelect(t)},h=function(t,n){var r=t.currentTarget.parentElement;switch(t.key){case"Down":case"ArrowDown":var o=g(r);o&&o.children[0].focus();break;case"Up":case"ArrowUp":var i=O(r);i&&i.children[0].focus();break;case"Right":case"ArrowRight":I(n)&&(a===n?r.children[1].children[0].children[0].focus():l(n));break;case"Left":case"ArrowLeft":l(null);var c=t.currentTarget.parentElement.parentElement.previousElementSibling;c&&c.focus();break;case"Enter":w(t,n);break;case"Tab":case"Escape":e.onPanelHide&&(e.onPanelHide(),t.preventDefault())}t.preventDefault()},g=function(e){var t=e.nextElementSibling;return t?s.DomHandler.hasClass(t,"p-disabled")||!s.DomHandler.hasClass(t,"p-cascadeselect-item")?g(t):t:null},O=function(e){var t=e.previousElementSibling;return t?s.DomHandler.hasClass(t,"p-disabled")||!s.DomHandler.hasClass(t,"p-cascadeselect-item")?O(t):t:null},w=function(t,n){I(n)?(l((function(e){return e===n?null:n})),e.onOptionGroupSelect&&e.onOptionGroupSelect({originalEvent:t,value:n})):e.onOptionSelect&&e.onOptionSelect({originalEvent:t,value:x(n)})},S=function(t){e.onOptionGroupSelect&&e.onOptionGroupSelect(t)},E=function(t){return e.optionLabel?s.ObjectUtils.resolveFieldData(t,e.optionLabel):t},x=function(t){return e.optionValue?s.ObjectUtils.resolveFieldData(t,e.optionValue):t},I=function(t){return Object.prototype.hasOwnProperty.call(t,e.optionGroupChildren[e.level])},D=function(t){return I(t)?(n=t,e.optionGroupLabel?s.ObjectUtils.resolveFieldData(n,e.optionGroupLabel):null):E(t);var n};o.useMountEffect((function(){if(e.selectionPath&&e.options&&!e.dirty){var t=e.options.find((function(t){return e.selectionPath.includes(t)}));t&&l(t)}var n,r,o,a,c;e.root||(r=s.DomHandler.getOffset(n=i.current.parentElement.parentElement),o=s.DomHandler.getViewport(),a=i.current.offsetParent?i.current.offsetWidth:s.DomHandler.getHiddenElementOuterWidth(R),c=s.DomHandler.getOuterWidth(n.children[0]),parseInt(r.left,10)+c+a>o.width-s.DomHandler.calculateScrollbarWidth()&&(i.current.parentElement.style.left="-100%"))})),o.useUpdateEffect((function(){e.parentActive||l(null)}),[e.parentActive]);var P,G,N,A,U=function(t){if(I(t)&&a===t){var n=s.ObjectUtils.resolveFieldData(t,e.optionGroupChildren[e.level]),r=a===t,o=e.level+1;return m.createElement(H,{hostName:e.hostName,options:n,className:f("sublist"),selectionPath:e.selectionPath,optionLabel:e.optionLabel,optionValue:e.optionValue,level:o,onOptionSelect:y,onOptionGroupSelect:S,parentActive:r,optionGroupLabel:e.optionGroupLabel,optionGroupChildren:e.optionGroupChildren,dirty:e.dirty,template:e.template,onPanelHide:e.onPanelHide,ptm:d,cx:f})}return null},k=function(t,r){var o=U(t),l=n({className:f("text")},b("text")),i=e.template?s.ObjectUtils.getJSXElement(e.template,x(t)):m.createElement("span",l,D(t)),c=n({className:f("optionGroupIcon")},b("optionGroupIcon")),d=e.optionGroupIcon||m.createElement(u.AngleRightIcon,c),y=I(t)&&s.IconUtils.getJSXIcon(d,C({},c),{props:e}),g=D(t)+"_"+r,O=n({className:f("content"),onClick:function(e){return w(e,t)},tabIndex:0,onKeyDown:function(e){return h(e,t)}},b("content")),S=a===t,E=I(t),j=n({className:s.classNames(t.className,f("item",{option:t,isGroup:E,isSelected:S})),style:t.style,role:"none","data-p-item-group":E,"data-p-highlight":S},b("item",{selected:S,group:E}));return m.createElement("li",v({key:g},j),m.createElement("div",O,i,y,m.createElement(p.Ripple,null)),o)},R=(P=n({ref:i,className:f(0===e.level?"list":"sublist",{context:c}),role:"listbox","aria-orientation":"horizontal"},b(0===e.level?"list":"sublist")),G=e.options?e.options.map(k):null,N=m.createElement("ul",P,G),A=n({className:f("sublistWrapper")},b("sublistWrapper")),0===e.level?N:m.createElement("div",A,N));return R}));function G(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=N(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 a,l=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return l=e.done,e},e:function(e){i=!0,a=e},f:function(){try{l||null==n.return||n.return()}finally{if(i)throw a}}}}function N(e,t){if(e){if("string"==typeof e)return A(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?A(e,t):void 0}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function U(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function k(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?U(Object(n),!0).forEach((function(t){O(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var R=m.memo(m.forwardRef((function(e,u){var p=o.useMergeProps(),d=m.useContext(t.PrimeReactContext),f=D.getProps(e,d),y=j(m.useState(!1),2),h=y[0],g=y[1],O=j(m.useState(!1),2),w=O[0],S=O[1],E=j(m.useState(null),2),x=E[0],I=E[1],P=D.setMetaData({props:f,state:{focused:h,overlayVisible:w,attributeSelector:x},context:k({},d)}),C=P.ptm,N=P.cx;n.useHandleStyle(D.css.styles,P.isUnstyled,{name:"cascadeselect"});var A=m.useRef(null),U=m.useRef(null),R=m.useRef(null),L=m.useRef(null),T=m.useRef(null),B=m.useRef(!1),_=m.useRef(null),q=j(o.useOverlayListener({target:A,overlay:U,listener:function(e,t){t.valid&&re()},when:w}),2),V=q[0],F=q[1],M=o.useDisplayOrder("cascade-select",w);o.useGlobalOnEscapeKey({callback:function(){re()},when:w&&M,priority:[o.ESC_KEY_HANDLING_PRIORITIES.CASCADE_SELECT,M]});var K=function(e){f.onChange&&f.onChange({originalEvent:e,value:e.value}),Y(),re(),s.DomHandler.focus(R.current)},W=function(e){B.current=!0,f.onGroupChange&&f.onGroupChange(e)},z=function(e){return(f.optionLabel?s.ObjectUtils.resolveFieldData(e,f.optionLabel):e)||e},Z=function(e){return f.optionValue?s.ObjectUtils.resolveFieldData(e,f.optionValue):e},J=function(e,t){return s.ObjectUtils.resolveFieldData(e,f.optionGroupChildren[t])},X=function(e,t){return Object.prototype.hasOwnProperty.call(e,f.optionGroupChildren[t])},Y=function(){var e;if(null!=f.value&&f.options){var t,n=G(f.options);try{for(n.s();!(t=n.n()).done;){if(e=$(t.value,0))break}}catch(e){n.e(e)}finally{n.f()}}_.current=e},$=function(e,t){if(X(e,t)){var n,r,o=G(J(e,t));try{for(o.s();!(r=o.n()).done;){if(n=$(r.value,t+1))return n.unshift(e),n}}catch(e){o.e(e)}finally{o.f()}}else if(s.ObjectUtils.equals(f.value,Z(e),f.dataKey))return[e];return null},Q=function(){g(!0)},ee=function(){g(!1)},te=function(e){switch(e.which){case 40:w?s.DomHandler.findSingle(U.current,'[data-pc-section="item"]').children[0].focus():e.altKey&&f.options&&f.options.length&&ne(),e.preventDefault();break;case 32:w?re():ne(),e.preventDefault();break;case 9:re()}},ne=function(){f.onBeforeShow&&f.onBeforeShow(),S(!0)},re=function(){f.onBeforeHide&&f.onBeforeHide(),S(!1),s.DomHandler.focus(R.current)},oe=function(){s.ZIndexUtils.set("overlay",U.current,d&&d.autoZIndex||b.default.autoZIndex,d&&d.zIndex.overlay||b.default.zIndex.overlay),s.DomHandler.addStyles(U.current,{position:"absolute",top:"0",left:"0"}),ce(),x&&f.breakpoint&&(U.current.setAttribute(x+"_panel",""),se())},ae=function(){V(),f.onShow&&f.onShow()},le=function(){F(),B.current=!1},ie=function(){s.ZIndexUtils.clear(U.current),f.onHide&&f.onHide(),ue()},ce=function(){s.DomHandler.alignOverlay(U.current,L.current.parentElement,f.appendTo||d&&d.appendTo||b.default.appendTo)},se=function(){if(!T.current){T.current=s.DomHandler.createInlineStyle(d&&d.nonce||b.default.nonce,d&&d.styleContainer);var e="".concat(x,"_panel"),t="\n@media screen and (max-width: ".concat(f.breakpoint,") {\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-items-wrapper > ul {\n max-height: ").concat(f.scrollHeight,";\n overflow: ").concat(f.scrollHeight?"auto":"",";\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist-wrapper {\n position:relative;\n left:0 !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist {\n overflow: hidden !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-item-active .p-cascadeselect-sublist {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-cascadeselect-panel[").concat(e,'] .p-cascadeselect-group-icon:before {\n content: "\\e930";\n }\n}\n');T.current.innerHTML=t}},ue=function(){T.current=s.DomHandler.removeInlineStyle(T.current)};m.useImperativeHandle(u,(function(){return{props:f,getElement:function(){return A.current},getOverlay:function(){return U.current},getInput:function(){return R.current},getLabel:function(){return L.current},focus:function(){return s.DomHandler.focus(R.current)}}})),o.useMountEffect((function(){f.breakpoint&&!x&&I(s.UniqueComponentId()),f.autoFocus&&s.DomHandler.focus(R.current,f.autoFocus),ce()})),m.useEffect((function(){s.ObjectUtils.combinedRefs(R,f.inputRef)}),[R,f.inputRef]),o.useUpdateEffect((function(){Y()}),[f.value]),o.useUnmountEffect((function(){s.ZIndexUtils.clear(U.current)}));var pe=function(){var e=p({className:N("dropdownIcon")},C("dropdownIcon")),t=s.IconUtils.getJSXIcon(f.dropdownIcon||m.createElement(a.ChevronDownIcon,e),k({},e),{props:f}),n=p({className:N("dropdownButton"),role:"button","aria-haspopup":"listbox","aria-expanded":w},C("dropdownButton"));return m.createElement("div",n,t)},de=p({className:N("wrapper")},C("wrapper")),fe=p({ref:U,className:N("panel"),onClick:function(e){i.OverlayService.emit("overlay-click",{originalEvent:e,target:A.current})}},C("panel")),me=function(){var e=p({classNames:N("transition"),in:w,timeout:{enter:120,exit:100},options:f.transitionOptions,unmountOnExit:!0,onEnter:oe,onEntered:ae,onExit:le,onExited:ie},C("transition")),t=m.createElement(r.CSSTransition,v({nodeRef:U},e),m.createElement("div",fe,m.createElement("div",de,m.createElement(H,{hostName:"CascadeSelect",options:f.options,selectionPath:_.current,optionGroupIcon:f.optionGroupIcon,optionLabel:f.optionLabel,optionValue:f.optionValue,parentActive:null!=f.value,level:0,optionGroupLabel:f.optionGroupLabel,optionGroupChildren:f.optionGroupChildren,onOptionSelect:K,onOptionGroupSelect:W,root:!0,template:f.itemTemplate,onPanelHide:re,ptm:C,cx:N}))));return m.createElement(c.Portal,{element:t,appendTo:f.appendTo})},be=D.getOtherProps(f);s.ObjectUtils.reduceKeys(be,s.DomHandler.DATA_PROPS);var ve,ye,he,ge,Oe,we,Se,Ee,xe,Ie,je,De,Pe,Ce=s.ObjectUtils.reduceKeys(be,s.DomHandler.ARIA_PROPS);return ve=f.value?z(f.value):void 0,ye=p({className:"p-hidden-accessible"},C("hiddenSelectedMessage")),he=p(k({ref:R,type:"text",id:f.inputId,name:f.name,defaultValue:ve,readOnly:!0,disabled:f.disabled,onFocus:Q,onBlur:ee,onKeyDown:function(e){return te(e)},tabIndex:f.tabIndex,"aria-haspopup":"listbox"},Ce),C("input")),xe=m.createElement("div",ye,m.createElement("input",he)),ge=f.value?z(f.value):f.placeholder||"p-emptylabel",Oe=p({ref:L,className:N("label",{label:ge})},C("label",{context:k({label:ge},d)})),Ie=m.createElement("span",Oe,ge),je=f.loading?(we=p({className:N("loadingIcon")},C("loadingIcon")),Se=s.IconUtils.getJSXIcon(f.loadingIcon||m.createElement(l.SpinnerIcon,{spin:!0}),k({},we),{props:f}),Ee=p({className:N("loadingButton"),role:"button","aria-haspopup":"listbox","aria-expanded":w},C("dropdownButton")),m.createElement("div",Ee,Se)):pe(),De=me(),Pe=p({id:f.id,ref:A,className:s.classNames(f.className,N("root",{focusedState:h,overlayVisibleState:w,context:d})),style:f.style,onClick:function(e){return t=e,void(f.disabled||f.loading||U.current&&U.current.contains(t.target)||(s.DomHandler.focus(R.current),w?re():ne()));var t}},be,C("root")),m.createElement("div",Pe,xe,Ie,je,De)})));R.displayName="CascadeSelect",exports.CascadeSelect=R;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),n=require("primereact/api"),t=require("primereact/componentbase"),r=require("primereact/csstransition"),o=require("primereact/hooks"),a=require("primereact/icons/chevrondown"),l=require("primereact/icons/spinner"),i=require("primereact/icons/times"),c=require("primereact/overlayservice"),s=require("primereact/portal"),u=require("primereact/utils"),p=require("primereact/icons/angleright"),d=require("primereact/ripple");function f(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function m(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var b=m(e),v=f(n);function y(){return y=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},y.apply(null,arguments)}function h(e){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h(e)}function g(e,n){if("object"!=h(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!=h(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function O(e){var n=g(e,"string");return"symbol"==h(n)?n:n+""}function w(e,n,t){return(n=O(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function S(e){if(Array.isArray(e))return e}function E(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,a,l,i=[],c=!0,s=!1;try{if(a=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=a.call(t)).done)&&(i.push(r.value),i.length!==n);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=t.return&&(l=t.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}function I(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function x(e,n){if(e){if("string"==typeof e)return I(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?I(e,n):void 0}}function D(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function j(e,n){return S(e)||E(e,n)||x(e,n)||D()}var P=t.ComponentBase.extend({defaultProps:{__TYPE:"CascadeSelect",appendTo:null,ariaLabelledBy:null,autoFocus:!1,breakpoint:void 0,className:null,dataKey:null,disabled:!1,loadingIcon:null,dropdownIcon:null,loading:!1,id:null,inputId:null,inputRef:null,invalid:!1,variant:null,itemTemplate:null,name:null,onBeforeHide:null,onBeforeShow:null,onChange:null,onGroupChange:null,onHide:null,onShow:null,optionGroupChildren:null,optionGroupIcon:null,optionGroupLabel:null,optionLabel:null,optionValue:null,options:null,panelClassName:null,panelStyle:null,placeholder:null,scrollHeight:"400px",style:null,tabIndex:null,transitionOptions:null,value:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.focusedState,r=e.context;return u.classNames("p-cascadeselect p-component p-inputwrapper",{"p-disabled":n.disabled,"p-invalid":n.invalid,"p-variant-filled":n.variant?"filled"===n.variant:r&&"filled"===r.inputStyle,"p-focus":t,"p-inputwrapper-filled":n.value,"p-inputwrapper-focus":t||e.overlayVisibleState})},label:function(e){var n=e.props,t=e.label;return u.classNames("p-cascadeselect-label ",{"p-placeholder":t===n.placeholder,"p-cascadeselect-label-empty":!n.value&&"p-emptylabel"===t})},list:"p-cascadeselect-panel p-cascadeselect-items",sublistWrapper:"p-cascadeselect-sublist-wrapper",sublist:"p-cascadeselect-panel p-cascadeselect-items p-cascadeselect-sublist",item:function(e){return u.classNames("p-cascadeselect-item",{"p-cascadeselect-item-group":e.isGroup,"p-cascadeselect-item-active p-highlight":e.isSelected})},dropdownIcon:"p-cascadeselect-trigger-icon",clearIcon:"p-cascadeselect-clear-icon p-clickable",loadingIcon:"p-cascadeselect-trigger-icon",dropdownButton:"p-cascadeselect-trigger",loadingButton:"p-cascadeselect-trigger",wrapper:"p-cascadeselect-items-wrapper",panel:"p-cascadeselect-panel p-component",content:"p-cascadeselect-item-content",optionGroupIcon:"p-cascadeselect-group-icon",text:"p-cascadeselect-item-text",transition:"p-connected-overlay"},styles:"\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"}});function C(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function H(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?C(Object(t),!0).forEach((function(n){w(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):C(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var N=b.memo((function(e){var t=o.useMergeProps(),r=j(b.useState(null),2),a=r[0],l=r[1],i=b.useRef(null),c=b.useContext(n.PrimeReactContext),s=e.ptm,f=e.cx,m=function(n,t){return s(n,{hostName:e.hostName,state:H({},t)})},v=function(n){e.onOptionSelect&&e.onOptionSelect(n)},h=function(n,t){var r=n.currentTarget.parentElement;switch(n.key){case"Down":case"ArrowDown":var o=g(r);o&&o.children[0].focus();break;case"Up":case"ArrowUp":var i=O(r);i&&i.children[0].focus();break;case"Right":case"ArrowRight":x(t)&&(a===t?r.children[1].children[0].children[0].focus():l(t));break;case"Left":case"ArrowLeft":l(null);var c=n.currentTarget.parentElement.parentElement.previousElementSibling;c&&c.focus();break;case"Enter":w(n,t);break;case"Tab":case"Escape":e.onPanelHide&&(e.onPanelHide(),n.preventDefault())}n.preventDefault()},g=function(e){var n=e.nextElementSibling;return n?u.DomHandler.hasClass(n,"p-disabled")||!u.DomHandler.hasClass(n,"p-cascadeselect-item")?g(n):n:null},O=function(e){var n=e.previousElementSibling;return n?u.DomHandler.hasClass(n,"p-disabled")||!u.DomHandler.hasClass(n,"p-cascadeselect-item")?O(n):n:null},w=function(n,t){x(t)?(l((function(e){return e===t?null:t})),e.onOptionGroupSelect&&e.onOptionGroupSelect({originalEvent:n,value:t})):e.onOptionSelect&&e.onOptionSelect({originalEvent:n,value:I(t)})},S=function(n){e.onOptionGroupSelect&&e.onOptionGroupSelect(n)},E=function(n){return e.optionLabel?u.ObjectUtils.resolveFieldData(n,e.optionLabel):n},I=function(n){return e.optionValue?u.ObjectUtils.resolveFieldData(n,e.optionValue):n},x=function(n){return Object.prototype.hasOwnProperty.call(n,e.optionGroupChildren[e.level])},D=function(n){return x(n)?(t=n,e.optionGroupLabel?u.ObjectUtils.resolveFieldData(t,e.optionGroupLabel):null):E(n);var t};o.useMountEffect((function(){if(e.selectionPath&&e.options&&!e.dirty){var n=e.options.find((function(n){return e.selectionPath.includes(n)}));n&&l(n)}var t,r,o,a,c;e.root||(r=u.DomHandler.getOffset(t=i.current.parentElement.parentElement),o=u.DomHandler.getViewport(),a=i.current.offsetParent?i.current.offsetWidth:u.DomHandler.getHiddenElementOuterWidth(R),c=u.DomHandler.getOuterWidth(t.children[0]),parseInt(r.left,10)+c+a>o.width-u.DomHandler.calculateScrollbarWidth()&&(i.current.parentElement.style.left="-100%"))})),o.useUpdateEffect((function(){e.parentActive||l(null)}),[e.parentActive]);var P,C,G,A,U=function(n){if(x(n)&&a===n){var t=u.ObjectUtils.resolveFieldData(n,e.optionGroupChildren[e.level]),r=a===n,o=e.level+1;return b.createElement(N,{hostName:e.hostName,options:t,className:f("sublist"),selectionPath:e.selectionPath,optionLabel:e.optionLabel,optionValue:e.optionValue,level:o,onOptionSelect:v,onOptionGroupSelect:S,parentActive:r,optionGroupLabel:e.optionGroupLabel,optionGroupChildren:e.optionGroupChildren,dirty:e.dirty,template:e.template,onPanelHide:e.onPanelHide,ptm:s,cx:f})}return null},k=function(n,r){var o=U(n),l=t({className:f("text")},m("text")),i=e.template?u.ObjectUtils.getJSXElement(e.template,I(n)):b.createElement("span",l,D(n)),c=t({className:f("optionGroupIcon")},m("optionGroupIcon")),s=e.optionGroupIcon||b.createElement(p.AngleRightIcon,c),v=x(n)&&u.IconUtils.getJSXIcon(s,H({},c),{props:e}),g=D(n)+"_"+r,O=t({className:f("content"),onClick:function(e){return w(e,n)},tabIndex:0,onKeyDown:function(e){return h(e,n)}},m("content")),S=a===n,E=x(n),j=t({className:u.classNames(n.className,f("item",{option:n,isGroup:E,isSelected:S})),style:n.style,role:"none","data-p-item-group":E,"data-p-highlight":S},m("item",{selected:S,group:E}));return b.createElement("li",y({key:g},j),b.createElement("div",O,i,v,b.createElement(d.Ripple,null)),o)},R=(P=t({ref:i,className:f(0===e.level?"list":"sublist",{context:c}),role:"listbox","aria-orientation":"horizontal"},m(0===e.level?"list":"sublist")),C=e.options?e.options.map(k):null,G=b.createElement("ul",P,C),A=t({className:f("sublistWrapper")},m("sublistWrapper")),0===e.level?G:b.createElement("div",A,G));return R}));function G(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=A(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 a,l=!0,i=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return l=e.done,e},e:function(e){i=!0,a=e},f:function(){try{l||null==t.return||t.return()}finally{if(i)throw a}}}}function A(e,n){if(e){if("string"==typeof e)return U(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?U(e,n):void 0}}function U(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function k(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function R(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?k(Object(t),!0).forEach((function(n){w(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):k(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var L=b.memo(b.forwardRef((function(e,p){var d=o.useMergeProps(),f=b.useContext(n.PrimeReactContext),m=P.getProps(e,f),h=j(b.useState(!1),2),g=h[0],O=h[1],w=j(b.useState(!1),2),S=w[0],E=w[1],I=j(b.useState(null),2),x=I[0],D=I[1],C=P.setMetaData({props:m,state:{focused:g,overlayVisible:S,attributeSelector:x},context:R({},f)}),H=C.ptm,A=C.cx;t.useHandleStyle(P.css.styles,C.isUnstyled,{name:"cascadeselect"});var U=b.useRef(null),k=b.useRef(null),L=b.useRef(null),T=b.useRef(null),q=b.useRef(null),B=b.useRef(!1),_=b.useRef(null),V=b.useRef(null),F=j(o.useOverlayListener({target:U,overlay:k,listener:function(e,n){n.valid&&(f.hideOverlaysOnDocumentScrolling||"outside"===n.type?ae():u.DomHandler.isDocument(e.target)||ue())},when:S}),2),M=F[0],K=F[1],W=o.useDisplayOrder("cascade-select",S);o.useGlobalOnEscapeKey({callback:function(){ae()},when:S&&W,priority:[o.ESC_KEY_HANDLING_PRIORITIES.CASCADE_SELECT,W]});var z=function(e){m.onChange&&(V.current=!0,m.onChange({originalEvent:e,value:e.value})),Q(),ae(),u.DomHandler.focus(L.current)},J=function(e){B.current=!0,m.onGroupChange&&m.onGroupChange(e)},X=function(e){return(m.optionLabel?u.ObjectUtils.resolveFieldData(e,m.optionLabel):e)||e},Z=function(e){return m.optionValue?u.ObjectUtils.resolveFieldData(e,m.optionValue):e},Y=function(e,n){return u.ObjectUtils.resolveFieldData(e,m.optionGroupChildren[n])},$=function(e,n){return Object.prototype.hasOwnProperty.call(e,m.optionGroupChildren[n])},Q=function(){var e;if(null!=m.value&&m.options){var n,t=G(m.options);try{for(t.s();!(n=t.n()).done;){if(e=ee(n.value,0))break}}catch(e){t.e(e)}finally{t.f()}}_.current=e},ee=function(e,n){if($(e,n)){var t,r,o=G(Y(e,n));try{for(o.s();!(r=o.n()).done;){if(t=ee(r.value,n+1))return t.unshift(e),t}}catch(e){o.e(e)}finally{o.f()}}else if(u.ObjectUtils.equals(m.value,Z(e),m.dataKey))return[e];return null},ne=function(){O(!0)},te=function(){O(!1)},re=function(e){switch(e.which){case 40:S?u.DomHandler.findSingle(k.current,'[data-pc-section="item"]').children[0].focus():e.altKey&&m.options&&m.options.length&&oe(),e.preventDefault();break;case 32:S?ae():oe(),e.preventDefault();break;case 9:ae()}},oe=function(){m.onBeforeShow&&m.onBeforeShow(),E(!0)},ae=function(){m.onBeforeHide&&m.onBeforeHide(),E(!1),u.DomHandler.focus(L.current)},le=function(){u.ZIndexUtils.set("overlay",k.current,f&&f.autoZIndex||v.default.autoZIndex,f&&f.zIndex.overlay||v.default.zIndex.overlay),u.DomHandler.addStyles(k.current,{position:"absolute",top:"0",left:"0"}),ue(),x&&m.breakpoint&&(k.current.setAttribute(x+"_panel",""),pe())},ie=function(){M(),m.onShow&&m.onShow()},ce=function(){K(),B.current=!1},se=function(){u.ZIndexUtils.clear(k.current),m.onHide&&m.onHide(),de()},ue=function(){u.DomHandler.alignOverlay(k.current,T.current.parentElement,m.appendTo||f&&f.appendTo||v.default.appendTo)},pe=function(){if(!q.current){q.current=u.DomHandler.createInlineStyle(f&&f.nonce||v.default.nonce,f&&f.styleContainer);var e="".concat(x,"_panel"),n="\n@media screen and (max-width: ".concat(m.breakpoint,") {\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-items-wrapper > ul {\n max-height: ").concat(m.scrollHeight,";\n overflow: ").concat(m.scrollHeight?"auto":"",";\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist-wrapper {\n position:relative;\n left:0 !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist {\n overflow: hidden !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-item-active .p-cascadeselect-sublist {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-cascadeselect-panel[").concat(e,'] .p-cascadeselect-group-icon:before {\n content: "\\e930";\n }\n}\n');q.current.innerHTML=n}},de=function(){q.current=u.DomHandler.removeInlineStyle(q.current)};b.useImperativeHandle(p,(function(){return{props:m,getElement:function(){return U.current},getOverlay:function(){return k.current},getInput:function(){return L.current},getLabel:function(){return T.current},focus:function(){return u.DomHandler.focus(L.current)}}})),o.useMountEffect((function(){m.breakpoint&&!x&&D(u.UniqueComponentId()),m.autoFocus&&u.DomHandler.focus(L.current,m.autoFocus),ue()})),b.useEffect((function(){u.ObjectUtils.combinedRefs(L,m.inputRef)}),[L,m.inputRef]),o.useUpdateEffect((function(){Q()}),[m.value]),o.useUnmountEffect((function(){u.ZIndexUtils.clear(k.current)}));var fe=function(e){m.onChange&&(V.current=!0,m.onChange({originalEvent:e,value:void 0,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{name:m.name,id:m.id,value:void 0}}))},me=function(e){"Enter"!==e.key&&"Space"!==e.code||(fe(e),e.preventDefault())},be=function(){if(null!=m.value&&m.showClear&&!m.disabled){var e=d({className:A("clearIcon"),onPointerUp:fe,tabIndex:m.tabIndex||"0",onKeyDown:me,"aria-label":n.localeOption("clear")},H("clearIcon"));return u.IconUtils.getJSXIcon(m.clearIcon||b.createElement(i.TimesIcon,e),R({},e),{props:m})}return null},ve=function(){var e=d({className:A("dropdownIcon")},H("dropdownIcon")),n=u.IconUtils.getJSXIcon(m.dropdownIcon||b.createElement(a.ChevronDownIcon,e),R({},e),{props:m}),t=d({className:A("dropdownButton"),role:"button","aria-haspopup":"listbox","aria-expanded":S},H("dropdownButton"));return b.createElement("div",t,n)},ye=d({className:A("wrapper")},H("wrapper")),he=d({ref:k,className:u.classNames(m.panelClassName,A("panel")),style:m.panelStyle,onClick:function(e){c.OverlayService.emit("overlay-click",{originalEvent:e,target:U.current})}},H("panel")),ge=function(){var e=d({classNames:A("transition"),in:S,timeout:{enter:120,exit:100},options:m.transitionOptions,unmountOnExit:!0,onEnter:le,onEntered:ie,onExit:ce,onExited:se},H("transition")),n=b.createElement(r.CSSTransition,y({nodeRef:k},e),b.createElement("div",he,b.createElement("div",ye,b.createElement(N,{hostName:"CascadeSelect",options:m.options,selectionPath:_.current,optionGroupIcon:m.optionGroupIcon,optionLabel:m.optionLabel,optionValue:m.optionValue,parentActive:null!=m.value,level:0,optionGroupLabel:m.optionGroupLabel,optionGroupChildren:m.optionGroupChildren,onOptionSelect:z,onOptionGroupSelect:J,root:!0,template:m.itemTemplate,onPanelHide:ae,ptm:H,cx:A}))));return b.createElement(s.Portal,{element:n,appendTo:m.appendTo})},Oe=P.getOtherProps(m);u.ObjectUtils.reduceKeys(Oe,u.DomHandler.DATA_PROPS);var we,Se,Ee,Ie,xe,De,je,Pe,Ce,He,Ne,Ge,Ae,Ue,ke=u.ObjectUtils.reduceKeys(Oe,u.DomHandler.ARIA_PROPS);return we=m.value?X(m.value):void 0,Se=d({className:"p-hidden-accessible"},H("hiddenSelectedMessage")),Ee=d(R({ref:L,type:"text",id:m.inputId,name:m.name,defaultValue:we,readOnly:!0,disabled:m.disabled,onFocus:ne,onBlur:te,onKeyDown:function(e){return re(e)},tabIndex:m.tabIndex,"aria-haspopup":"listbox"},ke),H("input")),Ce=b.createElement("div",Se,b.createElement("input",Ee)),Ie=m.value?X(m.value):m.placeholder||"p-emptylabel",xe=d({ref:T,className:A("label",{label:Ie})},H("label",{context:R({label:Ie},f)})),He=b.createElement("span",xe,Ie),Ne=be(),Ge=m.loading?(De=d({className:A("loadingIcon")},H("loadingIcon")),je=u.IconUtils.getJSXIcon(m.loadingIcon||b.createElement(l.SpinnerIcon,{spin:!0}),R({},De),{props:m}),Pe=d({className:A("loadingButton"),role:"button","aria-haspopup":"listbox","aria-expanded":S},H("dropdownButton")),b.createElement("div",Pe,je)):ve(),Ae=ge(),Ue=d({id:m.id,ref:U,className:u.classNames(m.className,A("root",{focusedState:g,overlayVisibleState:S,context:f})),style:m.style,onClick:function(e){return n=e,void(m.disabled||m.loading||k.current&&k.current.contains(n.target)||(u.DomHandler.focus(L.current),S?ae():oe()));var n}},Oe,H("root")),b.createElement("div",Ue,Ce,He,Ne,Ge,Ae)})));L.displayName="CascadeSelect",exports.CascadeSelect=L;
@@ -281,6 +281,20 @@ export interface CascadeSelectProps extends Omit<React.DetailedHTMLProps<React.I
281
281
  * @defaultValue 400px
282
282
  */
283
283
  scrollHeight?: string | undefined;
284
+ /**
285
+ * When enabled, a clear icon is displayed to clear the value.
286
+ * @defaultValue false
287
+ */
288
+ showClear?: boolean;
289
+ /**
290
+ * Display loading icon.
291
+ * @defaultValue false
292
+ */
293
+ loading?: boolean | undefined;
294
+ /**
295
+ * Name of the loading icon or JSX.Element for loading icon.
296
+ */
297
+ loadingIcon?: IconType<CascadeSelectProps> | undefined;
284
298
  /**
285
299
  * Callback to invoke on value change
286
300
  * @param {CascadeSelectChangeEvent} event - Custom change event
@@ -327,6 +341,14 @@ export interface CascadeSelectProps extends Omit<React.DetailedHTMLProps<React.I
327
341
  * @defaultValue false
328
342
  */
329
343
  unstyled?: boolean;
344
+ /**
345
+ * Style class of the cascadeselect panel.
346
+ */
347
+ panelClassName?: string | undefined;
348
+ /**
349
+ * Inline style of the cascadeselect panel.
350
+ */
351
+ panelStyle?: React.CSSProperties | undefined;
330
352
  }
331
353
 
332
354
  /**
@@ -1,11 +1,12 @@
1
1
  'use client';
2
2
  import * as React from 'react';
3
- import PrimeReact, { PrimeReactContext } from 'primereact/api';
3
+ import PrimeReact, { PrimeReactContext, localeOption } from 'primereact/api';
4
4
  import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
5
5
  import { CSSTransition } from 'primereact/csstransition';
6
6
  import { useMergeProps, useMountEffect, useUpdateEffect, useOverlayListener, useDisplayOrder, useGlobalOnEscapeKey, ESC_KEY_HANDLING_PRIORITIES, useUnmountEffect } from 'primereact/hooks';
7
7
  import { ChevronDownIcon } from 'primereact/icons/chevrondown';
8
8
  import { SpinnerIcon } from 'primereact/icons/spinner';
9
+ import { TimesIcon } from 'primereact/icons/times';
9
10
  import { OverlayService } from 'primereact/overlayservice';
10
11
  import { Portal } from 'primereact/portal';
11
12
  import { classNames, DomHandler, ObjectUtils, IconUtils, UniqueComponentId, ZIndexUtils } from 'primereact/utils';
@@ -147,6 +148,7 @@ var classes = {
147
148
  });
148
149
  },
149
150
  dropdownIcon: 'p-cascadeselect-trigger-icon',
151
+ clearIcon: 'p-cascadeselect-clear-icon p-clickable',
150
152
  loadingIcon: 'p-cascadeselect-trigger-icon',
151
153
  dropdownButton: 'p-cascadeselect-trigger',
152
154
  loadingButton: 'p-cascadeselect-trigger',
@@ -157,7 +159,7 @@ var classes = {
157
159
  text: 'p-cascadeselect-item-text',
158
160
  transition: 'p-connected-overlay'
159
161
  };
160
- var styles = "\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";
162
+ var styles = "\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";
161
163
  var CascadeSelectBase = ComponentBase.extend({
162
164
  defaultProps: {
163
165
  __TYPE: 'CascadeSelect',
@@ -190,6 +192,8 @@ var CascadeSelectBase = ComponentBase.extend({
190
192
  optionLabel: null,
191
193
  optionValue: null,
192
194
  options: null,
195
+ panelClassName: null,
196
+ panelStyle: null,
193
197
  placeholder: null,
194
198
  scrollHeight: '400px',
195
199
  style: null,
@@ -486,12 +490,20 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
486
490
  var styleElementRef = React.useRef(null);
487
491
  var dirty = React.useRef(false);
488
492
  var selectionPath = React.useRef(null);
493
+ var selfChange = React.useRef(null);
489
494
  var _useOverlayListener = useOverlayListener({
490
495
  target: elementRef,
491
496
  overlay: overlayRef,
492
497
  listener: function listener(event, _ref) {
493
- var valid = _ref.valid;
494
- valid && hide();
498
+ var valid = _ref.valid,
499
+ type = _ref.type;
500
+ if (valid) {
501
+ if (context.hideOverlaysOnDocumentScrolling || type === 'outside') {
502
+ hide();
503
+ } else if (!DomHandler.isDocument(event.target)) {
504
+ alignOverlay();
505
+ }
506
+ }
495
507
  },
496
508
  when: overlayVisibleState
497
509
  }),
@@ -508,6 +520,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
508
520
  });
509
521
  var onOptionSelect = function onOptionSelect(event) {
510
522
  if (props.onChange) {
523
+ selfChange.current = true;
511
524
  props.onChange({
512
525
  originalEvent: event,
513
526
  value: event.value
@@ -734,6 +747,48 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
734
747
  }, ariaProps), ptm('input'));
735
748
  return /*#__PURE__*/React.createElement("div", hiddenSelectedMessageProps, /*#__PURE__*/React.createElement("input", inputProps));
736
749
  };
750
+ var clear = function clear(event) {
751
+ if (props.onChange) {
752
+ selfChange.current = true;
753
+ props.onChange({
754
+ originalEvent: event,
755
+ value: undefined,
756
+ stopPropagation: function stopPropagation() {
757
+ event === null || event === void 0 || event.stopPropagation();
758
+ },
759
+ preventDefault: function preventDefault() {
760
+ event === null || event === void 0 || event.preventDefault();
761
+ },
762
+ target: {
763
+ name: props.name,
764
+ id: props.id,
765
+ value: undefined
766
+ }
767
+ });
768
+ }
769
+ };
770
+ var onClearIconKeyDown = function onClearIconKeyDown(event) {
771
+ if (event.key === 'Enter' || event.code === 'Space') {
772
+ clear(event);
773
+ event.preventDefault();
774
+ }
775
+ };
776
+ var createClearIcon = function createClearIcon() {
777
+ if (props.value != null && props.showClear && !props.disabled) {
778
+ var clearIconProps = mergeProps({
779
+ className: cx('clearIcon'),
780
+ onPointerUp: clear,
781
+ tabIndex: props.tabIndex || '0',
782
+ onKeyDown: onClearIconKeyDown,
783
+ 'aria-label': localeOption('clear')
784
+ }, ptm('clearIcon'));
785
+ var icon = props.clearIcon || /*#__PURE__*/React.createElement(TimesIcon, clearIconProps);
786
+ return IconUtils.getJSXIcon(icon, _objectSpread({}, clearIconProps), {
787
+ props: props
788
+ });
789
+ }
790
+ return null;
791
+ };
737
792
  var createLabel = function createLabel() {
738
793
  var label = props.value ? getOptionLabel(props.value) : props.placeholder || 'p-emptylabel';
739
794
  var labelProps = mergeProps({
@@ -787,7 +842,8 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
787
842
  }, ptm('wrapper'));
788
843
  var panelProps = mergeProps({
789
844
  ref: overlayRef,
790
- className: cx('panel'),
845
+ className: classNames(props.panelClassName, cx('panel')),
846
+ style: props.panelStyle,
791
847
  onClick: function onClick(e) {
792
848
  return onPanelClick(e);
793
849
  }
@@ -836,6 +892,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
836
892
  var createElement = function createElement() {
837
893
  var keyboardHelper = createKeyboardHelper();
838
894
  var labelElement = createLabel();
895
+ var clearIcon = createClearIcon();
839
896
  var dropdownIcon = props.loading ? createLoadingIcon() : createDropdownIcon();
840
897
  var overlay = createOverlay();
841
898
  var rootProps = mergeProps({
@@ -851,7 +908,7 @@ var CascadeSelect = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(functi
851
908
  return _onClick(e);
852
909
  }
853
910
  }, otherProps, ptm('root'));
854
- return /*#__PURE__*/React.createElement("div", rootProps, keyboardHelper, labelElement, dropdownIcon, overlay);
911
+ return /*#__PURE__*/React.createElement("div", rootProps, keyboardHelper, labelElement, clearIcon, dropdownIcon, overlay);
855
912
  };
856
913
  var otherProps = CascadeSelectBase.getOtherProps(props);
857
914
  ObjectUtils.reduceKeys(otherProps, DomHandler.DATA_PROPS);
@@ -1 +1 @@
1
- import*as e from"react";import n,{PrimeReactContext as t}from"primereact/api";import{ComponentBase as r,useHandleStyle as o}from"primereact/componentbase";import{CSSTransition as a}from"primereact/csstransition";import{useMergeProps as l,useMountEffect as i,useUpdateEffect as c,useOverlayListener as s,useDisplayOrder as u,useGlobalOnEscapeKey as p,ESC_KEY_HANDLING_PRIORITIES as d,useUnmountEffect as f}from"primereact/hooks";import{ChevronDownIcon as m}from"primereact/icons/chevrondown";import{SpinnerIcon as v}from"primereact/icons/spinner";import{OverlayService as b}from"primereact/overlayservice";import{Portal as y}from"primereact/portal";import{classNames as h,DomHandler as g,ObjectUtils as w,IconUtils as S,UniqueComponentId as O,ZIndexUtils as E}from"primereact/utils";import{AngleRightIcon as x}from"primereact/icons/angleright";import{Ripple as I}from"primereact/ripple";function P(){return P=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},P.apply(null,arguments)}function j(e){return j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},j(e)}function G(e,n){if("object"!=j(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!=j(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function C(e){var n=G(e,"string");return"symbol"==j(n)?n:n+""}function A(e,n,t){return(n=C(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function N(e){if(Array.isArray(e))return e}function D(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,a,l,i=[],c=!0,s=!1;try{if(a=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=a.call(t)).done)&&(i.push(r.value),i.length!==n);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=t.return&&(l=t.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}function k(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function L(e,n){if(e){if("string"==typeof e)return k(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?k(e,n):void 0}}function R(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function T(e,n){return N(e)||D(e,n)||L(e,n)||R()}var H=r.extend({defaultProps:{__TYPE:"CascadeSelect",appendTo:null,ariaLabelledBy:null,autoFocus:!1,breakpoint:void 0,className:null,dataKey:null,disabled:!1,loadingIcon:null,dropdownIcon:null,loading:!1,id:null,inputId:null,inputRef:null,invalid:!1,variant:null,itemTemplate:null,name:null,onBeforeHide:null,onBeforeShow:null,onChange:null,onGroupChange:null,onHide:null,onShow:null,optionGroupChildren:null,optionGroupIcon:null,optionGroupLabel:null,optionLabel:null,optionValue:null,options:null,placeholder:null,scrollHeight:"400px",style:null,tabIndex:null,transitionOptions:null,value:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.focusedState,r=e.context;return h("p-cascadeselect p-component p-inputwrapper",{"p-disabled":n.disabled,"p-invalid":n.invalid,"p-variant-filled":n.variant?"filled"===n.variant:r&&"filled"===r.inputStyle,"p-focus":t,"p-inputwrapper-filled":n.value,"p-inputwrapper-focus":t||e.overlayVisibleState})},label:function(e){var n=e.props,t=e.label;return h("p-cascadeselect-label ",{"p-placeholder":t===n.placeholder,"p-cascadeselect-label-empty":!n.value&&"p-emptylabel"===t})},list:"p-cascadeselect-panel p-cascadeselect-items",sublistWrapper:"p-cascadeselect-sublist-wrapper",sublist:"p-cascadeselect-panel p-cascadeselect-items p-cascadeselect-sublist",item:function(e){return h("p-cascadeselect-item",{"p-cascadeselect-item-group":e.isGroup,"p-cascadeselect-item-active p-highlight":e.isSelected})},dropdownIcon:"p-cascadeselect-trigger-icon",loadingIcon:"p-cascadeselect-trigger-icon",dropdownButton:"p-cascadeselect-trigger",loadingButton:"p-cascadeselect-trigger",wrapper:"p-cascadeselect-items-wrapper",panel:"p-cascadeselect-panel p-component",content:"p-cascadeselect-item-content",optionGroupIcon:"p-cascadeselect-group-icon",text:"p-cascadeselect-item-text",transition:"p-connected-overlay"},styles:"\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"}});function B(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function V(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?B(Object(t),!0).forEach((function(n){A(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):B(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var F=e.memo((function(n){var r=l(),o=T(e.useState(null),2),a=o[0],s=o[1],u=e.useRef(null),p=e.useContext(t),d=n.ptm,f=n.cx,m=function(e,t){return d(e,{hostName:n.hostName,state:V({},t)})},v=function(e){n.onOptionSelect&&n.onOptionSelect(e)},b=function(e,t){var r=e.currentTarget.parentElement;switch(e.key){case"Down":case"ArrowDown":var o=y(r);o&&o.children[0].focus();break;case"Up":case"ArrowUp":var l=O(r);l&&l.children[0].focus();break;case"Right":case"ArrowRight":A(t)&&(a===t?r.children[1].children[0].children[0].focus():s(t));break;case"Left":case"ArrowLeft":s(null);var i=e.currentTarget.parentElement.parentElement.previousElementSibling;i&&i.focus();break;case"Enter":E(e,t);break;case"Tab":case"Escape":n.onPanelHide&&(n.onPanelHide(),e.preventDefault())}e.preventDefault()},y=function(e){var n=e.nextElementSibling;return n?g.hasClass(n,"p-disabled")||!g.hasClass(n,"p-cascadeselect-item")?y(n):n:null},O=function(e){var n=e.previousElementSibling;return n?g.hasClass(n,"p-disabled")||!g.hasClass(n,"p-cascadeselect-item")?O(n):n:null},E=function(e,t){A(t)?(s((function(e){return e===t?null:t})),n.onOptionGroupSelect&&n.onOptionGroupSelect({originalEvent:e,value:t})):n.onOptionSelect&&n.onOptionSelect({originalEvent:e,value:C(t)})},j=function(e){n.onOptionGroupSelect&&n.onOptionGroupSelect(e)},G=function(e){return n.optionLabel?w.resolveFieldData(e,n.optionLabel):e},C=function(e){return n.optionValue?w.resolveFieldData(e,n.optionValue):e},A=function(e){return Object.prototype.hasOwnProperty.call(e,n.optionGroupChildren[n.level])},N=function(e){return A(e)?(t=e,n.optionGroupLabel?w.resolveFieldData(t,n.optionGroupLabel):null):G(e);var t};i((function(){if(n.selectionPath&&n.options&&!n.dirty){var e=n.options.find((function(e){return n.selectionPath.includes(e)}));e&&s(e)}var t,r,o,a,l;n.root||(r=g.getOffset(t=u.current.parentElement.parentElement),o=g.getViewport(),a=u.current.offsetParent?u.current.offsetWidth:g.getHiddenElementOuterWidth(_),l=g.getOuterWidth(t.children[0]),parseInt(r.left,10)+l+a>o.width-g.calculateScrollbarWidth()&&(u.current.parentElement.style.left="-100%"))})),c((function(){n.parentActive||s(null)}),[n.parentActive]);var D,k,L,R,H=function(t){if(A(t)&&a===t){var r=w.resolveFieldData(t,n.optionGroupChildren[n.level]),o=a===t,l=n.level+1;return e.createElement(F,{hostName:n.hostName,options:r,className:f("sublist"),selectionPath:n.selectionPath,optionLabel:n.optionLabel,optionValue:n.optionValue,level:l,onOptionSelect:v,onOptionGroupSelect:j,parentActive:o,optionGroupLabel:n.optionGroupLabel,optionGroupChildren:n.optionGroupChildren,dirty:n.dirty,template:n.template,onPanelHide:n.onPanelHide,ptm:d,cx:f})}return null},B=function(t,o){var l=H(t),i=r({className:f("text")},m("text")),c=n.template?w.getJSXElement(n.template,C(t)):e.createElement("span",i,N(t)),s=r({className:f("optionGroupIcon")},m("optionGroupIcon")),u=n.optionGroupIcon||e.createElement(x,s),p=A(t)&&S.getJSXIcon(u,V({},s),{props:n}),d=N(t)+"_"+o,v=r({className:f("content"),onClick:function(e){return E(e,t)},tabIndex:0,onKeyDown:function(e){return b(e,t)}},m("content")),y=a===t,g=A(t),O=r({className:h(t.className,f("item",{option:t,isGroup:g,isSelected:y})),style:t.style,role:"none","data-p-item-group":g,"data-p-highlight":y},m("item",{selected:y,group:g}));return e.createElement("li",P({key:d},O),e.createElement("div",v,c,p,e.createElement(I,null)),l)},_=(D=r({ref:u,className:f(0===n.level?"list":"sublist",{context:p}),role:"listbox","aria-orientation":"horizontal"},m(0===n.level?"list":"sublist")),k=n.options?n.options.map(B):null,L=e.createElement("ul",D,k),R=r({className:f("sublistWrapper")},m("sublistWrapper")),0===n.level?L:e.createElement("div",R,L));return _}));function _(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=K(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 a,l=!0,i=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return l=e.done,e},e:function(e){i=!0,a=e},f:function(){try{l||null==t.return||t.return()}finally{if(i)throw a}}}}function K(e,n){if(e){if("string"==typeof e)return W(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?W(e,n):void 0}}function W(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function M(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function U(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?M(Object(t),!0).forEach((function(n){A(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):M(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var z=e.memo(e.forwardRef((function(r,x){var I=l(),j=e.useContext(t),G=H.getProps(r,j),C=T(e.useState(!1),2),A=C[0],N=C[1],D=T(e.useState(!1),2),k=D[0],L=D[1],R=T(e.useState(null),2),B=R[0],V=R[1],K=H.setMetaData({props:G,state:{focused:A,overlayVisible:k,attributeSelector:B},context:U({},j)}),W=K.ptm,M=K.cx;o(H.css.styles,K.isUnstyled,{name:"cascadeselect"});var z=e.useRef(null),J=e.useRef(null),X=e.useRef(null),Z=e.useRef(null),$=e.useRef(null),q=e.useRef(!1),Y=e.useRef(null),Q=T(s({target:z,overlay:J,listener:function(e,n){n.valid&&ve()},when:k}),2),ee=Q[0],ne=Q[1],te=u("cascade-select",k);p({callback:function(){ve()},when:k&&te,priority:[d.CASCADE_SELECT,te]});var re=function(e){G.onChange&&G.onChange({originalEvent:e,value:e.value}),se(),ve(),g.focus(X.current)},oe=function(e){q.current=!0,G.onGroupChange&&G.onGroupChange(e)},ae=function(e){return(G.optionLabel?w.resolveFieldData(e,G.optionLabel):e)||e},le=function(e){return G.optionValue?w.resolveFieldData(e,G.optionValue):e},ie=function(e,n){return w.resolveFieldData(e,G.optionGroupChildren[n])},ce=function(e,n){return Object.prototype.hasOwnProperty.call(e,G.optionGroupChildren[n])},se=function(){var e;if(null!=G.value&&G.options){var n,t=_(G.options);try{for(t.s();!(n=t.n()).done;){if(e=ue(n.value,0))break}}catch(e){t.e(e)}finally{t.f()}}Y.current=e},ue=function(e,n){if(ce(e,n)){var t,r,o=_(ie(e,n));try{for(o.s();!(r=o.n()).done;){if(t=ue(r.value,n+1))return t.unshift(e),t}}catch(e){o.e(e)}finally{o.f()}}else if(w.equals(G.value,le(e),G.dataKey))return[e];return null},pe=function(){N(!0)},de=function(){N(!1)},fe=function(e){switch(e.which){case 40:k?g.findSingle(J.current,'[data-pc-section="item"]').children[0].focus():e.altKey&&G.options&&G.options.length&&me(),e.preventDefault();break;case 32:k?ve():me(),e.preventDefault();break;case 9:ve()}},me=function(){G.onBeforeShow&&G.onBeforeShow(),L(!0)},ve=function(){G.onBeforeHide&&G.onBeforeHide(),L(!1),g.focus(X.current)},be=function(){E.set("overlay",J.current,j&&j.autoZIndex||n.autoZIndex,j&&j.zIndex.overlay||n.zIndex.overlay),g.addStyles(J.current,{position:"absolute",top:"0",left:"0"}),we(),B&&G.breakpoint&&(J.current.setAttribute(B+"_panel",""),Se())},ye=function(){ee(),G.onShow&&G.onShow()},he=function(){ne(),q.current=!1},ge=function(){E.clear(J.current),G.onHide&&G.onHide(),Oe()},we=function(){g.alignOverlay(J.current,Z.current.parentElement,G.appendTo||j&&j.appendTo||n.appendTo)},Se=function(){if(!$.current){$.current=g.createInlineStyle(j&&j.nonce||n.nonce,j&&j.styleContainer);var e="".concat(B,"_panel"),t="\n@media screen and (max-width: ".concat(G.breakpoint,") {\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-items-wrapper > ul {\n max-height: ").concat(G.scrollHeight,";\n overflow: ").concat(G.scrollHeight?"auto":"",";\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist-wrapper {\n position:relative;\n left:0 !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist {\n overflow: hidden !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-item-active .p-cascadeselect-sublist {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-cascadeselect-panel[").concat(e,'] .p-cascadeselect-group-icon:before {\n content: "\\e930";\n }\n}\n');$.current.innerHTML=t}},Oe=function(){$.current=g.removeInlineStyle($.current)};e.useImperativeHandle(x,(function(){return{props:G,getElement:function(){return z.current},getOverlay:function(){return J.current},getInput:function(){return X.current},getLabel:function(){return Z.current},focus:function(){return g.focus(X.current)}}})),i((function(){G.breakpoint&&!B&&V(O()),G.autoFocus&&g.focus(X.current,G.autoFocus),we()})),e.useEffect((function(){w.combinedRefs(X,G.inputRef)}),[X,G.inputRef]),c((function(){se()}),[G.value]),f((function(){E.clear(J.current)}));var Ee=function(){var n=I({className:M("dropdownIcon")},W("dropdownIcon")),t=S.getJSXIcon(G.dropdownIcon||e.createElement(m,n),U({},n),{props:G}),r=I({className:M("dropdownButton"),role:"button","aria-haspopup":"listbox","aria-expanded":k},W("dropdownButton"));return e.createElement("div",r,t)},xe=I({className:M("wrapper")},W("wrapper")),Ie=I({ref:J,className:M("panel"),onClick:function(e){b.emit("overlay-click",{originalEvent:e,target:z.current})}},W("panel")),Pe=function(){var n=I({classNames:M("transition"),in:k,timeout:{enter:120,exit:100},options:G.transitionOptions,unmountOnExit:!0,onEnter:be,onEntered:ye,onExit:he,onExited:ge},W("transition")),t=e.createElement(a,P({nodeRef:J},n),e.createElement("div",Ie,e.createElement("div",xe,e.createElement(F,{hostName:"CascadeSelect",options:G.options,selectionPath:Y.current,optionGroupIcon:G.optionGroupIcon,optionLabel:G.optionLabel,optionValue:G.optionValue,parentActive:null!=G.value,level:0,optionGroupLabel:G.optionGroupLabel,optionGroupChildren:G.optionGroupChildren,onOptionSelect:re,onOptionGroupSelect:oe,root:!0,template:G.itemTemplate,onPanelHide:ve,ptm:W,cx:M}))));return e.createElement(y,{element:t,appendTo:G.appendTo})},je=H.getOtherProps(G);w.reduceKeys(je,g.DATA_PROPS);var Ge,Ce,Ae,Ne,De,ke,Le,Re,Te,He,Be,Ve,Fe,_e=w.reduceKeys(je,g.ARIA_PROPS);return Ge=G.value?ae(G.value):void 0,Ce=I({className:"p-hidden-accessible"},W("hiddenSelectedMessage")),Ae=I(U({ref:X,type:"text",id:G.inputId,name:G.name,defaultValue:Ge,readOnly:!0,disabled:G.disabled,onFocus:pe,onBlur:de,onKeyDown:function(e){return fe(e)},tabIndex:G.tabIndex,"aria-haspopup":"listbox"},_e),W("input")),Te=e.createElement("div",Ce,e.createElement("input",Ae)),Ne=G.value?ae(G.value):G.placeholder||"p-emptylabel",De=I({ref:Z,className:M("label",{label:Ne})},W("label",{context:U({label:Ne},j)})),He=e.createElement("span",De,Ne),Be=G.loading?(ke=I({className:M("loadingIcon")},W("loadingIcon")),Le=S.getJSXIcon(G.loadingIcon||e.createElement(v,{spin:!0}),U({},ke),{props:G}),Re=I({className:M("loadingButton"),role:"button","aria-haspopup":"listbox","aria-expanded":k},W("dropdownButton")),e.createElement("div",Re,Le)):Ee(),Ve=Pe(),Fe=I({id:G.id,ref:z,className:h(G.className,M("root",{focusedState:A,overlayVisibleState:k,context:j})),style:G.style,onClick:function(e){return n=e,void(G.disabled||G.loading||J.current&&J.current.contains(n.target)||(g.focus(X.current),k?ve():me()));var n}},je,W("root")),e.createElement("div",Fe,Te,He,Be,Ve)})));z.displayName="CascadeSelect";export{z as CascadeSelect};
1
+ import*as e from"react";import n,{PrimeReactContext as t,localeOption as r}from"primereact/api";import{ComponentBase as o,useHandleStyle as a}from"primereact/componentbase";import{CSSTransition as l}from"primereact/csstransition";import{useMergeProps as i,useMountEffect as c,useUpdateEffect as s,useOverlayListener as u,useDisplayOrder as p,useGlobalOnEscapeKey as d,ESC_KEY_HANDLING_PRIORITIES as f,useUnmountEffect as m}from"primereact/hooks";import{ChevronDownIcon as v}from"primereact/icons/chevrondown";import{SpinnerIcon as b}from"primereact/icons/spinner";import{TimesIcon as y}from"primereact/icons/times";import{OverlayService as h}from"primereact/overlayservice";import{Portal as g}from"primereact/portal";import{classNames as w,DomHandler as S,ObjectUtils as O,IconUtils as E,UniqueComponentId as x,ZIndexUtils as I}from"primereact/utils";import{AngleRightIcon as P}from"primereact/icons/angleright";import{Ripple as C}from"primereact/ripple";function j(){return j=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},j.apply(null,arguments)}function G(e){return G="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},G(e)}function D(e,n){if("object"!=G(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!=G(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function N(e){var n=D(e,"string");return"symbol"==G(n)?n:n+""}function k(e,n,t){return(n=N(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function A(e){if(Array.isArray(e))return e}function L(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,a,l,i=[],c=!0,s=!1;try{if(a=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=a.call(t)).done)&&(i.push(r.value),i.length!==n);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=t.return&&(l=t.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}function R(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function T(e,n){if(e){if("string"==typeof e)return R(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?R(e,n):void 0}}function H(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function B(e,n){return A(e)||L(e,n)||T(e,n)||H()}var V=o.extend({defaultProps:{__TYPE:"CascadeSelect",appendTo:null,ariaLabelledBy:null,autoFocus:!1,breakpoint:void 0,className:null,dataKey:null,disabled:!1,loadingIcon:null,dropdownIcon:null,loading:!1,id:null,inputId:null,inputRef:null,invalid:!1,variant:null,itemTemplate:null,name:null,onBeforeHide:null,onBeforeShow:null,onChange:null,onGroupChange:null,onHide:null,onShow:null,optionGroupChildren:null,optionGroupIcon:null,optionGroupLabel:null,optionLabel:null,optionValue:null,options:null,panelClassName:null,panelStyle:null,placeholder:null,scrollHeight:"400px",style:null,tabIndex:null,transitionOptions:null,value:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.focusedState,r=e.context;return w("p-cascadeselect p-component p-inputwrapper",{"p-disabled":n.disabled,"p-invalid":n.invalid,"p-variant-filled":n.variant?"filled"===n.variant:r&&"filled"===r.inputStyle,"p-focus":t,"p-inputwrapper-filled":n.value,"p-inputwrapper-focus":t||e.overlayVisibleState})},label:function(e){var n=e.props,t=e.label;return w("p-cascadeselect-label ",{"p-placeholder":t===n.placeholder,"p-cascadeselect-label-empty":!n.value&&"p-emptylabel"===t})},list:"p-cascadeselect-panel p-cascadeselect-items",sublistWrapper:"p-cascadeselect-sublist-wrapper",sublist:"p-cascadeselect-panel p-cascadeselect-items p-cascadeselect-sublist",item:function(e){return w("p-cascadeselect-item",{"p-cascadeselect-item-group":e.isGroup,"p-cascadeselect-item-active p-highlight":e.isSelected})},dropdownIcon:"p-cascadeselect-trigger-icon",clearIcon:"p-cascadeselect-clear-icon p-clickable",loadingIcon:"p-cascadeselect-trigger-icon",dropdownButton:"p-cascadeselect-trigger",loadingButton:"p-cascadeselect-trigger",wrapper:"p-cascadeselect-items-wrapper",panel:"p-cascadeselect-panel p-component",content:"p-cascadeselect-item-content",optionGroupIcon:"p-cascadeselect-group-icon",text:"p-cascadeselect-item-text",transition:"p-connected-overlay"},styles:"\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"}});function F(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function K(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?F(Object(t),!0).forEach((function(n){k(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):F(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var _=e.memo((function(n){var r=i(),o=B(e.useState(null),2),a=o[0],l=o[1],u=e.useRef(null),p=e.useContext(t),d=n.ptm,f=n.cx,m=function(e,t){return d(e,{hostName:n.hostName,state:K({},t)})},v=function(e){n.onOptionSelect&&n.onOptionSelect(e)},b=function(e,t){var r=e.currentTarget.parentElement;switch(e.key){case"Down":case"ArrowDown":var o=y(r);o&&o.children[0].focus();break;case"Up":case"ArrowUp":var i=h(r);i&&i.children[0].focus();break;case"Right":case"ArrowRight":D(t)&&(a===t?r.children[1].children[0].children[0].focus():l(t));break;case"Left":case"ArrowLeft":l(null);var c=e.currentTarget.parentElement.parentElement.previousElementSibling;c&&c.focus();break;case"Enter":g(e,t);break;case"Tab":case"Escape":n.onPanelHide&&(n.onPanelHide(),e.preventDefault())}e.preventDefault()},y=function(e){var n=e.nextElementSibling;return n?S.hasClass(n,"p-disabled")||!S.hasClass(n,"p-cascadeselect-item")?y(n):n:null},h=function(e){var n=e.previousElementSibling;return n?S.hasClass(n,"p-disabled")||!S.hasClass(n,"p-cascadeselect-item")?h(n):n:null},g=function(e,t){D(t)?(l((function(e){return e===t?null:t})),n.onOptionGroupSelect&&n.onOptionGroupSelect({originalEvent:e,value:t})):n.onOptionSelect&&n.onOptionSelect({originalEvent:e,value:G(t)})},x=function(e){n.onOptionGroupSelect&&n.onOptionGroupSelect(e)},I=function(e){return n.optionLabel?O.resolveFieldData(e,n.optionLabel):e},G=function(e){return n.optionValue?O.resolveFieldData(e,n.optionValue):e},D=function(e){return Object.prototype.hasOwnProperty.call(e,n.optionGroupChildren[n.level])},N=function(e){return D(e)?(t=e,n.optionGroupLabel?O.resolveFieldData(t,n.optionGroupLabel):null):I(e);var t};c((function(){if(n.selectionPath&&n.options&&!n.dirty){var e=n.options.find((function(e){return n.selectionPath.includes(e)}));e&&l(e)}var t,r,o,a,i;n.root||(r=S.getOffset(t=u.current.parentElement.parentElement),o=S.getViewport(),a=u.current.offsetParent?u.current.offsetWidth:S.getHiddenElementOuterWidth(V),i=S.getOuterWidth(t.children[0]),parseInt(r.left,10)+i+a>o.width-S.calculateScrollbarWidth()&&(u.current.parentElement.style.left="-100%"))})),s((function(){n.parentActive||l(null)}),[n.parentActive]);var k,A,L,R,T=function(t){if(D(t)&&a===t){var r=O.resolveFieldData(t,n.optionGroupChildren[n.level]),o=a===t,l=n.level+1;return e.createElement(_,{hostName:n.hostName,options:r,className:f("sublist"),selectionPath:n.selectionPath,optionLabel:n.optionLabel,optionValue:n.optionValue,level:l,onOptionSelect:v,onOptionGroupSelect:x,parentActive:o,optionGroupLabel:n.optionGroupLabel,optionGroupChildren:n.optionGroupChildren,dirty:n.dirty,template:n.template,onPanelHide:n.onPanelHide,ptm:d,cx:f})}return null},H=function(t,o){var l=T(t),i=r({className:f("text")},m("text")),c=n.template?O.getJSXElement(n.template,G(t)):e.createElement("span",i,N(t)),s=r({className:f("optionGroupIcon")},m("optionGroupIcon")),u=n.optionGroupIcon||e.createElement(P,s),p=D(t)&&E.getJSXIcon(u,K({},s),{props:n}),d=N(t)+"_"+o,v=r({className:f("content"),onClick:function(e){return g(e,t)},tabIndex:0,onKeyDown:function(e){return b(e,t)}},m("content")),y=a===t,h=D(t),S=r({className:w(t.className,f("item",{option:t,isGroup:h,isSelected:y})),style:t.style,role:"none","data-p-item-group":h,"data-p-highlight":y},m("item",{selected:y,group:h}));return e.createElement("li",j({key:d},S),e.createElement("div",v,c,p,e.createElement(C,null)),l)},V=(k=r({ref:u,className:f(0===n.level?"list":"sublist",{context:p}),role:"listbox","aria-orientation":"horizontal"},m(0===n.level?"list":"sublist")),A=n.options?n.options.map(H):null,L=e.createElement("ul",k,A),R=r({className:f("sublistWrapper")},m("sublistWrapper")),0===n.level?L:e.createElement("div",R,L));return V}));function W(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=U(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 a,l=!0,i=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return l=e.done,e},e:function(e){i=!0,a=e},f:function(){try{l||null==t.return||t.return()}finally{if(i)throw a}}}}function U(e,n){if(e){if("string"==typeof e)return J(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?J(e,n):void 0}}function J(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function M(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function X(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?M(Object(t),!0).forEach((function(n){k(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):M(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var z=e.memo(e.forwardRef((function(o,P){var C=i(),G=e.useContext(t),D=V.getProps(o,G),N=B(e.useState(!1),2),k=N[0],A=N[1],L=B(e.useState(!1),2),R=L[0],T=L[1],H=B(e.useState(null),2),F=H[0],K=H[1],U=V.setMetaData({props:D,state:{focused:k,overlayVisible:R,attributeSelector:F},context:X({},G)}),J=U.ptm,M=U.cx;a(V.css.styles,U.isUnstyled,{name:"cascadeselect"});var z=e.useRef(null),Z=e.useRef(null),$=e.useRef(null),q=e.useRef(null),Y=e.useRef(null),Q=e.useRef(!1),ee=e.useRef(null),ne=e.useRef(null),te=B(u({target:z,overlay:Z,listener:function(e,n){n.valid&&(G.hideOverlaysOnDocumentScrolling||"outside"===n.type?he():S.isDocument(e.target)||Ee())},when:R}),2),re=te[0],oe=te[1],ae=p("cascade-select",R);d({callback:function(){he()},when:R&&ae,priority:[f.CASCADE_SELECT,ae]});var le=function(e){D.onChange&&(ne.current=!0,D.onChange({originalEvent:e,value:e.value})),de(),he(),S.focus($.current)},ie=function(e){Q.current=!0,D.onGroupChange&&D.onGroupChange(e)},ce=function(e){return(D.optionLabel?O.resolveFieldData(e,D.optionLabel):e)||e},se=function(e){return D.optionValue?O.resolveFieldData(e,D.optionValue):e},ue=function(e,n){return O.resolveFieldData(e,D.optionGroupChildren[n])},pe=function(e,n){return Object.prototype.hasOwnProperty.call(e,D.optionGroupChildren[n])},de=function(){var e;if(null!=D.value&&D.options){var n,t=W(D.options);try{for(t.s();!(n=t.n()).done;){if(e=fe(n.value,0))break}}catch(e){t.e(e)}finally{t.f()}}ee.current=e},fe=function(e,n){if(pe(e,n)){var t,r,o=W(ue(e,n));try{for(o.s();!(r=o.n()).done;){if(t=fe(r.value,n+1))return t.unshift(e),t}}catch(e){o.e(e)}finally{o.f()}}else if(O.equals(D.value,se(e),D.dataKey))return[e];return null},me=function(){A(!0)},ve=function(){A(!1)},be=function(e){switch(e.which){case 40:R?S.findSingle(Z.current,'[data-pc-section="item"]').children[0].focus():e.altKey&&D.options&&D.options.length&&ye(),e.preventDefault();break;case 32:R?he():ye(),e.preventDefault();break;case 9:he()}},ye=function(){D.onBeforeShow&&D.onBeforeShow(),T(!0)},he=function(){D.onBeforeHide&&D.onBeforeHide(),T(!1),S.focus($.current)},ge=function(){I.set("overlay",Z.current,G&&G.autoZIndex||n.autoZIndex,G&&G.zIndex.overlay||n.zIndex.overlay),S.addStyles(Z.current,{position:"absolute",top:"0",left:"0"}),Ee(),F&&D.breakpoint&&(Z.current.setAttribute(F+"_panel",""),xe())},we=function(){re(),D.onShow&&D.onShow()},Se=function(){oe(),Q.current=!1},Oe=function(){I.clear(Z.current),D.onHide&&D.onHide(),Ie()},Ee=function(){S.alignOverlay(Z.current,q.current.parentElement,D.appendTo||G&&G.appendTo||n.appendTo)},xe=function(){if(!Y.current){Y.current=S.createInlineStyle(G&&G.nonce||n.nonce,G&&G.styleContainer);var e="".concat(F,"_panel"),t="\n@media screen and (max-width: ".concat(D.breakpoint,") {\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-items-wrapper > ul {\n max-height: ").concat(D.scrollHeight,";\n overflow: ").concat(D.scrollHeight?"auto":"",";\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist-wrapper {\n position:relative;\n left:0 !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-sublist {\n overflow: hidden !important;\n }\n\n .p-cascadeselect-panel[").concat(e,"] .p-cascadeselect-item-active .p-cascadeselect-sublist {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-cascadeselect-panel[").concat(e,'] .p-cascadeselect-group-icon:before {\n content: "\\e930";\n }\n}\n');Y.current.innerHTML=t}},Ie=function(){Y.current=S.removeInlineStyle(Y.current)};e.useImperativeHandle(P,(function(){return{props:D,getElement:function(){return z.current},getOverlay:function(){return Z.current},getInput:function(){return $.current},getLabel:function(){return q.current},focus:function(){return S.focus($.current)}}})),c((function(){D.breakpoint&&!F&&K(x()),D.autoFocus&&S.focus($.current,D.autoFocus),Ee()})),e.useEffect((function(){O.combinedRefs($,D.inputRef)}),[$,D.inputRef]),s((function(){de()}),[D.value]),m((function(){I.clear(Z.current)}));var Pe=function(e){D.onChange&&(ne.current=!0,D.onChange({originalEvent:e,value:void 0,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{name:D.name,id:D.id,value:void 0}}))},Ce=function(e){"Enter"!==e.key&&"Space"!==e.code||(Pe(e),e.preventDefault())},je=function(){if(null!=D.value&&D.showClear&&!D.disabled){var n=C({className:M("clearIcon"),onPointerUp:Pe,tabIndex:D.tabIndex||"0",onKeyDown:Ce,"aria-label":r("clear")},J("clearIcon"));return E.getJSXIcon(D.clearIcon||e.createElement(y,n),X({},n),{props:D})}return null},Ge=function(){var n=C({className:M("dropdownIcon")},J("dropdownIcon")),t=E.getJSXIcon(D.dropdownIcon||e.createElement(v,n),X({},n),{props:D}),r=C({className:M("dropdownButton"),role:"button","aria-haspopup":"listbox","aria-expanded":R},J("dropdownButton"));return e.createElement("div",r,t)},De=C({className:M("wrapper")},J("wrapper")),Ne=C({ref:Z,className:w(D.panelClassName,M("panel")),style:D.panelStyle,onClick:function(e){h.emit("overlay-click",{originalEvent:e,target:z.current})}},J("panel")),ke=function(){var n=C({classNames:M("transition"),in:R,timeout:{enter:120,exit:100},options:D.transitionOptions,unmountOnExit:!0,onEnter:ge,onEntered:we,onExit:Se,onExited:Oe},J("transition")),t=e.createElement(l,j({nodeRef:Z},n),e.createElement("div",Ne,e.createElement("div",De,e.createElement(_,{hostName:"CascadeSelect",options:D.options,selectionPath:ee.current,optionGroupIcon:D.optionGroupIcon,optionLabel:D.optionLabel,optionValue:D.optionValue,parentActive:null!=D.value,level:0,optionGroupLabel:D.optionGroupLabel,optionGroupChildren:D.optionGroupChildren,onOptionSelect:le,onOptionGroupSelect:ie,root:!0,template:D.itemTemplate,onPanelHide:he,ptm:J,cx:M}))));return e.createElement(g,{element:t,appendTo:D.appendTo})},Ae=V.getOtherProps(D);O.reduceKeys(Ae,S.DATA_PROPS);var Le,Re,Te,He,Be,Ve,Fe,Ke,_e,We,Ue,Je,Me,Xe,ze=O.reduceKeys(Ae,S.ARIA_PROPS);return Le=D.value?ce(D.value):void 0,Re=C({className:"p-hidden-accessible"},J("hiddenSelectedMessage")),Te=C(X({ref:$,type:"text",id:D.inputId,name:D.name,defaultValue:Le,readOnly:!0,disabled:D.disabled,onFocus:me,onBlur:ve,onKeyDown:function(e){return be(e)},tabIndex:D.tabIndex,"aria-haspopup":"listbox"},ze),J("input")),_e=e.createElement("div",Re,e.createElement("input",Te)),He=D.value?ce(D.value):D.placeholder||"p-emptylabel",Be=C({ref:q,className:M("label",{label:He})},J("label",{context:X({label:He},G)})),We=e.createElement("span",Be,He),Ue=je(),Je=D.loading?(Ve=C({className:M("loadingIcon")},J("loadingIcon")),Fe=E.getJSXIcon(D.loadingIcon||e.createElement(b,{spin:!0}),X({},Ve),{props:D}),Ke=C({className:M("loadingButton"),role:"button","aria-haspopup":"listbox","aria-expanded":R},J("dropdownButton")),e.createElement("div",Ke,Fe)):Ge(),Me=ke(),Xe=C({id:D.id,ref:z,className:w(D.className,M("root",{focusedState:k,overlayVisibleState:R,context:G})),style:D.style,onClick:function(e){return n=e,void(D.disabled||D.loading||Z.current&&Z.current.contains(n.target)||(S.focus($.current),R?he():ye()));var n}},Ae,J("root")),e.createElement("div",Xe,_e,We,Ue,Je,Me)})));z.displayName="CascadeSelect";export{z as CascadeSelect};
@@ -1,5 +1,5 @@
1
1
  this.primereact = this.primereact || {};
2
- this.primereact.cascadeselect = (function (exports, React, PrimeReact, componentbase, csstransition, hooks, chevrondown, spinner, overlayservice, portal, utils, angleright, ripple) {
2
+ this.primereact.cascadeselect = (function (exports, React, PrimeReact, componentbase, csstransition, hooks, chevrondown, spinner, times, overlayservice, portal, utils, angleright, ripple) {
3
3
  'use strict';
4
4
 
5
5
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -160,6 +160,7 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
160
160
  });
161
161
  },
162
162
  dropdownIcon: 'p-cascadeselect-trigger-icon',
163
+ clearIcon: 'p-cascadeselect-clear-icon p-clickable',
163
164
  loadingIcon: 'p-cascadeselect-trigger-icon',
164
165
  dropdownButton: 'p-cascadeselect-trigger',
165
166
  loadingButton: 'p-cascadeselect-trigger',
@@ -170,7 +171,7 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
170
171
  text: 'p-cascadeselect-item-text',
171
172
  transition: 'p-connected-overlay'
172
173
  };
173
- var styles = "\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";
174
+ var styles = "\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";
174
175
  var CascadeSelectBase = componentbase.ComponentBase.extend({
175
176
  defaultProps: {
176
177
  __TYPE: 'CascadeSelect',
@@ -203,6 +204,8 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
203
204
  optionLabel: null,
204
205
  optionValue: null,
205
206
  options: null,
207
+ panelClassName: null,
208
+ panelStyle: null,
206
209
  placeholder: null,
207
210
  scrollHeight: '400px',
208
211
  style: null,
@@ -499,12 +502,20 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
499
502
  var styleElementRef = React__namespace.useRef(null);
500
503
  var dirty = React__namespace.useRef(false);
501
504
  var selectionPath = React__namespace.useRef(null);
505
+ var selfChange = React__namespace.useRef(null);
502
506
  var _useOverlayListener = hooks.useOverlayListener({
503
507
  target: elementRef,
504
508
  overlay: overlayRef,
505
509
  listener: function listener(event, _ref) {
506
- var valid = _ref.valid;
507
- valid && hide();
510
+ var valid = _ref.valid,
511
+ type = _ref.type;
512
+ if (valid) {
513
+ if (context.hideOverlaysOnDocumentScrolling || type === 'outside') {
514
+ hide();
515
+ } else if (!utils.DomHandler.isDocument(event.target)) {
516
+ alignOverlay();
517
+ }
518
+ }
508
519
  },
509
520
  when: overlayVisibleState
510
521
  }),
@@ -521,6 +532,7 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
521
532
  });
522
533
  var onOptionSelect = function onOptionSelect(event) {
523
534
  if (props.onChange) {
535
+ selfChange.current = true;
524
536
  props.onChange({
525
537
  originalEvent: event,
526
538
  value: event.value
@@ -747,6 +759,48 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
747
759
  }, ariaProps), ptm('input'));
748
760
  return /*#__PURE__*/React__namespace.createElement("div", hiddenSelectedMessageProps, /*#__PURE__*/React__namespace.createElement("input", inputProps));
749
761
  };
762
+ var clear = function clear(event) {
763
+ if (props.onChange) {
764
+ selfChange.current = true;
765
+ props.onChange({
766
+ originalEvent: event,
767
+ value: undefined,
768
+ stopPropagation: function stopPropagation() {
769
+ event === null || event === void 0 || event.stopPropagation();
770
+ },
771
+ preventDefault: function preventDefault() {
772
+ event === null || event === void 0 || event.preventDefault();
773
+ },
774
+ target: {
775
+ name: props.name,
776
+ id: props.id,
777
+ value: undefined
778
+ }
779
+ });
780
+ }
781
+ };
782
+ var onClearIconKeyDown = function onClearIconKeyDown(event) {
783
+ if (event.key === 'Enter' || event.code === 'Space') {
784
+ clear(event);
785
+ event.preventDefault();
786
+ }
787
+ };
788
+ var createClearIcon = function createClearIcon() {
789
+ if (props.value != null && props.showClear && !props.disabled) {
790
+ var clearIconProps = mergeProps({
791
+ className: cx('clearIcon'),
792
+ onPointerUp: clear,
793
+ tabIndex: props.tabIndex || '0',
794
+ onKeyDown: onClearIconKeyDown,
795
+ 'aria-label': PrimeReact.localeOption('clear')
796
+ }, ptm('clearIcon'));
797
+ var icon = props.clearIcon || /*#__PURE__*/React__namespace.createElement(times.TimesIcon, clearIconProps);
798
+ return utils.IconUtils.getJSXIcon(icon, _objectSpread({}, clearIconProps), {
799
+ props: props
800
+ });
801
+ }
802
+ return null;
803
+ };
750
804
  var createLabel = function createLabel() {
751
805
  var label = props.value ? getOptionLabel(props.value) : props.placeholder || 'p-emptylabel';
752
806
  var labelProps = mergeProps({
@@ -800,7 +854,8 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
800
854
  }, ptm('wrapper'));
801
855
  var panelProps = mergeProps({
802
856
  ref: overlayRef,
803
- className: cx('panel'),
857
+ className: utils.classNames(props.panelClassName, cx('panel')),
858
+ style: props.panelStyle,
804
859
  onClick: function onClick(e) {
805
860
  return onPanelClick(e);
806
861
  }
@@ -849,6 +904,7 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
849
904
  var createElement = function createElement() {
850
905
  var keyboardHelper = createKeyboardHelper();
851
906
  var labelElement = createLabel();
907
+ var clearIcon = createClearIcon();
852
908
  var dropdownIcon = props.loading ? createLoadingIcon() : createDropdownIcon();
853
909
  var overlay = createOverlay();
854
910
  var rootProps = mergeProps({
@@ -864,7 +920,7 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
864
920
  return _onClick(e);
865
921
  }
866
922
  }, otherProps, ptm('root'));
867
- return /*#__PURE__*/React__namespace.createElement("div", rootProps, keyboardHelper, labelElement, dropdownIcon, overlay);
923
+ return /*#__PURE__*/React__namespace.createElement("div", rootProps, keyboardHelper, labelElement, clearIcon, dropdownIcon, overlay);
868
924
  };
869
925
  var otherProps = CascadeSelectBase.getOtherProps(props);
870
926
  utils.ObjectUtils.reduceKeys(otherProps, utils.DomHandler.DATA_PROPS);
@@ -880,4 +936,4 @@ this.primereact.cascadeselect = (function (exports, React, PrimeReact, component
880
936
 
881
937
  return exports;
882
938
 
883
- })({}, React, primereact.api, primereact.componentbase, primereact.csstransition, primereact.hooks, primereact.icons.chevrondown, primereact.icons.spinner, primereact.overlayservice, primereact.portal, primereact.utils, primereact.icons.angleright, primereact.ripple);
939
+ })({}, React, primereact.api, primereact.componentbase, primereact.csstransition, primereact.hooks, primereact.icons.chevrondown, primereact.icons.spinner, primereact.icons.times, primereact.overlayservice, primereact.portal, primereact.utils, primereact.icons.angleright, primereact.ripple);