"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;ne.length)&&(n=e.length);for(var t=0,r=Array(n);t .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;no.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 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;