@ws-ui/http-handlers-editor 1.13.0-dev.6 → 1.13.0-dev.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +29 -20
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -52,5 +52,5 @@ Valid keys: `+JSON.stringify(Object.keys(f),null," "));var A=re(C,G,O,H,M+"."+G
|
|
|
52
52
|
* LICENSE file in the root directory of this source tree.
|
|
53
53
|
*/var Di;function Gu(){return Di||(Di=1,T.NODE_ENV!=="production"&&(function(){var e=Symbol.for("react.element"),r=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),n=Symbol.for("react.profiler"),i=Symbol.for("react.provider"),a=Symbol.for("react.context"),s=Symbol.for("react.server_context"),l=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),u=Symbol.for("react.suspense_list"),h=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),I=Symbol.for("react.offscreen"),E=!1,y=!1,b=!1,N=!1,v=!1,x;x=Symbol.for("react.module.reference");function w(q){return!!(typeof q=="string"||typeof q=="function"||q===t||q===n||v||q===o||q===c||q===u||N||q===I||E||y||b||typeof q=="object"&&q!==null&&(q.$$typeof===g||q.$$typeof===h||q.$$typeof===i||q.$$typeof===a||q.$$typeof===l||q.$$typeof===x||q.getModuleId!==void 0))}function m(q){if(typeof q=="object"&&q!==null){var ue=q.$$typeof;switch(ue){case e:var he=q.type;switch(he){case t:case n:case o:case c:case u:return he;default:var Oe=he&&he.$$typeof;switch(Oe){case s:case a:case l:case g:case h:case i:return Oe;default:return ue}}case r:return ue}}}var _=a,j=i,k=e,D=l,F=t,L=g,U=h,te=r,K=n,ae=o,Y=c,se=u,$=!1,de=!1;function f(q){return $||($=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 18+.")),!1}function S(q){return de||(de=!0,console.warn("The ReactIs.isConcurrentMode() alias has been deprecated, and will be removed in React 18+.")),!1}function z(q){return m(q)===a}function P(q){return m(q)===i}function O(q){return typeof q=="object"&&q!==null&&q.$$typeof===e}function H(q){return m(q)===l}function M(q){return m(q)===t}function C(q){return m(q)===g}function V(q){return m(q)===h}function Z(q){return m(q)===r}function G(q){return m(q)===n}function re(q){return m(q)===o}function A(q){return m(q)===c}function ee(q){return m(q)===u}be.ContextConsumer=_,be.ContextProvider=j,be.Element=k,be.ForwardRef=D,be.Fragment=F,be.Lazy=L,be.Memo=U,be.Portal=te,be.Profiler=K,be.StrictMode=ae,be.Suspense=Y,be.SuspenseList=se,be.isAsyncMode=f,be.isConcurrentMode=S,be.isContextConsumer=z,be.isContextProvider=P,be.isElement=O,be.isForwardRef=H,be.isFragment=M,be.isLazy=C,be.isMemo=V,be.isPortal=Z,be.isProfiler=G,be.isStrictMode=re,be.isSuspense=A,be.isSuspenseList=ee,be.isValidElementType=w,be.typeOf=m})()),be}var zi;function Uu(){return zi||(zi=1,T.NODE_ENV==="production"?go.exports=Ku():go.exports=Gu()),go.exports}var Mi=Uu();const ji=e=>typeof e=="object"&&e!=null&&e.nodeType===1,Ri=(e,r)=>(!r||e!=="hidden")&&e!=="visible"&&e!=="clip",br=(e,r)=>{if(e.clientHeight<e.scrollHeight||e.clientWidth<e.scrollWidth){const t=getComputedStyle(e,null);return Ri(t.overflowY,r)||Ri(t.overflowX,r)||(o=>{const n=(i=>{if(!i.ownerDocument||!i.ownerDocument.defaultView)return null;try{return i.ownerDocument.defaultView.frameElement}catch{return null}})(o);return!!n&&(n.clientHeight<o.scrollHeight||n.clientWidth<o.scrollWidth)})(e)}return!1},xr=(e,r,t,o,n,i,a,s)=>i<e&&a>r||i>e&&a<r?0:i<=e&&s<=t||a>=r&&s>=t?i-e-o:a>r&&s<t||i<e&&s>t?a-r+n:0,Yu=e=>e.parentElement??(e.getRootNode().host||null),Zu=(e,r)=>{var t,o,n,i;if(typeof document>"u")return[];const{inline:a,boundary:s,skipOverflowHiddenElements:l}=r,c=typeof s=="function"?s:te=>te!==s;if(!ji(e))throw new TypeError("Invalid target");const u=document.scrollingElement||document.documentElement,h=[];let g=e;for(;ji(g)&&c(g);){if(g=Yu(g),g===u){h.push(g);break}g!=null&&g===document.body&&br(g)&&!br(document.documentElement)||g!=null&&br(g,l)&&h.push(g)}const I=(o=(t=window.visualViewport)==null?void 0:t.width)!=null?o:innerWidth,E=(i=(n=window.visualViewport)==null?void 0:n.height)!=null?i:innerHeight,{scrollX:y,scrollY:b}=window,{height:N,width:v,top:x,right:w,bottom:m,left:_}=e.getBoundingClientRect(),{top:j,right:k,left:D}=(te=>{const K=window.getComputedStyle(te);return{top:parseFloat(K.scrollMarginTop)||0,right:parseFloat(K.scrollMarginRight)||0,bottom:parseFloat(K.scrollMarginBottom)||0,left:parseFloat(K.scrollMarginLeft)||0}})(e);let F=x-j,L=a==="center"?_+v/2-D+k:a==="end"?w+k:_-D;const U=[];for(let te=0;te<h.length;te++){const K=h[te],{height:ae,width:Y,top:se,right:$,bottom:de,left:f}=K.getBoundingClientRect();if(x>=0&&_>=0&&m<=E&&w<=I&&(K===u&&!br(K)||x>=se&&m<=de&&_>=f&&w<=$))return U;const S=getComputedStyle(K),z=parseInt(S.borderLeftWidth,10),P=parseInt(S.borderTopWidth,10),O=parseInt(S.borderRightWidth,10),H=parseInt(S.borderBottomWidth,10);let M=0,C=0;const V="offsetWidth"in K?K.offsetWidth-K.clientWidth-z-O:0,Z="offsetHeight"in K?K.offsetHeight-K.clientHeight-P-H:0,G="offsetWidth"in K?K.offsetWidth===0?0:Y/K.offsetWidth:0,re="offsetHeight"in K?K.offsetHeight===0?0:ae/K.offsetHeight:0;if(u===K)M=xr(b,b+E,E,P,H,b+F,b+F+N,N),C=a==="start"?L:a==="center"?L-I/2:a==="end"?L-I:xr(y,y+I,I,z,O,y+L,y+L+v,v),M=Math.max(0,M+b),C=Math.max(0,C+y);else{M=xr(se,de,ae,P,H+Z,F,F+N,N),C=a==="start"?L-f-z:a==="center"?L-(f+Y/2)+V/2:a==="end"?L-$+O+V:xr(f,$,Y,z,O+V,L,L+v,v);const{scrollLeft:A,scrollTop:ee}=K;M=re===0?0:Math.max(0,Math.min(ee+M/re,K.scrollHeight-ae/re+Z)),C=G===0?0:Math.max(0,Math.min(A+C/G,K.scrollWidth-Y/G+V)),F+=ee-M,L+=A-C}U.push({el:K,top:M,left:C})}return U};var jt=function(){return jt=Object.assign||function(e){for(var r,t=1,o=arguments.length;t<o;t++){r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},jt.apply(this,arguments)},Xu=0;function Ti(e){return typeof e=="function"?e:je}function je(){}function Ba(e,r){if(e){var t=Zu(e,{boundary:r});t.forEach(function(o){var n=o.el,i=o.top,a=o.left;n.scrollTop=i,n.scrollLeft=a})}}function Pi(e,r,t){var o=e===r||r instanceof t.Node&&e.contains&&e.contains(r);return o}function qr(e,r){var t;function o(){t&&clearTimeout(t)}function n(){for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];o(),t=setTimeout(function(){t=null,e.apply(void 0,a)},r)}return n.cancel=o,n}function ge(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];return function(o){for(var n=arguments.length,i=new Array(n>1?n-1:0),a=1;a<n;a++)i[a-1]=arguments[a];return r.some(function(s){return s&&s.apply(void 0,[o].concat(i)),o.preventDownshiftDefault||o.hasOwnProperty("nativeEvent")&&o.nativeEvent.preventDownshiftDefault})}}function Ze(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];return function(o){r.forEach(function(n){typeof n=="function"?n(o):n&&(n.current=o)})}}function Fa(){return String(Xu++)}function Ju(e){var r=e.isOpen,t=e.resultCount,o=e.previousResultCount;return r?t?t!==o?t+" result"+(t===1?" is":"s are")+" available, use up and down arrow keys to navigate. Press Enter key to select.":"":"No results are available.":""}function Ai(e,r){return e=Array.isArray(e)?e[0]:e,!e&&r?r:e}function Wa(e){return typeof e.type=="string"}function $a(e){return e.props}function Qu(e,r){console.error('The property "'+r+'" is required in "'+e+'"')}var ep=["highlightedIndex","inputValue","isOpen","selectedItem","type"];function wr(e){e===void 0&&(e={});var r={};return ep.forEach(function(t){e.hasOwnProperty(t)&&(r[t]=e[t])}),r}function tr(e,r){return!e||!r?e:Object.keys(e).reduce(function(t,o){return t[o]=Pr(r,o)?r[o]:e[o],t},{})}function Pr(e,r){return e[r]!==void 0}function Rt(e){var r=e.key,t=e.keyCode;return t>=37&&t<=40&&r.indexOf("Arrow")!==0?"Arrow"+r:r}function tp(e){return Object.prototype.toString.call(e)==="[object Object]"}function Xe(e,r,t,o,n){n===void 0&&(n=!1);var i=t.length;if(i===0)return-1;var a=i-1;(typeof e!="number"||e<0||e>a)&&(e=r>0?-1:a+1);var s=e+r;s<0?s=n?a:0:s>a&&(s=n?0:a);var l=gt(s,r<0,t,o,n);return l===-1?e>=i?-1:e:l}function gt(e,r,t,o,n){n===void 0&&(n=!1);var i=t.length;if(r){for(var a=e;a>=0;a--)if(!o(t[a],a))return a}else for(var s=e;s<i;s++)if(!o(t[s],s))return s;return n?gt(r?i-1:0,r,t,o):-1}function Ar(e,r,t,o){return o===void 0&&(o=!0),t&&r.some(function(n){return n&&(Pi(n,e,t)||o&&Pi(n,t.document.activeElement,t))})}var To=je;T.NODE_ENV!=="production"&&(To=function(e,r,t){var o="This prop should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled Downshift element for the lifetime of the component. More info: https://github.com/downshift-js/downshift#control-props";Object.keys(e).forEach(function(n){r[n]!==void 0&&t[n]===void 0?console.error('downshift: A component has changed the controlled prop "'+n+'" to be uncontrolled. '+o):r[n]===void 0&&t[n]!==void 0&&console.error('downshift: A component has changed the uncontrolled prop "'+n+'" to be controlled. '+o)})});var rp=qr(function(e){qa(e).textContent=""},500);function qa(e){var r=e.getElementById("a11y-status-message");return r||(r=e.createElement("div"),r.setAttribute("id","a11y-status-message"),r.setAttribute("role","status"),r.setAttribute("aria-live","polite"),r.setAttribute("aria-relevant","additions text"),Object.assign(r.style,{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px"}),e.body.appendChild(r),r)}function Ka(e,r){if(!(!e||!r)){var t=qa(r);t.textContent=e,rp(r)}}function op(e){var r=e==null?void 0:e.getElementById("a11y-status-message");r&&r.remove()}var Ga=T.NODE_ENV!=="production"?"__autocomplete_unknown__":0,Ua=T.NODE_ENV!=="production"?"__autocomplete_mouseup__":1,Ya=T.NODE_ENV!=="production"?"__autocomplete_item_mouseenter__":2,Sr=T.NODE_ENV!=="production"?"__autocomplete_keydown_arrow_up__":3,Or=T.NODE_ENV!=="production"?"__autocomplete_keydown_arrow_down__":4,Za=T.NODE_ENV!=="production"?"__autocomplete_keydown_escape__":5,Xa=T.NODE_ENV!=="production"?"__autocomplete_keydown_enter__":6,Ja=T.NODE_ENV!=="production"?"__autocomplete_keydown_home__":7,Qa=T.NODE_ENV!=="production"?"__autocomplete_keydown_end__":8,es=T.NODE_ENV!=="production"?"__autocomplete_click_item__":9,ts=T.NODE_ENV!=="production"?"__autocomplete_blur_input__":10,rs=T.NODE_ENV!=="production"?"__autocomplete_change_input__":11,os=T.NODE_ENV!=="production"?"__autocomplete_keydown_space_button__":12,ko=T.NODE_ENV!=="production"?"__autocomplete_click_button__":13,ns=T.NODE_ENV!=="production"?"__autocomplete_blur_button__":14,is=T.NODE_ENV!=="production"?"__autocomplete_controlled_prop_updated_selected_item__":15,as=T.NODE_ENV!=="production"?"__autocomplete_touchend__":16,np=Object.freeze({__proto__:null,blurButton:ns,blurInput:ts,changeInput:rs,clickButton:ko,clickItem:es,controlledPropUpdatedSelectedItem:is,itemMouseEnter:Ya,keyDownArrowDown:Or,keyDownArrowUp:Sr,keyDownEnd:Qa,keyDownEnter:Xa,keyDownEscape:Za,keyDownHome:Ja,keyDownSpaceButton:os,mouseUp:Ua,touchEnd:as,unknown:Ga}),ip=["refKey","ref"],ap=["onClick","onPress","onKeyDown","onKeyUp","onBlur"],sp=["onKeyDown","onBlur","onChange","onInput","onChangeText"],lp=["refKey","ref"],cp=["onMouseMove","onMouseDown","onClick","onPress","index","item"],dp=(function(){var e=(function(r){function t(n){var i;i=r.call(this,n)||this,i.id=i.props.id||"downshift-"+Fa(),i.menuId=i.props.menuId||i.id+"-menu",i.labelId=i.props.labelId||i.id+"-label",i.inputId=i.props.inputId||i.id+"-input",i.getItemId=i.props.getItemId||function(v){return i.id+"-item-"+v},i.items=[],i.itemCount=null,i.previousResultCount=0,i.timeoutIds=[],i.internalSetTimeout=function(v,x){var w=setTimeout(function(){i.timeoutIds=i.timeoutIds.filter(function(m){return m!==w}),v()},x);i.timeoutIds.push(w)},i.setItemCount=function(v){i.itemCount=v},i.unsetItemCount=function(){i.itemCount=null},i.isItemDisabled=function(v,x){var w=i.getItemNodeFromIndex(x);return w&&w.hasAttribute("disabled")},i.setHighlightedIndex=function(v,x){v===void 0&&(v=i.props.defaultHighlightedIndex),x===void 0&&(x={}),x=wr(x),i.internalSetState(oe({highlightedIndex:v},x))},i.clearSelection=function(v){i.internalSetState({selectedItem:null,inputValue:"",highlightedIndex:i.props.defaultHighlightedIndex,isOpen:i.props.defaultIsOpen},v)},i.selectItem=function(v,x,w){x=wr(x),i.internalSetState(oe({isOpen:i.props.defaultIsOpen,highlightedIndex:i.props.defaultHighlightedIndex,selectedItem:v,inputValue:i.props.itemToString(v)},x),w)},i.selectItemAtIndex=function(v,x,w){var m=i.items[v];m!=null&&i.selectItem(m,x,w)},i.selectHighlightedItem=function(v,x){return i.selectItemAtIndex(i.getState().highlightedIndex,v,x)},i.internalSetState=function(v,x){var w,m,_={},j=typeof v=="function";return!j&&v.hasOwnProperty("inputValue")&&i.props.onInputValueChange(v.inputValue,oe({},i.getStateAndHelpers(),v)),i.setState(function(k){var D;k=i.getState(k);var F=j?v(k):v;F=i.props.stateReducer(k,F),w=F.hasOwnProperty("selectedItem");var L={};return w&&F.selectedItem!==k.selectedItem&&(m=F.selectedItem),(D=F).type||(D.type=Ga),Object.keys(F).forEach(function(U){k[U]!==F[U]&&(_[U]=F[U]),U!=="type"&&(F[U],Pr(i.props,U)||(L[U]=F[U]))}),j&&F.hasOwnProperty("inputValue")&&i.props.onInputValueChange(F.inputValue,oe({},i.getStateAndHelpers(),F)),L},function(){Ti(x)();var k=Object.keys(_).length>1;k&&i.props.onStateChange(_,i.getStateAndHelpers()),w&&i.props.onSelect(v.selectedItem,i.getStateAndHelpers()),m!==void 0&&i.props.onChange(m,i.getStateAndHelpers()),i.props.onUserAction(_,i.getStateAndHelpers())})},i.rootRef=function(v){return i._rootNode=v},i.getRootProps=function(v,x){var w,m=v===void 0?{}:v,_=m.refKey,j=_===void 0?"ref":_,k=m.ref,D=Re(m,ip),F=x===void 0?{}:x,L=F.suppressRefError,U=L===void 0?!1:L;i.getRootProps.called=!0,i.getRootProps.refKey=j,i.getRootProps.suppressRefError=U;var te=i.getState(),K=te.isOpen;return oe((w={},w[j]=Ze(k,i.rootRef),w.role="combobox",w["aria-expanded"]=K,w["aria-haspopup"]="listbox",w["aria-owns"]=K?i.menuId:void 0,w["aria-labelledby"]=i.labelId,w),D)},i.keyDownHandlers={ArrowDown:function(v){var x=this;if(v.preventDefault(),this.getState().isOpen){var w=v.shiftKey?5:1;this.moveHighlightedIndex(w,{type:Or})}else this.internalSetState({isOpen:!0,type:Or},function(){var m=x.getItemCount();if(m>0){var _=x.getState(),j=_.highlightedIndex,k=Xe(j,1,{length:m},x.isItemDisabled,!0);x.setHighlightedIndex(k,{type:Or})}})},ArrowUp:function(v){var x=this;if(v.preventDefault(),this.getState().isOpen){var w=v.shiftKey?-5:-1;this.moveHighlightedIndex(w,{type:Sr})}else this.internalSetState({isOpen:!0,type:Sr},function(){var m=x.getItemCount();if(m>0){var _=x.getState(),j=_.highlightedIndex,k=Xe(j,-1,{length:m},x.isItemDisabled,!0);x.setHighlightedIndex(k,{type:Sr})}})},Enter:function(v){if(v.which!==229){var x=this.getState(),w=x.isOpen,m=x.highlightedIndex;if(w&&m!=null){v.preventDefault();var _=this.items[m],j=this.getItemNodeFromIndex(m);if(_==null||j&&j.hasAttribute("disabled"))return;this.selectHighlightedItem({type:Xa})}}},Escape:function(v){v.preventDefault(),this.reset(oe({type:Za},!this.state.isOpen&&{selectedItem:null,inputValue:""}))}},i.buttonKeyDownHandlers=oe({},i.keyDownHandlers,{" ":function(v){v.preventDefault(),this.toggleMenu({type:os})}}),i.inputKeyDownHandlers=oe({},i.keyDownHandlers,{Home:function(v){var x=this.getState(),w=x.isOpen;if(w){v.preventDefault();var m=this.getItemCount();if(!(m<=0||!w)){var _=gt(0,!1,{length:m},this.isItemDisabled);this.setHighlightedIndex(_,{type:Ja})}}},End:function(v){var x=this.getState(),w=x.isOpen;if(w){v.preventDefault();var m=this.getItemCount();if(!(m<=0||!w)){var _=gt(m-1,!0,{length:m},this.isItemDisabled);this.setHighlightedIndex(_,{type:Qa})}}}}),i.getToggleButtonProps=function(v){var x=v===void 0?{}:v,w=x.onClick;x.onPress;var m=x.onKeyDown,_=x.onKeyUp,j=x.onBlur,k=Re(x,ap),D=i.getState(),F=D.isOpen,L={onClick:ge(w,i.buttonHandleClick),onKeyDown:ge(m,i.buttonHandleKeyDown),onKeyUp:ge(_,i.buttonHandleKeyUp),onBlur:ge(j,i.buttonHandleBlur)},U=k.disabled?{}:L;return oe({type:"button",role:"button","aria-label":F?"close menu":"open menu","aria-haspopup":!0,"data-toggle":!0},U,k)},i.buttonHandleKeyUp=function(v){v.preventDefault()},i.buttonHandleKeyDown=function(v){var x=Rt(v);i.buttonKeyDownHandlers[x]&&i.buttonKeyDownHandlers[x].call(i,v)},i.buttonHandleClick=function(v){if(v.preventDefault(),i.props.environment){var x=i.props.environment.document,w=x.body,m=x.activeElement;w&&w===m&&v.target.focus()}T.NODE_ENV==="test"?i.toggleMenu({type:ko}):i.internalSetTimeout(function(){return i.toggleMenu({type:ko})})},i.buttonHandleBlur=function(v){var x=v.target;i.internalSetTimeout(function(){if(!(i.isMouseDown||!i.props.environment)){var w=i.props.environment.document.activeElement;(w==null||w.id!==i.inputId)&&w!==x&&i.reset({type:ns})}})},i.getLabelProps=function(v){return oe({htmlFor:i.inputId,id:i.labelId},v)},i.getInputProps=function(v){var x=v===void 0?{}:v,w=x.onKeyDown,m=x.onBlur,_=x.onChange,j=x.onInput;x.onChangeText;var k=Re(x,sp),D,F={};D="onChange";var L=i.getState(),U=L.inputValue,te=L.isOpen,K=L.highlightedIndex;if(!k.disabled){var ae;F=(ae={},ae[D]=ge(_,j,i.inputHandleChange),ae.onKeyDown=ge(w,i.inputHandleKeyDown),ae.onBlur=ge(m,i.inputHandleBlur),ae)}return oe({"aria-autocomplete":"list","aria-activedescendant":te&&typeof K=="number"&&K>=0?i.getItemId(K):void 0,"aria-controls":te?i.menuId:void 0,"aria-labelledby":k&&k["aria-label"]?void 0:i.labelId,autoComplete:"off",value:U,id:i.inputId},F,k)},i.inputHandleKeyDown=function(v){var x=Rt(v);x&&i.inputKeyDownHandlers[x]&&i.inputKeyDownHandlers[x].call(i,v)},i.inputHandleChange=function(v){i.internalSetState({type:rs,isOpen:!0,inputValue:v.target.value,highlightedIndex:i.props.defaultHighlightedIndex})},i.inputHandleBlur=function(){i.internalSetTimeout(function(){var v;if(!(i.isMouseDown||!i.props.environment)){var x=i.props.environment.document.activeElement,w=(x==null||(v=x.dataset)==null?void 0:v.toggle)&&i._rootNode&&i._rootNode.contains(x);w||i.reset({type:ts})}})},i.menuRef=function(v){i._menuNode=v},i.getMenuProps=function(v,x){var w,m=v===void 0?{}:v,_=m.refKey,j=_===void 0?"ref":_,k=m.ref,D=Re(m,lp),F=x===void 0?{}:x,L=F.suppressRefError,U=L===void 0?!1:L;return i.getMenuProps.called=!0,i.getMenuProps.refKey=j,i.getMenuProps.suppressRefError=U,oe((w={},w[j]=Ze(k,i.menuRef),w.role="listbox",w["aria-labelledby"]=D&&D["aria-label"]?void 0:i.labelId,w.id=i.menuId,w),D)},i.getItemProps=function(v){var x,w=v===void 0?{}:v,m=w.onMouseMove,_=w.onMouseDown,j=w.onClick;w.onPress;var k=w.index,D=w.item,F=D===void 0?T.NODE_ENV==="production"?void 0:Qu("getItemProps","item"):D,L=Re(w,cp);k===void 0?(i.items.push(F),k=i.items.indexOf(F)):i.items[k]=F;var U="onClick",te=j,K=(x={onMouseMove:ge(m,function(){k!==i.getState().highlightedIndex&&(i.setHighlightedIndex(k,{type:Ya}),i.avoidScrolling=!0,i.internalSetTimeout(function(){return i.avoidScrolling=!1},250))}),onMouseDown:ge(_,function(Y){Y.preventDefault()})},x[U]=ge(te,function(){i.selectItemAtIndex(k,{type:es})}),x),ae=L.disabled?{onMouseDown:K.onMouseDown}:K;return oe({id:i.getItemId(k),role:"option","aria-selected":i.getState().highlightedIndex===k},ae,L)},i.clearItems=function(){i.items=[]},i.reset=function(v,x){v===void 0&&(v={}),v=wr(v),i.internalSetState(function(w){var m=w.selectedItem;return oe({isOpen:i.props.defaultIsOpen,highlightedIndex:i.props.defaultHighlightedIndex,inputValue:i.props.itemToString(m)},v)},x)},i.toggleMenu=function(v,x){v===void 0&&(v={}),v=wr(v),i.internalSetState(function(w){var m=w.isOpen;return oe({isOpen:!m},m&&{highlightedIndex:i.props.defaultHighlightedIndex},v)},function(){var w=i.getState(),m=w.isOpen,_=w.highlightedIndex;m&&i.getItemCount()>0&&typeof _=="number"&&i.setHighlightedIndex(_,v),Ti(x)()})},i.openMenu=function(v){i.internalSetState({isOpen:!0},v)},i.closeMenu=function(v){i.internalSetState({isOpen:!1},v)},i.updateStatus=qr(function(){var v;if((v=i.props)!=null&&(v=v.environment)!=null&&v.document){var x=i.getState(),w=i.items[x.highlightedIndex],m=i.getItemCount(),_=i.props.getA11yStatusMessage(oe({itemToString:i.props.itemToString,previousResultCount:i.previousResultCount,resultCount:m,highlightedItem:w},x));i.previousResultCount=m,Ka(_,i.props.environment.document)}},200);var a=i.props,s=a.defaultHighlightedIndex,l=a.initialHighlightedIndex,c=l===void 0?s:l,u=a.defaultIsOpen,h=a.initialIsOpen,g=h===void 0?u:h,I=a.initialInputValue,E=I===void 0?"":I,y=a.initialSelectedItem,b=y===void 0?null:y,N=i.getState({highlightedIndex:c,isOpen:g,inputValue:E,selectedItem:b});return N.selectedItem!=null&&i.props.initialInputValue===void 0&&(N.inputValue=i.props.itemToString(N.selectedItem)),i.state=N,i}Au(t,r);var o=t.prototype;return o.internalClearTimeouts=function(){this.timeoutIds.forEach(function(n){clearTimeout(n)}),this.timeoutIds=[]},o.getState=function(n){return n===void 0&&(n=this.state),tr(n,this.props)},o.getItemCount=function(){var n=this.items.length;return this.itemCount!=null?n=this.itemCount:this.props.itemCount!==void 0&&(n=this.props.itemCount),n},o.getItemNodeFromIndex=function(n){return this.props.environment?this.props.environment.document.getElementById(this.getItemId(n)):null},o.scrollHighlightedItemIntoView=function(){{var n=this.getItemNodeFromIndex(this.getState().highlightedIndex);this.props.scrollIntoView(n,this._menuNode)}},o.moveHighlightedIndex=function(n,i){var a=this.getItemCount(),s=this.getState(),l=s.highlightedIndex;if(a>0){var c=Xe(l,n,{length:a},this.isItemDisabled,!0);this.setHighlightedIndex(c,i)}},o.getStateAndHelpers=function(){var n=this.getState(),i=n.highlightedIndex,a=n.inputValue,s=n.selectedItem,l=n.isOpen,c=this.props.itemToString,u=this.id,h=this.getRootProps,g=this.getToggleButtonProps,I=this.getLabelProps,E=this.getMenuProps,y=this.getInputProps,b=this.getItemProps,N=this.openMenu,v=this.closeMenu,x=this.toggleMenu,w=this.selectItem,m=this.selectItemAtIndex,_=this.selectHighlightedItem,j=this.setHighlightedIndex,k=this.clearSelection,D=this.clearItems,F=this.reset,L=this.setItemCount,U=this.unsetItemCount,te=this.internalSetState;return{getRootProps:h,getToggleButtonProps:g,getLabelProps:I,getMenuProps:E,getInputProps:y,getItemProps:b,reset:F,openMenu:N,closeMenu:v,toggleMenu:x,selectItem:w,selectItemAtIndex:m,selectHighlightedItem:_,setHighlightedIndex:j,clearSelection:k,clearItems:D,setItemCount:L,unsetItemCount:U,setState:te,itemToString:c,id:u,highlightedIndex:i,inputValue:a,isOpen:l,selectedItem:s}},o.componentDidMount=function(){var n=this;if(T.NODE_ENV!=="production"&&this.getMenuProps.called&&!this.getMenuProps.suppressRefError&&Hi(this._menuNode,this.getMenuProps),!this.props.environment)this.cleanup=function(){n.internalClearTimeouts()};else{var i=function(){n.isMouseDown=!0},a=function(h){n.isMouseDown=!1;var g=Ar(h.target,[n._rootNode,n._menuNode],n.props.environment);!g&&n.getState().isOpen&&n.reset({type:Ua},function(){return n.props.onOuterClick(n.getStateAndHelpers())})},s=function(){n.isTouchMove=!1},l=function(){n.isTouchMove=!0},c=function(h){var g=Ar(h.target,[n._rootNode,n._menuNode],n.props.environment,!1);!n.isTouchMove&&!g&&n.getState().isOpen&&n.reset({type:as},function(){return n.props.onOuterClick(n.getStateAndHelpers())})},u=this.props.environment;u.addEventListener("mousedown",i),u.addEventListener("mouseup",a),u.addEventListener("touchstart",s),u.addEventListener("touchmove",l),u.addEventListener("touchend",c),this.cleanup=function(){n.internalClearTimeouts(),n.updateStatus.cancel(),u.removeEventListener("mousedown",i),u.removeEventListener("mouseup",a),u.removeEventListener("touchstart",s),u.removeEventListener("touchmove",l),u.removeEventListener("touchend",c)}}},o.shouldScroll=function(n,i){var a=this.props.highlightedIndex===void 0?this.getState():this.props,s=a.highlightedIndex,l=i.highlightedIndex===void 0?n:i,c=l.highlightedIndex,u=s&&this.getState().isOpen&&!n.isOpen,h=s!==c;return u||h},o.componentDidUpdate=function(n,i){T.NODE_ENV!=="production"&&(To(this.state,n,this.props),this.getMenuProps.called&&!this.getMenuProps.suppressRefError&&Hi(this._menuNode,this.getMenuProps)),Pr(this.props,"selectedItem")&&this.props.selectedItemChanged(n.selectedItem,this.props.selectedItem)&&this.internalSetState({type:is,inputValue:this.props.itemToString(this.props.selectedItem)}),!this.avoidScrolling&&this.shouldScroll(i,n)&&this.scrollHighlightedItemIntoView(),this.updateStatus()},o.componentWillUnmount=function(){this.cleanup()},o.render=function(){var n=Ai(this.props.children,je);this.clearItems(),this.getRootProps.called=!1,this.getRootProps.refKey=void 0,this.getRootProps.suppressRefError=void 0,this.getMenuProps.called=!1,this.getMenuProps.refKey=void 0,this.getMenuProps.suppressRefError=void 0,this.getLabelProps.called=!1,this.getInputProps.called=!1;var i=Ai(n(this.getStateAndHelpers()));if(!i)return null;if(this.getRootProps.called||this.props.suppressRefError)return T.NODE_ENV!=="production"&&!this.getRootProps.suppressRefError&&!this.props.suppressRefError&&up(i,this.getRootProps),i;if(Wa(i))return p.cloneElement(i,this.getRootProps($a(i)));if(T.NODE_ENV!=="production")throw new Error("downshift: If you return a non-DOM element, you must apply the getRootProps function")},t})(p.Component);return e.defaultProps={defaultHighlightedIndex:null,defaultIsOpen:!1,getA11yStatusMessage:Ju,itemToString:function(r){return r==null?"":(T.NODE_ENV!=="production"&&tp(r)&&!r.hasOwnProperty("toString")&&console.warn("downshift: An object was passed to the default implementation of `itemToString`. You should probably provide your own `itemToString` implementation. Please refer to the `itemToString` API documentation.","The object that was passed:",r),String(r))},onStateChange:je,onInputValueChange:je,onUserAction:je,onChange:je,onSelect:je,onOuterClick:je,selectedItemChanged:function(r,t){return r!==t},environment:typeof window>"u"?void 0:window,stateReducer:function(r,t){return t},suppressRefError:!1,scrollIntoView:Ba},e.stateChangeTypes=np,e})();T.NODE_ENV!=="production"&&(dp.propTypes={children:W.func,defaultHighlightedIndex:W.number,defaultIsOpen:W.bool,initialHighlightedIndex:W.number,initialSelectedItem:W.any,initialInputValue:W.string,initialIsOpen:W.bool,getA11yStatusMessage:W.func,itemToString:W.func,onChange:W.func,onSelect:W.func,onStateChange:W.func,onInputValueChange:W.func,onUserAction:W.func,onOuterClick:W.func,selectedItemChanged:W.func,stateReducer:W.func,itemCount:W.number,id:W.string,environment:W.shape({addEventListener:W.func.isRequired,removeEventListener:W.func.isRequired,document:W.shape({createElement:W.func.isRequired,getElementById:W.func.isRequired,activeElement:W.any.isRequired,body:W.any.isRequired}).isRequired,Node:W.func.isRequired}),suppressRefError:W.bool,scrollIntoView:W.func,selectedItem:W.any,isOpen:W.bool,inputValue:W.string,highlightedIndex:W.number,labelId:W.string,inputId:W.string,menuId:W.string,getItemId:W.func});function Hi(e,r){var t=r.refKey;e||console.error('downshift: The ref prop "'+t+'" from getMenuProps was not applied correctly on your menu element.')}function up(e,r){var t=r.refKey,o=t!=="ref",n=!Wa(e);n&&!o&&!Mi.isForwardRef(e)?console.error("downshift: You returned a non-DOM element. You must specify a refKey in getRootProps"):!n&&o&&console.error('downshift: You returned a DOM element. You should not specify a refKey in getRootProps. You specified "'+t+'"'),!Mi.isForwardRef(e)&&!$a(e)[t]&&console.error('downshift: You must apply the ref prop "'+t+'" from getRootProps onto your root element.')}var ss={highlightedIndex:-1,isOpen:!1,selectedItem:null,inputValue:""};function pp(e,r,t){var o=e.props,n=e.type,i={};Object.keys(r).forEach(function(a){hp(a,e,r,t),t[a]!==r[a]&&(i[a]=t[a])}),o.onStateChange&&Object.keys(i).length&&o.onStateChange(oe({type:n},i))}function hp(e,r,t,o){var n=r.props,i=r.type,a="on"+Ao(e)+"Change";n[a]&&o[e]!==void 0&&o[e]!==t[e]&&n[a](oe({type:i},o))}function gp(e,r){return r.changes}var Vi=qr(function(e,r){Ka(e,r)},200),vp=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?p.useLayoutEffect:p.useEffect,ls="useId"in p?function(e){var r=e.id,t=e.labelId,o=e.menuId,n=e.getItemId,i=e.toggleButtonId,a=e.inputId,s="downshift-"+p.useId();r||(r=s);var l=p.useMemo(function(){return{labelId:t||r+"-label",menuId:o||r+"-menu",getItemId:n||function(c){return r+"-item-"+c},toggleButtonId:i||r+"-toggle-button",inputId:a||r+"-input"}},[n,r,a,t,o,i]);return l}:function(e){var r=e.id,t=r===void 0?"downshift-"+Fa():r,o=e.labelId,n=e.menuId,i=e.getItemId,a=e.toggleButtonId,s=e.inputId,l=p.useMemo(function(){return{labelId:o||t+"-label",menuId:n||t+"-menu",getItemId:i||function(c){return t+"-item-"+c},toggleButtonId:a||t+"-toggle-button",inputId:s||t+"-input"}},[i,t,s,o,n,a]);return l};function Po(e,r,t,o){var n,i;if(e===void 0){if(r===void 0)throw new Error(o);n=t[r],i=r}else i=r===void 0?t.indexOf(e):r,n=e;return[n,i]}function fp(e){return/^\S{1}$/.test(e)}function Ao(e){return""+e.slice(0,1).toUpperCase()+e.slice(1)}function Kr(e){var r=p.useRef(e);return r.current=e,r}function cs(e,r,t,o){var n=p.useRef(),i=p.useRef(),a=p.useCallback(function(I,E){i.current=E,I=tr(I,E.props);var y=e(I,E),b=E.props.stateReducer(I,oe({},E,{changes:y}));return b},[e]),s=p.useReducer(a,r,t),l=s[0],c=s[1],u=Kr(r),h=p.useCallback(function(I){return c(oe({props:u.current},I))},[u]),g=i.current;return p.useEffect(function(){var I=tr(n.current,g==null?void 0:g.props),E=g&&n.current&&!o(I,l);E&&pp(g,I,l),n.current=l},[l,g,o]),[l,h]}function ds(e,r,t,o){var n=cs(e,r,t,o),i=n[0],a=n[1];return[tr(i,r),a]}var Zt={itemToString:function(e){return e?String(e):""},itemToKey:function(e){return e},stateReducer:gp,scrollIntoView:Ba,environment:typeof window>"u"?void 0:window};function ot(e,r,t){t===void 0&&(t=ss);var o=e["default"+Ao(r)];return o!==void 0?o:t[r]}function mt(e,r,t){t===void 0&&(t=ss);var o=e[r];if(o!==void 0)return o;var n=e["initial"+Ao(r)];return n!==void 0?n:ot(e,r,t)}function us(e){var r=mt(e,"selectedItem"),t=mt(e,"isOpen"),o=mp(e),n=mt(e,"inputValue");return{highlightedIndex:o<0&&r&&t?e.items.findIndex(function(i){return e.itemToKey(i)===e.itemToKey(r)}):o,isOpen:t,selectedItem:r,inputValue:n}}function bt(e,r,t){var o=e.items,n=e.initialHighlightedIndex,i=e.defaultHighlightedIndex,a=e.isItemDisabled,s=e.itemToKey,l=r.selectedItem,c=r.highlightedIndex;return o.length===0?-1:n!==void 0&&c===n&&!a(o[n],n)?n:i!==void 0&&!a(o[i],i)?i:l?o.findIndex(function(u){return s(l)===s(u)}):t<0&&!a(o[o.length-1],o.length-1)?o.length-1:t>0&&!a(o[0],0)?0:-1}function ps(e,r,t){var o=p.useRef({isMouseDown:!1,isTouchMove:!1,isTouchEnd:!1}),n=p.useCallback(function(){return t.map(function(i){return i.current})},[t]);return p.useEffect(function(){if(!e)return je;function i(){o.current.isTouchEnd=!1,o.current.isMouseDown=!0}function a(u){o.current.isMouseDown=!1,Ar(u.target,n(),e)||r()}function s(){o.current.isTouchEnd=!1,o.current.isTouchMove=!1}function l(){o.current.isTouchMove=!0}function c(u){o.current.isTouchEnd=!0,!o.current.isTouchMove&&!Ar(u.target,n(),e,!1)&&r()}return e.addEventListener("mousedown",i),e.addEventListener("mouseup",a),e.addEventListener("touchstart",s),e.addEventListener("touchmove",l),e.addEventListener("touchend",c),function(){e.removeEventListener("mousedown",i),e.removeEventListener("mouseup",a),e.removeEventListener("touchstart",s),e.removeEventListener("touchmove",l),e.removeEventListener("touchend",c)}},[e,n,r]),o.current}var Gr=function(){return je};T.NODE_ENV!=="production"&&(Gr=function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];var o=p.useRef(r.reduce(function(i,a){return i[a]={},i},{}));p.useEffect(function(){Object.keys(o.current).forEach(function(i){var a=o.current[i];if(!Object.keys(a).length){console.error("downshift: You forgot to call the "+i+" getter function on your component / element.");return}var s=a.suppressRefError,l=a.refKey,c=a.elementRef;s||c!=null&&c.current||console.error('downshift: The ref prop "'+l+'" from '+i+" was not applied correctly on your element.")})},[]);var n=p.useCallback(function(i,a,s,l){o.current[i]={suppressRefError:a,refKey:s,elementRef:l}},[]);return n});function Ho(e,r,t,o){o===void 0&&(o={});var n=o.document,i=ar();p.useEffect(function(){if(!(!e||i||!n)){var a=e(r);Vi(a,n)}},t),p.useEffect(function(){return function(){Vi.cancel(),op(n)}},[n])}function hs(e){var r=e.highlightedIndex,t=e.isOpen,o=e.itemRefs,n=e.getItemNodeFromIndex,i=e.menuElement,a=e.scrollIntoView,s=p.useRef(!0);return vp(function(){r<0||!t||!Object.keys(o.current).length||(s.current===!1?s.current=!0:a(n(r),i))},[r]),s}var Ur=je;T.NODE_ENV!=="production"&&(Ur=function(e){var r=e.props,t=e.state,o=p.useRef(r),n=ar();p.useEffect(function(){n||(To(t,o.current,r),o.current=r)},[t,r,n])});function Hr(e,r,t){var o;t===void 0&&(t=!0);var n=((o=e.items)==null?void 0:o.length)&&r>=0;return oe({isOpen:!1,highlightedIndex:-1},n&&oe({selectedItem:e.items[r],isOpen:ot(e,"isOpen"),highlightedIndex:ot(e,"highlightedIndex")},t&&{inputValue:e.itemToString(e.items[r])}))}function gs(e,r){return e.isOpen===r.isOpen&&e.inputValue===r.inputValue&&e.highlightedIndex===r.highlightedIndex&&e.selectedItem===r.selectedItem}function ar(){var e=p.useRef(!0);return p.useEffect(function(){return e.current=!1,function(){e.current=!0}},[]),e.current}function Vr(e){var r=ot(e,"highlightedIndex");return r>-1&&e.isItemDisabled(e.items[r],r)?-1:r}function mp(e){var r=mt(e,"highlightedIndex");return r>-1&&e.isItemDisabled(e.items[r],r)?-1:r}var _r={environment:W.shape({addEventListener:W.func.isRequired,removeEventListener:W.func.isRequired,document:W.shape({createElement:W.func.isRequired,getElementById:W.func.isRequired,activeElement:W.any.isRequired,body:W.any.isRequired}).isRequired,Node:W.func.isRequired}),itemToString:W.func,itemToKey:W.func,stateReducer:W.func},vs=oe({},_r,{getA11yStatusMessage:W.func,highlightedIndex:W.number,defaultHighlightedIndex:W.number,initialHighlightedIndex:W.number,isOpen:W.bool,defaultIsOpen:W.bool,initialIsOpen:W.bool,selectedItem:W.any,initialSelectedItem:W.any,defaultSelectedItem:W.any,id:W.string,labelId:W.string,menuId:W.string,getItemId:W.func,toggleButtonId:W.string,onSelectedItemChange:W.func,onHighlightedIndexChange:W.func,onStateChange:W.func,onIsOpenChange:W.func,scrollIntoView:W.func});function fs(e,r,t){var o=r.type,n=r.props,i;switch(o){case t.ItemMouseMove:i={highlightedIndex:r.disabled?-1:r.index};break;case t.MenuMouseLeave:i={highlightedIndex:-1};break;case t.ToggleButtonClick:case t.FunctionToggleMenu:i={isOpen:!e.isOpen,highlightedIndex:e.isOpen?-1:bt(n,e,0)};break;case t.FunctionOpenMenu:i={isOpen:!0,highlightedIndex:bt(n,e,0)};break;case t.FunctionCloseMenu:i={isOpen:!1};break;case t.FunctionSetHighlightedIndex:i={highlightedIndex:n.isItemDisabled(n.items[r.highlightedIndex],r.highlightedIndex)?-1:r.highlightedIndex};break;case t.FunctionSetInputValue:i={inputValue:r.inputValue};break;case t.FunctionReset:i={highlightedIndex:Vr(n),isOpen:ot(n,"isOpen"),selectedItem:ot(n,"selectedItem"),inputValue:ot(n,"inputValue")};break;default:throw new Error("Reducer called without proper action type.")}return oe({},e,i)}function bp(e){for(var r=e.keysSoFar,t=e.highlightedIndex,o=e.items,n=e.itemToString,i=e.isItemDisabled,a=r.toLowerCase(),s=0;s<o.length;s++){var l=(s+t+(r.length<2?1:0))%o.length,c=o[l];if(c!==void 0&&n(c).toLowerCase().startsWith(a)&&!i(c,l))return l}return t}var xp=jt(jt({},vs),{items:W.array.isRequired,isItemDisabled:W.func}),wp=jt(jt({},Zt),{isItemDisabled:function(){return!1}}),ms=je;T.NODE_ENV!=="production"&&(ms=function(e,r){W.checkPropTypes(xp,e,"prop",r.name)});var Nr=T.NODE_ENV!=="production"?"__togglebutton_click__":0,Vo=T.NODE_ENV!=="production"?"__togglebutton_keydown_arrow_down__":1,Lo=T.NODE_ENV!=="production"?"__togglebutton_keydown_arrow_up__":2,Lr=T.NODE_ENV!=="production"?"__togglebutton_keydown_character__":3,Bo=T.NODE_ENV!=="production"?"__togglebutton_keydown_escape__":4,Fo=T.NODE_ENV!=="production"?"__togglebutton_keydown_home__":5,Wo=T.NODE_ENV!=="production"?"__togglebutton_keydown_end__":6,$o=T.NODE_ENV!=="production"?"__togglebutton_keydown_enter__":7,qo=T.NODE_ENV!=="production"?"__togglebutton_keydown_space_button__":8,Ko=T.NODE_ENV!=="production"?"__togglebutton_keydown_page_up__":9,Go=T.NODE_ENV!=="production"?"__togglebutton_keydown_page_down__":10,Br=T.NODE_ENV!=="production"?"__togglebutton_blur__":11,bs=T.NODE_ENV!=="production"?"__menu_mouse_leave__":12,xs=T.NODE_ENV!=="production"?"__item_mouse_move__":13,Uo=T.NODE_ENV!=="production"?"__item_click__":14,ws=T.NODE_ENV!=="production"?"__function_toggle_menu__":15,ys=T.NODE_ENV!=="production"?"__function_open_menu__":16,ks=T.NODE_ENV!=="production"?"__function_close_menu__":17,Is=T.NODE_ENV!=="production"?"__function_set_highlighted_index__":18,Yo=T.NODE_ENV!=="production"?"__function_select_item__":19,Io=T.NODE_ENV!=="production"?"__function_set_input_value__":20,Es=T.NODE_ENV!=="production"?"__function_reset__":21,Ss=Object.freeze({__proto__:null,FunctionCloseMenu:ks,FunctionOpenMenu:ys,FunctionReset:Es,FunctionSelectItem:Yo,FunctionSetHighlightedIndex:Is,FunctionSetInputValue:Io,FunctionToggleMenu:ws,ItemClick:Uo,ItemMouseMove:xs,MenuMouseLeave:bs,ToggleButtonBlur:Br,ToggleButtonClick:Nr,ToggleButtonKeyDownArrowDown:Vo,ToggleButtonKeyDownArrowUp:Lo,ToggleButtonKeyDownCharacter:Lr,ToggleButtonKeyDownEnd:Wo,ToggleButtonKeyDownEnter:$o,ToggleButtonKeyDownEscape:Bo,ToggleButtonKeyDownHome:Fo,ToggleButtonKeyDownPageDown:Go,ToggleButtonKeyDownPageUp:Ko,ToggleButtonKeyDownSpaceButton:qo});function yp(e,r){var t,o=r.type,n=r.props,i=r.altKey,a;switch(o){case Uo:a={isOpen:ot(n,"isOpen"),highlightedIndex:Vr(n),selectedItem:n.items[r.index]};break;case Lr:{var s=r.key,l=""+e.inputValue+s,c=!e.isOpen&&e.selectedItem?n.items.findIndex(function(I){return n.itemToKey(I)===n.itemToKey(e.selectedItem)}):e.highlightedIndex,u=bp({keysSoFar:l,highlightedIndex:c,items:n.items,itemToString:n.itemToString,isItemDisabled:n.isItemDisabled});a={inputValue:l,highlightedIndex:u,isOpen:!0}}break;case Vo:{var h=e.isOpen?Xe(e.highlightedIndex,1,n.items,n.isItemDisabled):i&&e.selectedItem==null?-1:bt(n,e,1);a={highlightedIndex:h,isOpen:!0}}break;case Lo:if(e.isOpen&&i)a=Hr(n,e.highlightedIndex,!1);else{var g=e.isOpen?Xe(e.highlightedIndex,-1,n.items,n.isItemDisabled):bt(n,e,-1);a={highlightedIndex:g,isOpen:!0}}break;case $o:case qo:a=Hr(n,e.highlightedIndex,!1);break;case Fo:a={highlightedIndex:gt(0,!1,n.items,n.isItemDisabled),isOpen:!0};break;case Wo:a={highlightedIndex:gt(n.items.length-1,!0,n.items,n.isItemDisabled),isOpen:!0};break;case Ko:a={highlightedIndex:Xe(e.highlightedIndex,-10,n.items,n.isItemDisabled)};break;case Go:a={highlightedIndex:Xe(e.highlightedIndex,10,n.items,n.isItemDisabled)};break;case Bo:a={isOpen:!1,highlightedIndex:-1};break;case Br:a=oe({isOpen:!1,highlightedIndex:-1},e.highlightedIndex>=0&&((t=n.items)==null?void 0:t.length)&&{selectedItem:n.items[e.highlightedIndex]});break;case Yo:a={selectedItem:r.selectedItem};break;default:return fs(e,r,Ss)}return oe({},e,a)}var kp=["onClick"],Ip=["onMouseLeave","refKey","ref"],Ep=["onBlur","onClick","onPress","onKeyDown","refKey","ref"],Sp=["item","index","onMouseMove","onClick","onMouseDown","onPress","refKey","disabled","ref"];at.stateChangeTypes=Ss;function at(e){e===void 0&&(e={}),ms(e,at);var r=oe({},wp,e),t=r.scrollIntoView,o=r.environment,n=r.getA11yStatusMessage,i=ds(yp,r,us,gs),a=i[0],s=i[1],l=a.isOpen,c=a.highlightedIndex,u=a.selectedItem,h=a.inputValue,g=p.useRef(null),I=p.useRef(null),E=p.useRef({}),y=p.useRef(null),b=ls(r),N=Kr({state:a,props:r}),v=p.useCallback(function(f){return E.current[b.getItemId(f)]},[b]);Ho(n,a,[l,c,u,h],o);var x=hs({menuElement:I.current,highlightedIndex:c,isOpen:l,itemRefs:E,scrollIntoView:t,getItemNodeFromIndex:v});p.useEffect(function(){return y.current=qr(function(f){f({type:Io,inputValue:""})},500),function(){y.current.cancel()}},[]),p.useEffect(function(){h&&y.current(s)},[s,h]),Ur({props:r,state:a}),p.useEffect(function(){var f=mt(r,"isOpen");f&&g.current&&g.current.focus()},[]);var w=p.useCallback(function(){N.current.state.isOpen&&s({type:Br})},[s,N]),m=p.useMemo(function(){return[I,g]},[]),_=ps(o,w,m),j=Gr("getMenuProps","getToggleButtonProps");p.useEffect(function(){l||(E.current={})},[l]);var k=p.useMemo(function(){return{ArrowDown:function(f){f.preventDefault(),s({type:Vo,altKey:f.altKey})},ArrowUp:function(f){f.preventDefault(),s({type:Lo,altKey:f.altKey})},Home:function(f){f.preventDefault(),s({type:Fo})},End:function(f){f.preventDefault(),s({type:Wo})},Escape:function(){N.current.state.isOpen&&s({type:Bo})},Enter:function(f){f.preventDefault(),s({type:N.current.state.isOpen?$o:Nr})},PageUp:function(f){N.current.state.isOpen&&(f.preventDefault(),s({type:Ko}))},PageDown:function(f){N.current.state.isOpen&&(f.preventDefault(),s({type:Go}))}," ":function(f){f.preventDefault();var S=N.current.state;if(!S.isOpen){s({type:Nr});return}S.inputValue?s({type:Lr,key:" "}):s({type:qo})}}},[s,N]),D=p.useCallback(function(){s({type:ws})},[s]),F=p.useCallback(function(){s({type:ks})},[s]),L=p.useCallback(function(){s({type:ys})},[s]),U=p.useCallback(function(f){s({type:Is,highlightedIndex:f})},[s]),te=p.useCallback(function(f){s({type:Yo,selectedItem:f})},[s]),K=p.useCallback(function(){s({type:Es})},[s]),ae=p.useCallback(function(f){s({type:Io,inputValue:f})},[s]),Y=p.useCallback(function(f){var S=f===void 0?{}:f,z=S.onClick,P=Re(S,kp),O=function(){var H;(H=g.current)==null||H.focus()};return oe({id:b.labelId,htmlFor:b.toggleButtonId,onClick:ge(z,O)},P)},[b]),se=p.useCallback(function(f,S){var z,P=f===void 0?{}:f,O=P.onMouseLeave,H=P.refKey,M=H===void 0?"ref":H,C=P.ref,V=Re(P,Ip),Z=S===void 0?{}:S,G=Z.suppressRefError,re=G===void 0?!1:G,A=function(){s({type:bs})};return j("getMenuProps",re,M,I),oe((z={},z[M]=Ze(C,function(ee){I.current=ee}),z.id=b.menuId,z.role="listbox",z["aria-labelledby"]=V&&V["aria-label"]?void 0:""+b.labelId,z.onMouseLeave=ge(O,A),z),V)},[s,j,b]),$=p.useCallback(function(f,S){var z,P=f===void 0?{}:f,O=P.onBlur,H=P.onClick;P.onPress;var M=P.onKeyDown,C=P.refKey,V=C===void 0?"ref":C,Z=P.ref,G=Re(P,Ep),re=S===void 0?{}:S,A=re.suppressRefError,ee=A===void 0?!1:A,q=N.current.state,ue=function(){s({type:Nr})},he=function(){q.isOpen&&!_.isMouseDown&&s({type:Br})},Oe=function(Q){var ne=Rt(Q);ne&&k[ne]?k[ne](Q):fp(ne)&&s({type:Lr,key:ne})},B=oe((z={},z[V]=Ze(Z,function(Q){g.current=Q}),z["aria-activedescendant"]=q.isOpen&&q.highlightedIndex>-1?b.getItemId(q.highlightedIndex):"",z["aria-controls"]=b.menuId,z["aria-expanded"]=N.current.state.isOpen,z["aria-haspopup"]="listbox",z["aria-labelledby"]=G&&G["aria-label"]?void 0:""+b.labelId,z.id=b.toggleButtonId,z.role="combobox",z.tabIndex=0,z.onBlur=ge(O,he),z),G);return G.disabled||(B.onClick=ge(H,ue),B.onKeyDown=ge(M,Oe)),j("getToggleButtonProps",ee,V,g),B},[s,b,N,_,j,k]),de=p.useCallback(function(f){var S,z=f===void 0?{}:f,P=z.item,O=z.index,H=z.onMouseMove,M=z.onClick,C=z.onMouseDown;z.onPress;var V=z.refKey,Z=V===void 0?"ref":V,G=z.disabled,re=z.ref,A=Re(z,Sp);G!==void 0&&console.warn('Passing "disabled" as an argument to getItemProps is not supported anymore. Please use the isItemDisabled prop from useSelect.');var ee=N.current,q=ee.state,ue=ee.props,he=Po(P,O,ue.items,"Pass either item or index to getItemProps!"),Oe=he[0],B=he[1],Q=ue.isItemDisabled(Oe,B),ne=function(){_.isTouchEnd||B===q.highlightedIndex||(x.current=!1,s({type:xs,index:B,disabled:Q}))},pe=function(){s({type:Uo,index:B})},xe=function(Me){return Me.preventDefault()},we=oe((S={},S[Z]=Ze(re,function(Me){Me&&(E.current[b.getItemId(B)]=Me)}),S["aria-disabled"]=Q,S["aria-selected"]=Oe===q.selectedItem,S.id=b.getItemId(B),S.role="option",S),A);return Q||(we.onClick=ge(M,pe)),we.onMouseMove=ge(H,ne),we.onMouseDown=ge(C,xe),we},[N,b,_,x,s]);return{getToggleButtonProps:$,getLabelProps:Y,getMenuProps:se,getItemProps:de,toggleMenu:D,openMenu:L,closeMenu:F,setHighlightedIndex:U,selectItem:te,reset:K,setInputValue:ae,highlightedIndex:c,isOpen:l,selectedItem:u,inputValue:h}}var Zo=T.NODE_ENV!=="production"?"__input_keydown_arrow_down__":0,Xo=T.NODE_ENV!=="production"?"__input_keydown_arrow_up__":1,Jo=T.NODE_ENV!=="production"?"__input_keydown_escape__":2,Qo=T.NODE_ENV!=="production"?"__input_keydown_home__":3,en=T.NODE_ENV!=="production"?"__input_keydown_end__":4,tn=T.NODE_ENV!=="production"?"__input_keydown_page_up__":5,rn=T.NODE_ENV!=="production"?"__input_keydown_page_down__":6,on=T.NODE_ENV!=="production"?"__input_keydown_enter__":7,nn=T.NODE_ENV!=="production"?"__input_change__":8,Fr=T.NODE_ENV!=="production"?"__input_blur__":9,an=T.NODE_ENV!=="production"?"__input_click__":10,Os=T.NODE_ENV!=="production"?"__menu_mouse_leave__":11,_s=T.NODE_ENV!=="production"?"__item_mouse_move__":12,sn=T.NODE_ENV!=="production"?"__item_click__":13,Ns=T.NODE_ENV!=="production"?"__togglebutton_click__":14,Cs=T.NODE_ENV!=="production"?"__function_toggle_menu__":15,Ds=T.NODE_ENV!=="production"?"__function_open_menu__":16,zs=T.NODE_ENV!=="production"?"__function_close_menu__":17,Ms=T.NODE_ENV!=="production"?"__function_set_highlighted_index__":18,ln=T.NODE_ENV!=="production"?"__function_select_item__":19,js=T.NODE_ENV!=="production"?"__function_set_input_value__":20,Rs=T.NODE_ENV!=="production"?"__function_reset__":21,cn=T.NODE_ENV!=="production"?"__controlled_prop_updated_selected_item__":22,Ts=Object.freeze({__proto__:null,ControlledPropUpdatedSelectedItem:cn,FunctionCloseMenu:zs,FunctionOpenMenu:Ds,FunctionReset:Rs,FunctionSelectItem:ln,FunctionSetHighlightedIndex:Ms,FunctionSetInputValue:js,FunctionToggleMenu:Cs,InputBlur:Fr,InputChange:nn,InputClick:an,InputKeyDownArrowDown:Zo,InputKeyDownArrowUp:Xo,InputKeyDownEnd:en,InputKeyDownEnter:on,InputKeyDownEscape:Jo,InputKeyDownHome:Qo,InputKeyDownPageDown:rn,InputKeyDownPageUp:tn,ItemClick:sn,ItemMouseMove:_s,MenuMouseLeave:Os,ToggleButtonClick:Ns});function Op(e){var r=us(e),t=r.selectedItem,o=r.inputValue;return o===""&&t&&e.defaultInputValue===void 0&&e.initialInputValue===void 0&&e.inputValue===void 0&&(o=e.itemToString(t)),oe({},r,{inputValue:o})}var _p=oe({},vs,{items:W.array.isRequired,isItemDisabled:W.func,inputValue:W.string,defaultInputValue:W.string,initialInputValue:W.string,inputId:W.string,onInputValueChange:W.func});function Np(e,r,t,o){var n=p.useRef(),i=cs(e,r,t,o),a=i[0],s=i[1],l=ar();return p.useEffect(function(){if(Pr(r,"selectedItem")){if(!l){var c=r.itemToKey(r.selectedItem)!==r.itemToKey(n.current);c&&s({type:cn,inputValue:r.itemToString(r.selectedItem)})}n.current=a.selectedItem===n.current?r.selectedItem:a.selectedItem}},[a.selectedItem,r.selectedItem]),[tr(a,r),s]}var Ps=je;T.NODE_ENV!=="production"&&(Ps=function(e,r){W.checkPropTypes(_p,e,"prop",r.name)});var Cp=oe({},Zt,{isItemDisabled:function(){return!1}});function Dp(e,r){var t,o=r.type,n=r.props,i=r.altKey,a;switch(o){case sn:a={isOpen:ot(n,"isOpen"),highlightedIndex:Vr(n),selectedItem:n.items[r.index],inputValue:n.itemToString(n.items[r.index])};break;case Zo:e.isOpen?a={highlightedIndex:Xe(e.highlightedIndex,1,n.items,n.isItemDisabled,!0)}:a={highlightedIndex:i&&e.selectedItem==null?-1:bt(n,e,1),isOpen:n.items.length>=0};break;case Xo:e.isOpen?i?a=Hr(n,e.highlightedIndex):a={highlightedIndex:Xe(e.highlightedIndex,-1,n.items,n.isItemDisabled,!0)}:a={highlightedIndex:bt(n,e,-1),isOpen:n.items.length>=0};break;case on:a=Hr(n,e.highlightedIndex);break;case Jo:a=oe({isOpen:!1,highlightedIndex:-1},!e.isOpen&&{selectedItem:null,inputValue:""});break;case tn:a={highlightedIndex:Xe(e.highlightedIndex,-10,n.items,n.isItemDisabled,!0)};break;case rn:a={highlightedIndex:Xe(e.highlightedIndex,10,n.items,n.isItemDisabled,!0)};break;case Qo:a={highlightedIndex:gt(0,!1,n.items,n.isItemDisabled)};break;case en:a={highlightedIndex:gt(n.items.length-1,!0,n.items,n.isItemDisabled)};break;case Fr:a=oe({isOpen:!1,highlightedIndex:-1},e.highlightedIndex>=0&&((t=n.items)==null?void 0:t.length)&&r.selectItem&&{selectedItem:n.items[e.highlightedIndex],inputValue:n.itemToString(n.items[e.highlightedIndex])});break;case nn:a={isOpen:!0,highlightedIndex:Vr(n),inputValue:r.inputValue};break;case an:a={isOpen:!e.isOpen,highlightedIndex:e.isOpen?-1:bt(n,e,0)};break;case ln:a={selectedItem:r.selectedItem,inputValue:n.itemToString(r.selectedItem)};break;case cn:a={inputValue:r.inputValue};break;default:return fs(e,r,Ts)}return oe({},e,a)}var zp=["onMouseLeave","refKey","ref"],Mp=["item","index","refKey","ref","onMouseMove","onMouseDown","onClick","onPress","disabled"],jp=["onClick","onPress","refKey","ref"],Rp=["onKeyDown","onChange","onInput","onBlur","onChangeText","onClick","refKey","ref"];He.stateChangeTypes=Ts;function He(e){e===void 0&&(e={}),Ps(e,He);var r=oe({},Cp,e),t=r.items,o=r.scrollIntoView,n=r.environment,i=r.getA11yStatusMessage,a=Np(Dp,r,Op,gs),s=a[0],l=a[1],c=s.isOpen,u=s.highlightedIndex,h=s.selectedItem,g=s.inputValue,I=p.useRef(null),E=p.useRef({}),y=p.useRef(null),b=p.useRef(null),N=ar(),v=ls(r),x=p.useRef(),w=Kr({state:s,props:r}),m=p.useCallback(function(O){return E.current[v.getItemId(O)]},[v]);Ho(i,s,[c,u,h,g],n);var _=hs({menuElement:I.current,highlightedIndex:u,isOpen:c,itemRefs:E,scrollIntoView:o,getItemNodeFromIndex:m});Ur({props:r,state:s}),p.useEffect(function(){var O=mt(r,"isOpen");O&&y.current&&y.current.focus()},[]),p.useEffect(function(){N||(x.current=t.length)});var j=p.useCallback(function(){w.current.state.isOpen&&l({type:Fr})},[l,w]),k=p.useMemo(function(){return[I,b,y]},[]),D=ps(n,j,k),F=Gr("getInputProps","getMenuProps");p.useEffect(function(){c||(E.current={})},[c]),p.useEffect(function(){var O;!c||!(n!=null&&n.document)||!(y!=null&&(O=y.current)!=null&&O.focus)||n.document.activeElement!==y.current&&y.current.focus()},[c,n]);var L=p.useMemo(function(){return{ArrowDown:function(O){O.preventDefault(),l({type:Zo,altKey:O.altKey})},ArrowUp:function(O){O.preventDefault(),l({type:Xo,altKey:O.altKey})},Home:function(O){w.current.state.isOpen&&(O.preventDefault(),l({type:Qo}))},End:function(O){w.current.state.isOpen&&(O.preventDefault(),l({type:en}))},Escape:function(O){var H=w.current.state;(H.isOpen||H.inputValue||H.selectedItem||H.highlightedIndex>-1)&&(O.preventDefault(),l({type:Jo}))},Enter:function(O){var H=w.current.state;!H.isOpen||O.which===229||(O.preventDefault(),l({type:on}))},PageUp:function(O){w.current.state.isOpen&&(O.preventDefault(),l({type:tn}))},PageDown:function(O){w.current.state.isOpen&&(O.preventDefault(),l({type:rn}))}}},[l,w]),U=p.useCallback(function(O){return oe({id:v.labelId,htmlFor:v.inputId},O)},[v]),te=p.useCallback(function(O,H){var M,C=O===void 0?{}:O,V=C.onMouseLeave,Z=C.refKey,G=Z===void 0?"ref":Z,re=C.ref,A=Re(C,zp),ee=H===void 0?{}:H,q=ee.suppressRefError,ue=q===void 0?!1:q;return F("getMenuProps",ue,G,I),oe((M={},M[G]=Ze(re,function(he){I.current=he}),M.id=v.menuId,M.role="listbox",M["aria-labelledby"]=A&&A["aria-label"]?void 0:""+v.labelId,M.onMouseLeave=ge(V,function(){l({type:Os})}),M),A)},[l,F,v]),K=p.useCallback(function(O){var H,M,C=O===void 0?{}:O,V=C.item,Z=C.index,G=C.refKey,re=G===void 0?"ref":G,A=C.ref,ee=C.onMouseMove,q=C.onMouseDown,ue=C.onClick;C.onPress;var he=C.disabled,Oe=Re(C,Mp);he!==void 0&&console.warn('Passing "disabled" as an argument to getItemProps is not supported anymore. Please use the isItemDisabled prop from useCombobox.');var B=w.current,Q=B.props,ne=B.state,pe=Po(V,Z,Q.items,"Pass either item or index to getItemProps!"),xe=pe[0],we=pe[1],Me=Q.isItemDisabled(xe,we),De="onClick",Ee=ue,ke=function(){D.isTouchEnd||we===ne.highlightedIndex||(_.current=!1,l({type:_s,index:we,disabled:Me}))},Pe=function(){l({type:sn,index:we})},Fe=function(Je){return Je.preventDefault()};return oe((H={},H[re]=Ze(A,function(Je){Je&&(E.current[v.getItemId(we)]=Je)}),H["aria-disabled"]=Me,H["aria-selected"]=we===ne.highlightedIndex,H.id=v.getItemId(we),H.role="option",H),!Me&&(M={},M[De]=ge(Ee,Pe),M),{onMouseMove:ge(ee,ke),onMouseDown:ge(q,Fe)},Oe)},[l,v,w,D,_]),ae=p.useCallback(function(O){var H,M=O===void 0?{}:O,C=M.onClick;M.onPress;var V=M.refKey,Z=V===void 0?"ref":V,G=M.ref,re=Re(M,jp),A=w.current.state,ee=function(){l({type:Ns})};return oe((H={},H[Z]=Ze(G,function(q){b.current=q}),H["aria-controls"]=v.menuId,H["aria-expanded"]=A.isOpen,H.id=v.toggleButtonId,H.tabIndex=-1,H),!re.disabled&&oe({},{onClick:ge(C,ee)}),re)},[l,w,v]),Y=p.useCallback(function(O,H){var M,C=O===void 0?{}:O,V=C.onKeyDown,Z=C.onChange,G=C.onInput,re=C.onBlur;C.onChangeText;var A=C.onClick,ee=C.refKey,q=ee===void 0?"ref":ee,ue=C.ref,he=Re(C,Rp),Oe=H===void 0?{}:H,B=Oe.suppressRefError,Q=B===void 0?!1:B;F("getInputProps",Q,q,y);var ne=w.current.state,pe=function(Pe){var Fe=Rt(Pe);Fe&&L[Fe]&&L[Fe](Pe)},xe=function(Pe){l({type:nn,inputValue:Pe.target.value})},we=function(Pe){if(n!=null&&n.document&&ne.isOpen&&!D.isMouseDown){var Fe=Pe.relatedTarget===null&&n.document.activeElement!==n.document.body;l({type:Fr,selectItem:!Fe})}},Me=function(){l({type:an})},De="onChange",Ee={};if(!he.disabled){var ke;Ee=(ke={},ke[De]=ge(Z,G,xe),ke.onKeyDown=ge(V,pe),ke.onBlur=ge(re,we),ke.onClick=ge(A,Me),ke)}return oe((M={},M[q]=Ze(ue,function(Pe){y.current=Pe}),M["aria-activedescendant"]=ne.isOpen&&ne.highlightedIndex>-1?v.getItemId(ne.highlightedIndex):"",M["aria-autocomplete"]="list",M["aria-controls"]=v.menuId,M["aria-expanded"]=ne.isOpen,M["aria-labelledby"]=he&&he["aria-label"]?void 0:v.labelId,M.autoComplete="off",M.id=v.inputId,M.role="combobox",M.value=ne.inputValue,M),Ee,he)},[l,v,n,L,w,D,F]),se=p.useCallback(function(){l({type:Cs})},[l]),$=p.useCallback(function(){l({type:zs})},[l]),de=p.useCallback(function(){l({type:Ds})},[l]),f=p.useCallback(function(O){l({type:Ms,highlightedIndex:O})},[l]),S=p.useCallback(function(O){l({type:ln,selectedItem:O})},[l]),z=p.useCallback(function(O){l({type:js,inputValue:O})},[l]),P=p.useCallback(function(){l({type:Rs})},[l]);return{getItemProps:K,getLabelProps:U,getMenuProps:te,getInputProps:Y,getToggleButtonProps:ae,toggleMenu:se,openMenu:de,closeMenu:$,setHighlightedIndex:f,setInputValue:z,selectItem:S,reset:P,highlightedIndex:u,isOpen:c,selectedItem:h,inputValue:g}}var As={activeIndex:-1,selectedItems:[]};function Li(e,r){return mt(e,r,As)}function Bi(e,r){return ot(e,r,As)}function Tp(e){var r=Li(e,"activeIndex"),t=Li(e,"selectedItems");return{activeIndex:r,selectedItems:t}}function Fi(e){if(e.shiftKey||e.metaKey||e.ctrlKey||e.altKey)return!1;var r=e.target;return!(r instanceof HTMLInputElement&&r.value!==""&&(r.selectionStart!==0||r.selectionEnd!==0))}function Pp(e,r){return e.selectedItems===r.selectedItems&&e.activeIndex===r.activeIndex}var Ap={stateReducer:_r.stateReducer,itemToKey:_r.itemToKey,environment:_r.environment,selectedItems:W.array,initialSelectedItems:W.array,defaultSelectedItems:W.array,getA11yStatusMessage:W.func,activeIndex:W.number,initialActiveIndex:W.number,defaultActiveIndex:W.number,onActiveIndexChange:W.func,onSelectedItemsChange:W.func,keyNavigationNext:W.string,keyNavigationPrevious:W.string},Hp={itemToKey:Zt.itemToKey,stateReducer:Zt.stateReducer,environment:Zt.environment,keyNavigationNext:"ArrowRight",keyNavigationPrevious:"ArrowLeft"},Hs=je;T.NODE_ENV!=="production"&&(Hs=function(e,r){W.checkPropTypes(Ap,e,"prop",r.name)});var dn=T.NODE_ENV!=="production"?"__selected_item_click__":0,un=T.NODE_ENV!=="production"?"__selected_item_keydown_delete__":1,pn=T.NODE_ENV!=="production"?"__selected_item_keydown_backspace__":2,hn=T.NODE_ENV!=="production"?"__selected_item_keydown_navigation_next__":3,gn=T.NODE_ENV!=="production"?"__selected_item_keydown_navigation_previous__":4,vn=T.NODE_ENV!=="production"?"__dropdown_keydown_navigation_previous__":5,fn=T.NODE_ENV!=="production"?"__dropdown_keydown_backspace__":6,mn=T.NODE_ENV!=="production"?"__dropdown_click__":7,bn=T.NODE_ENV!=="production"?"__function_add_selected_item__":8,xn=T.NODE_ENV!=="production"?"__function_remove_selected_item__":9,wn=T.NODE_ENV!=="production"?"__function_set_selected_items__":10,yn=T.NODE_ENV!=="production"?"__function_set_active_index__":11,kn=T.NODE_ENV!=="production"?"__function_reset__":12,Vp=Object.freeze({__proto__:null,DropdownClick:mn,DropdownKeyDownBackspace:fn,DropdownKeyDownNavigationPrevious:vn,FunctionAddSelectedItem:bn,FunctionRemoveSelectedItem:xn,FunctionReset:kn,FunctionSetActiveIndex:yn,FunctionSetSelectedItems:wn,SelectedItemClick:dn,SelectedItemKeyDownBackspace:pn,SelectedItemKeyDownDelete:un,SelectedItemKeyDownNavigationNext:hn,SelectedItemKeyDownNavigationPrevious:gn});function Lp(e,r){var t=r.type,o=r.index,n=r.props,i=r.selectedItem,a=e.activeIndex,s=e.selectedItems,l;switch(t){case dn:l={activeIndex:o};break;case gn:l={activeIndex:a-1<0?0:a-1};break;case hn:l={activeIndex:a+1>=s.length?-1:a+1};break;case pn:case un:{if(a<0)break;var c=a;s.length===1?c=-1:a===s.length-1&&(c=s.length-2),l=oe({selectedItems:[].concat(s.slice(0,a),s.slice(a+1))},{activeIndex:c});break}case vn:l={activeIndex:s.length-1};break;case fn:l={selectedItems:s.slice(0,s.length-1)};break;case bn:l={selectedItems:[].concat(s,[i])};break;case mn:l={activeIndex:-1};break;case xn:{var u=a,h=s.findIndex(function(E){return n.itemToKey(E)===n.itemToKey(i)});if(h<0)break;s.length===1?u=-1:h===s.length-1&&(u=s.length-2),l={selectedItems:[].concat(s.slice(0,h),s.slice(h+1)),activeIndex:u};break}case wn:{var g=r.selectedItems;l={selectedItems:g};break}case yn:{var I=r.activeIndex;l={activeIndex:I};break}case kn:l={activeIndex:Bi(n,"activeIndex"),selectedItems:Bi(n,"selectedItems")};break;default:throw new Error("Reducer called without proper action type.")}return oe({},e,l)}var Bp=["refKey","ref","onClick","onKeyDown","selectedItem","index"],Fp=["refKey","ref","onKeyDown","onClick","preventKeyAction"];In.stateChangeTypes=Vp;function In(e){e===void 0&&(e={}),Hs(e,In);var r=oe({},Hp,e),t=r.getA11yStatusMessage,o=r.environment,n=r.keyNavigationNext,i=r.keyNavigationPrevious,a=ds(Lp,r,Tp,Pp),s=a[0],l=a[1],c=s.activeIndex,u=s.selectedItems,h=ar(),g=p.useRef(null),I=p.useRef();I.current=[];var E=Kr({state:s,props:r});Ho(t,s,[c,u],o),p.useEffect(function(){h||(c===-1&&g.current?g.current.focus():I.current[c]&&I.current[c].focus())},[c]),Ur({props:r,state:s});var y=Gr("getDropdownProps"),b=p.useMemo(function(){var D;return D={},D[i]=function(){l({type:gn})},D[n]=function(){l({type:hn})},D.Delete=function(){l({type:un})},D.Backspace=function(){l({type:pn})},D},[l,n,i]),N=p.useMemo(function(){var D;return D={},D[i]=function(F){Fi(F)&&l({type:vn})},D.Backspace=function(F){Fi(F)&&l({type:fn})},D},[l,i]),v=p.useCallback(function(D){var F,L=D===void 0?{}:D,U=L.refKey,te=U===void 0?"ref":U,K=L.ref,ae=L.onClick,Y=L.onKeyDown,se=L.selectedItem,$=L.index,de=Re(L,Bp),f=E.current.state,S=Po(se,$,f.selectedItems,"Pass either item or index to getSelectedItemProps!"),z=S[1],P=z>-1&&z===f.activeIndex,O=function(){l({type:dn,index:z})},H=function(M){var C=Rt(M);C&&b[C]&&b[C](M)};return oe((F={},F[te]=Ze(K,function(M){M&&I.current.push(M)}),F.tabIndex=P?0:-1,F.onClick=ge(ae,O),F.onKeyDown=ge(Y,H),F),de)},[l,E,b]),x=p.useCallback(function(D,F){var L,U=D===void 0?{}:D,te=U.refKey,K=te===void 0?"ref":te,ae=U.ref,Y=U.onKeyDown,se=U.onClick,$=U.preventKeyAction,de=$===void 0?!1:$,f=Re(U,Fp),S=F===void 0?{}:F,z=S.suppressRefError,P=z===void 0?!1:z;y("getDropdownProps",P,K,g);var O=function(M){var C=Rt(M);C&&N[C]&&N[C](M)},H=function(){l({type:mn})};return oe((L={},L[K]=Ze(ae,function(M){M&&(g.current=M)}),L),!de&&{onKeyDown:ge(Y,O),onClick:ge(se,H)},f)},[l,N,y]),w=p.useCallback(function(D){l({type:bn,selectedItem:D})},[l]),m=p.useCallback(function(D){l({type:xn,selectedItem:D})},[l]),_=p.useCallback(function(D){l({type:wn,selectedItems:D})},[l]),j=p.useCallback(function(D){l({type:yn,activeIndex:D})},[l]),k=p.useCallback(function(){l({type:kn})},[l]);return{getSelectedItemProps:v,getDropdownProps:x,addSelectedItem:w,removeSelectedItem:m,setSelectedItems:_,setActiveIndex:j,reset:k,selectedItems:u,activeIndex:c}}let Wp=0;const $p=()=>{const e=p.useRef(null);return e.current===null&&(e.current=`select-${++Wp}`),e.current},qp=e=>{const{items:r=[],isMulti:t=!1,isSearchable:o=!1,value:n,defaultValue:i,inputValue:a,onChange:s,onInputChange:l,getOptionLabel:c=B=>(B==null?void 0:B.label)||"",getOptionValue:u=B=>(B==null?void 0:B.value)||"",isOpen:h,onOpenChange:g,customOptionGenerator:I,disableInternalFiltering:E=!1,stateReducer:y,isDisabled:b=!1,clearSearchOnSelect:N=!1,closeMenuOnSelect:v,onSelectionComplete:x,id:w}=e,m=$p(),_=w||m,j=p.useCallback(B=>{const Q=c(B);if(typeof Q=="string")return Q;if(typeof Q=="number")return String(Q);const ne=B;if(typeof ne=="object"&&ne!==null){if(typeof ne.label=="string")return ne.label;if(typeof ne.name=="string")return ne.name}return String(u(B))},[c,u]),k=B=>B?Array.isArray(B)?B:[B]:[],D=i!==void 0?i:n!==void 0?n:null,[F,L]=p.useState(()=>k(D)),[U,te]=p.useState(()=>{if(a!==void 0)return a;if(o&&!t){const B=k(D)[0];if(B!==void 0)return j(B)}return""}),[K,ae]=p.useState(()=>h!==void 0?h:!1),Y=n!==void 0?k(n):F,se=a!==void 0?a:U,$=h!==void 0?h:K,de=p.useRef(null),f=p.useRef(null),S=p.useRef(!1);p.useEffect(()=>{const B=Q=>{const ne=Q.target,pe=document.querySelectorAll(`[data-select-id="${_}"]`);S.current=Array.from(pe).some(xe=>xe.contains(ne))};return document.addEventListener("mousedown",B,!0),()=>document.removeEventListener("mousedown",B,!0)},[_]);const z=p.useCallback(B=>{h===void 0&&ae(B),g==null||g(B)},[h,g]),P=p.useCallback(B=>{n===void 0&&L(B);const Q=t?B:B[0]||null;s==null||s(Q)},[n,t,s]),O=p.useCallback(B=>{a===void 0&&te(B),l==null||l(B)},[a,l]),H=In({selectedItems:Y,onSelectedItemsChange:B=>{const Q=B.selectedItems||[];P(Q)}}),M=p.useCallback(B=>{t&&H.removeSelectedItem(B)},[t,H]),C=p.useCallback(B=>{if(B){if(t)Y.some(Q=>u(Q)===u(B))?M(B):H.addSelectedItem(B);else{const Q=Y[0];(!Q||u(Q)!==u(B))&&P([B])}x==null||x(u(B),B)}},[t,Y,u,M,H,P,x]);p.useEffect(()=>{if(f.current){const B=f.current;f.current=null,C(B)}}),p.useLayoutEffect(()=>{if(o&&$){const B=requestAnimationFrame(()=>{var Q;(Q=de.current)==null||Q.focus()});return()=>cancelAnimationFrame(B)}},[o,$]),p.useEffect(()=>{if(o&&!t&&a===void 0&&!$){const B=Y[0],Q=B!==void 0?j(B):"";Q!==U&&te(Q)}},[Y,$,o,t]);const[V,Z]=p.useState(se);p.useEffect(()=>{const B=setTimeout(()=>Z(se),120);return()=>clearTimeout(B)},[se]);const G=p.useMemo(()=>I?I(se,r):E||!o||!V?r:r.filter(B=>j(B).toLowerCase().includes(V.toLowerCase())),[r,se,V,I,E,o,j]),re={items:G,itemToString:B=>B?j(B):"",isOpen:$,onIsOpenChange:({isOpen:B})=>{B!==void 0&&z(B)},selectedItem:t?null:Y[0]||null},A=B=>{const Q=new Map;for(const[ne,pe]of Object.entries(B.stateChangeTypes))Q.set(pe,ne);return(ne,pe)=>{const{changes:xe,type:we}=pe,Me=v??!t,De=[He.stateChangeTypes.ItemClick,He.stateChangeTypes.InputKeyDownEnter,He.stateChangeTypes.FunctionSelectItem,at.stateChangeTypes.ItemClick,at.stateChangeTypes.ToggleButtonKeyDownEnter,at.stateChangeTypes.ToggleButtonKeyDownSpaceButton,at.stateChangeTypes.FunctionSelectItem].includes(we);if((we===He.stateChangeTypes.InputBlur||we===at.stateChangeTypes.ToggleButtonBlur)&&typeof document<"u"){const Ee=document.activeElement,ke=document.querySelectorAll(`[data-select-id="${_}"]`),Pe=!!Ee&&Array.from(ke).some(kt=>kt.contains(Ee)),Fe=Ee===document.body,Je=t&&Fe&&S.current;if(Pe||Je)return{...xe,isOpen:!0}}if(De){const Ee=xe.selectedItem||null;Ee&&(f.current=Ee);const ke={...xe};return t?(ke.selectedItem=null,ke.isOpen=!Me,ke.highlightedIndex=ne.highlightedIndex,ke.inputValue=""):Ee&&(N?ke.inputValue="":o&&(ke.inputValue=j(Ee)),v===!1&&(ke.isOpen=!0,ke.highlightedIndex=ne.highlightedIndex)),ke}return o&&!De&&we!==He.stateChangeTypes.InputChange&&(we===He.stateChangeTypes.ControlledPropUpdatedSelectedItem||we===He.stateChangeTypes.FunctionSetInputValue||we===He.stateChangeTypes.InputBlur||we===He.stateChangeTypes.FunctionReset)?{...xe,inputValue:ne.inputValue}:y?y(ne,{...pe,type:Q.get(pe.type)||pe.type,changes:xe}):xe}},ee=o?He({...re,inputValue:se,onInputValueChange:({inputValue:B,type:Q})=>{!t&&!B&&Q===He.stateChangeTypes.InputChange&&P([]),O(B||"")},stateReducer:A(He),id:_}):at({...re,stateReducer:A(at),id:_}),q=p.useCallback(()=>{b||("toggleMenu"in ee&&typeof ee.toggleMenu=="function"?ee.toggleMenu():z(!$))},[ee,b,z,$]),ue=p.useCallback(()=>{b||("openMenu"in ee&&typeof ee.openMenu=="function"?ee.openMenu():z(!0))},[ee,b,z]),he=p.useCallback(()=>{"closeMenu"in ee&&typeof ee.closeMenu=="function"?ee.closeMenu():z(!1)},[ee,z]),Oe=p.useCallback(()=>{P([]),O(""),t&&H.reset()},[P,O,t,H]);return{isOpen:ee.isOpen,selectedItem:ee.selectedItem,highlightedIndex:ee.highlightedIndex,inputValue:se,getToggleButtonProps:ee.getToggleButtonProps,getMenuProps:ee.getMenuProps,getItemProps:ee.getItemProps,getInputProps:o?(B,Q)=>({..."getInputProps"in ee?ee.getInputProps(B,Q):{},ref:de,value:se}):void 0,selectedItems:Y,filteredItems:G,setInputValue:O,setIsOpen:z,toggleMenu:q,openMenu:ue,closeMenu:he,clearSelection:Oe,selectItem:"selectItem"in ee?ee.selectItem:void 0,removeItem:M,multipleSelection:H,isMulti:t,isSearchable:o,inputRef:de,selectId:_}},Vs=({size:e="md",color:r="primary",isInvalid:t=!1,isDisabled:o=!1,className:n,children:i,options:a=[],value:s,defaultValue:l,onChange:c,isMulti:u,inputValue:h,onInputChange:g,isSearchable:I,isOpen:E,onOpenChange:y,customOptionGenerator:b,disableInternalFiltering:N,getOptionLabel:v=L=>typeof L=="string"||typeof L=="number"?String(L):(L==null?void 0:L.label)||(L==null?void 0:L.name)||String(L),getOptionValue:x=L=>typeof L=="string"||typeof L=="number"?String(L):(L==null?void 0:L.value)||(L==null?void 0:L.id)||(L==null?void 0:L.name)||String(L),isOptionDisabled:w=L=>(L==null?void 0:L.isDisabled)||!1,stateReducer:m,clearSearchOnSelect:_,closeMenuOnSelect:j,inputClassName:k,onSelectionComplete:D,...F})=>{const[L,U]=p.useState(!1),[te,K]=p.useState(!1),ae=p.useRef(null),[Y,se]=p.useState(!1),[$,de]=p.useState("bottom"),f=p.useRef(new Set),S=p.useCallback(M=>(f.current.add(M),()=>f.current.delete(M)),[]),z=p.useCallback((M,C)=>{D==null||D(M,C),f.current.forEach(V=>V(M,C))},[D]),P=p.useMemo(()=>Pu(a),[a]),O=qp({items:P,value:s,defaultValue:l,onChange:c,isMulti:u,inputValue:h,onInputChange:g,isSearchable:I,isOpen:E,onOpenChange:y,getOptionLabel:v,getOptionValue:x,customOptionGenerator:b,disableInternalFiltering:N,stateReducer:m,isDisabled:o,clearSearchOnSelect:_,closeMenuOnSelect:j,onSelectionComplete:z}),H={size:e,color:t?"negative":r,isInvalid:t,isDisabled:o,hasMessage:L,setHasMessage:U,hasGroup:te,setHasGroup:K,groupRef:ae,menuVisible:Y,setMenuVisible:se,menuPlacement:$,setMenuPlacement:de,downshift:O,options:a,getOptionLabel:v,getOptionValue:x,isOptionDisabled:w,inputClassName:k,registerOnSelectionComplete:S};return d.jsx(Pa.Provider,{value:H,children:d.jsx("div",{"data-qui":"Select","data-select-id":O.selectId,className:R(vu(),n),...F,children:i})})},Kp=p.forwardRef(({className:e,children:r,isFocused:t,isDisabled:o,...n},i)=>{const{size:a,color:s,isDisabled:l,hasMessage:c,hasGroup:u,downshift:h,isInvalid:g,menuPlacement:I}=Ce(),E=o??l,y=t??h.isOpen;return d.jsx("div",{ref:i,className:R(bu({size:a,color:s,isDisabled:E,isFocused:!!y,isInvalid:g&&!h.isOpen,hasMessage:c,hasGroup:u,menuPlacement:h.isOpen?I:void 0}),e),"aria-disabled":E,"aria-invalid":g,role:"combobox",tabIndex:E?-1:0,...n,children:r})}),Gp=({className:e,children:r,isMulti:t})=>d.jsx("div",{className:R(xu({isMulti:t}),e),children:r}),Cr=p.forwardRef(({isHidden:e,inputClassName:r,className:t,...o},n)=>{const{size:i,color:a}=Ce();return e?d.jsx("input",{ref:n,type:"text",className:t,style:{position:"absolute",top:0,left:0,opacity:0,width:"100%",height:"100%",pointerEvents:"none"},tabIndex:-1,...o}):d.jsx("input",{ref:n,type:"text","data-qui":"SelectSearchInput",className:R(wu({size:i,color:a}),r,e?"":t),...o})}),Up=({className:e,children:r})=>{const{size:t,color:o}=Ce();return d.jsx("div",{className:R(yu({size:t,color:o}),e),children:r})},Yp=({className:e,children:r,data:t,isDisabled:o})=>{const{size:n,color:i,getOptionLabel:a}=Ce();return d.jsx("div",{className:R(ku({size:n,color:i,isDisabled:o}),e),children:r||a(t)})},Ls=({className:e,children:r,data:t,isDisabled:o,isFocused:n,onRemove:i})=>{const{size:a,color:s,downshift:l,getOptionLabel:c}=Ce(),u=()=>{i?i(t):l.removeItem(t)};return d.jsxs("div",{className:R(Iu({size:a,color:s,isDisabled:o,isFocused:n}),e),children:[d.jsx("div",{className:Eu({size:a}),children:r||c(t)}),!o&&d.jsx("div",{className:Su({size:a,color:s,isDisabled:!1}),onClick:u,children:d.jsx(rr,{className:"w-3 h-3"})})]})},Bs=({color:e,className:r,children:t,onClick:o,isDisabled:n,...i})=>{const{size:a,color:s,isDisabled:l,downshift:c}=Ce(),u=n??l,h=c.selectedItems.length>0;if(u||!h)return null;const g=I=>{I.stopPropagation(),o?o(I):c.clearSelection()};return d.jsx("div",{className:R(Ha({size:a,color:e||s,isDisabled:u}),r),onClick:g,role:"button",tabIndex:0,"aria-label":"Clear selection",...i,children:t||d.jsx(Sl,{})})},Zp=({className:e,children:r,onClick:t,isDisabled:o,...n})=>{const{size:i,color:a,isDisabled:s,downshift:l}=Ce(),c=o??s,u=l.inputValue.length>0&&l.isSearchable;if(c||!u)return null;const h=g=>{c||(g.preventDefault(),g.stopPropagation(),t?t(g):(l.setInputValue(""),l.clearSelection()))};return d.jsx("div",{"data-qui":"SelectIndicator",className:R(Ha({size:i,color:a,isDisabled:c}),"cursor-pointer",e),onClick:h,onMouseDown:g=>{g.preventDefault(),g.stopPropagation()},role:"button",tabIndex:-1,"aria-label":"Clear selection",...n,children:r||d.jsx(rr,{})})},Fs=p.forwardRef(({color:e,className:r,children:t,onClick:o,isDisabled:n,...i},a)=>{const{size:s,color:l,isDisabled:c,downshift:u}=Ce(),h=n??c,g=u.isOpen,I=y=>{h||(y.preventDefault(),y.stopPropagation(),o?o(y):u.toggleMenu())},E=y=>{y.preventDefault(),y.stopPropagation()};return d.jsx("div",{ref:a,"data-qui":"SelectIndicator",className:R(Ou({size:s,color:e||l,isDisabled:h}),"cursor-pointer",r),onClick:E,onMouseDown:I,role:"button",tabIndex:-1,"aria-label":g?"Close menu":"Open menu","aria-expanded":g,"aria-disabled":h,...i,children:t||d.jsx(_l,{className:R("transition-transform duration-200",{"rotate-180":g})})})}),Xp=p.forwardRef(({className:e,children:r,placement:t,...o},n)=>{const{size:i,hasMessage:a,color:s,hasGroup:l}=Ce();return d.jsx("div",{"data-qui":"SelectMenu",ref:n,className:R(_u({size:i,placement:t,hasMessage:a,color:s,hasGroup:l}),e),...o,children:r})}),Jp=p.forwardRef(({className:e,children:r,maxHeight:t=300,totalHeight:o,...n},i)=>{const{size:a}=Ce();return d.jsx(Co,{scrollableNodeProps:{ref:i},className:R(Nu({size:a}),e),style:{maxHeight:t},...n,children:o!==void 0?d.jsx("div",{style:{height:o,position:"relative",width:"100%"},children:r}):r})}),Dr=({className:e,children:r,data:t,isDisabled:o,isFocused:n,isSelected:i,innerProps:a,optionClassName:s,...l})=>{const{size:c,color:u,getOptionLabel:h}=Ce();return d.jsx("div",{"data-qui":"SelectOption",className:R(Cu({size:c,color:u,isDisabled:o,isFocused:n,isSelected:i}),s,e),...a,...l,children:r??h(t)})},Ws=({className:e,children:r,data:t,label:o,renderGroupHeading:n})=>{const{size:i}=Ce();return d.jsxs("div",{"data-qui":"SelectOptionGroup",className:R(Du({size:i}),e),children:[d.jsx(Qp,{children:n?n(t):o||t.label}),r]})},Qp=({className:e,children:r})=>{const{size:t,color:o}=Ce();return d.jsx("div",{className:R(zu({size:t,color:o}),e),children:r})},vo=({className:e,children:r,inputValue:t})=>{const{size:o}=Ce();return d.jsx("div",{className:R(ju({size:o}),e),children:r||`No options found${t?` for "${t}"`:""}`})},$s=p.forwardRef(({className:e,children:r,...t},o)=>{const{size:n,color:i,isDisabled:a,hasMessage:s,isInvalid:l,setHasGroup:c,groupRef:u,menuVisible:h,menuPlacement:g}=Ce();return p.useEffect(()=>(c(!0),()=>{c(!1)}),[c]),d.jsx("div",{ref:Dt([o,u]),"data-qui":"SelectGroup",className:R(fu({size:n,color:i,isDisabled:a,hasMessage:s,isInvalid:l,isFocused:h,menuPlacement:h?g:void 0}),e),...t,children:r})}),eh=p.forwardRef(({isAction:e=!1,className:r,isDisabled:t=!1,style:o,children:n,...i},a)=>{const{size:s,color:l,isDisabled:c}=Ce(),u=t||c,h=mu({size:s,color:l,isDisabled:u,isAction:e});return d.jsx("div",{ref:a,"data-qui":"SelectIcon",className:R(h,r),style:o,role:e||i.onClick?"button":void 0,tabIndex:(e||i.onClick)&&!u?0:void 0,"aria-disabled":u,...i,children:n})}),qs=({icon:e,usePortal:r=!1,className:t,children:o,...n})=>{const{size:i,color:a,setHasMessage:s,isInvalid:l,isDisabled:c}=Ce(),u=p.useRef(null),h=p.useRef("bottom"),[g,I]=p.useState(null);p.useEffect(()=>(s(!0),()=>s(!1)),[s]),p.useEffect(()=>{if(!r||!u.current)return;const b=u.current,N=b.closest('[data-qui="Select"]'),v=N==null?void 0:N.querySelector('[data-qui="SelectGroup"]'),x=v||N;if(!x)return;const w=!!(v&&b.compareDocumentPosition(v)&Node.DOCUMENT_POSITION_FOLLOWING);h.current=w?"top":"bottom";const m=()=>{const j=x.getBoundingClientRect();I({top:w?j.top:j.bottom,left:j.left,width:j.width})};m();const _=new ResizeObserver(m);return _.observe(x),window.addEventListener("resize",m),window.addEventListener("scroll",m,!0),()=>{_.disconnect(),window.removeEventListener("resize",m),window.removeEventListener("scroll",m,!0)}},[r]);const E=h.current,y=d.jsxs("div",{role:"alert",className:R(Ru({size:i,color:a,isInvalid:l,isDisabled:c,usePortal:r,portalPlacement:E}),t),...n,children:[e!==void 0&&d.jsx("div",{className:R(Tu({size:i})),children:e}),d.jsx("p",{children:o})]});return r?d.jsxs(d.Fragment,{children:[d.jsx("span",{ref:u,style:{display:"none"}}),g&&Pt.createPortal(d.jsx("div",{"data-qui":"SelectMessagePortal",style:{position:"fixed",top:E==="top"?void 0:g.top,bottom:E==="top"?`calc(100vh - ${g.top}px)`:void 0,left:g.left,width:g.width,zIndex:50},children:y}),document.body)]}):y},th=({isOpen:e,usePortal:r,controlRef:t,selectId:o,children:n})=>{const[i,a]=p.useState(null);return p.useLayoutEffect(()=>{if(r&&e&&t.current){const s=()=>{var l;const c=(l=t.current)==null?void 0:l.closest('[data-qui="SelectGroup"]'),u=c||t.current;if(!u)return;const h=u.getBoundingClientRect();a(c?{top:h.top+window.scrollY+c.clientTop,left:h.left+window.scrollX+c.clientLeft,width:c.clientWidth,height:c.clientHeight}:{top:h.top+window.scrollY,left:h.left+window.scrollX,width:h.width,height:h.height})};return s(),window.addEventListener("resize",s),window.addEventListener("scroll",s,!0),()=>{window.removeEventListener("resize",s),window.removeEventListener("scroll",s,!0)}}},[e,r,t]),e?r&&i?Pt.createPortal(d.jsx("div",{"data-qui":"SelectPortal","data-select-id":o,style:{position:"absolute",top:i.top,left:i.left,width:i.width,height:i.height,zIndex:50,pointerEvents:"none"},children:d.jsx("div",{style:{pointerEvents:"auto"},children:n})}),document.body):d.jsx(d.Fragment,{children:n}):null},Dt=e=>r=>{e.forEach(t=>{typeof t=="function"?t(r):t!=null&&"current"in t&&(t.current=r)})},rh=e=>{let r=0,t=window.innerHeight,o=e.parentElement;for(;o&&o!==document.body&&o!==document.documentElement;){const{overflowY:n}=window.getComputedStyle(o);if(n!=="visible"){const i=o.getBoundingClientRect();r=Math.max(r,i.top),t=Math.min(t,i.bottom)}o=o.parentElement}return{top:r,bottom:t}},Ks=p.forwardRef(({placeholder:e,noOptionsMessage:r,hideNoOptions:t=!1,loadingMessage:o="Loading...",isClearable:n=!1,isSearchClearable:i=!1,isLoading:a=!1,isRequired:s=!1,hideIndicators:l=!1,hideDropdownIndicator:c=!1,searchPlacement:u="trigger",menuPlacement:h="bottom",hideSelectedOptions:g=!1,onFocus:I,onBlur:E,renderMenuHeader:y,formatOptionLabel:b,renderOption:N,optionClassName:v,renderValue:x,renderGroupHeading:w,inputRef:m,controlShouldRenderValue:_=!0,name:j,id:k,onSelectionComplete:D,"aria-label":F,"aria-labelledby":L,"aria-describedby":U,children:te,usePortal:K=!1,virtualizeThreshold:ae=100,className:Y,inputClassName:se,...$},de)=>{const{size:f,isInvalid:S,isDisabled:z,hasGroup:P,downshift:O,options:H=[],getOptionLabel:M,getOptionValue:C,isOptionDisabled:V,menuPlacement:Z,setMenuPlacement:G,menuVisible:re,setMenuVisible:A,inputClassName:ee}=Ce(),q=se||ee,ue=p.useMemo(()=>{if(N)return N;if(b)return({data:ie})=>b(ie)},[N,b]),he=p.useRef(null),Oe=m||he,B=p.useRef(null),[Q,ne]=p.useState(null),pe=p.useRef(null),{isOpen:xe,openMenu:we,selectedItem:Me,inputValue:De,highlightedIndex:Ee,getToggleButtonProps:ke,getMenuProps:Pe,getInputProps:Fe,getItemProps:Je,isMulti:kt,isSearchable:nt,multipleSelection:nl}=O,{getDropdownProps:il}=nl;p.useLayoutEffect(()=>{if(!xe)return;if(h==="top"||h==="bottom"){G(h);return}const ie=B.current;if(!ie)return;const le=()=>{const ze=ie.getBoundingClientRect(),Ge=K?{top:0,bottom:window.innerHeight}:rh(ie),Ue=Ge.bottom-ze.bottom,et=ze.top-Ge.top,st=f==="sm"?22:f==="lg"?36:28,Et=Math.min((O.filteredItems.length||1)*st+16,300),Ft=Q==null?void 0:Q.getBoundingClientRect().height,to=Ft&&Ft>0?Ft:Et,gl=Ue>=to;G(!gl&&et>Ue?"top":"bottom")};le(),window.addEventListener("resize",le),window.addEventListener("scroll",le,!0);const Ke=Q&&typeof ResizeObserver<"u"?new ResizeObserver(()=>le()):void 0;return Q&&(Ke==null||Ke.observe(Q)),()=>{window.removeEventListener("resize",le),window.removeEventListener("scroll",le,!0),Ke==null||Ke.disconnect()}},[xe,G,f,O.filteredItems.length,h,K,Q]),p.useLayoutEffect(()=>{const ie=xe&&!(t&&O.filteredItems.length===0);return A(ie),()=>A(!1)},[xe,t,O.filteredItems.length,A]);const Qe=kt?O.selectedItems??[]:Me?[Me]:[],Xr=Qe.length>0,al=i&&!!De&&!z&&!l,Nn=n&&(Xr||!!De)&&!z&&!l,Cn=!c&&!l,sl=!Xr&&(!nt||!De)||!_,Dn={},zn={};Object.entries($).forEach(([ie,le])=>{ie.startsWith("data-")||ie.startsWith("aria-")||ie==="role"?Dn[ie]=le:zn[ie]=le});const Mn=p.useMemo(()=>Dt([B,de]),[de]),jn=Pe({},{suppressRefError:!0}),Lt=il({preventKeyAction:xe}),Jr={ref:Oe,disabled:z,required:s,name:j,id:k,"aria-label":F,"aria-labelledby":L,"aria-describedby":U,"aria-invalid":S,onFocus:I,onBlur:E,...zn},ll=nt?(Fe==null?void 0:Fe({...Jr,...Lt}))??Jr:{...Jr,...Lt},{ref:Rn,...Qr}=ll,eo=p.useMemo(()=>Dt([Rn]),[Rn]),{ref:Tn,...Pn}=jn,An=p.useRef(Tn);An.current=Tn;const cl=p.useCallback(ie=>{ne(le=>le===ie?le:ie),Dt([An.current])(ie)},[]),dl=ie=>Qe.some(le=>C(le)===C(ie)),Hn=ie=>g?ie.filter(le=>!dl(le)):ie,ul=ie=>g?ie.map(le=>({...le,options:Hn(le.options)})).filter(le=>le.options.length>0):ie,It=wo(H)?[]:Hn(O.filteredItems),pl={sm:22,md:28,lg:36}[f]??28,Bt=It.length>=ae,sr=gu({count:Bt?It.length:0,getScrollElement:()=>pe.current,estimateSize:()=>pl,overscan:5});p.useEffect(()=>{Bt&&xe&&Ee>=0&&Ee<It.length&&sr.scrollToIndex(Ee,{align:"auto"})},[Ee,Bt,xe]);const{registerOnSelectionComplete:Vn}=Ce();p.useEffect(()=>{if(D)return Vn(D)},[D,Vn]);const hl=nt?{}:ke({disabled:z,...Lt,ref:Dt([Mn,Lt.ref])});return d.jsxs("div",{className:R({relative:!P,"flex-1 min-w-0":P}),children:[d.jsxs(Kp,{"data-qui":"SelectControl",className:Y,...nt?{ref:Dt([Mn,Lt.ref])}:hl,...Dn,isFocused:re,isDisabled:z,onClick:ie=>{ie.defaultPrevented||(nt?we():O.toggleMenu())},children:[te||d.jsxs(Gp,{isMulti:kt,children:[kt&&_&&Qe.map((ie,le)=>d.jsx(Ls,{data:ie,index:le,isDisabled:z,children:x?x(ie):void 0},C(ie))),!kt&&Xr&&_&&!nt&&d.jsx("div",{className:"flex items-center gap-2",children:d.jsx(Yp,{data:Qe[0],isDisabled:z,children:x?x(Qe[0]):M(Qe[0])})}),nt&&u==="trigger"?d.jsx(Cr,{ref:eo,...Qr,className:Y,inputClassName:q,placeholder:e}):d.jsxs(d.Fragment,{children:[d.jsx(Cr,{ref:eo,...Qr,className:Y,inputClassName:q,isHidden:!0,readOnly:!0,value:Qe.map(ie=>C(ie)).join(",")}),sl&&d.jsx(Up,{children:e})]})]}),d.jsxs("div",{className:R("flex items-center size-fit gap-1",{hidden:!Nn&&!Cn}),children:[al&&d.jsx(Zp,{}),Nn&&d.jsx(Bs,{}),Cn&&d.jsx(Fs,{...nt?ke({disabled:z,"aria-label":xe?"Close menu":"Open menu"}):{}})]})]}),!xe&&d.jsx("div",{ref:jn.ref,style:{display:"none"},"aria-hidden":"true"}),d.jsx(th,{isOpen:xe,usePortal:K,controlRef:B,selectId:O.selectId,children:t&&O.filteredItems.length===0?d.jsx("div",{...Pn,style:{display:"none"},"aria-hidden":"true"}):d.jsxs(Xp,{ref:cl,...Pn,placement:Z,children:[y&&y(O),nt&&u==="menu"&&d.jsx("div",{className:"p-2",children:d.jsx(Cr,{ref:eo,...Qr,className:Y,inputClassName:q,autoFocus:!0,placeholder:e,onClick:ie=>ie.stopPropagation()})}),d.jsx(Jp,{ref:pe,totalHeight:Bt?sr.getTotalSize():void 0,children:a?d.jsx("div",{className:Mu({size:f}),children:o}):O.filteredItems.length===0?d.jsx(vo,{inputValue:De,children:typeof r=="function"?r(De):r}):wo(H)?(()=>{const ie=ul(H);return ie.length===0?d.jsx(vo,{inputValue:De,children:typeof r=="function"?r(De):r}):ie.map((le,Ke)=>d.jsx(Ws,{data:le,label:le.label,options:le.options,renderGroupHeading:w,children:le.options.map(ze=>{const Ge=C(ze),Ue=Qe.some(to=>C(to)===Ge),et=O.filteredItems.indexOf(ze),st=Ee===et,Et=V(ze),Ft=Je({item:ze,index:et});return d.jsx(Dr,{...Ft,data:ze,isDisabled:Et,isFocused:st,isSelected:Ue,optionClassName:v,children:ue?ue({data:ze,isFocused:st,isSelected:Ue,isDisabled:Et}):void 0},`${Ge}-${et}`)})},`${le.label}-${Ke}`))})():It.length===0?d.jsx(vo,{inputValue:De,children:typeof r=="function"?r(De):r}):Bt?sr.getVirtualItems().map(ie=>{const le=It[ie.index],Ke=C(le),ze=Qe.some(Et=>C(Et)===Ke),Ge=O.filteredItems.indexOf(le),Ue=Ee===Ge,et=V(le),st=Je({item:le,index:Ge});return d.jsx("div",{"data-index":ie.index,ref:sr.measureElement,style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${ie.start}px)`},children:d.jsx(Dr,{...st,data:le,isDisabled:et,isFocused:Ue,isSelected:ze,optionClassName:v,children:ue?ue({data:le,isFocused:Ue,isSelected:ze,isDisabled:et}):void 0})},ie.key)}):It.map(ie=>{const le=C(ie),Ke=Qe.some(st=>C(st)===le),ze=O.filteredItems.indexOf(ie),Ge=Ee===ze,Ue=V(ie),et=Je({item:ie,index:ze});return d.jsx(Dr,{...et,data:ie,isDisabled:Ue,isFocused:Ge,isSelected:Ke,optionClassName:v,children:ue?ue({data:ie,isFocused:Ge,isSelected:Ke,isDisabled:Ue}):void 0},`${le}-${ze}`)})})]})})]})});Vs.displayName="Select.Root";$s.displayName="Select.Group";eh.displayName="Select.Icon";Cr.displayName="Select.Input";Ls.displayName="Select.MultiValue";Bs.displayName="Select.ClearIndicator";Fs.displayName="Select.DropdownIndicator";Dr.displayName="Select.Option";Ws.displayName="Select.OptionGroup";qs.displayName="Select.Message";const oh=Ks;oh.displayName="Select.Field";const qe={Root:Vs,Group:$s,Message:qs,Field:Ks};p.createContext(void 0);const nh=({active:e,disabled:r,error:t,isOpen:o,className:n})=>R("flex w-full items-center justify-between text-left leading-5 transition-colors duration-200",{"cursor-pointer":!r,"text-inactive-text":r,"bg-primary hover:bg-primary-hover":e&&!r,"text-negative":t&&!e&&!r,"bg-primary-hover text-body":o&&!e&&!r,"text-body":!e&&!r&&!t,"hover:bg-primary-hover hover:text-tab-active-fg":!r&&!e},n),ih=p.forwardRef(({active:e,disabled:r,error:t,isOpen:o,className:n,children:i,as:a="div",...s},l)=>{const c=nh({active:e,disabled:r,error:t,isOpen:o,className:n});return d.jsx(a,{"data-qui":"ListItem",ref:l,className:c,"aria-disabled":r,"aria-selected":e,"aria-invalid":t,"aria-expanded":o,role:s.onClick?"button":"listitem",...s,children:i})});ih.displayName="ListItem";const Gs=p.createContext(null),Us=({children:e,adapter:r})=>d.jsx(Gs.Provider,{value:r,children:e}),yt=()=>{const e=p.useContext(Gs);if(!e)throw new Error("useEditorStateAdapter must be used within an EditorStateAdapterProvider");return e},ah=Ye.z.object({class:Ye.z.string().optional(),method:Ye.z.string().optional(),verbs:Ye.z.union([Ye.z.string(),Ye.z.array(Ye.z.string())]).optional(),id:Ye.z.string().optional(),pattern:Ye.z.string().optional(),regexPattern:Ye.z.string().optional()}),sh=Ye.z.array(ah),Wi="Invalid JSON";function Yr(e){let r=e??[];if(typeof e=="string")try{r=JSON.parse(e)}catch{throw new Error(Wi)}const t=sh.safeParse(r);if(!t.success)throw new Error(Wi);return t.data.map(o=>{const n=!!o.regexPattern,i=(Array.isArray(o.verbs)?o.verbs:(o.verbs??"").split(",")).map(a=>a.toUpperCase()).filter(Boolean);return{...o,id:o.id??Xt.generate(),verbs:i,asRegex:n}})}function En(e){return JSON.stringify(e.map(({isExpanded:r,asRegex:t,pattern:o,regexPattern:n,...i})=>{var s;const a=t?{regexPattern:n}:{pattern:o};return{...i,verbs:(s=i.verbs)==null?void 0:s.join(","),...a}}),null,2)}function xt(e){return typeof e=="function"}function lh(e){return xt(e==null?void 0:e.lift)}function ch(e){return function(r){if(lh(r))return r.lift(function(t){try{return e(t,this)}catch(o){this.error(o)}});throw new TypeError("Unable to lift unknown Observable type")}}var Eo=function(e,r){return Eo=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(t[n]=o[n])},Eo(e,r)};function Sn(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");Eo(e,r);function t(){this.constructor=e}e.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}function $i(e){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&e[r],o=0;if(t)return t.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function So(e,r){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var o=t.call(e),n,i=[],a;try{for(;(r===void 0||r-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(s){a={error:s}}finally{try{n&&!n.done&&(t=o.return)&&t.call(o)}finally{if(a)throw a.error}}return i}function Oo(e,r,t){if(t||arguments.length===2)for(var o=0,n=r.length,i;o<n;o++)(i||!(o in r))&&(i||(i=Array.prototype.slice.call(r,0,o)),i[o]=r[o]);return e.concat(i||Array.prototype.slice.call(r))}function dh(e){var r=function(o){Error.call(o),o.stack=new Error().stack},t=e(r);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var fo=dh(function(e){return function(t){e(this),this.message=t?t.length+` errors occurred during unsubscription:
|
|
54
54
|
`+t.map(function(o,n){return n+1+") "+o.toString()}).join(`
|
|
55
|
-
`):"",this.name="UnsubscriptionError",this.errors=t}});function qi(e,r){if(e){var t=e.indexOf(r);0<=t&&e.splice(t,1)}}var On=(function(){function e(r){this.initialTeardown=r,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var r,t,o,n,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=$i(a),l=s.next();!l.done;l=s.next()){var c=l.value;c.remove(this)}}catch(y){r={error:y}}finally{try{l&&!l.done&&(t=s.return)&&t.call(s)}finally{if(r)throw r.error}}else a.remove(this);var u=this.initialTeardown;if(xt(u))try{u()}catch(y){i=y instanceof fo?y.errors:[y]}var h=this._finalizers;if(h){this._finalizers=null;try{for(var g=$i(h),I=g.next();!I.done;I=g.next()){var E=I.value;try{Ki(E)}catch(y){i=i??[],y instanceof fo?i=Oo(Oo([],So(i)),So(y.errors)):i.push(y)}}}catch(y){o={error:y}}finally{try{I&&!I.done&&(n=g.return)&&n.call(g)}finally{if(o)throw o.error}}}if(i)throw new fo(i)}},e.prototype.add=function(r){var t;if(r&&r!==this)if(this.closed)Ki(r);else{if(r instanceof e){if(r.closed||r._hasParent(this))return;r._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(r)}},e.prototype._hasParent=function(r){var t=this._parentage;return t===r||Array.isArray(t)&&t.includes(r)},e.prototype._addParent=function(r){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(r),t):t?[t,r]:r},e.prototype._removeParent=function(r){var t=this._parentage;t===r?this._parentage=null:Array.isArray(t)&&qi(t,r)},e.prototype.remove=function(r){var t=this._finalizers;t&&qi(t,r),r instanceof e&&r._removeParent(this)},e.EMPTY=(function(){var r=new e;return r.closed=!0,r})(),e})();On.EMPTY;function uh(e){return e instanceof On||e&&"closed"in e&&xt(e.remove)&&xt(e.add)&&xt(e.unsubscribe)}function Ki(e){xt(e)?e():e.unsubscribe()}var ph={setTimeout:function(e,r){for(var t=[],o=2;o<arguments.length;o++)t[o-2]=arguments[o];return setTimeout.apply(void 0,Oo([e,r],So(t)))},clearTimeout:function(e){return clearTimeout(e)},delegate:void 0};function hh(e){ph.setTimeout(function(){throw e})}function Gi(){}var Ys=(function(e){Sn(r,e);function r(t){var o=e.call(this)||this;return o.isStopped=!1,t?(o.destination=t,uh(t)&&t.add(o)):o.destination=mh,o}return r.create=function(t,o,n){return new vh(t,o,n)},r.prototype.next=function(t){this.isStopped||this._next(t)},r.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},r.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},r.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},r.prototype._next=function(t){this.destination.next(t)},r.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},r.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},r})(On),gh=(function(){function e(r){this.partialObserver=r}return e.prototype.next=function(r){var t=this.partialObserver;if(t.next)try{t.next(r)}catch(o){yr(o)}},e.prototype.error=function(r){var t=this.partialObserver;if(t.error)try{t.error(r)}catch(o){yr(o)}else yr(r)},e.prototype.complete=function(){var r=this.partialObserver;if(r.complete)try{r.complete()}catch(t){yr(t)}},e})(),vh=(function(e){Sn(r,e);function r(t,o,n){var i=e.call(this)||this,a;return xt(t)||!t?a={next:t??void 0,error:o??void 0,complete:n??void 0}:a=t,i.destination=new gh(a),i}return r})(Ys);function yr(e){hh(e)}function fh(e){throw e}var mh={closed:!0,next:Gi,error:fh,complete:Gi};function bh(e,r,t,o,n){return new xh(e,r,t,o,n)}var xh=(function(e){Sn(r,e);function r(t,o,n,i,a,s){var l=e.call(this,t)||this;return l.onFinalize=a,l.shouldUnsubscribe=s,l._next=o?function(c){try{o(c)}catch(u){t.error(u)}}:e.prototype._next,l._error=i?function(c){try{i(c)}catch(u){t.error(u)}finally{this.unsubscribe()}}:e.prototype._error,l._complete=n?function(){try{n()}catch(c){t.error(c)}finally{this.unsubscribe()}}:e.prototype._complete,l}return r.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var o=this.closed;e.prototype.unsubscribe.call(this),!o&&((t=this.onFinalize)===null||t===void 0||t.call(this))}},r})(Ys);function wh(e,r){return ch(function(t,o){var n=0;t.subscribe(bh(o,function(i){return e.call(r,i,n++)&&o.next(i)}))})}const Zs=new Yi.Subject,yh=new Set(["SYNC_DATA","TOGGLE_EXPANDED","TOGGLE_ALL_EXPANDED","SET_EDITING_HANDLER","CREATE_MODAL","REMOVE_MODAL","CLOSE_MODAL","EDIT_MODAL","UNDO","REDO"]);function kh(e){if(e.history.locked)return{...e,history:{...e.history,locked:!1}};const r=e.history.stack[e.history.active];if(wt.isEqual(r,e.content))return e;const t=[...e.history.stack.slice(0,e.history.active+1),e.content];return{...e,history:{stack:t,active:t.length-1,locked:!1}}}function _n(e,r){if(r.type==="UNDO"){if(e.history.active<=0)return e;const o=e.history.active-1;return{...e,content:e.history.stack[o],history:{...e.history,active:o,locked:!0}}}if(r.type==="REDO"){if(e.history.active>=e.history.stack.length-1)return e;const o=e.history.active+1;return{...e,content:e.history.stack[o],history:{...e.history,active:o,locked:!0}}}const t=Ih(e,r);return t.content!==e.content&&!yh.has(r.type)?kh(t):t}function Ih(e,r){switch(r.type){case"UPDATE_HANDLERS":return{...e,content:r.payload};case"SET_EDITING_HANDLER":{if(r.payload&&r.payload!==e.editing){const t=e.content.find(o=>o.id===e.editing);if(t&&!Object.values(wt.omit(t,["id","verbs","asRegex","isExpanded"])).some(Boolean)&&t.verbs.length===0)return{...e,content:e.content.filter(n=>n.id!==t.id),editing:r.payload}}return{...e,editing:r.payload}}case"ADD_HANDLER":{const{id:t}=r;return{...e,content:[...e.content,{...r.payload,id:t}],editing:t,newlyCreatedHandlerID:t}}case"UPDATE_HANDLER":return{...e,content:e.content.map(t=>t.id===r.id?{...t,...r.payload}:t),newlyCreatedHandlerID:null};case"DELETE_HANDLER":return{...e,content:e.content.filter(t=>t.id!==r.id)};case"TOGGLE_EXPANDED":return{...e,content:e.content.map(t=>t.id===r.id?{...t,isExpanded:!t.isExpanded}:t)};case"DUPLICATE_HANDLER":{const t=e.content.find(o=>o.id===r.id);return t?{...e,content:[...e.content,{...t,id:Xt.generate(),isExpanded:!0}]}:e}case"TOGGLE_ALL_EXPANDED":return{...e,content:e.content.map(t=>({...t,isExpanded:r.payload}))};case"SYNC_DATA":return{...e,content:r.payload.map(t=>{const o=e.content.find(n=>n.id===t.id);return o?{...t,...o}:t})};case"CREATE_MODAL":return{...e,modals:{...e.modals,list:[...e.modals.list,r.payload]}};case"REMOVE_MODAL":return{...e,modals:{...e.modals,list:e.modals.list.filter(t=>t.id!==r.payload)}};case"CLOSE_MODAL":{const{id:t,reason:o}=r.payload;let n;if(o)if(e.modals.list.find(a=>a.id===t))n={...e,modals:{...e.modals,list:e.modals.list.map(a=>a.id===t?{...a,closeReason:o,isOpen:!1}:a)}};else return e;else n={...e,modals:{...e.modals,list:e.modals.list.filter(i=>i.id!==t)}};return Zs.next(n.modals),n}case"EDIT_MODAL":{const{id:t,...o}=r.payload;return e.modals.list.find(i=>i.id===t)?{...e,modals:{...e.modals,list:e.modals.list.map(i=>i.id===t?{...i,...o}:i)}}:e}default:return e}}const Zr=p.createContext(null),Wr=e=>({content:e,editing:null,newlyCreatedHandlerID:null,modals:{list:[]},history:{stack:[e],active:0,locked:!1}}),Xs=({children:e,content:r,catalog:t=null,host:o="web",history:n,editingHandlerId:i,onEditingHandlerChange:a})=>{const s=p.useMemo(()=>Yr(r),[r]),[l,c]=p.useReducer(_n,Wr(s));p.useEffect(()=>{c({type:"SYNC_DATA",payload:s})},[s]);const u=p.useMemo(()=>({catalog:t,host:o,history:n,editingHandlerId:i,onEditingHandlerChange:a}),[t,o,n,i,a]);return d.jsx(Zr.Provider,{value:{state:l,dispatch:c,external:u},children:e})};function Js(){var n,i,a,s;const e=p.useContext(Zr);if(!e)throw new Error("useReducerAdapter must be used within a ReducerAdapterProvider");const{state:r,dispatch:t,external:o}=e;return{getHandlers:p.useCallback(()=>r.content,[r.content]),getEditingHandlerId:p.useCallback(()=>o.editingHandlerId!==void 0?o.editingHandlerId:r.editing,[o.editingHandlerId,r.editing]),getNewlyCreatedHandlerId:p.useCallback(()=>r.newlyCreatedHandlerID,[r.newlyCreatedHandlerID]),getCatalog:p.useCallback(()=>o.catalog??null,[o.catalog]),getHost:p.useCallback(()=>o.host??"web",[o.host]),getActiveTabHistoryActions:p.useCallback(()=>{var l,c;return{canUndo:((l=o.history)==null?void 0:l.canUndo)??r.history.active>0,canRedo:((c=o.history)==null?void 0:c.canRedo)??r.history.active<r.history.stack.length-1}},[r.history,(n=o.history)==null?void 0:n.canUndo,(i=o.history)==null?void 0:i.canRedo]),actions:{updateHandlers:p.useCallback(l=>{t({type:"UPDATE_HANDLERS",payload:l})},[]),addHandler:p.useCallback(l=>{var u;const c=Xt.generate();t({type:"ADD_HANDLER",payload:l,id:c}),(u=o.onEditingHandlerChange)==null||u.call(o,c)},[o.onEditingHandlerChange]),updateHandler:p.useCallback((l,c)=>{t({type:"UPDATE_HANDLER",id:l,payload:c})},[]),deleteHandler:p.useCallback(l=>{t({type:"DELETE_HANDLER",id:l})},[]),toggleExpanded:p.useCallback(l=>{t({type:"TOGGLE_EXPANDED",id:l})},[]),duplicateHandler:p.useCallback(l=>{t({type:"DUPLICATE_HANDLER",id:l})},[]),toggleAllExpanded:p.useCallback(l=>{t({type:"TOGGLE_ALL_EXPANDED",payload:l})},[]),setEditingHandler:p.useCallback(l=>{var c;(c=o.onEditingHandlerChange)==null||c.call(o,l),t({type:"SET_EDITING_HANDLER",payload:l})},[o.onEditingHandlerChange]),undo:p.useCallback(()=>{var l;if((l=o.history)!=null&&l.onUndo){o.history.onUndo();return}t({type:"UNDO"})},[(a=o.history)==null?void 0:a.onUndo]),redo:p.useCallback(()=>{var l;if((l=o.history)!=null&&l.onRedo){o.history.onRedo();return}t({type:"REDO"})},[(s=o.history)==null?void 0:s.onRedo]),openModal:p.useCallback(async l=>{const{type:c=Te.ModalType.ALERT}=l,u=Xt.generate();return t({type:"CREATE_MODAL",payload:{id:u,type:c,isOpen:!0,...l}}),c===Te.ModalType.CONFIRM?new Promise(h=>{const g=Zs.pipe(wh(I=>{const E=I.list.find(y=>y.id===u);return E!==void 0&&!E.isOpen})).subscribe(I=>{var y;const E=I.list.find(b=>b.id===u);if(E){const b=E.closeReason===Te.ModalCloseReason.CONFIRMED,N=wt.entries(((y=E.views)==null?void 0:y.toggles)||{}).reduce((v,x)=>({...v,[x[0]]:x[1].value}),{});t({type:"REMOVE_MODAL",payload:u}),g.unsubscribe(),h({confirmed:b,options:N})}})}):{confirmed:!1}},[t])}}}function Eh(e,r){const t=ct.useAppDispatch(),o=ct.useAppSelector(ct.selectTabByPath(e),wt.isEqual),n=ct.useAppSelector(ct.selectCatalog),i=p.useMemo(()=>Yr(o==null?void 0:o.content),[o==null?void 0:o.content]),[a,s]=p.useReducer(_n,Wr(r||i));return Te.useDidMountEffect(()=>{s({type:"SYNC_DATA",payload:i})},[i]),p.useEffect(()=>{if(!o)return;const l=En(a.content),c=typeof o.content=="string"?o.content:JSON.stringify(o.content,null,2);l!==c&&t(ct.setContent({path:e,content:l}))},[t,e,a.content,o]),{getHandlers:p.useCallback(()=>a.content,[a.content]),getEditingHandlerId:p.useCallback(()=>a.editing,[a.editing]),getNewlyCreatedHandlerId:p.useCallback(()=>a.newlyCreatedHandlerID,[a.newlyCreatedHandlerID]),getCatalog:p.useCallback(()=>n??null,[n]),getHost:()=>"web",getActiveTabHistoryActions:p.useCallback(()=>({canUndo:a.history.active>0,canRedo:a.history.active<a.history.stack.length-1}),[a.history]),actions:{updateHandlers:p.useCallback(l=>{s({type:"UPDATE_HANDLERS",payload:l})},[]),addHandler:p.useCallback(l=>{s({type:"ADD_HANDLER",payload:l,id:Xt.generate()})},[]),updateHandler:p.useCallback((l,c)=>{s({type:"UPDATE_HANDLER",id:l,payload:c})},[]),deleteHandler:p.useCallback(l=>{s({type:"DELETE_HANDLER",id:l})},[]),toggleExpanded:p.useCallback(l=>{s({type:"TOGGLE_EXPANDED",id:l})},[]),duplicateHandler:p.useCallback(l=>{s({type:"DUPLICATE_HANDLER",id:l})},[]),toggleAllExpanded:p.useCallback(l=>{s({type:"TOGGLE_ALL_EXPANDED",payload:l})},[]),setEditingHandler:p.useCallback(l=>{s({type:"SET_EDITING_HANDLER",payload:l})},[]),undo:p.useCallback(()=>{s({type:"UNDO"})},[]),redo:p.useCallback(()=>{s({type:"REDO"})},[]),openModal:p.useCallback(async l=>await t(ct.openModal(l)).unwrap(),[t]),switchEditor:p.useCallback(l=>{o&&t(ct.switchEditor({tab:o,editor:l}))},[t,o])}}}function Qs(){const e=p.useContext(Zr);if(!e)throw new Error("useModals must be used within a ReducerAdapterProvider");const{state:r,dispatch:t}=e;return{modals:r.modals.list,closeModal:p.useCallback(o=>{t({type:"CLOSE_MODAL",payload:o})},[t]),editModal:p.useCallback(o=>{t({type:"EDIT_MODAL",payload:o})},[t]),removeModal:p.useCallback(o=>{t({type:"REMOVE_MODAL",payload:o})},[t])}}const Tt=new Yi.Subject,Le=()=>document.querySelector(`.${Zi.HTTP_HANDLERS_EDITOR_SCOPE_CLASS}`)||document.body,Sh=({initialSelectedItems:e,onChange:r,touched:t,onBlur:o,"data-cy":n})=>{const i=["GET","POST","PUT","DELETE"],[a,s]=p.useState(e),[l,c]=p.useState(!1);p.useEffect(()=>{s(e)},[e]);const u=h=>{s(h),r(h)};return d.jsx(qe.Root,{"data-cy":n,isInvalid:t&&a.length===0,isMulti:!0,isSearchable:!0,options:i,value:a,onChange:h=>u(h||[]),onOpenChange:c,className:"w-full",children:d.jsxs("div",{className:"relative flex-1",children:[d.jsx(qe.Group,{children:d.jsx(qe.Field,{placeholder:a.length===0?"Select HTTP verbs":"",onBlur:o,hideSelectedOptions:!0})}),t&&a.length===0&&!l&&d.jsx(qe.Message,{children:"At least one HTTP verb is required"})]})})},Oh=({value:e,options:r,errorMessage:t="",onChange:o,onBlur:n,"data-cy":i})=>{const[a,s]=p.useState(!1),l=e&&!r.find(h=>h.name===e),c=h=>{o(h===null?"":h.name)},u=e?{name:e}:null;return d.jsx("div",{className:"w-full",children:d.jsxs(qe.Root,{"data-cy":i,className:"w-full",isInvalid:!!(l||t),isSearchable:!0,options:r,value:u,onChange:c,onOpenChange:s,children:[d.jsx(qe.Group,{children:d.jsx(qe.Field,{isClearable:!!e,onBlur:n,placeholder:"Select...",noOptionsMessage:"Nothing found."})}),t&&!a&&d.jsx(qe.Message,{children:t})]})})},_h=({value:e,options:r,onChange:t,errorMessage:o,onBlur:n,"data-cy":i})=>{const[a,s]=p.useState(!1),l=r.find(h=>h.name===e),c=h=>{t(h===null?"":h.name)},u=l||(e?{name:e,exposed:!1}:null);return d.jsx("div",{className:"w-full relative",children:d.jsxs(qe.Root,{"data-cy":i,className:"w-full",isInvalid:!!o,isSearchable:!0,options:r,value:u,onChange:c,getOptionLabel:h=>h.name,getOptionValue:h=>h.name,onOpenChange:s,children:[d.jsx(qe.Group,{children:d.jsx(qe.Field,{placeholder:"Select method...",renderOption:({data:h})=>d.jsxs("div",{className:"flex items-center gap-2 truncate",children:[h.exposed&&d.jsx(kr,{className:"text-warning shrink-0"}),d.jsx("span",{className:"truncate",title:h.name,children:h.name})]}),onBlur:n,isClearable:!!e,noOptionsMessage:"Nothing found."})}),o&&!a&&d.jsx(qe.Message,{children:o})]})})},el=({listeners:e,attributes:r})=>d.jsx("button",{"data-cy":"handler-row-drag-handle",...r,...e,children:d.jsx(Nl,{})}),tl=e=>{var t;if(!e)return"";let r;Ln.prototype.max=8;try{r=(t=new Ln(e))==null?void 0:t.gen()}catch{r=""}return`Requests matching regex will be handled example: ${r}`},Nh=({id:e,class:r,method:t,pattern:o,verbs:n,regexPattern:i,asRegex:a,listeners:s,attributes:l})=>{var j;const[c,u]=p.useState({className:r,method:t,pattern:o,verbs:n,asRegex:a,regexPattern:i}),h=yt(),g=h.getCatalog(),I=Object.values((g==null?void 0:g.singletons)||{}),E=(j=I.find(k=>k.name===c.className))==null?void 0:j.methods.map(({name:k,exposed:D})=>({name:k,exposed:D})),y=h.getNewlyCreatedHandlerId();function b(){const{className:k,method:D,asRegex:F,regexPattern:L,pattern:U,verbs:te}=c;return!!(k&&D&&(F?L:!(U!=null&&U.endsWith("/")))&&te.length)}function N(){if(b()){const{className:k,method:D,asRegex:F,regexPattern:L,pattern:U,verbs:te}=c,K=F?{regexPattern:L}:{pattern:U};h.actions.updateHandler(e,{class:k,method:D,verbs:te,asRegex:F,...K}),h.actions.setEditingHandler(null)}}const v=async()=>{const k={className:r,method:t,pattern:o,regexPattern:i,verbs:n},D=wt.omit(c,["id","isExpanded"]);if(!b()){y&&h.actions.deleteHandler(y),h.actions.setEditingHandler(null);return}if(!wt.isEqual(k,D)){const{confirmed:F}=await h.actions.openModal({title:"Cancel Changes",type:Te.ModalType.CONFIRM,color:Te.ModalColor.DANGER,message:"Are you sure you want to cancel changes made to this Handler?",icon:"FdWarningDanger"});if(F){y&&y===e&&h.actions.deleteHandler(e),h.actions.setEditingHandler(null);return}}};Te.useHotkeys("esc",()=>{setTimeout(()=>{v()},100)},[]),p.useEffect(()=>{Tt.subscribe(k=>{k===e&&N()})},[c,e]);const[x,w]=p.useState({className:!1,method:!1,pattern:!1,verbs:!1}),m=()=>{if(x.method&&!c.method)return"Method is required";if(E){const k=E==null?void 0:E.find(D=>D.name===c.method);if(c.method&&!k)return`The method "${c.method}" doesn't exist.`;if(k&&k.exposed)return`Method "${c.method}" is already exposed`}},_=()=>{var k;if(x.pattern){if(c.asRegex&&!c.regexPattern)return"Pattern is required";if(!c.asRegex&&((k=c.pattern)!=null&&k.endsWith("/")))return'Pattern should not end with a "/"'}};return d.jsxs("div",{className:"flex items-center gap-2 rounded-b py-2",children:[d.jsxs("div",{className:"flex w-60 shrink-0 items-center gap-1",children:[d.jsx(el,{listeners:s,attributes:l},"grab-handle"),d.jsx(Oh,{"data-cy":"handler-row-class-selector",value:c.className,onChange:k=>{u(D=>({...D,className:k}))},onBlur:()=>w(k=>({...k,className:!0})),options:I,errorMessage:x.className&&!c.className?"Class name is required":c.className!==""&&!I.find(k=>k.name===c.className)?`The singleton "${c.className}" doesn't exist.`:void 0},r)]}),d.jsx("div",{className:"w-60 shrink-0",children:d.jsx(_h,{"data-cy":"handler-row-method-selector",value:c.method,onChange:k=>{u(D=>({...D,method:k}))},options:E||[],errorMessage:m(),onBlur:()=>w(k=>({...k,method:!0}))})}),d.jsxs("div",{className:"relative w-60 shrink-0 flex items-center gap-1 overflow-visible",children:[d.jsx(Ve,{label:c.asRegex?tl(c.regexPattern):c.pattern&&!c.pattern.endsWith("/")?`Requests starting with /${c.pattern}/ will be handled`:"",className:"w-full",container:Le(),children:d.jsxs(Kt.Root,{"data-cy":"handler-row-pattern-input",isInvalid:x.pattern&&c.asRegex&&!c.regexPattern,className:"w-full",color:_()?"negative":"primary",children:[d.jsxs(Kt.Group,{children:[!c.asRegex&&d.jsx(Kt.Icon,{className:"text-xs grid place-content-center",children:"/"}),d.jsx(Kt.Field,{value:c.asRegex?c.regexPattern:c.pattern,onChange:k=>{u(D=>({...D,[c.asRegex?"regexPattern":"pattern"]:k.target.value}))},onBlur:()=>w(k=>({...k,pattern:!0})),placeholder:c.asRegex?"Required":""})]}),_()&&d.jsx(Kt.Message,{children:_()})]})}),(a?i:o)&&d.jsx(rt,{variant:"ghost",color:"white",onClick:k=>{k.stopPropagation(),u(D=>({...D,[c.asRegex?"regexPattern":"pattern"]:""}))},children:d.jsx(rr,{"aria-hidden":"true"})}),d.jsx(Ve,{label:c.asRegex?d.jsxs("span",{children:["Requests matching this regex will be handled. Check the match with the"," ",d.jsx("a",{href:"https://developer.4d.com/docs/commands/match-regex",target:"_blank",rel:"noopener noreferrer",children:"Match regex command"})]}):d.jsxs("span",{children:["Prefixes are considered as regular expressions already containing starting and ending /",d.jsx("br",{}),d.jsx("a",{href:"https://developer.4d.com/qodly/4DQodlyPro/httpHandlers",target:"_blank",rel:"noopener noreferrer",className:"font-bold",children:"documentation"})]}),container:Le(),children:d.jsx("span",{className:"rounded hover:bg-primary-hover text-body w-6 h-6 flex items-center content-center justify-center",children:d.jsx(Dl,{className:"inline h-4 w-4"})})})]}),d.jsx("div",{className:"w-20 px-2 flex justify-center",children:d.jsx(Da,{"data-cy":"handler-row-regex-switch",checked:!!c.asRegex,onChange:k=>{const D=k?{regexPattern:o,asRegex:k}:{pattern:i,asRegex:k};u(F=>({...F,...D}))}})}),d.jsxs("div",{className:"flex flex-1 items-center",children:[d.jsx(Sh,{"data-cy":"handler-row-verbs-combobox",initialSelectedItems:c.verbs||[],onChange:k=>{u(D=>({...D,verbs:k}))},touched:x.verbs,onBlur:()=>w(k=>({...k,verbs:!0}))}),d.jsxs("div",{className:"flex items-center gap-0.5 px-2",children:[d.jsx(Ve,{label:"Duplicate Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-duplicate-button",variant:"ghost",color:"white",disabled:!0,className:"cursor-not-allowed",children:d.jsx(Xi,{})})}),d.jsx(Ve,{label:"Confirm Changes",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-save-button",variant:"ghost",color:"white",disabled:!b(),onClick:N,className:zr(!b()&&"cursor-not-allowed"),children:d.jsx(Il,{})})}),d.jsx(Ve,{label:"Cancel Changes",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-cancel-button",variant:"ghost",color:"white",onClick:v,children:d.jsx(Ol,{})})})]})]})]})},Ui=({id:e,class:r,method:t,pattern:o,verbs:n,isExpanded:i,regexPattern:a,asRegex:s})=>{var j;const{attributes:l,listeners:c,setNodeRef:u,transform:h,transition:g}=Gt.useSortable({id:e}),I={transform:vl.CSS.Transform.toString(h),transition:g},E=yt(),y=E.getEditingHandlerId(),b=s?a:o,N=E.getCatalog(),v=Object.values((N==null?void 0:N.singletons)||{}),x=(j=v==null?void 0:v.find(k=>k.name===r))==null?void 0:j.methods.map(({name:k,exposed:D})=>({name:k,exposed:D})),w=v==null?void 0:v.find(k=>k.name===r),m=x==null?void 0:x.find(k=>k.name===t),_=m&&m.exposed;return d.jsx("div",{className:"odd:bg-white/5","data-cy":`handler-row-${y===e?"editing":"viewing"}`,ref:u,style:I,children:y===e?d.jsx(Nh,{id:e,class:r,method:t,pattern:o,verbs:n,isExpanded:i,regexPattern:a,asRegex:s,listeners:c,attributes:l}):d.jsxs("div",{className:"flex items-center gap-2 rounded-b py-2.5",onDoubleClick:()=>{Tt.next(y),E.actions.setEditingHandler(e)},children:[d.jsxs("div",{className:"flex w-60 shrink-0 items-center gap-1 ",children:[d.jsx(el,{listeners:c,attributes:l},"grab-handle"),d.jsx("div",{className:"text-s w-full",children:r?d.jsxs("div",{className:zr("flex items-center gap-2"),children:[!w&&d.jsx(Ve,{label:`The singleton "${r}" doesn't exist.`,color:"negative",container:Le(),children:d.jsx("span",{className:"rounded p-0.5 pt-0.5 h-5 w-5 flex justify-center content-center",children:d.jsx(kr,{className:"h-4 w-4"})})})," ",r]}):d.jsx("span",{className:"text-inactive-text italic",children:"undefined"})})]}),d.jsx("div",{className:"w-60 shrink-0 ",children:d.jsx("div",{className:"text-s w-full",children:t?d.jsxs("div",{className:zr("flex items-center gap-2",!m&&"text-negative-text",_&&"text-warning-text"),children:[!m&&d.jsx(Ve,{label:`The method "${t}" doesn't exist.`,color:"negative",container:Le(),children:d.jsx("span",{className:"text-negative-text hover:bg-negative-hover rounded p-0.5 pt-0.5 h-5 w-5 flex justify-center content-center",children:d.jsx(kr,{className:"inline h-4 w-4"})})}),_&&d.jsx(Ve,{label:`Method "${t}" is already exposed`,color:"warning",container:Le(),children:d.jsx("span",{className:"text-warning-text hover:bg-warning-hover rounded p-0.5 pt-0.5 h-5 w-5 flex justify-center content-center",children:d.jsx(kr,{className:"inline h-4 w-4"})})}),t]}):d.jsx("span",{className:"text-inactive-text italic",children:"undefined"})})}),d.jsx("div",{className:"text-s relative w-60 shrink-0",children:b?d.jsx(Ve,{label:s?tl(b):`Requests starting with /${b}/ will be handled`,container:Le(),children:d.jsx("span",{children:b})}):d.jsx("span",{className:"text-inactive-text italic",children:"/"})}),d.jsx("div",{className:"px-5 w-20 flex justify-center text-inactive-text",children:s?d.jsx(yl,{}):d.jsx(kl,{})}),d.jsxs("div",{className:"flex flex-1 items-center",children:[d.jsx("div",{className:"text-s w-full",children:n.length?n.join(","):d.jsx("span",{className:"text-inactive-text italic",children:"undefined"})}),d.jsxs("div",{className:"flex items-center gap-0.5 px-2",children:[d.jsx(Ve,{label:"Duplicate Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-duplicate-button",variant:"ghost",color:"white",onClick:()=>E.actions.duplicateHandler(e),children:d.jsx(Xi,{})})}),d.jsx(Ve,{label:"Edit Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-edit-button",variant:"ghost",color:"white",onClick:()=>{Tt.next(y),E.actions.setEditingHandler(e)},children:d.jsx(zl,{})})}),d.jsx(Ve,{label:"Delete Handler",position:"up-end",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-delete-button",variant:"ghost",color:"white",onClick:async()=>{if(E.getHost()==="vscode"){E.actions.deleteHandler(e);return}const{confirmed:k}=await E.actions.openModal({title:"Delete Handler",type:Te.ModalType.CONFIRM,color:Te.ModalColor.DANGER,message:"Are you sure you want to remove this Handler?",icon:"FdWarningDanger"});k&&E.actions.deleteHandler(e)},children:d.jsx(Rl,{})})})]})]})]})})},rl=({className:e})=>{const r=yt(),t=r.getEditingHandlerId();return d.jsx(Ve,{label:"Add a new HTTP Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handlers-editor-add-handler-button",variant:"ghost",color:"white",disabled:!!t,onClick:()=>{Tt.next(t),r.actions.addHandler({class:"",isExpanded:!0,method:"",pattern:"",verbs:[],regexPattern:""})},className:e,children:d.jsx(Ut.FdPlus,{className:"size-4"})})})},Ch=({label:e,Icon:r,onClick:t})=>d.jsx(Te.ToolbarIcon,{label:e,Icon:r,as:"button",onClick:t}),Dh=({hasHorizontalScroll:e,showAddButton:r})=>{const t=yt(),{canUndo:o,canRedo:n}=t.getActiveTabHistoryActions(),i=t.actions.undo,a=t.actions.redo;return d.jsxs(Tr,{depth:1,className:"flex items-center justify-between border-b p-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(Te.ToolbarIcon,{"data-cy":"toolbar-undo-button",label:"Undo",disabled:!o,Icon:Ut.FdUndo,as:"button",onClick:o?i:void 0}),d.jsx(Te.ToolbarIcon,{"data-cy":"toolbar-redo-button",label:"Redo",disabled:!n,Icon:Ut.FdRedo,as:"button",onClick:n?a:void 0}),!!t.actions.switchEditor&&d.jsx(Ch,{label:"Switch to text Editor",Icon:Ut.FdCode,onClick:()=>t.actions.switchEditor({config:{language:"json"},key:"editors:code"}),"data-cy":"handlers-editor-switch-to-code-button"})]}),d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs("p",{className:zr("text-muted text-s items-center gap-1",e?"hidden lg:flex":"flex pr-2"),children:[d.jsx(Ut.FdInfoCircle,{className:"inline text-base"})," HTTP handlers are evaluated in the order they are declared"]}),r&&d.jsx(rl,{})]})]})},zh=()=>{const e=yt(),r=e.getHandlers(),t=e.getEditingHandlerId(),o=lt.useSensors(lt.useSensor(lt.PointerSensor),lt.useSensor(lt.KeyboardSensor,{coordinateGetter:Gt.sortableKeyboardCoordinates})),[n,i]=p.useState(null),[a,s]=p.useState(!1),l=p.useRef(null),c=r.find(u=>u.id===n);return p.useEffect(()=>{const u=()=>{if(l.current){const g=l.current.scrollWidth>l.current.clientWidth;s(g)}};u();const h=new ResizeObserver(u);return l.current&&h.observe(l.current),()=>{h.disconnect()}},[r.length]),d.jsxs(Tr,{depth:1,className:"flex h-full w-full flex-col",children:[d.jsx(Dh,{hasHorizontalScroll:a,showAddButton:!(r.length>0&&!a)}),d.jsx("div",{className:"mt-1 flex flex-1 flex-col overflow-x-auto px-4",ref:l,children:r.length?d.jsxs("div",{className:"flex h-full min-w-300 flex-1 flex-col",children:[d.jsxs(Tr,{depth:1,borderType:"light",className:"mb-3 flex items-center gap-2 border-b",children:[d.jsx("div",{className:"w-60 shrink-0 text-xs",children:d.jsx("span",{className:"pl-6",children:"Class"})}),d.jsx("div",{className:"w-60 shrink-0 text-xs",children:"Method"}),d.jsx("div",{className:"w-60 shrink-0 text-xs",children:"Pattern"}),d.jsx("div",{className:"w-20 px-2 text-center text-xs",children:"As Regex"}),d.jsxs("div",{className:"flex flex-1 items-center justify-between text-xs",children:[d.jsx("span",{children:"Verbs"}),d.jsx("div",{className:`flex items-center gap-2 text-2xl h-7 ${a?"invisible":""}`,children:d.jsx(rl,{})})]})]}),d.jsx("div",{className:"py-3","data-cy":"handlers-editor-list",children:d.jsxs(lt.DndContext,{sensors:o,collisionDetection:lt.closestCenter,onDragStart:u=>{i(u.active.id)},onDragEnd:u=>{const{active:h,over:g}=u;if(i(null),!(!h||!g)&&h.id!==(g==null?void 0:g.id)){const I=r.map(y=>y.id).indexOf(h.id),E=r.map(y=>y.id).indexOf(g.id);e.actions.updateHandlers(Gt.arrayMove(r,I,E))}},children:[d.jsx(Gt.SortableContext,{items:r,strategy:Gt.verticalListSortingStrategy,children:r.map(({id:u,...h})=>d.jsx(Ui,{id:u,...h},u))}),d.jsx(lt.DragOverlay,{children:n&&c?d.jsx("div",{className:"opacity-10",children:d.jsx(Ui,{...c})}):null})]})})]}):d.jsxs("div",{className:"mt-6",children:[d.jsx("div",{children:d.jsx(Cl,{className:"text-muted mx-auto h-9 w-9"})}),d.jsxs("div",{className:"text-s text-muted mx-auto mt-3 max-w-sm text-center",children:["There are no http handlers configured yet ",d.jsx("br",{}),"Please add a new one to add a new one."]}),d.jsx("div",{className:"mt-3 flex items-center justify-center",children:d.jsxs(rt,{"data-cy":"handlers-editor-empty-add-handler-button",onClick:()=>{Tt.next(t),e.actions.addHandler({class:"",isExpanded:!0,method:"",pattern:"",verbs:[],regexPattern:""})},children:[d.jsx(Ml,{})," Add New Handler"]})})]})})]})},ol=()=>d.jsx(zh,{}),Mh=()=>{const{modals:e,closeModal:r,editModal:t}=Qs();return d.jsx(d.Fragment,{children:e.map((o,n)=>d.jsx(Te.Modal,{hasOverlay:n===0,...o,onClose:r,onEdit:t,container:Le()},o.id))})},jh=({initialValue:e,onChange:r})=>{const t=yt(),o=t.getHandlers(),n=p.useRef(e),i=p.useMemo(()=>En(o),[o]);return p.useEffect(()=>{if(n.current!==e&&(n.current=e,e!==void 0))try{const a=Yr(e);wt.isEqual(t.getHandlers(),a)||t.actions.updateHandlers(a)}catch(a){console.error("[HTTP Handlers Editor Standalone] Error while parsing the initial value:",a)}},[t,e]),Te.useDidMountEffect(()=>{if(r)try{r(i)}catch(a){console.error("[HTTP Handlers Editor Standalone] Error on value stringify:",a)}},[r,i]),d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"h-screen bg-grey-900",children:d.jsx(ol,{})}),d.jsx(Mh,{})]})},Rh=e=>{const r=Js();return d.jsx(Us,{adapter:r,children:d.jsx(Te.TipsProvider,{children:d.jsx(jh,{...e})})})},Th=({initialValue:e=[],catalog:r,host:t="vscode",history:o,editingHandlerId:n,onEditingHandlerChange:i,...a})=>d.jsx(Xs,{content:e,catalog:r,host:t,history:o,editingHandlerId:n,onEditingHandlerChange:i,children:d.jsx(Rh,{...a})});exports.HTTP_HANDLERS_EDITOR_SCOPE_CLASS=Zi.HTTP_HANDLERS_EDITOR_SCOPE_CLASS;exports.$handlerSubject=Tt;exports.EditorStateAdapterProvider=Us;exports.EditorStateContext=Zr;exports.HTTPHandlersEditor=ol;exports.ReducerAdapterProvider=Xs;exports.Standalone=Th;exports.getDefaultInitialState=Wr;exports.handlerReducer=_n;exports.jsonSchema=wl;exports.normalizeHandlers=Yr;exports.serializeHandlers=En;exports.useEditorStateAdapter=yt;exports.useModals=Qs;exports.useReducerAdapter=Js;exports.useReduxAdapter=Eh;
|
|
55
|
+
`):"",this.name="UnsubscriptionError",this.errors=t}});function qi(e,r){if(e){var t=e.indexOf(r);0<=t&&e.splice(t,1)}}var On=(function(){function e(r){this.initialTeardown=r,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var r,t,o,n,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=$i(a),l=s.next();!l.done;l=s.next()){var c=l.value;c.remove(this)}}catch(y){r={error:y}}finally{try{l&&!l.done&&(t=s.return)&&t.call(s)}finally{if(r)throw r.error}}else a.remove(this);var u=this.initialTeardown;if(xt(u))try{u()}catch(y){i=y instanceof fo?y.errors:[y]}var h=this._finalizers;if(h){this._finalizers=null;try{for(var g=$i(h),I=g.next();!I.done;I=g.next()){var E=I.value;try{Ki(E)}catch(y){i=i??[],y instanceof fo?i=Oo(Oo([],So(i)),So(y.errors)):i.push(y)}}}catch(y){o={error:y}}finally{try{I&&!I.done&&(n=g.return)&&n.call(g)}finally{if(o)throw o.error}}}if(i)throw new fo(i)}},e.prototype.add=function(r){var t;if(r&&r!==this)if(this.closed)Ki(r);else{if(r instanceof e){if(r.closed||r._hasParent(this))return;r._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(r)}},e.prototype._hasParent=function(r){var t=this._parentage;return t===r||Array.isArray(t)&&t.includes(r)},e.prototype._addParent=function(r){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(r),t):t?[t,r]:r},e.prototype._removeParent=function(r){var t=this._parentage;t===r?this._parentage=null:Array.isArray(t)&&qi(t,r)},e.prototype.remove=function(r){var t=this._finalizers;t&&qi(t,r),r instanceof e&&r._removeParent(this)},e.EMPTY=(function(){var r=new e;return r.closed=!0,r})(),e})();On.EMPTY;function uh(e){return e instanceof On||e&&"closed"in e&&xt(e.remove)&&xt(e.add)&&xt(e.unsubscribe)}function Ki(e){xt(e)?e():e.unsubscribe()}var ph={setTimeout:function(e,r){for(var t=[],o=2;o<arguments.length;o++)t[o-2]=arguments[o];return setTimeout.apply(void 0,Oo([e,r],So(t)))},clearTimeout:function(e){return clearTimeout(e)},delegate:void 0};function hh(e){ph.setTimeout(function(){throw e})}function Gi(){}var Ys=(function(e){Sn(r,e);function r(t){var o=e.call(this)||this;return o.isStopped=!1,t?(o.destination=t,uh(t)&&t.add(o)):o.destination=mh,o}return r.create=function(t,o,n){return new vh(t,o,n)},r.prototype.next=function(t){this.isStopped||this._next(t)},r.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},r.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},r.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},r.prototype._next=function(t){this.destination.next(t)},r.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},r.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},r})(On),gh=(function(){function e(r){this.partialObserver=r}return e.prototype.next=function(r){var t=this.partialObserver;if(t.next)try{t.next(r)}catch(o){yr(o)}},e.prototype.error=function(r){var t=this.partialObserver;if(t.error)try{t.error(r)}catch(o){yr(o)}else yr(r)},e.prototype.complete=function(){var r=this.partialObserver;if(r.complete)try{r.complete()}catch(t){yr(t)}},e})(),vh=(function(e){Sn(r,e);function r(t,o,n){var i=e.call(this)||this,a;return xt(t)||!t?a={next:t??void 0,error:o??void 0,complete:n??void 0}:a=t,i.destination=new gh(a),i}return r})(Ys);function yr(e){hh(e)}function fh(e){throw e}var mh={closed:!0,next:Gi,error:fh,complete:Gi};function bh(e,r,t,o,n){return new xh(e,r,t,o,n)}var xh=(function(e){Sn(r,e);function r(t,o,n,i,a,s){var l=e.call(this,t)||this;return l.onFinalize=a,l.shouldUnsubscribe=s,l._next=o?function(c){try{o(c)}catch(u){t.error(u)}}:e.prototype._next,l._error=i?function(c){try{i(c)}catch(u){t.error(u)}finally{this.unsubscribe()}}:e.prototype._error,l._complete=n?function(){try{n()}catch(c){t.error(c)}finally{this.unsubscribe()}}:e.prototype._complete,l}return r.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var o=this.closed;e.prototype.unsubscribe.call(this),!o&&((t=this.onFinalize)===null||t===void 0||t.call(this))}},r})(Ys);function wh(e,r){return ch(function(t,o){var n=0;t.subscribe(bh(o,function(i){return e.call(r,i,n++)&&o.next(i)}))})}const Zs=new Yi.Subject,yh=new Set(["SYNC_DATA","TOGGLE_EXPANDED","TOGGLE_ALL_EXPANDED","SET_EDITING_HANDLER","CREATE_MODAL","REMOVE_MODAL","CLOSE_MODAL","EDIT_MODAL","UNDO","REDO"]);function kh(e){if(e.history.locked)return{...e,history:{...e.history,locked:!1}};const r=e.history.stack[e.history.active];if(wt.isEqual(r,e.content))return e;const t=[...e.history.stack.slice(0,e.history.active+1),e.content];return{...e,history:{stack:t,active:t.length-1,locked:!1}}}function _n(e,r){if(r.type==="UNDO"){if(e.history.active<=0)return e;const o=e.history.active-1;return{...e,content:e.history.stack[o],history:{...e.history,active:o,locked:!0}}}if(r.type==="REDO"){if(e.history.active>=e.history.stack.length-1)return e;const o=e.history.active+1;return{...e,content:e.history.stack[o],history:{...e.history,active:o,locked:!0}}}const t=Ih(e,r);return t.content!==e.content&&!yh.has(r.type)?kh(t):t}function Ih(e,r){switch(r.type){case"UPDATE_HANDLERS":return{...e,content:r.payload};case"SET_EDITING_HANDLER":{if(r.payload&&r.payload!==e.editing){const t=e.content.find(o=>o.id===e.editing);if(t&&!Object.values(wt.omit(t,["id","verbs","asRegex","isExpanded"])).some(Boolean)&&t.verbs.length===0)return{...e,content:e.content.filter(n=>n.id!==t.id),editing:r.payload}}return{...e,editing:r.payload}}case"ADD_HANDLER":{const{id:t}=r;return{...e,content:[...e.content,{...r.payload,id:t}],editing:t,newlyCreatedHandlerID:t}}case"UPDATE_HANDLER":return{...e,content:e.content.map(t=>t.id===r.id?{...t,...r.payload}:t),newlyCreatedHandlerID:null};case"DELETE_HANDLER":return{...e,content:e.content.filter(t=>t.id!==r.id)};case"TOGGLE_EXPANDED":return{...e,content:e.content.map(t=>t.id===r.id?{...t,isExpanded:!t.isExpanded}:t)};case"DUPLICATE_HANDLER":{const t=e.content.find(o=>o.id===r.id);return t?{...e,content:[...e.content,{...t,id:Xt.generate(),isExpanded:!0}]}:e}case"TOGGLE_ALL_EXPANDED":return{...e,content:e.content.map(t=>({...t,isExpanded:r.payload}))};case"SYNC_DATA":return e.editing!==null||e.newlyCreatedHandlerID!==null?e:{...e,content:r.payload.map(t=>{const o=e.content.find(n=>n.id===t.id);return o?{...t,...o}:t})};case"CREATE_MODAL":return{...e,modals:{...e.modals,list:[...e.modals.list,r.payload]}};case"REMOVE_MODAL":return{...e,modals:{...e.modals,list:e.modals.list.filter(t=>t.id!==r.payload)}};case"CLOSE_MODAL":{const{id:t,reason:o}=r.payload;let n;if(o)if(e.modals.list.find(a=>a.id===t))n={...e,modals:{...e.modals,list:e.modals.list.map(a=>a.id===t?{...a,closeReason:o,isOpen:!1}:a)}};else return e;else n={...e,modals:{...e.modals,list:e.modals.list.filter(i=>i.id!==t)}};return Zs.next(n.modals),n}case"EDIT_MODAL":{const{id:t,...o}=r.payload;return e.modals.list.find(i=>i.id===t)?{...e,modals:{...e.modals,list:e.modals.list.map(i=>i.id===t?{...i,...o}:i)}}:e}default:return e}}const Zr=p.createContext(null),Wr=e=>({content:e,editing:null,newlyCreatedHandlerID:null,modals:{list:[]},history:{stack:[e],active:0,locked:!1}}),Xs=({children:e,content:r,catalog:t=null,host:o="web",history:n,editingHandlerId:i,onEditingHandlerChange:a})=>{const s=p.useMemo(()=>Yr(r),[r]),[l,c]=p.useReducer(_n,Wr(s));p.useEffect(()=>{c({type:"SYNC_DATA",payload:s})},[s]);const u=p.useMemo(()=>({catalog:t,host:o,history:n,editingHandlerId:i,onEditingHandlerChange:a}),[t,o,n,i,a]);return d.jsx(Zr.Provider,{value:{state:l,dispatch:c,external:u},children:e})};function Js(){var n,i,a,s;const e=p.useContext(Zr);if(!e)throw new Error("useReducerAdapter must be used within a ReducerAdapterProvider");const{state:r,dispatch:t,external:o}=e;return{getHandlers:p.useCallback(()=>r.content,[r.content]),getEditingHandlerId:p.useCallback(()=>o.editingHandlerId!==void 0?o.editingHandlerId:r.editing,[o.editingHandlerId,r.editing]),getNewlyCreatedHandlerId:p.useCallback(()=>r.newlyCreatedHandlerID,[r.newlyCreatedHandlerID]),getCatalog:p.useCallback(()=>o.catalog??null,[o.catalog]),getHost:p.useCallback(()=>o.host??"web",[o.host]),getActiveTabHistoryActions:p.useCallback(()=>{var l,c;return{canUndo:((l=o.history)==null?void 0:l.canUndo)??r.history.active>0,canRedo:((c=o.history)==null?void 0:c.canRedo)??r.history.active<r.history.stack.length-1}},[r.history,(n=o.history)==null?void 0:n.canUndo,(i=o.history)==null?void 0:i.canRedo]),actions:{updateHandlers:p.useCallback(l=>{t({type:"UPDATE_HANDLERS",payload:l})},[]),addHandler:p.useCallback(l=>{var u;const c=Xt.generate();t({type:"ADD_HANDLER",payload:l,id:c}),(u=o.onEditingHandlerChange)==null||u.call(o,c)},[o.onEditingHandlerChange]),updateHandler:p.useCallback((l,c)=>{t({type:"UPDATE_HANDLER",id:l,payload:c})},[]),deleteHandler:p.useCallback(l=>{t({type:"DELETE_HANDLER",id:l})},[]),toggleExpanded:p.useCallback(l=>{t({type:"TOGGLE_EXPANDED",id:l})},[]),duplicateHandler:p.useCallback(l=>{t({type:"DUPLICATE_HANDLER",id:l})},[]),toggleAllExpanded:p.useCallback(l=>{t({type:"TOGGLE_ALL_EXPANDED",payload:l})},[]),setEditingHandler:p.useCallback(l=>{var c;(c=o.onEditingHandlerChange)==null||c.call(o,l),t({type:"SET_EDITING_HANDLER",payload:l})},[o.onEditingHandlerChange]),undo:p.useCallback(()=>{var l;if((l=o.history)!=null&&l.onUndo){o.history.onUndo();return}t({type:"UNDO"})},[(a=o.history)==null?void 0:a.onUndo]),redo:p.useCallback(()=>{var l;if((l=o.history)!=null&&l.onRedo){o.history.onRedo();return}t({type:"REDO"})},[(s=o.history)==null?void 0:s.onRedo]),openModal:p.useCallback(async l=>{const{type:c=Te.ModalType.ALERT}=l,u=Xt.generate();return t({type:"CREATE_MODAL",payload:{id:u,type:c,isOpen:!0,...l}}),c===Te.ModalType.CONFIRM?new Promise(h=>{const g=Zs.pipe(wh(I=>{const E=I.list.find(y=>y.id===u);return E!==void 0&&!E.isOpen})).subscribe(I=>{var y;const E=I.list.find(b=>b.id===u);if(E){const b=E.closeReason===Te.ModalCloseReason.CONFIRMED,N=wt.entries(((y=E.views)==null?void 0:y.toggles)||{}).reduce((v,x)=>({...v,[x[0]]:x[1].value}),{});t({type:"REMOVE_MODAL",payload:u}),g.unsubscribe(),h({confirmed:b,options:N})}})}):{confirmed:!1}},[t])}}}function Eh(e,r){const t=ct.useAppDispatch(),o=ct.useAppSelector(ct.selectTabByPath(e),wt.isEqual),n=ct.useAppSelector(ct.selectCatalog),i=p.useMemo(()=>Yr(o==null?void 0:o.content),[o==null?void 0:o.content]),[a,s]=p.useReducer(_n,Wr(r||i));return Te.useDidMountEffect(()=>{s({type:"SYNC_DATA",payload:i})},[i]),p.useEffect(()=>{if(!o)return;const l=En(a.content),c=typeof o.content=="string"?o.content:JSON.stringify(o.content,null,2);l!==c&&t(ct.setContent({path:e,content:l}))},[t,e,a.content,o]),{getHandlers:p.useCallback(()=>a.content,[a.content]),getEditingHandlerId:p.useCallback(()=>a.editing,[a.editing]),getNewlyCreatedHandlerId:p.useCallback(()=>a.newlyCreatedHandlerID,[a.newlyCreatedHandlerID]),getCatalog:p.useCallback(()=>n??null,[n]),getHost:()=>"web",getActiveTabHistoryActions:p.useCallback(()=>({canUndo:a.history.active>0,canRedo:a.history.active<a.history.stack.length-1}),[a.history]),actions:{updateHandlers:p.useCallback(l=>{s({type:"UPDATE_HANDLERS",payload:l})},[]),addHandler:p.useCallback(l=>{s({type:"ADD_HANDLER",payload:l,id:Xt.generate()})},[]),updateHandler:p.useCallback((l,c)=>{s({type:"UPDATE_HANDLER",id:l,payload:c})},[]),deleteHandler:p.useCallback(l=>{s({type:"DELETE_HANDLER",id:l})},[]),toggleExpanded:p.useCallback(l=>{s({type:"TOGGLE_EXPANDED",id:l})},[]),duplicateHandler:p.useCallback(l=>{s({type:"DUPLICATE_HANDLER",id:l})},[]),toggleAllExpanded:p.useCallback(l=>{s({type:"TOGGLE_ALL_EXPANDED",payload:l})},[]),setEditingHandler:p.useCallback(l=>{s({type:"SET_EDITING_HANDLER",payload:l})},[]),undo:p.useCallback(()=>{s({type:"UNDO"})},[]),redo:p.useCallback(()=>{s({type:"REDO"})},[]),openModal:p.useCallback(async l=>await t(ct.openModal(l)).unwrap(),[t]),switchEditor:p.useCallback(l=>{o&&t(ct.switchEditor({tab:o,editor:l}))},[t,o])}}}function Qs(){const e=p.useContext(Zr);if(!e)throw new Error("useModals must be used within a ReducerAdapterProvider");const{state:r,dispatch:t}=e;return{modals:r.modals.list,closeModal:p.useCallback(o=>{t({type:"CLOSE_MODAL",payload:o})},[t]),editModal:p.useCallback(o=>{t({type:"EDIT_MODAL",payload:o})},[t]),removeModal:p.useCallback(o=>{t({type:"REMOVE_MODAL",payload:o})},[t])}}const Tt=new Yi.Subject,Le=()=>document.querySelector(`.${Zi.HTTP_HANDLERS_EDITOR_SCOPE_CLASS}`)||document.body,Sh=({initialSelectedItems:e,onChange:r,touched:t,onBlur:o,"data-cy":n})=>{const i=["GET","POST","PUT","DELETE"],[a,s]=p.useState(e),[l,c]=p.useState(!1);p.useEffect(()=>{s(e)},[e]);const u=h=>{s(h),r(h)};return d.jsx(qe.Root,{"data-cy":n,isInvalid:t&&a.length===0,isMulti:!0,isSearchable:!0,options:i,value:a,onChange:h=>u(h||[]),onOpenChange:c,className:"w-full",children:d.jsxs("div",{className:"relative flex-1",children:[d.jsx(qe.Group,{children:d.jsx(qe.Field,{placeholder:a.length===0?"Select HTTP verbs":"",onBlur:o,hideSelectedOptions:!0})}),t&&a.length===0&&!l&&d.jsx(qe.Message,{children:"At least one HTTP verb is required"})]})})},Oh=({value:e,options:r,errorMessage:t="",onChange:o,onBlur:n,"data-cy":i})=>{const[a,s]=p.useState(!1),l=e&&!r.find(h=>h.name===e),c=h=>{o(h===null?"":h.name)},u=e?{name:e}:null;return d.jsx("div",{className:"w-full",children:d.jsxs(qe.Root,{"data-cy":i,className:"w-full",isInvalid:!!(l||t),isSearchable:!0,options:r,value:u,onChange:c,onOpenChange:s,children:[d.jsx(qe.Group,{children:d.jsx(qe.Field,{isClearable:!!e,onBlur:n,placeholder:"Select...",noOptionsMessage:"Nothing found."})}),t&&!a&&d.jsx(qe.Message,{children:t})]})})},_h=({value:e,options:r,onChange:t,errorMessage:o,onBlur:n,"data-cy":i})=>{const[a,s]=p.useState(!1),l=r.find(h=>h.name===e),c=h=>{t(h===null?"":h.name)},u=l||(e?{name:e,exposed:!1}:null);return d.jsx("div",{className:"w-full relative",children:d.jsxs(qe.Root,{"data-cy":i,className:"w-full",isInvalid:!!o,isSearchable:!0,options:r,value:u,onChange:c,getOptionLabel:h=>h.name,getOptionValue:h=>h.name,onOpenChange:s,children:[d.jsx(qe.Group,{children:d.jsx(qe.Field,{placeholder:"Select method...",renderOption:({data:h})=>d.jsxs("div",{className:"flex items-center gap-2 truncate",children:[h.exposed&&d.jsx(kr,{className:"text-warning shrink-0"}),d.jsx("span",{className:"truncate",title:h.name,children:h.name})]}),onBlur:n,isClearable:!!e,noOptionsMessage:"Nothing found."})}),o&&!a&&d.jsx(qe.Message,{children:o})]})})},el=({listeners:e,attributes:r})=>d.jsx("button",{"data-cy":"handler-row-drag-handle",...r,...e,children:d.jsx(Nl,{})}),tl=e=>{var t;if(!e)return"";let r;Ln.prototype.max=8;try{r=(t=new Ln(e))==null?void 0:t.gen()}catch{r=""}return`Requests matching regex will be handled example: ${r}`},Nh=({id:e,class:r,method:t,pattern:o,verbs:n,regexPattern:i,asRegex:a,listeners:s,attributes:l})=>{var j;const[c,u]=p.useState({className:r,method:t,pattern:o,verbs:n,asRegex:a,regexPattern:i}),h=yt(),g=h.getCatalog(),I=Object.values((g==null?void 0:g.singletons)||{}),E=(j=I.find(k=>k.name===c.className))==null?void 0:j.methods.map(({name:k,exposed:D})=>({name:k,exposed:D})),y=h.getNewlyCreatedHandlerId();function b(){const{className:k,method:D,asRegex:F,regexPattern:L,pattern:U,verbs:te}=c;return!!(k&&D&&(F?L:!(U!=null&&U.endsWith("/")))&&te.length)}function N(){if(b()){const{className:k,method:D,asRegex:F,regexPattern:L,pattern:U,verbs:te}=c,K=F?{regexPattern:L}:{pattern:U};h.actions.updateHandler(e,{class:k,method:D,verbs:te,asRegex:F,...K}),h.actions.setEditingHandler(null)}}const v=async()=>{const k={className:r,method:t,pattern:o,regexPattern:i,verbs:n},D=wt.omit(c,["id","isExpanded"]);if(!b()){y&&h.actions.deleteHandler(y),h.actions.setEditingHandler(null);return}if(!wt.isEqual(k,D)){const{confirmed:F}=await h.actions.openModal({title:"Cancel Changes",type:Te.ModalType.CONFIRM,color:Te.ModalColor.DANGER,message:"Are you sure you want to cancel changes made to this Handler?",icon:"FdWarningDanger"});if(F){y&&y===e&&h.actions.deleteHandler(e),h.actions.setEditingHandler(null);return}}};Te.useHotkeys("esc",()=>{setTimeout(()=>{v()},100)},[]),p.useEffect(()=>{Tt.subscribe(k=>{k===e&&N()})},[c,e]);const[x,w]=p.useState({className:!1,method:!1,pattern:!1,verbs:!1}),m=()=>{if(x.method&&!c.method)return"Method is required";if(E){const k=E==null?void 0:E.find(D=>D.name===c.method);if(c.method&&!k)return`The method "${c.method}" doesn't exist.`;if(k&&k.exposed)return`Method "${c.method}" is already exposed`}},_=()=>{var k;if(x.pattern){if(c.asRegex&&!c.regexPattern)return"Pattern is required";if(!c.asRegex&&((k=c.pattern)!=null&&k.endsWith("/")))return'Pattern should not end with a "/"'}};return d.jsxs("div",{className:"flex items-center gap-2 rounded-b py-2",children:[d.jsxs("div",{className:"flex w-60 shrink-0 items-center gap-1",children:[d.jsx(el,{listeners:s,attributes:l},"grab-handle"),d.jsx(Oh,{"data-cy":"handler-row-class-selector",value:c.className,onChange:k=>{u(D=>({...D,className:k}))},onBlur:()=>w(k=>({...k,className:!0})),options:I,errorMessage:x.className&&!c.className?"Class name is required":c.className!==""&&!I.find(k=>k.name===c.className)?`The singleton "${c.className}" doesn't exist.`:void 0},r)]}),d.jsx("div",{className:"w-60 shrink-0",children:d.jsx(_h,{"data-cy":"handler-row-method-selector",value:c.method,onChange:k=>{u(D=>({...D,method:k}))},options:E||[],errorMessage:m(),onBlur:()=>w(k=>({...k,method:!0}))})}),d.jsxs("div",{className:"relative w-60 shrink-0 flex items-center gap-1 overflow-visible",children:[d.jsx(Ve,{label:c.asRegex?tl(c.regexPattern):c.pattern&&!c.pattern.endsWith("/")?`Requests starting with /${c.pattern}/ will be handled`:"",className:"w-full",container:Le(),children:d.jsxs(Kt.Root,{"data-cy":"handler-row-pattern-input",isInvalid:x.pattern&&c.asRegex&&!c.regexPattern,className:"w-full",color:_()?"negative":"primary",children:[d.jsxs(Kt.Group,{children:[!c.asRegex&&d.jsx(Kt.Icon,{className:"text-xs grid place-content-center",children:"/"}),d.jsx(Kt.Field,{value:c.asRegex?c.regexPattern:c.pattern,onChange:k=>{u(D=>({...D,[c.asRegex?"regexPattern":"pattern"]:k.target.value}))},onBlur:()=>w(k=>({...k,pattern:!0})),placeholder:c.asRegex?"Required":""})]}),_()&&d.jsx(Kt.Message,{children:_()})]})}),(a?i:o)&&d.jsx(rt,{variant:"ghost",color:"white",onClick:k=>{k.stopPropagation(),u(D=>({...D,[c.asRegex?"regexPattern":"pattern"]:""}))},children:d.jsx(rr,{"aria-hidden":"true"})}),d.jsx(Ve,{label:c.asRegex?d.jsxs("span",{children:["Requests matching this regex will be handled. Check the match with the"," ",d.jsx("a",{href:"https://developer.4d.com/docs/commands/match-regex",target:"_blank",rel:"noopener noreferrer",children:"Match regex command"})]}):d.jsxs("span",{children:["Prefixes are considered as regular expressions already containing starting and ending /",d.jsx("br",{}),d.jsx("a",{href:"https://developer.4d.com/qodly/4DQodlyPro/httpHandlers",target:"_blank",rel:"noopener noreferrer",className:"font-bold",children:"documentation"})]}),container:Le(),children:d.jsx("span",{className:"rounded hover:bg-primary-hover text-body w-6 h-6 flex items-center content-center justify-center",children:d.jsx(Dl,{className:"inline h-4 w-4"})})})]}),d.jsx("div",{className:"w-20 px-2 flex justify-center",children:d.jsx(Da,{"data-cy":"handler-row-regex-switch",checked:!!c.asRegex,onChange:k=>{const D=k?{regexPattern:o,asRegex:k}:{pattern:i,asRegex:k};u(F=>({...F,...D}))}})}),d.jsxs("div",{className:"flex flex-1 items-center",children:[d.jsx(Sh,{"data-cy":"handler-row-verbs-combobox",initialSelectedItems:c.verbs||[],onChange:k=>{u(D=>({...D,verbs:k}))},touched:x.verbs,onBlur:()=>w(k=>({...k,verbs:!0}))}),d.jsxs("div",{className:"flex items-center gap-0.5 px-2",children:[d.jsx(Ve,{label:"Duplicate Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-duplicate-button",variant:"ghost",color:"white",disabled:!0,className:"cursor-not-allowed",children:d.jsx(Xi,{})})}),d.jsx(Ve,{label:"Confirm Changes",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-save-button",variant:"ghost",color:"white",disabled:!b(),onClick:N,className:zr(!b()&&"cursor-not-allowed"),children:d.jsx(Il,{})})}),d.jsx(Ve,{label:"Cancel Changes",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-cancel-button",variant:"ghost",color:"white",onClick:v,children:d.jsx(Ol,{})})})]})]})]})},Ui=({id:e,class:r,method:t,pattern:o,verbs:n,isExpanded:i,regexPattern:a,asRegex:s})=>{var j;const{attributes:l,listeners:c,setNodeRef:u,transform:h,transition:g}=Gt.useSortable({id:e}),I={transform:vl.CSS.Transform.toString(h),transition:g},E=yt(),y=E.getEditingHandlerId(),b=s?a:o,N=E.getCatalog(),v=Object.values((N==null?void 0:N.singletons)||{}),x=(j=v==null?void 0:v.find(k=>k.name===r))==null?void 0:j.methods.map(({name:k,exposed:D})=>({name:k,exposed:D})),w=v==null?void 0:v.find(k=>k.name===r),m=x==null?void 0:x.find(k=>k.name===t),_=m&&m.exposed;return d.jsx("div",{className:"odd:bg-white/5","data-cy":`handler-row-${y===e?"editing":"viewing"}`,ref:u,style:I,children:y===e?d.jsx(Nh,{id:e,class:r,method:t,pattern:o,verbs:n,isExpanded:i,regexPattern:a,asRegex:s,listeners:c,attributes:l}):d.jsxs("div",{className:"flex items-center gap-2 rounded-b py-2.5",onDoubleClick:()=>{Tt.next(y),E.actions.setEditingHandler(e)},children:[d.jsxs("div",{className:"flex w-60 shrink-0 items-center gap-1 ",children:[d.jsx(el,{listeners:c,attributes:l},"grab-handle"),d.jsx("div",{className:"text-s w-full",children:r?d.jsxs("div",{className:zr("flex items-center gap-2"),children:[!w&&d.jsx(Ve,{label:`The singleton "${r}" doesn't exist.`,color:"negative",container:Le(),children:d.jsx("span",{className:"rounded p-0.5 pt-0.5 h-5 w-5 flex justify-center content-center",children:d.jsx(kr,{className:"h-4 w-4"})})})," ",r]}):d.jsx("span",{className:"text-inactive-text italic",children:"undefined"})})]}),d.jsx("div",{className:"w-60 shrink-0 ",children:d.jsx("div",{className:"text-s w-full",children:t?d.jsxs("div",{className:zr("flex items-center gap-2",!m&&"text-negative-text",_&&"text-warning-text"),children:[!m&&d.jsx(Ve,{label:`The method "${t}" doesn't exist.`,color:"negative",container:Le(),children:d.jsx("span",{className:"text-negative-text hover:bg-negative-hover rounded p-0.5 pt-0.5 h-5 w-5 flex justify-center content-center",children:d.jsx(kr,{className:"inline h-4 w-4"})})}),_&&d.jsx(Ve,{label:`Method "${t}" is already exposed`,color:"warning",container:Le(),children:d.jsx("span",{className:"text-warning-text hover:bg-warning-hover rounded p-0.5 pt-0.5 h-5 w-5 flex justify-center content-center",children:d.jsx(kr,{className:"inline h-4 w-4"})})}),t]}):d.jsx("span",{className:"text-inactive-text italic",children:"undefined"})})}),d.jsx("div",{className:"text-s relative w-60 shrink-0",children:b?d.jsx(Ve,{label:s?tl(b):`Requests starting with /${b}/ will be handled`,container:Le(),children:d.jsx("span",{children:b})}):d.jsx("span",{className:"text-inactive-text italic",children:"/"})}),d.jsx("div",{className:"px-5 w-20 flex justify-center text-inactive-text",children:s?d.jsx(yl,{}):d.jsx(kl,{})}),d.jsxs("div",{className:"flex flex-1 items-center",children:[d.jsx("div",{className:"text-s w-full",children:n.length?n.join(","):d.jsx("span",{className:"text-inactive-text italic",children:"undefined"})}),d.jsxs("div",{className:"flex items-center gap-0.5 px-2",children:[d.jsx(Ve,{label:"Duplicate Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-duplicate-button",variant:"ghost",color:"white",onClick:()=>E.actions.duplicateHandler(e),children:d.jsx(Xi,{})})}),d.jsx(Ve,{label:"Edit Handler",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-edit-button",variant:"ghost",color:"white",onClick:()=>{Tt.next(y),E.actions.setEditingHandler(e)},children:d.jsx(zl,{})})}),d.jsx(Ve,{label:"Delete Handler",position:"up-end",container:Le(),children:d.jsx(rt,{"data-cy":"handler-row-delete-button",variant:"ghost",color:"white",onClick:async()=>{if(E.getHost()==="vscode"){E.actions.deleteHandler(e);return}const{confirmed:k}=await E.actions.openModal({title:"Delete Handler",type:Te.ModalType.CONFIRM,color:Te.ModalColor.DANGER,message:"Are you sure you want to remove this Handler?",icon:"FdWarningDanger"});k&&E.actions.deleteHandler(e)},children:d.jsx(Rl,{})})})]})]})]})})},rl=({className:e})=>{const r=yt(),t=r.getEditingHandlerId();return d.jsx(Ve,{label:"Add a new HTTP Handler",container:Le(),position:"left",usePortal:!0,children:d.jsx(rt,{"data-cy":"handlers-editor-add-handler-button",variant:"ghost",color:"white",disabled:!!t,onClick:()=>{Tt.next(t),r.actions.addHandler({class:"",isExpanded:!0,method:"",pattern:"",verbs:[],regexPattern:""})},className:e,children:d.jsx(Ut.FdPlus,{className:"size-4"})})})},Ch=({label:e,Icon:r,onClick:t})=>d.jsx(Te.ToolbarIcon,{label:e,Icon:r,as:"button",onClick:t}),Dh=({hasHorizontalScroll:e,showAddButton:r})=>{const t=yt(),{canUndo:o,canRedo:n}=t.getActiveTabHistoryActions(),i=t.actions.undo,a=t.actions.redo;return d.jsxs(Tr,{depth:1,className:"flex items-center justify-between border-b p-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(Te.ToolbarIcon,{"data-cy":"toolbar-undo-button",label:"Undo",disabled:!o,Icon:Ut.FdUndo,as:"button",onClick:o?i:void 0}),d.jsx(Te.ToolbarIcon,{"data-cy":"toolbar-redo-button",label:"Redo",disabled:!n,Icon:Ut.FdRedo,as:"button",onClick:n?a:void 0}),!!t.actions.switchEditor&&d.jsx(Ch,{label:"Switch to text Editor",Icon:Ut.FdCode,onClick:()=>t.actions.switchEditor({config:{language:"json"},key:"editors:code"}),"data-cy":"handlers-editor-switch-to-code-button"})]}),d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs("p",{className:zr("text-muted text-s items-center gap-1",e?"hidden lg:flex":"flex pr-2"),children:[d.jsx(Ut.FdInfoCircle,{className:"inline text-base"})," HTTP handlers are evaluated in the order they are declared"]}),r&&d.jsx(rl,{})]})]})},zh=()=>{const e=yt(),r=e.getHandlers(),t=e.getEditingHandlerId(),o=lt.useSensors(lt.useSensor(lt.PointerSensor),lt.useSensor(lt.KeyboardSensor,{coordinateGetter:Gt.sortableKeyboardCoordinates})),[n,i]=p.useState(null),[a,s]=p.useState(!1),l=p.useRef(null),c=r.find(u=>u.id===n);return p.useEffect(()=>{const u=()=>{if(l.current){const g=l.current.scrollWidth>l.current.clientWidth;s(g)}};u();const h=new ResizeObserver(u);return l.current&&h.observe(l.current),()=>{h.disconnect()}},[r.length]),d.jsxs(Tr,{depth:1,className:"flex h-full w-full flex-col",children:[d.jsx(Dh,{hasHorizontalScroll:a,showAddButton:!(r.length>0&&!a)}),d.jsx("div",{className:"mt-1 flex flex-1 flex-col overflow-x-auto px-4",ref:l,children:r.length?d.jsxs("div",{className:"flex h-full min-w-300 flex-1 flex-col",children:[d.jsxs(Tr,{depth:1,borderType:"light",className:"mb-3 flex items-center gap-2 border-b",children:[d.jsx("div",{className:"w-60 shrink-0 text-xs",children:d.jsx("span",{className:"pl-6",children:"Class"})}),d.jsx("div",{className:"w-60 shrink-0 text-xs",children:"Method"}),d.jsx("div",{className:"w-60 shrink-0 text-xs",children:"Pattern"}),d.jsx("div",{className:"w-20 px-2 text-center text-xs",children:"As Regex"}),d.jsxs("div",{className:"flex flex-1 items-center justify-between text-xs",children:[d.jsx("span",{children:"Verbs"}),d.jsx("div",{className:`flex items-center gap-2 text-2xl h-7 ${a?"invisible":""}`,children:d.jsx(rl,{})})]})]}),d.jsx("div",{className:"py-3","data-cy":"handlers-editor-list",children:d.jsxs(lt.DndContext,{sensors:o,collisionDetection:lt.closestCenter,onDragStart:u=>{i(u.active.id)},onDragEnd:u=>{const{active:h,over:g}=u;if(i(null),!(!h||!g)&&h.id!==(g==null?void 0:g.id)){const I=r.map(y=>y.id).indexOf(h.id),E=r.map(y=>y.id).indexOf(g.id);e.actions.updateHandlers(Gt.arrayMove(r,I,E))}},children:[d.jsx(Gt.SortableContext,{items:r,strategy:Gt.verticalListSortingStrategy,children:r.map(({id:u,...h})=>d.jsx(Ui,{id:u,...h},u))}),d.jsx(lt.DragOverlay,{children:n&&c?d.jsx("div",{className:"opacity-10",children:d.jsx(Ui,{...c})}):null})]})})]}):d.jsxs("div",{className:"mt-6",children:[d.jsx("div",{children:d.jsx(Cl,{className:"text-muted mx-auto h-9 w-9"})}),d.jsxs("div",{className:"text-s text-muted mx-auto mt-3 max-w-sm text-center",children:["There are no http handlers configured yet ",d.jsx("br",{}),"Please add a new one to add a new one."]}),d.jsx("div",{className:"mt-3 flex items-center justify-center",children:d.jsxs(rt,{"data-cy":"handlers-editor-empty-add-handler-button",onClick:()=>{Tt.next(t),e.actions.addHandler({class:"",isExpanded:!0,method:"",pattern:"",verbs:[],regexPattern:""})},children:[d.jsx(Ml,{})," Add New Handler"]})})]})})]})},ol=()=>d.jsx(zh,{}),Mh=()=>{const{modals:e,closeModal:r,editModal:t}=Qs();return d.jsx(d.Fragment,{children:e.map((o,n)=>d.jsx(Te.Modal,{hasOverlay:n===0,...o,onClose:r,onEdit:t,container:Le()},o.id))})},jh=({initialValue:e,onChange:r})=>{const t=yt(),o=t.getHandlers(),n=p.useRef(e),i=p.useMemo(()=>En(o),[o]);return p.useEffect(()=>{if(n.current!==e&&(n.current=e,e!==void 0))try{const a=Yr(e);wt.isEqual(t.getHandlers(),a)||t.actions.updateHandlers(a)}catch(a){console.error("[HTTP Handlers Editor Standalone] Error while parsing the initial value:",a)}},[t,e]),Te.useDidMountEffect(()=>{if(r)try{r(i)}catch(a){console.error("[HTTP Handlers Editor Standalone] Error on value stringify:",a)}},[r,i]),d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"h-screen bg-grey-900",children:d.jsx(ol,{})}),d.jsx(Mh,{})]})},Rh=e=>{const r=Js();return d.jsx(Us,{adapter:r,children:d.jsx(Te.TipsProvider,{children:d.jsx(jh,{...e})})})},Th=({initialValue:e=[],catalog:r,host:t="vscode",history:o,editingHandlerId:n,onEditingHandlerChange:i,...a})=>d.jsx(Xs,{content:e,catalog:r,host:t,history:o,editingHandlerId:n,onEditingHandlerChange:i,children:d.jsx(Rh,{...a})});exports.HTTP_HANDLERS_EDITOR_SCOPE_CLASS=Zi.HTTP_HANDLERS_EDITOR_SCOPE_CLASS;exports.$handlerSubject=Tt;exports.EditorStateAdapterProvider=Us;exports.EditorStateContext=Zr;exports.HTTPHandlersEditor=ol;exports.ReducerAdapterProvider=Xs;exports.Standalone=Th;exports.getDefaultInitialState=Wr;exports.handlerReducer=_n;exports.jsonSchema=wl;exports.normalizeHandlers=Yr;exports.serializeHandlers=En;exports.useEditorStateAdapter=yt;exports.useModals=Qs;exports.useReducerAdapter=Js;exports.useReduxAdapter=Eh;
|
|
56
56
|
//# sourceMappingURL=index.cjs.js.map
|