downshift 7.0.0 → 7.0.3

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.
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Downshift={},e.React)}(this,(function(e,t){"use strict";var n={exports:{}},i={},o="function"==typeof Symbol&&Symbol.for,r=o?Symbol.for("react.element"):60103,s=o?Symbol.for("react.portal"):60106,l=o?Symbol.for("react.fragment"):60107,u=o?Symbol.for("react.strict_mode"):60108,a=o?Symbol.for("react.profiler"):60114,d=o?Symbol.for("react.provider"):60109,c=o?Symbol.for("react.context"):60110,h=o?Symbol.for("react.async_mode"):60111,p=o?Symbol.for("react.concurrent_mode"):60111,g=o?Symbol.for("react.forward_ref"):60112,m=o?Symbol.for("react.suspense"):60113,I=o?Symbol.for("react.suspense_list"):60120,f=o?Symbol.for("react.memo"):60115,y=o?Symbol.for("react.lazy"):60116,v=o?Symbol.for("react.block"):60121,x=o?Symbol.for("react.fundamental"):60117,b=o?Symbol.for("react.responder"):60118,w=o?Symbol.for("react.scope"):60119;function S(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case h:case p:case l:case a:case u:case m:return e;default:switch(e=e&&e.$$typeof){case c:case g:case y:case f:case d:return e;default:return t}}case s:return t}}}function C(e){return S(e)===p}i.AsyncMode=h,i.ConcurrentMode=p,i.ContextConsumer=c,i.ContextProvider=d,i.Element=r,i.ForwardRef=g,i.Fragment=l,i.Lazy=y,i.Memo=f,i.Portal=s,i.Profiler=a,i.StrictMode=u,i.Suspense=m,i.isAsyncMode=function(e){return C(e)||S(e)===h},i.isConcurrentMode=C,i.isContextConsumer=function(e){return S(e)===c},i.isContextProvider=function(e){return S(e)===d},i.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},i.isForwardRef=function(e){return S(e)===g},i.isFragment=function(e){return S(e)===l},i.isLazy=function(e){return S(e)===y},i.isMemo=function(e){return S(e)===f},i.isPortal=function(e){return S(e)===s},i.isProfiler=function(e){return S(e)===a},i.isStrictMode=function(e){return S(e)===u},i.isSuspense=function(e){return S(e)===m},i.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===l||e===p||e===a||e===u||e===m||e===I||"object"==typeof e&&null!==e&&(e.$$typeof===y||e.$$typeof===f||e.$$typeof===d||e.$$typeof===c||e.$$typeof===g||e.$$typeof===x||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},i.typeOf=S;function k(){}function O(){}O.resetWarningCache=k;n.exports=function(){function e(e,t,n,i,o,r){if("SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:O,resetWarningCache:k};return n.PropTypes=n,n}();var M=n.exports,E={},D=60103,P=60106,T=60107,R=60108,H=60114,F=60109,K=60110,V=60112,$=60113,A=60120,N=60115,B=60116,L=60121,_=60122,j=60117,U=60129,W=60131;if("function"==typeof Symbol&&Symbol.for){var z=Symbol.for;D=z("react.element"),P=z("react.portal"),T=z("react.fragment"),R=z("react.strict_mode"),H=z("react.profiler"),F=z("react.provider"),K=z("react.context"),V=z("react.forward_ref"),$=z("react.suspense"),A=z("react.suspense_list"),N=z("react.memo"),B=z("react.lazy"),L=z("react.block"),_=z("react.server.block"),j=z("react.fundamental"),U=z("react.debug_trace_mode"),W=z("react.legacy_hidden")}function q(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case D:switch(e=e.type){case T:case H:case R:case $:case A:return e;default:switch(e=e&&e.$$typeof){case K:case V:case B:case N:case F:return e;default:return t}}case P:return t}}}var Y=F,X=D,G=V,J=T,Q=B,Z=N,ee=P,te=H,ne=R,ie=$;function oe(e){return"object"==typeof e&&null!=e&&1===e.nodeType}function re(e,t){return(!t||"hidden"!==e)&&"visible"!==e&&"clip"!==e}function se(e,t){if(e.clientHeight<e.scrollHeight||e.clientWidth<e.scrollWidth){var n=getComputedStyle(e,null);return re(n.overflowY,t)||re(n.overflowX,t)||function(e){var t=function(e){if(!e.ownerDocument||!e.ownerDocument.defaultView)return null;try{return e.ownerDocument.defaultView.frameElement}catch(e){return null}}(e);return!!t&&(t.clientHeight<e.scrollHeight||t.clientWidth<e.scrollWidth)}(e)}return!1}function le(e,t,n,i,o,r,s,l){return r<e&&s>t||r>e&&s<t?0:r<=e&&l<=n||s>=t&&l>=n?r-e-i:s>t&&l<n||r<e&&l>n?s-t+o:0}E.ContextConsumer=K,E.ContextProvider=Y,E.Element=X,E.ForwardRef=G,E.Fragment=J,E.Lazy=Q,E.Memo=Z,E.Portal=ee,E.Profiler=te,E.StrictMode=ne,E.Suspense=ie,E.isAsyncMode=function(){return!1},E.isConcurrentMode=function(){return!1},E.isContextConsumer=function(e){return q(e)===K},E.isContextProvider=function(e){return q(e)===F},E.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===D},E.isForwardRef=function(e){return q(e)===V},E.isFragment=function(e){return q(e)===T},E.isLazy=function(e){return q(e)===B},E.isMemo=function(e){return q(e)===N},E.isPortal=function(e){return q(e)===P},E.isProfiler=function(e){return q(e)===H},E.isStrictMode=function(e){return q(e)===R},E.isSuspense=function(e){return q(e)===$},E.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===T||e===H||e===U||e===R||e===$||e===A||e===W||"object"==typeof e&&null!==e&&(e.$$typeof===B||e.$$typeof===N||e.$$typeof===F||e.$$typeof===K||e.$$typeof===V||e.$$typeof===j||e.$$typeof===L||e[0]===_)},E.typeOf=q;let ue=0;function ae(e){return"function"==typeof e?e:de}function de(){}function ce(e,t){if(!e)return;const n=function(e,t){var n=window,i=t.scrollMode,o=t.block,r=t.inline,s=t.boundary,l=t.skipOverflowHiddenElements,u="function"==typeof s?s:function(e){return e!==s};if(!oe(e))throw new TypeError("Invalid target");for(var a=document.scrollingElement||document.documentElement,d=[],c=e;oe(c)&&u(c);){if((c=c.parentElement)===a){d.push(c);break}null!=c&&c===document.body&&se(c)&&!se(document.documentElement)||null!=c&&se(c,l)&&d.push(c)}for(var h=n.visualViewport?n.visualViewport.width:innerWidth,p=n.visualViewport?n.visualViewport.height:innerHeight,g=window.scrollX||pageXOffset,m=window.scrollY||pageYOffset,I=e.getBoundingClientRect(),f=I.height,y=I.width,v=I.top,x=I.right,b=I.bottom,w=I.left,S="start"===o||"nearest"===o?v:"end"===o?b:v+f/2,C="center"===r?w+y/2:"end"===r?x:w,k=[],O=0;O<d.length;O++){var M=d[O],E=M.getBoundingClientRect(),D=E.height,P=E.width,T=E.top,R=E.right,H=E.bottom,F=E.left;if("if-needed"===i&&v>=0&&w>=0&&b<=p&&x<=h&&v>=T&&b<=H&&w>=F&&x<=R)return k;var K=getComputedStyle(M),V=parseInt(K.borderLeftWidth,10),$=parseInt(K.borderTopWidth,10),A=parseInt(K.borderRightWidth,10),N=parseInt(K.borderBottomWidth,10),B=0,L=0,_="offsetWidth"in M?M.offsetWidth-M.clientWidth-V-A:0,j="offsetHeight"in M?M.offsetHeight-M.clientHeight-$-N:0;if(a===M)B="start"===o?S:"end"===o?S-p:"nearest"===o?le(m,m+p,p,$,N,m+S,m+S+f,f):S-p/2,L="start"===r?C:"center"===r?C-h/2:"end"===r?C-h:le(g,g+h,h,V,A,g+C,g+C+y,y),B=Math.max(0,B+m),L=Math.max(0,L+g);else{B="start"===o?S-T-$:"end"===o?S-H+N+j:"nearest"===o?le(T,H,D,$,N+j,S,S+f,f):S-(T+D/2)+j/2,L="start"===r?C-F-V:"center"===r?C-(F+P/2)+_/2:"end"===r?C-R+A+_:le(F,R,P,V,A+_,C,C+y,y);var U=M.scrollLeft,W=M.scrollTop;S+=W-(B=Math.max(0,Math.min(W+B,M.scrollHeight-D+j))),C+=U-(L=Math.max(0,Math.min(U+L,M.scrollWidth-P+_)))}k.push({el:M,top:B,left:L})}return k}(e,{boundary:t,block:"nearest",scrollMode:"if-needed"});n.forEach((e=>{let{el:t,top:n,left:i}=e;t.scrollTop=n,t.scrollLeft=i}))}function he(e,t,n){return e===t||t instanceof n.Node&&e.contains&&e.contains(t)}function pe(e,t){let n;function i(){n&&clearTimeout(n)}function o(){for(var o=arguments.length,r=new Array(o),s=0;s<o;s++)r[s]=arguments[s];i(),n=setTimeout((()=>{n=null,e(...r)}),t)}return o.cancel=i,o}function ge(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];return t.some((t=>(t&&t(e,...i),e.preventDownshiftDefault||e.hasOwnProperty("nativeEvent")&&e.nativeEvent.preventDownshiftDefault)))}}function me(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return e=>{t.forEach((t=>{"function"==typeof t?t(e):t&&(t.current=e)}))}}function Ie(){return String(ue++)}function fe(e){let{isOpen:t,resultCount:n,previousResultCount:i}=e;return t?n?n!==i?`${n} result${1===n?" is":"s are"} available, use up and down arrow keys to navigate. Press Enter key to select.`:"":"No results are available.":""}function ye(e,t){return!(e=Array.isArray(e)?e[0]:e)&&t?t:e}const ve=["highlightedIndex","inputValue","isOpen","selectedItem","type"];function xe(e){void 0===e&&(e={});const t={};return ve.forEach((n=>{e.hasOwnProperty(n)&&(t[n]=e[n])})),t}function be(e,t){return Object.keys(e).reduce(((n,i)=>(n[i]=we(t,i)?t[i]:e[i],n)),{})}function we(e,t){return void 0!==e[t]}function Se(e){const{key:t,keyCode:n}=e;return n>=37&&n<=40&&0!==t.indexOf("Arrow")?`Arrow${t}`:t}function Ce(e,t,n,i,o){if(void 0===o&&(o=!0),0===n)return-1;const r=n-1;("number"!=typeof t||t<0||t>=n)&&(t=e>0?-1:r+1);let s=t+e;s<0?s=o?r:0:s>r&&(s=o?0:r);const l=ke(e,s,n,i,o);return-1===l?t>=n?-1:t:l}function ke(e,t,n,i,o){const r=i(t);if(!r||!r.hasAttribute("disabled"))return t;if(e>0){for(let e=t+1;e<n;e++)if(!i(e).hasAttribute("disabled"))return e}else for(let e=t-1;e>=0;e--)if(!i(e).hasAttribute("disabled"))return e;return o?e>0?ke(1,0,n,i,!1):ke(-1,n-1,n,i,!1):-1}function Oe(e,t,n,i){return void 0===i&&(i=!0),t.some((t=>t&&(he(t,e,n)||i&&he(t,n.document.activeElement,n))))}const Me=pe((e=>{De(e).textContent=""}),500);function Ee(e,t){const n=De(t);e&&(n.textContent=e,Me(t))}function De(e){void 0===e&&(e=document);let t=e.getElementById("a11y-status-message");return t||(t=e.createElement("div"),t.setAttribute("id","a11y-status-message"),t.setAttribute("role","status"),t.setAttribute("aria-live","polite"),t.setAttribute("aria-relevant","additions text"),Object.assign(t.style,{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px"}),e.body.appendChild(t),t)}var Pe=Object.freeze({__proto__:null,unknown:0,mouseUp:1,itemMouseEnter:2,keyDownArrowUp:3,keyDownArrowDown:4,keyDownEscape:5,keyDownEnter:6,keyDownHome:7,keyDownEnd:8,clickItem:9,blurInput:10,changeInput:11,keyDownSpaceButton:12,clickButton:13,blurButton:14,controlledPropUpdatedSelectedItem:15,touchEnd:16});const Te=(()=>{class e extends t.Component{constructor(e){var t;super(e),t=this,this.id=this.props.id||`downshift-${Ie()}`,this.menuId=this.props.menuId||`${this.id}-menu`,this.labelId=this.props.labelId||`${this.id}-label`,this.inputId=this.props.inputId||`${this.id}-input`,this.getItemId=this.props.getItemId||(e=>`${this.id}-item-${e}`),this.input=null,this.items=[],this.itemCount=null,this.previousResultCount=0,this.timeoutIds=[],this.internalSetTimeout=(e,t)=>{const n=setTimeout((()=>{this.timeoutIds=this.timeoutIds.filter((e=>e!==n)),e()}),t);this.timeoutIds.push(n)},this.setItemCount=e=>{this.itemCount=e},this.unsetItemCount=()=>{this.itemCount=null},this.setHighlightedIndex=function(e,n){void 0===e&&(e=t.props.defaultHighlightedIndex),void 0===n&&(n={}),n=xe(n),t.internalSetState({highlightedIndex:e,...n})},this.clearSelection=e=>{this.internalSetState({selectedItem:null,inputValue:"",highlightedIndex:this.props.defaultHighlightedIndex,isOpen:this.props.defaultIsOpen},e)},this.selectItem=(e,t,n)=>{t=xe(t),this.internalSetState({isOpen:this.props.defaultIsOpen,highlightedIndex:this.props.defaultHighlightedIndex,selectedItem:e,inputValue:this.props.itemToString(e),...t},n)},this.selectItemAtIndex=(e,t,n)=>{const i=this.items[e];null!=i&&this.selectItem(i,t,n)},this.selectHighlightedItem=(e,t)=>this.selectItemAtIndex(this.getState().highlightedIndex,e,t),this.internalSetState=(e,t)=>{let n,i;const o={},r="function"==typeof e;return!r&&e.hasOwnProperty("inputValue")&&this.props.onInputValueChange(e.inputValue,{...this.getStateAndHelpers(),...e}),this.setState((t=>{t=this.getState(t);let s=r?e(t):e;s=this.props.stateReducer(t,s),n=s.hasOwnProperty("selectedItem");const l={};return n&&s.selectedItem!==t.selectedItem&&(i=s.selectedItem),s.type=s.type||0,Object.keys(s).forEach((e=>{t[e]!==s[e]&&(o[e]=s[e]),"type"!==e&&(s[e],we(this.props,e)||(l[e]=s[e]))})),r&&s.hasOwnProperty("inputValue")&&this.props.onInputValueChange(s.inputValue,{...this.getStateAndHelpers(),...s}),l}),(()=>{ae(t)();Object.keys(o).length>1&&this.props.onStateChange(o,this.getStateAndHelpers()),n&&this.props.onSelect(e.selectedItem,this.getStateAndHelpers()),void 0!==i&&this.props.onChange(i,this.getStateAndHelpers()),this.props.onUserAction(o,this.getStateAndHelpers())}))},this.rootRef=e=>this._rootNode=e,this.getRootProps=function(e,n){let{refKey:i="ref",ref:o,...r}=void 0===e?{}:e,{suppressRefError:s=!1}=void 0===n?{}:n;t.getRootProps.called=!0,t.getRootProps.refKey=i,t.getRootProps.suppressRefError=s;const{isOpen:l}=t.getState();return{[i]:me(o,t.rootRef),role:"combobox","aria-expanded":l,"aria-haspopup":"listbox","aria-owns":l?t.menuId:null,"aria-labelledby":t.labelId,...r}},this.keyDownHandlers={ArrowDown(e){if(e.preventDefault(),this.getState().isOpen){const t=e.shiftKey?5:1;this.moveHighlightedIndex(t,{type:4})}else this.internalSetState({isOpen:!0,type:4},(()=>{const e=this.getItemCount();if(e>0){const{highlightedIndex:t}=this.getState(),n=Ce(1,t,e,(e=>this.getItemNodeFromIndex(e)));this.setHighlightedIndex(n,{type:4})}}))},ArrowUp(e){if(e.preventDefault(),this.getState().isOpen){const t=e.shiftKey?-5:-1;this.moveHighlightedIndex(t,{type:3})}else this.internalSetState({isOpen:!0,type:3},(()=>{const e=this.getItemCount();if(e>0){const{highlightedIndex:t}=this.getState(),n=Ce(-1,t,e,(e=>this.getItemNodeFromIndex(e)));this.setHighlightedIndex(n,{type:3})}}))},Enter(e){if(229===e.which)return;const{isOpen:t,highlightedIndex:n}=this.getState();if(t&&null!=n){e.preventDefault();const t=this.items[n],i=this.getItemNodeFromIndex(n);if(null==t||i&&i.hasAttribute("disabled"))return;this.selectHighlightedItem({type:6})}},Escape(e){e.preventDefault(),this.reset({type:5,...!this.state.isOpen&&{selectedItem:null,inputValue:""}})}},this.buttonKeyDownHandlers={...this.keyDownHandlers," "(e){e.preventDefault(),this.toggleMenu({type:12})}},this.inputKeyDownHandlers={...this.keyDownHandlers,Home(e){const{isOpen:t}=this.getState();if(!t)return;e.preventDefault();const n=this.getItemCount();if(n<=0||!t)return;const i=ke(1,0,n,(e=>this.getItemNodeFromIndex(e)),!1);this.setHighlightedIndex(i,{type:7})},End(e){const{isOpen:t}=this.getState();if(!t)return;e.preventDefault();const n=this.getItemCount();if(n<=0||!t)return;const i=ke(-1,n-1,n,(e=>this.getItemNodeFromIndex(e)),!1);this.setHighlightedIndex(i,{type:8})}},this.getToggleButtonProps=function(e){let{onClick:n,onPress:i,onKeyDown:o,onKeyUp:r,onBlur:s,...l}=void 0===e?{}:e;const{isOpen:u}=t.getState(),a={onClick:ge(n,t.buttonHandleClick),onKeyDown:ge(o,t.buttonHandleKeyDown),onKeyUp:ge(r,t.buttonHandleKeyUp),onBlur:ge(s,t.buttonHandleBlur)};return{type:"button",role:"button","aria-label":u?"close menu":"open menu","aria-haspopup":!0,"data-toggle":!0,...l.disabled?{}:a,...l}},this.buttonHandleKeyUp=e=>{e.preventDefault()},this.buttonHandleKeyDown=e=>{const t=Se(e);this.buttonKeyDownHandlers[t]&&this.buttonKeyDownHandlers[t].call(this,e)},this.buttonHandleClick=e=>{e.preventDefault(),this.props.environment.document.activeElement===this.props.environment.document.body&&e.target.focus(),this.internalSetTimeout((()=>this.toggleMenu({type:13})))},this.buttonHandleBlur=e=>{const t=e.target;this.internalSetTimeout((()=>{this.isMouseDown||null!=this.props.environment.document.activeElement&&this.props.environment.document.activeElement.id===this.inputId||this.props.environment.document.activeElement===t||this.reset({type:14})}))},this.getLabelProps=e=>({htmlFor:this.inputId,id:this.labelId,...e}),this.getInputProps=function(e){let n,{onKeyDown:i,onBlur:o,onChange:r,onInput:s,onChangeText:l,...u}=void 0===e?{}:e,a={};n="onChange";const{inputValue:d,isOpen:c,highlightedIndex:h}=t.getState();return u.disabled||(a={onChange:ge(r,s,t.inputHandleChange),onKeyDown:ge(i,t.inputHandleKeyDown),onBlur:ge(o,t.inputHandleBlur)}),{"aria-autocomplete":"list","aria-activedescendant":c&&"number"==typeof h&&h>=0?t.getItemId(h):null,"aria-controls":c?t.menuId:null,"aria-labelledby":t.labelId,autoComplete:"off",value:d,id:t.inputId,...a,...u}},this.inputHandleKeyDown=e=>{const t=Se(e);t&&this.inputKeyDownHandlers[t]&&this.inputKeyDownHandlers[t].call(this,e)},this.inputHandleChange=e=>{this.internalSetState({type:11,isOpen:!0,inputValue:e.target.value,highlightedIndex:this.props.defaultHighlightedIndex})},this.inputHandleBlur=()=>{this.internalSetTimeout((()=>{const e=this.props.environment.document&&!!this.props.environment.document.activeElement&&!!this.props.environment.document.activeElement.dataset&&this.props.environment.document.activeElement.dataset.toggle&&this._rootNode&&this._rootNode.contains(this.props.environment.document.activeElement);this.isMouseDown||e||this.reset({type:10})}))},this.menuRef=e=>{this._menuNode=e},this.getMenuProps=function(e,n){let{refKey:i="ref",ref:o,...r}=void 0===e?{}:e,{suppressRefError:s=!1}=void 0===n?{}:n;return t.getMenuProps.called=!0,t.getMenuProps.refKey=i,t.getMenuProps.suppressRefError=s,{[i]:me(o,t.menuRef),role:"listbox","aria-labelledby":r&&r["aria-label"]?null:t.labelId,id:t.menuId,...r}},this.getItemProps=function(e){let{onMouseMove:n,onMouseDown:i,onClick:o,onPress:r,index:s,item:l,...u}=void 0===e?{}:e;void 0===s?(t.items.push(l),s=t.items.indexOf(l)):t.items[s]=l;const a=o,d={onMouseMove:ge(n,(()=>{s!==t.getState().highlightedIndex&&(t.setHighlightedIndex(s,{type:2}),t.avoidScrolling=!0,t.internalSetTimeout((()=>t.avoidScrolling=!1),250))})),onMouseDown:ge(i,(e=>{e.preventDefault()})),onClick:ge(a,(()=>{t.selectItemAtIndex(s,{type:9})}))},c=u.disabled?{onMouseDown:d.onMouseDown}:d;return{id:t.getItemId(s),role:"option","aria-selected":t.getState().highlightedIndex===s,...c,...u}},this.clearItems=()=>{this.items=[]},this.reset=function(e,n){void 0===e&&(e={}),e=xe(e),t.internalSetState((n=>{let{selectedItem:i}=n;return{isOpen:t.props.defaultIsOpen,highlightedIndex:t.props.defaultHighlightedIndex,inputValue:t.props.itemToString(i),...e}}),n)},this.toggleMenu=function(e,n){void 0===e&&(e={}),e=xe(e),t.internalSetState((n=>{let{isOpen:i}=n;return{isOpen:!i,...i&&{highlightedIndex:t.props.defaultHighlightedIndex},...e}}),(()=>{const{isOpen:i,highlightedIndex:o}=t.getState();i&&t.getItemCount()>0&&"number"==typeof o&&t.setHighlightedIndex(o,e),ae(n)()}))},this.openMenu=e=>{this.internalSetState({isOpen:!0},e)},this.closeMenu=e=>{this.internalSetState({isOpen:!1},e)},this.updateStatus=pe((()=>{const e=this.getState(),t=this.items[e.highlightedIndex],n=this.getItemCount(),i=this.props.getA11yStatusMessage({itemToString:this.props.itemToString,previousResultCount:this.previousResultCount,resultCount:n,highlightedItem:t,...e});this.previousResultCount=n,Ee(i,this.props.environment.document)}),200);const{defaultHighlightedIndex:n,initialHighlightedIndex:i=n,defaultIsOpen:o,initialIsOpen:r=o,initialInputValue:s="",initialSelectedItem:l=null}=this.props,u=this.getState({highlightedIndex:i,isOpen:r,inputValue:s,selectedItem:l});null!=u.selectedItem&&void 0===this.props.initialInputValue&&(u.inputValue=this.props.itemToString(u.selectedItem)),this.state=u}internalClearTimeouts(){this.timeoutIds.forEach((e=>{clearTimeout(e)})),this.timeoutIds=[]}getState(e){return void 0===e&&(e=this.state),be(e,this.props)}getItemCount(){let e=this.items.length;return null!=this.itemCount?e=this.itemCount:void 0!==this.props.itemCount&&(e=this.props.itemCount),e}getItemNodeFromIndex(e){return this.props.environment.document.getElementById(this.getItemId(e))}scrollHighlightedItemIntoView(){{const e=this.getItemNodeFromIndex(this.getState().highlightedIndex);this.props.scrollIntoView(e,this._menuNode)}}moveHighlightedIndex(e,t){const n=this.getItemCount(),{highlightedIndex:i}=this.getState();if(n>0){const o=Ce(e,i,n,(e=>this.getItemNodeFromIndex(e)));this.setHighlightedIndex(o,t)}}getStateAndHelpers(){const{highlightedIndex:e,inputValue:t,selectedItem:n,isOpen:i}=this.getState(),{itemToString:o}=this.props,{id:r}=this,{getRootProps:s,getToggleButtonProps:l,getLabelProps:u,getMenuProps:a,getInputProps:d,getItemProps:c,openMenu:h,closeMenu:p,toggleMenu:g,selectItem:m,selectItemAtIndex:I,selectHighlightedItem:f,setHighlightedIndex:y,clearSelection:v,clearItems:x,reset:b,setItemCount:w,unsetItemCount:S,internalSetState:C}=this;return{getRootProps:s,getToggleButtonProps:l,getLabelProps:u,getMenuProps:a,getInputProps:d,getItemProps:c,reset:b,openMenu:h,closeMenu:p,toggleMenu:g,selectItem:m,selectItemAtIndex:I,selectHighlightedItem:f,setHighlightedIndex:y,clearSelection:v,clearItems:x,setItemCount:w,unsetItemCount:S,setState:C,itemToString:o,id:r,highlightedIndex:e,inputValue:t,isOpen:i,selectedItem:n}}componentDidMount(){{const e=()=>{this.isMouseDown=!0},t=e=>{this.isMouseDown=!1;!Oe(e.target,[this._rootNode,this._menuNode],this.props.environment)&&this.getState().isOpen&&this.reset({type:1},(()=>this.props.onOuterClick(this.getStateAndHelpers())))},n=()=>{this.isTouchMove=!1},i=()=>{this.isTouchMove=!0},o=e=>{const t=Oe(e.target,[this._rootNode,this._menuNode],this.props.environment,!1);this.isTouchMove||t||!this.getState().isOpen||this.reset({type:16},(()=>this.props.onOuterClick(this.getStateAndHelpers())))},{environment:r}=this.props;r.addEventListener("mousedown",e),r.addEventListener("mouseup",t),r.addEventListener("touchstart",n),r.addEventListener("touchmove",i),r.addEventListener("touchend",o),this.cleanup=()=>{this.internalClearTimeouts(),this.updateStatus.cancel(),r.removeEventListener("mousedown",e),r.removeEventListener("mouseup",t),r.removeEventListener("touchstart",n),r.removeEventListener("touchmove",i),r.removeEventListener("touchend",o)}}}shouldScroll(e,t){const{highlightedIndex:n}=void 0===this.props.highlightedIndex?this.getState():this.props,{highlightedIndex:i}=void 0===t.highlightedIndex?e:t;return n&&this.getState().isOpen&&!e.isOpen||n!==i}componentDidUpdate(e,t){we(this.props,"selectedItem")&&this.props.selectedItemChanged(e.selectedItem,this.props.selectedItem)&&this.internalSetState({type:15,inputValue:this.props.itemToString(this.props.selectedItem)}),!this.avoidScrolling&&this.shouldScroll(t,e)&&this.scrollHighlightedItemIntoView(),this.updateStatus()}componentWillUnmount(){this.cleanup()}render(){const e=ye(this.props.children,de);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;const n=ye(e(this.getStateAndHelpers()));return n?this.getRootProps.called||this.props.suppressRefError?n:function(e){return"string"==typeof e.type}(n)?t.cloneElement(n,this.getRootProps(function(e){return e.props}(n))):void 0:null}}return e.defaultProps={defaultHighlightedIndex:null,defaultIsOpen:!1,getA11yStatusMessage:fe,itemToString:e=>null==e?"":String(e),onStateChange:de,onInputValueChange:de,onUserAction:de,onChange:de,onSelect:de,onOuterClick:de,selectedItemChanged:(e,t)=>e!==t,environment:"undefined"==typeof window?{}:window,stateReducer:(e,t)=>t,suppressRefError:!1,scrollIntoView:ce},e.stateChangeTypes=Pe,e})();var Re=Te;const He={highlightedIndex:-1,isOpen:!1,selectedItem:null,inputValue:""};function Fe(e,t,n){const{props:i,type:o}=e,r={};Object.keys(t).forEach((i=>{!function(e,t,n,i){const{props:o,type:r}=t,s=`on${Ne(e)}Change`;o[s]&&void 0!==i[e]&&i[e]!==n[e]&&o[s]({type:r,...i})}(i,e,t,n),n[i]!==t[i]&&(r[i]=n[i])})),i.onStateChange&&Object.keys(r).length&&i.onStateChange({type:o,...r})}const Ke=pe(((e,t)=>{Ee(e(),t)}),200),Ve="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?t.useLayoutEffect:t.useEffect;function $e(e){let{id:n=`downshift-${Ie()}`,labelId:i,menuId:o,getItemId:r,toggleButtonId:s,inputId:l}=e;return t.useRef({labelId:i||`${n}-label`,menuId:o||`${n}-menu`,getItemId:r||(e=>`${n}-item-${e}`),toggleButtonId:s||`${n}-toggle-button`,inputId:l||`${n}-input`}).current}function Ae(e,t,n){return void 0!==e?e:0===n.length?-1:n.indexOf(t)}function Ne(e){return`${e.slice(0,1).toUpperCase()}${e.slice(1)}`}function Be(e){const n=t.useRef(e);return n.current=e,n}function Le(e,n,i){const o=t.useRef(),r=t.useRef(),s=t.useCallback(((t,n)=>{r.current=n,t=be(t,n.props);const i=e(t,n);return n.props.stateReducer(t,{...n,changes:i})}),[e]),[l,u]=t.useReducer(s,n),a=Be(i),d=t.useCallback((e=>u({props:a.current,...e})),[a]),c=r.current;return t.useEffect((()=>{c&&o.current&&o.current!==l&&Fe(c,be(o.current,c.props),l),o.current=l}),[l,i,c]),[l,d]}function _e(e,t,n){const[i,o]=Le(e,t,n);return[be(i,n),o]}const je={itemToString:function(e){return e?String(e):""},stateReducer:function(e,t){return t.changes},getA11ySelectionMessage:function(e){const{selectedItem:t,itemToString:n}=e;return t?`${n(t)} has been selected.`:""},scrollIntoView:ce,environment:"undefined"==typeof window?{}:window};function Ue(e,t,n){void 0===n&&(n=He);const i=e[`default${Ne(t)}`];return void 0!==i?i:n[t]}function We(e,t,n){void 0===n&&(n=He);const i=e[t];if(void 0!==i)return i;const o=e[`initial${Ne(t)}`];return void 0!==o?o:Ue(e,t,n)}function ze(e){const t=We(e,"selectedItem"),n=We(e,"isOpen"),i=We(e,"highlightedIndex"),o=We(e,"inputValue");return{highlightedIndex:i<0&&t&&n?e.items.indexOf(t):i,isOpen:n,selectedItem:t,inputValue:o}}function qe(e,t,n){const{items:i,initialHighlightedIndex:o,defaultHighlightedIndex:r}=e,{selectedItem:s,highlightedIndex:l}=t;return 0===i.length?-1:void 0!==o&&l===o?o:void 0!==r?r:s?i.indexOf(s):0===n?-1:n<0?i.length-1:0}function Ye(e,n,i,o){const r=t.useRef({isMouseDown:!1,isTouchMove:!1});return t.useEffect((()=>{const t=()=>{r.current.isMouseDown=!0},s=t=>{r.current.isMouseDown=!1,e&&!Oe(t.target,n.map((e=>e.current)),i)&&o()},l=()=>{r.current.isTouchMove=!1},u=()=>{r.current.isTouchMove=!0},a=t=>{!e||r.current.isTouchMove||Oe(t.target,n.map((e=>e.current)),i,!1)||o()};return i.addEventListener("mousedown",t),i.addEventListener("mouseup",s),i.addEventListener("touchstart",l),i.addEventListener("touchmove",u),i.addEventListener("touchend",a),function(){i.removeEventListener("mousedown",t),i.removeEventListener("mouseup",s),i.removeEventListener("touchstart",l),i.removeEventListener("touchmove",u),i.removeEventListener("touchend",a)}}),[e,i]),r}let Xe=()=>de;function Ge(e,n,i){let{isInitialMount:o,highlightedIndex:r,items:s,environment:l,...u}=i;t.useEffect((()=>{o||Ke((()=>e({highlightedIndex:r,highlightedItem:s[r],resultCount:s.length,...u})),l.document)}),n)}function Je(e){let{highlightedIndex:n,isOpen:i,itemRefs:o,getItemNodeFromIndex:r,menuElement:s,scrollIntoView:l}=e;const u=t.useRef(!0);return Ve((()=>{n<0||!i||!Object.keys(o.current).length||(!1===u.current?u.current=!0:l(r(n),s))}),[n]),u}let Qe=de;function Ze(e,t,n){const{type:i,props:o}=t;let r;switch(i){case n.ItemMouseMove:r={highlightedIndex:t.disabled?-1:t.index};break;case n.MenuMouseLeave:r={highlightedIndex:-1};break;case n.ToggleButtonClick:case n.FunctionToggleMenu:r={isOpen:!e.isOpen,highlightedIndex:e.isOpen?-1:qe(o,e,0)};break;case n.FunctionOpenMenu:r={isOpen:!0,highlightedIndex:qe(o,e,0)};break;case n.FunctionCloseMenu:r={isOpen:!1};break;case n.FunctionSetHighlightedIndex:r={highlightedIndex:t.highlightedIndex};break;case n.FunctionSetInputValue:r={inputValue:t.inputValue};break;case n.FunctionReset:r={highlightedIndex:Ue(o,"highlightedIndex"),isOpen:Ue(o,"isOpen"),selectedItem:Ue(o,"selectedItem"),inputValue:Ue(o,"inputValue")};break;default:throw new Error("Reducer called without proper action type.")}return{...e,...r}}var et=function(){return et=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},et.apply(this,arguments)};M.array.isRequired,M.func,M.func,M.func,M.number,M.number,M.number,M.bool,M.bool,M.bool,M.any,M.any,M.any,M.string,M.string,M.string,M.func,M.string,M.func,M.func,M.func,M.func,M.func,M.shape({addEventListener:M.func,removeEventListener:M.func,document:M.shape({getElementById:M.func,activeElement:M.any,body:M.any})});var tt=et(et({},je),{getA11yStatusMessage:function(e){var t=e.isOpen,n=e.resultCount,i=e.previousResultCount;return t?n?n!==i?"".concat(n," result").concat(1===n?" is":"s are"," available, use up and down arrow keys to navigate. Press Enter or Space Bar keys to select."):"":"No results are available.":""}}),nt=de;var it=Object.freeze({__proto__:null,ToggleButtonClick:0,ToggleButtonKeyDownArrowDown:1,ToggleButtonKeyDownArrowUp:2,ToggleButtonKeyDownCharacter:3,ToggleButtonKeyDownEscape:4,ToggleButtonKeyDownHome:5,ToggleButtonKeyDownEnd:6,ToggleButtonKeyDownEnter:7,ToggleButtonKeyDownSpaceButton:8,ToggleButtonKeyDownPageUp:9,ToggleButtonKeyDownPageDown:10,ToggleButtonBlur:11,MenuMouseLeave:12,ItemMouseMove:13,ItemClick:14,FunctionToggleMenu:15,FunctionOpenMenu:16,FunctionCloseMenu:17,FunctionSetHighlightedIndex:18,FunctionSelectItem:19,FunctionSetInputValue:20,FunctionReset:21});function ot(e,t){const{type:n,props:i,altKey:o}=t;let r;switch(n){case 14:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),selectedItem:i.items[t.index]};break;case 3:{const n=t.key,o=`${e.inputValue}${n}`,s=function(e){for(var t=e.keysSoFar,n=e.highlightedIndex,i=e.items,o=e.itemToString,r=e.getItemNodeFromIndex,s=t.toLowerCase(),l=0;l<i.length;l++){var u=(l+n+1)%i.length,a=i[u];if(void 0!==a&&o(a).toLowerCase().startsWith(s)){var d=r(u);if(!(null==d?void 0:d.hasAttribute("disabled")))return u}}return n}({keysSoFar:o,highlightedIndex:!e.isOpen&&e.selectedItem?i.items.indexOf(e.selectedItem):e.highlightedIndex,items:i.items,itemToString:i.itemToString,getItemNodeFromIndex:t.getItemNodeFromIndex});r={inputValue:o,highlightedIndex:s,isOpen:!0}}break;case 1:r={highlightedIndex:e.isOpen?Ce(1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1):o&&null==e.selectedItem?-1:qe(i,e,1),isOpen:!0};break;case 2:if(e.isOpen&&o)r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex]}};else{r={highlightedIndex:e.isOpen?Ce(-1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1):qe(i,e,-1),isOpen:!0}}break;case 7:case 8:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex]}};break;case 5:r={highlightedIndex:ke(1,0,i.items.length,t.getItemNodeFromIndex,!1),isOpen:!0};break;case 6:r={highlightedIndex:ke(-1,i.items.length-1,i.items.length,t.getItemNodeFromIndex,!1),isOpen:!0};break;case 9:r={highlightedIndex:Ce(-10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 10:r={highlightedIndex:Ce(10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 4:r={isOpen:!1,highlightedIndex:-1};break;case 11:r={isOpen:!1,highlightedIndex:-1,...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex]}};break;case 19:r={selectedItem:t.selectedItem};break;default:return Ze(e,t,it)}return{...e,...r}}function rt(e){void 0===e&&(e={}),nt();const n={...tt,...e},{items:i,scrollIntoView:o,environment:r,itemToString:s,getA11ySelectionMessage:l,getA11yStatusMessage:u}=n,a=ze(n),[d,c]=_e(ot,a,n),{isOpen:h,highlightedIndex:p,selectedItem:g,inputValue:m}=d,I=t.useRef(null),f=t.useRef(null),y=t.useRef({}),v=t.useRef(null),x=$e(n),b=t.useRef(),w=t.useRef(!0),S=Be({state:d,props:n}),C=t.useCallback((e=>y.current[x.getItemId(e)]),[x]);Ge(u,[h,p,m,i],{isInitialMount:w.current,previousResultCount:b.current,items:i,environment:r,itemToString:s,...d}),Ge(l,[g],{isInitialMount:w.current,previousResultCount:b.current,items:i,environment:r,itemToString:s,...d});const k=Je({menuElement:f.current,highlightedIndex:p,isOpen:h,itemRefs:y,scrollIntoView:o,getItemNodeFromIndex:C});t.useEffect((()=>(v.current=pe((e=>{e({type:20,inputValue:""})}),500),()=>{v.current.cancel()})),[]),t.useEffect((()=>{m&&v.current(c)}),[c,m]),Qe({isInitialMount:w.current,props:n,state:d}),t.useEffect((()=>{w.current||(b.current=i.length)}));const O=Ye(h,[f,I],r,(()=>{c({type:11})})),M=Xe();t.useEffect((()=>{w.current=!1}),[]),t.useEffect((()=>{h||(y.current={})}),[h]);const E=t.useMemo((()=>({ArrowDown(e){e.preventDefault(),c({type:1,getItemNodeFromIndex:C,altKey:e.altKey})},ArrowUp(e){e.preventDefault(),c({type:2,getItemNodeFromIndex:C,altKey:e.altKey})},Home(e){e.preventDefault(),c({type:5,getItemNodeFromIndex:C})},End(e){e.preventDefault(),c({type:6,getItemNodeFromIndex:C})},Escape(){S.current.state.isOpen&&c({type:4})},Enter(e){S.current.state.isOpen&&(e.preventDefault(),c({type:7}))},PageUp(e){S.current.state.isOpen&&(e.preventDefault(),c({type:9,getItemNodeFromIndex:C}))},PageDown(e){S.current.state.isOpen&&(e.preventDefault(),c({type:10,getItemNodeFromIndex:C}))}," "(e){S.current.state.isOpen&&(e.preventDefault(),c({type:8}))}})),[c,C,S]),D=t.useCallback((()=>{c({type:15})}),[c]),P=t.useCallback((()=>{c({type:17})}),[c]),T=t.useCallback((()=>{c({type:16})}),[c]),R=t.useCallback((e=>{c({type:18,highlightedIndex:e})}),[c]),H=t.useCallback((e=>{c({type:19,selectedItem:e})}),[c]),F=t.useCallback((()=>{c({type:21})}),[c]),K=t.useCallback((e=>{c({type:20,inputValue:e})}),[c]),V=t.useCallback((e=>({id:x.labelId,htmlFor:x.toggleButtonId,...e})),[x]),$=t.useCallback((function(e,t){let{onMouseLeave:n,refKey:i="ref",onKeyDown:o,onBlur:r,ref:s,...l}=void 0===e?{}:e,{suppressRefError:u=!1}=void 0===t?{}:t;return M("getMenuProps",u,i,f),{[i]:me(s,(e=>{f.current=e})),id:x.menuId,role:"listbox","aria-labelledby":x.labelId,tabIndex:-1,onMouseLeave:ge(n,(()=>{c({type:12})})),...l}}),[c,M,x]);return{getToggleButtonProps:t.useCallback((function(e,t){let{onBlur:n,onClick:i,onKeyDown:o,refKey:r="ref",ref:s,...l}=void 0===e?{}:e,{suppressRefError:u=!1}=void 0===t?{}:t;const a=S.current.state,d=()=>{c({type:0})},h=e=>{const t=Se(e);t&&E[t]?E[t](e):function(e){return/^\S{1}$/.test(e)}(t)&&c({type:3,key:t,getItemNodeFromIndex:C})},p={[r]:me(s,(e=>{I.current=e})),"aria-activedescendant":a.isOpen&&a.highlightedIndex>-1?x.getItemId(a.highlightedIndex):"","aria-controls":x.menuId,"aria-expanded":S.current.state.isOpen,"aria-haspopup":"listbox","aria-labelledby":`${x.labelId} ${x.toggleButtonId}`,id:x.toggleButtonId,role:"combobox",tabIndex:0,onBlur:ge(n,(()=>{a.isOpen&&!O.current.isMouseDown&&c({type:11})})),...l};return l.disabled||(p.onClick=ge(i,d),p.onKeyDown=ge(o,h)),M("getToggleButtonProps",u,r,I),p}),[S,x,M,c,O,E,C]),getLabelProps:V,getMenuProps:$,getItemProps:t.useCallback((function(e){let{item:t,index:n,onMouseMove:o,onClick:r,refKey:s="ref",ref:l,disabled:u,...a}=void 0===e?{}:e;const{state:d,props:h}=S.current,p=t??i[n],m=Ae(n,p,h.items),I=()=>{c({type:14,index:m})},f=Ae(m,p,h.items);if(f<0)throw new Error("Pass either item or item index in getItemProps!");const v={disabled:u,role:"option","aria-selected":`${p===g}`,id:x.getItemId(f),[s]:me(l,(e=>{e&&(y.current[x.getItemId(f)]=e)})),...a};return u||(v.onClick=ge(r,I)),v.onMouseMove=ge(o,(()=>{m!==d.highlightedIndex&&(k.current=!1,c({type:13,index:m,disabled:u}))})),v}),[S,i,g,x,k,c]),toggleMenu:D,openMenu:T,closeMenu:P,setHighlightedIndex:R,selectItem:H,reset:F,setInputValue:K,highlightedIndex:p,isOpen:h,selectedItem:g,inputValue:m}}rt.stateChangeTypes=it;var st=Object.freeze({__proto__:null,InputKeyDownArrowDown:0,InputKeyDownArrowUp:1,InputKeyDownEscape:2,InputKeyDownHome:3,InputKeyDownEnd:4,InputKeyDownPageUp:5,InputKeyDownPageDown:6,InputKeyDownEnter:7,InputChange:8,InputBlur:9,InputFocus:10,MenuMouseLeave:11,ItemMouseMove:12,ItemClick:13,ToggleButtonClick:14,FunctionToggleMenu:15,FunctionOpenMenu:16,FunctionCloseMenu:17,FunctionSetHighlightedIndex:18,FunctionSelectItem:19,FunctionSetInputValue:20,FunctionReset:21,ControlledPropUpdatedSelectedItem:22});M.array.isRequired,M.func,M.func,M.func,M.number,M.number,M.number,M.bool,M.bool,M.bool,M.any,M.any,M.any,M.string,M.string,M.string,M.string,M.string,M.string,M.func,M.string,M.string,M.func,M.func,M.func,M.func,M.func,M.func,M.shape({addEventListener:M.func,removeEventListener:M.func,document:M.shape({getElementById:M.func,activeElement:M.any,body:M.any})});let lt=de;const ut={...je,getA11yStatusMessage:fe};function at(e,t){const{type:n,props:i,altKey:o}=t;let r;switch(n){case 13:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),selectedItem:i.items[t.index],inputValue:i.itemToString(i.items[t.index])};break;case 0:r=e.isOpen?{highlightedIndex:Ce(1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!0)}:{highlightedIndex:o&&null==e.selectedItem?-1:qe(i,e,1,t.getItemNodeFromIndex),isOpen:i.items.length>=0};break;case 1:r=e.isOpen?o?{isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex],inputValue:i.itemToString(i.items[e.highlightedIndex])}}:{highlightedIndex:Ce(-1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!0)}:{highlightedIndex:qe(i,e,-1,t.getItemNodeFromIndex),isOpen:i.items.length>=0};break;case 7:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex],inputValue:i.itemToString(i.items[e.highlightedIndex])}};break;case 2:r={isOpen:!1,highlightedIndex:-1,...!e.isOpen&&{selectedItem:null,inputValue:""}};break;case 5:r={highlightedIndex:Ce(-10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 6:r={highlightedIndex:Ce(10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 3:r={highlightedIndex:ke(1,0,i.items.length,t.getItemNodeFromIndex,!1)};break;case 4:r={highlightedIndex:ke(-1,i.items.length-1,i.items.length,t.getItemNodeFromIndex,!1)};break;case 9:r={isOpen:!1,highlightedIndex:-1,...e.highlightedIndex>=0&&t.selectItem&&{selectedItem:i.items[e.highlightedIndex],inputValue:i.itemToString(i.items[e.highlightedIndex])}};break;case 8:r={isOpen:!0,highlightedIndex:Ue(i,"highlightedIndex"),inputValue:t.inputValue};break;case 10:r={isOpen:!0,highlightedIndex:qe(i,e,0)};break;case 19:r={selectedItem:t.selectedItem,inputValue:i.itemToString(t.selectedItem)};break;case 22:r={inputValue:t.inputValue};break;default:return Ze(e,t,st)}return{...e,...r}}function dt(e){void 0===e&&(e={}),lt();const n={...ut,...e},{initialIsOpen:i,defaultIsOpen:o,items:r,scrollIntoView:s,environment:l,getA11yStatusMessage:u,getA11ySelectionMessage:a,itemToString:d}=n,c=function(e){const t=ze(e),{selectedItem:n}=t;let{inputValue:i}=t;return""===i&&n&&void 0===e.defaultInputValue&&void 0===e.initialInputValue&&void 0===e.inputValue&&(i=e.itemToString(n)),{...t,inputValue:i}}(n),[h,p]=function(e,n,i){const o=t.useRef(),[r,s]=Le(e,n,i);return t.useEffect((()=>{we(i,"selectedItem")&&(o.current!==i.selectedItem&&s({type:22,inputValue:i.itemToString(i.selectedItem)}),o.current=r.selectedItem===o.current?i.selectedItem:r.selectedItem)})),[be(r,i),s]}(at,c,n),{isOpen:g,highlightedIndex:m,selectedItem:I,inputValue:f}=h,y=t.useRef(null),v=t.useRef({}),x=t.useRef(null),b=t.useRef(null),w=t.useRef(!0),S=$e(n),C=t.useRef(),k=Be({state:h,props:n}),O=t.useCallback((e=>v.current[S.getItemId(e)]),[S]);Ge(u,[g,m,f,r],{isInitialMount:w.current,previousResultCount:C.current,items:r,environment:l,itemToString:d,...h}),Ge(a,[I],{isInitialMount:w.current,previousResultCount:C.current,items:r,environment:l,itemToString:d,...h});const M=Je({menuElement:y.current,highlightedIndex:m,isOpen:g,itemRefs:v,scrollIntoView:s,getItemNodeFromIndex:O});Qe({isInitialMount:w.current,props:n,state:h}),t.useEffect((()=>{(i||o||g)&&x.current&&x.current.focus()}),[]),t.useEffect((()=>{w.current||(C.current=r.length)}));const E=Ye(g,[x,y,b],l,(()=>{p({type:9,selectItem:!1})})),D=Xe();t.useEffect((()=>{w.current=!1}),[]),t.useEffect((()=>{if(g){if(document.activeElement!==x.current){var e;null==x||null==(e=x.current)||e.focus()}}else v.current={}}),[g]);const P=t.useMemo((()=>({ArrowDown(e){e.preventDefault(),p({type:0,altKey:e.altKey,getItemNodeFromIndex:O})},ArrowUp(e){e.preventDefault(),p({type:1,altKey:e.altKey,getItemNodeFromIndex:O})},Home(e){k.current.state.isOpen&&(e.preventDefault(),p({type:3,getItemNodeFromIndex:O}))},End(e){k.current.state.isOpen&&(e.preventDefault(),p({type:4,getItemNodeFromIndex:O}))},Escape(e){const t=k.current.state;(t.isOpen||t.inputValue||t.selectedItem||t.highlightedIndex>-1)&&(e.preventDefault(),p({type:2}))},Enter(e){k.current.state.isOpen&&229!==e.which&&(e.preventDefault(),p({type:7,getItemNodeFromIndex:O}))},PageUp(e){k.current.state.isOpen&&(e.preventDefault(),p({type:5,getItemNodeFromIndex:O}))},PageDown(e){k.current.state.isOpen&&(e.preventDefault(),p({type:6,getItemNodeFromIndex:O}))}})),[p,k,O]),T=t.useCallback((e=>({id:S.labelId,htmlFor:S.inputId,...e})),[S]),R=t.useCallback((function(e,t){let{onMouseLeave:n,refKey:i="ref",ref:o,...r}=void 0===e?{}:e,{suppressRefError:s=!1}=void 0===t?{}:t;return D("getMenuProps",s,i,y),{[i]:me(o,(e=>{y.current=e})),id:S.menuId,role:"listbox","aria-labelledby":S.labelId,onMouseLeave:ge(n,(()=>{p({type:11})})),...r}}),[p,D,S]),H=t.useCallback((function(e){let{item:t,index:n,refKey:i="ref",ref:o,onMouseMove:r,onMouseDown:s,onClick:l,onPress:u,disabled:a,...d}=void 0===e?{}:e;const{props:c,state:h}=k.current,g=Ae(n,t,c.items);if(g<0)throw new Error("Pass either item or item index in getItemProps!");const m=l;return{[i]:me(o,(e=>{e&&(v.current[S.getItemId(g)]=e)})),disabled:a,role:"option","aria-selected":`${g===h.highlightedIndex}`,id:S.getItemId(g),...!a&&{onClick:ge(m,(()=>{p({type:13,index:n})}))},onMouseMove:ge(r,(()=>{n!==h.highlightedIndex&&(M.current=!1,p({type:12,index:n,disabled:a}))})),onMouseDown:ge(s,(e=>e.preventDefault())),...d}}),[p,k,M,S]),F=t.useCallback((function(e){let{onClick:t,onPress:n,refKey:i="ref",ref:o,...r}=void 0===e?{}:e;const s=k.current.state;return{[i]:me(o,(e=>{b.current=e})),"aria-controls":S.menuId,"aria-expanded":s.isOpen,id:S.toggleButtonId,tabIndex:-1,...!r.disabled&&{onClick:ge(t,(()=>{p({type:14})}))},...r}}),[p,k,S]),K=t.useCallback((function(e,t){let{onKeyDown:n,onChange:i,onInput:o,onFocus:r,onBlur:s,onChangeText:l,refKey:u="ref",ref:a,...d}=void 0===e?{}:e,{suppressRefError:c=!1}=void 0===t?{}:t;D("getInputProps",c,u,x);const h=k.current.state,g=e=>{const t=Se(e);t&&P[t]&&P[t](e)},m=e=>{p({type:8,inputValue:e.target.value})},I=()=>{h.isOpen&&!E.current.isMouseDown&&p({type:9,selectItem:!0})},f=()=>{h.isOpen||p({type:10})};let y={};return d.disabled||(y={onChange:ge(i,o,m),onKeyDown:ge(n,g),onBlur:ge(s,I),onFocus:ge(r,f)}),{[u]:me(a,(e=>{x.current=e})),"aria-activedescendant":h.isOpen&&h.highlightedIndex>-1?S.getItemId(h.highlightedIndex):"","aria-autocomplete":"list","aria-controls":S.menuId,"aria-expanded":h.isOpen,"aria-labelledby":S.labelId,autoComplete:"off",id:S.inputId,role:"combobox",value:h.inputValue,...y,...d}}),[p,P,k,E,D,S]),V=t.useCallback((()=>{p({type:15})}),[p]),$=t.useCallback((()=>{p({type:17})}),[p]),A=t.useCallback((()=>{p({type:16})}),[p]),N=t.useCallback((e=>{p({type:18,highlightedIndex:e})}),[p]),B=t.useCallback((e=>{p({type:19,selectedItem:e})}),[p]);return{getItemProps:H,getLabelProps:T,getMenuProps:R,getInputProps:K,getToggleButtonProps:F,toggleMenu:V,openMenu:A,closeMenu:$,setHighlightedIndex:N,setInputValue:t.useCallback((e=>{p({type:20,inputValue:e})}),[p]),selectItem:B,reset:t.useCallback((()=>{p({type:21})}),[p]),highlightedIndex:m,isOpen:g,selectedItem:I,inputValue:f}}dt.stateChangeTypes=st;const ct={activeIndex:-1,selectedItems:[]};function ht(e,t){return We(e,t,ct)}function pt(e,t){return Ue(e,t,ct)}function gt(e){if(e.shiftKey||e.metaKey||e.ctrlKey||e.altKey)return!1;const t=e.target;return!(t instanceof HTMLInputElement&&""!==t.value)||0===t.selectionStart&&0===t.selectionEnd}M.array,M.array,M.array,M.func,M.func,M.func,M.number,M.number,M.number,M.func,M.func,M.string,M.string,M.shape({addEventListener:M.func,removeEventListener:M.func,document:M.shape({getElementById:M.func,activeElement:M.any,body:M.any})});const mt={itemToString:je.itemToString,stateReducer:je.stateReducer,environment:je.environment,getA11yRemovalMessage:function(e){const{removedSelectedItem:t,itemToString:n}=e;return`${n(t)} has been removed.`},keyNavigationNext:"ArrowRight",keyNavigationPrevious:"ArrowLeft"};let It=de;var ft=Object.freeze({__proto__:null,SelectedItemClick:0,SelectedItemKeyDownDelete:1,SelectedItemKeyDownBackspace:2,SelectedItemKeyDownNavigationNext:3,SelectedItemKeyDownNavigationPrevious:4,DropdownKeyDownNavigationPrevious:5,DropdownKeyDownBackspace:6,DropdownClick:7,FunctionAddSelectedItem:8,FunctionRemoveSelectedItem:9,FunctionSetSelectedItems:10,FunctionSetActiveIndex:11,FunctionReset:12});function yt(e,t){const{type:n,index:i,props:o,selectedItem:r}=t,{activeIndex:s,selectedItems:l}=e;let u;switch(n){case 0:u={activeIndex:i};break;case 4:u={activeIndex:s-1<0?0:s-1};break;case 3:u={activeIndex:s+1>=l.length?-1:s+1};break;case 2:case 1:{let e=s;1===l.length?e=-1:s===l.length-1&&(e=l.length-2),u={selectedItems:[...l.slice(0,s),...l.slice(s+1)],activeIndex:e};break}case 5:u={activeIndex:l.length-1};break;case 6:u={selectedItems:l.slice(0,l.length-1)};break;case 8:u={selectedItems:[...l,r]};break;case 7:u={activeIndex:-1};break;case 9:{let e=s;const t=l.indexOf(r);t>=0&&(1===l.length?e=-1:t===l.length-1&&(e=l.length-2),u={selectedItems:[...l.slice(0,t),...l.slice(t+1)],activeIndex:e});break}case 10:{const{selectedItems:e}=t;u={selectedItems:e};break}case 11:{const{activeIndex:e}=t;u={activeIndex:e};break}case 12:u={activeIndex:pt(o,"activeIndex"),selectedItems:pt(o,"selectedItems")};break;default:throw new Error("Reducer called without proper action type.")}return{...e,...u}}function vt(e){void 0===e&&(e={}),It();const n={...mt,...e},{getA11yRemovalMessage:i,itemToString:o,environment:r,keyNavigationNext:s,keyNavigationPrevious:l}=n,[u,a]=_e(yt,function(e){return{activeIndex:ht(e,"activeIndex"),selectedItems:ht(e,"selectedItems")}}(n),n),{activeIndex:d,selectedItems:c}=u,h=t.useRef(!0),p=t.useRef(null),g=t.useRef(c),m=t.useRef();m.current=[];const I=Be({state:u,props:n});t.useEffect((()=>{if(!h.current){if(c.length<g.current.length){const e=g.current.find((e=>c.indexOf(e)<0));Ee(i({itemToString:o,resultCount:c.length,removedSelectedItem:e,activeIndex:d,activeSelectedItem:c[d]}),r.document)}g.current=c}}),[c.length]),t.useEffect((()=>{h.current||(-1===d&&p.current?p.current.focus():m.current[d]&&m.current[d].focus())}),[d]),Qe({isInitialMount:h.current,props:n,state:u});const f=Xe();t.useEffect((()=>{h.current=!1}),[]);const y=t.useMemo((()=>({[l](){a({type:4})},[s](){a({type:3})},Delete(){a({type:1})},Backspace(){a({type:2})}})),[a,s,l]),v=t.useMemo((()=>({[l](e){gt(e)&&a({type:5})},Backspace(e){gt(e)&&a({type:6})}})),[a,l]);return{getSelectedItemProps:t.useCallback((function(e){let{refKey:t="ref",ref:n,onClick:i,onKeyDown:o,selectedItem:r,index:s,...l}=void 0===e?{}:e;const{state:u}=I.current;if(Ae(s,r,u.selectedItems)<0)throw new Error("Pass either selectedItem or index in getSelectedItemProps!");return{[t]:me(n,(e=>{e&&m.current.push(e)})),tabIndex:s===u.activeIndex?0:-1,onClick:ge(i,(()=>{a({type:0,index:s})})),onKeyDown:ge(o,(e=>{const t=Se(e);t&&y[t]&&y[t](e)})),...l}}),[a,I,y]),getDropdownProps:t.useCallback((function(e,t){let{refKey:n="ref",ref:i,onKeyDown:o,onClick:r,preventKeyAction:s=!1,...l}=void 0===e?{}:e,{suppressRefError:u=!1}=void 0===t?{}:t;return f("getDropdownProps",u,n,p),{[n]:me(i,(e=>{e&&(p.current=e)})),...!s&&{onKeyDown:ge(o,(e=>{const t=Se(e);t&&v[t]&&v[t](e)})),onClick:ge(r,(()=>{a({type:7})}))},...l}}),[a,v,f]),addSelectedItem:t.useCallback((e=>{a({type:8,selectedItem:e})}),[a]),removeSelectedItem:t.useCallback((e=>{a({type:9,selectedItem:e})}),[a]),setSelectedItems:t.useCallback((e=>{a({type:10,selectedItems:e})}),[a]),setActiveIndex:t.useCallback((e=>{a({type:11,activeIndex:e})}),[a]),reset:t.useCallback((()=>{a({type:12})}),[a]),selectedItems:c,activeIndex:d}}vt.stateChangeTypes=ft,e.default=Re,e.resetIdCounter=function(){ue=0},e.useCombobox=dt,e.useMultipleSelection=vt,e.useSelect=rt,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Downshift={},e.React)}(this,(function(e,t){"use strict";var n={exports:{}},i={},o="function"==typeof Symbol&&Symbol.for,r=o?Symbol.for("react.element"):60103,s=o?Symbol.for("react.portal"):60106,l=o?Symbol.for("react.fragment"):60107,u=o?Symbol.for("react.strict_mode"):60108,a=o?Symbol.for("react.profiler"):60114,d=o?Symbol.for("react.provider"):60109,c=o?Symbol.for("react.context"):60110,h=o?Symbol.for("react.async_mode"):60111,p=o?Symbol.for("react.concurrent_mode"):60111,g=o?Symbol.for("react.forward_ref"):60112,m=o?Symbol.for("react.suspense"):60113,f=o?Symbol.for("react.suspense_list"):60120,I=o?Symbol.for("react.memo"):60115,y=o?Symbol.for("react.lazy"):60116,v=o?Symbol.for("react.block"):60121,x=o?Symbol.for("react.fundamental"):60117,b=o?Symbol.for("react.responder"):60118,w=o?Symbol.for("react.scope"):60119;function S(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case h:case p:case l:case a:case u:case m:return e;default:switch(e=e&&e.$$typeof){case c:case g:case y:case I:case d:return e;default:return t}}case s:return t}}}function C(e){return S(e)===p}i.AsyncMode=h,i.ConcurrentMode=p,i.ContextConsumer=c,i.ContextProvider=d,i.Element=r,i.ForwardRef=g,i.Fragment=l,i.Lazy=y,i.Memo=I,i.Portal=s,i.Profiler=a,i.StrictMode=u,i.Suspense=m,i.isAsyncMode=function(e){return C(e)||S(e)===h},i.isConcurrentMode=C,i.isContextConsumer=function(e){return S(e)===c},i.isContextProvider=function(e){return S(e)===d},i.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},i.isForwardRef=function(e){return S(e)===g},i.isFragment=function(e){return S(e)===l},i.isLazy=function(e){return S(e)===y},i.isMemo=function(e){return S(e)===I},i.isPortal=function(e){return S(e)===s},i.isProfiler=function(e){return S(e)===a},i.isStrictMode=function(e){return S(e)===u},i.isSuspense=function(e){return S(e)===m},i.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===l||e===p||e===a||e===u||e===m||e===f||"object"==typeof e&&null!==e&&(e.$$typeof===y||e.$$typeof===I||e.$$typeof===d||e.$$typeof===c||e.$$typeof===g||e.$$typeof===x||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},i.typeOf=S;function k(){}function O(){}O.resetWarningCache=k;n.exports=function(){function e(e,t,n,i,o,r){if("SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:O,resetWarningCache:k};return n.PropTypes=n,n}();var M=n.exports,E={},D=60103,P=60106,T=60107,R=60108,H=60114,F=60109,K=60110,V=60112,$=60113,A=60120,N=60115,B=60116,L=60121,_=60122,j=60117,U=60129,W=60131;if("function"==typeof Symbol&&Symbol.for){var z=Symbol.for;D=z("react.element"),P=z("react.portal"),T=z("react.fragment"),R=z("react.strict_mode"),H=z("react.profiler"),F=z("react.provider"),K=z("react.context"),V=z("react.forward_ref"),$=z("react.suspense"),A=z("react.suspense_list"),N=z("react.memo"),B=z("react.lazy"),L=z("react.block"),_=z("react.server.block"),j=z("react.fundamental"),U=z("react.debug_trace_mode"),W=z("react.legacy_hidden")}function q(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case D:switch(e=e.type){case T:case H:case R:case $:case A:return e;default:switch(e=e&&e.$$typeof){case K:case V:case B:case N:case F:return e;default:return t}}case P:return t}}}var Y=F,X=D,G=V,J=T,Q=B,Z=N,ee=P,te=H,ne=R,ie=$;function oe(e){return"object"==typeof e&&null!=e&&1===e.nodeType}function re(e,t){return(!t||"hidden"!==e)&&"visible"!==e&&"clip"!==e}function se(e,t){if(e.clientHeight<e.scrollHeight||e.clientWidth<e.scrollWidth){var n=getComputedStyle(e,null);return re(n.overflowY,t)||re(n.overflowX,t)||function(e){var t=function(e){if(!e.ownerDocument||!e.ownerDocument.defaultView)return null;try{return e.ownerDocument.defaultView.frameElement}catch(e){return null}}(e);return!!t&&(t.clientHeight<e.scrollHeight||t.clientWidth<e.scrollWidth)}(e)}return!1}function le(e,t,n,i,o,r,s,l){return r<e&&s>t||r>e&&s<t?0:r<=e&&l<=n||s>=t&&l>=n?r-e-i:s>t&&l<n||r<e&&l>n?s-t+o:0}E.ContextConsumer=K,E.ContextProvider=Y,E.Element=X,E.ForwardRef=G,E.Fragment=J,E.Lazy=Q,E.Memo=Z,E.Portal=ee,E.Profiler=te,E.StrictMode=ne,E.Suspense=ie,E.isAsyncMode=function(){return!1},E.isConcurrentMode=function(){return!1},E.isContextConsumer=function(e){return q(e)===K},E.isContextProvider=function(e){return q(e)===F},E.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===D},E.isForwardRef=function(e){return q(e)===V},E.isFragment=function(e){return q(e)===T},E.isLazy=function(e){return q(e)===B},E.isMemo=function(e){return q(e)===N},E.isPortal=function(e){return q(e)===P},E.isProfiler=function(e){return q(e)===H},E.isStrictMode=function(e){return q(e)===R},E.isSuspense=function(e){return q(e)===$},E.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===T||e===H||e===U||e===R||e===$||e===A||e===W||"object"==typeof e&&null!==e&&(e.$$typeof===B||e.$$typeof===N||e.$$typeof===F||e.$$typeof===K||e.$$typeof===V||e.$$typeof===j||e.$$typeof===L||e[0]===_)},E.typeOf=q;let ue=0;function ae(e){return"function"==typeof e?e:de}function de(){}function ce(e,t){if(!e)return;const n=function(e,t){var n=window,i=t.scrollMode,o=t.block,r=t.inline,s=t.boundary,l=t.skipOverflowHiddenElements,u="function"==typeof s?s:function(e){return e!==s};if(!oe(e))throw new TypeError("Invalid target");for(var a=document.scrollingElement||document.documentElement,d=[],c=e;oe(c)&&u(c);){if((c=c.parentElement)===a){d.push(c);break}null!=c&&c===document.body&&se(c)&&!se(document.documentElement)||null!=c&&se(c,l)&&d.push(c)}for(var h=n.visualViewport?n.visualViewport.width:innerWidth,p=n.visualViewport?n.visualViewport.height:innerHeight,g=window.scrollX||pageXOffset,m=window.scrollY||pageYOffset,f=e.getBoundingClientRect(),I=f.height,y=f.width,v=f.top,x=f.right,b=f.bottom,w=f.left,S="start"===o||"nearest"===o?v:"end"===o?b:v+I/2,C="center"===r?w+y/2:"end"===r?x:w,k=[],O=0;O<d.length;O++){var M=d[O],E=M.getBoundingClientRect(),D=E.height,P=E.width,T=E.top,R=E.right,H=E.bottom,F=E.left;if("if-needed"===i&&v>=0&&w>=0&&b<=p&&x<=h&&v>=T&&b<=H&&w>=F&&x<=R)return k;var K=getComputedStyle(M),V=parseInt(K.borderLeftWidth,10),$=parseInt(K.borderTopWidth,10),A=parseInt(K.borderRightWidth,10),N=parseInt(K.borderBottomWidth,10),B=0,L=0,_="offsetWidth"in M?M.offsetWidth-M.clientWidth-V-A:0,j="offsetHeight"in M?M.offsetHeight-M.clientHeight-$-N:0;if(a===M)B="start"===o?S:"end"===o?S-p:"nearest"===o?le(m,m+p,p,$,N,m+S,m+S+I,I):S-p/2,L="start"===r?C:"center"===r?C-h/2:"end"===r?C-h:le(g,g+h,h,V,A,g+C,g+C+y,y),B=Math.max(0,B+m),L=Math.max(0,L+g);else{B="start"===o?S-T-$:"end"===o?S-H+N+j:"nearest"===o?le(T,H,D,$,N+j,S,S+I,I):S-(T+D/2)+j/2,L="start"===r?C-F-V:"center"===r?C-(F+P/2)+_/2:"end"===r?C-R+A+_:le(F,R,P,V,A+_,C,C+y,y);var U=M.scrollLeft,W=M.scrollTop;S+=W-(B=Math.max(0,Math.min(W+B,M.scrollHeight-D+j))),C+=U-(L=Math.max(0,Math.min(U+L,M.scrollWidth-P+_)))}k.push({el:M,top:B,left:L})}return k}(e,{boundary:t,block:"nearest",scrollMode:"if-needed"});n.forEach((e=>{let{el:t,top:n,left:i}=e;t.scrollTop=n,t.scrollLeft=i}))}function he(e,t,n){return e===t||t instanceof n.Node&&e.contains&&e.contains(t)}function pe(e,t){let n;function i(){n&&clearTimeout(n)}function o(){for(var o=arguments.length,r=new Array(o),s=0;s<o;s++)r[s]=arguments[s];i(),n=setTimeout((()=>{n=null,e(...r)}),t)}return o.cancel=i,o}function ge(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];return t.some((t=>(t&&t(e,...i),e.preventDownshiftDefault||e.hasOwnProperty("nativeEvent")&&e.nativeEvent.preventDownshiftDefault)))}}function me(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return e=>{t.forEach((t=>{"function"==typeof t?t(e):t&&(t.current=e)}))}}function fe(){return String(ue++)}function Ie(e){let{isOpen:t,resultCount:n,previousResultCount:i}=e;return t?n?n!==i?`${n} result${1===n?" is":"s are"} available, use up and down arrow keys to navigate. Press Enter key to select.`:"":"No results are available.":""}function ye(e,t){return!(e=Array.isArray(e)?e[0]:e)&&t?t:e}const ve=["highlightedIndex","inputValue","isOpen","selectedItem","type"];function xe(e){void 0===e&&(e={});const t={};return ve.forEach((n=>{e.hasOwnProperty(n)&&(t[n]=e[n])})),t}function be(e,t){return Object.keys(e).reduce(((n,i)=>(n[i]=we(t,i)?t[i]:e[i],n)),{})}function we(e,t){return void 0!==e[t]}function Se(e){const{key:t,keyCode:n}=e;return n>=37&&n<=40&&0!==t.indexOf("Arrow")?`Arrow${t}`:t}function Ce(e,t,n,i,o){if(void 0===o&&(o=!0),0===n)return-1;const r=n-1;("number"!=typeof t||t<0||t>=n)&&(t=e>0?-1:r+1);let s=t+e;s<0?s=o?r:0:s>r&&(s=o?0:r);const l=ke(e,s,n,i,o);return-1===l?t>=n?-1:t:l}function ke(e,t,n,i,o){const r=i(t);if(!r||!r.hasAttribute("disabled"))return t;if(e>0){for(let e=t+1;e<n;e++)if(!i(e).hasAttribute("disabled"))return e}else for(let e=t-1;e>=0;e--)if(!i(e).hasAttribute("disabled"))return e;return o?e>0?ke(1,0,n,i,!1):ke(-1,n-1,n,i,!1):-1}function Oe(e,t,n,i){return void 0===i&&(i=!0),t.some((t=>t&&(he(t,e,n)||i&&he(t,n.document.activeElement,n))))}const Me=pe((e=>{De(e).textContent=""}),500);function Ee(e,t){const n=De(t);e&&(n.textContent=e,Me(t))}function De(e){void 0===e&&(e=document);let t=e.getElementById("a11y-status-message");return t||(t=e.createElement("div"),t.setAttribute("id","a11y-status-message"),t.setAttribute("role","status"),t.setAttribute("aria-live","polite"),t.setAttribute("aria-relevant","additions text"),Object.assign(t.style,{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px"}),e.body.appendChild(t),t)}var Pe=Object.freeze({__proto__:null,unknown:0,mouseUp:1,itemMouseEnter:2,keyDownArrowUp:3,keyDownArrowDown:4,keyDownEscape:5,keyDownEnter:6,keyDownHome:7,keyDownEnd:8,clickItem:9,blurInput:10,changeInput:11,keyDownSpaceButton:12,clickButton:13,blurButton:14,controlledPropUpdatedSelectedItem:15,touchEnd:16});const Te=(()=>{class e extends t.Component{constructor(e){var t;super(e),t=this,this.id=this.props.id||`downshift-${fe()}`,this.menuId=this.props.menuId||`${this.id}-menu`,this.labelId=this.props.labelId||`${this.id}-label`,this.inputId=this.props.inputId||`${this.id}-input`,this.getItemId=this.props.getItemId||(e=>`${this.id}-item-${e}`),this.input=null,this.items=[],this.itemCount=null,this.previousResultCount=0,this.timeoutIds=[],this.internalSetTimeout=(e,t)=>{const n=setTimeout((()=>{this.timeoutIds=this.timeoutIds.filter((e=>e!==n)),e()}),t);this.timeoutIds.push(n)},this.setItemCount=e=>{this.itemCount=e},this.unsetItemCount=()=>{this.itemCount=null},this.setHighlightedIndex=function(e,n){void 0===e&&(e=t.props.defaultHighlightedIndex),void 0===n&&(n={}),n=xe(n),t.internalSetState({highlightedIndex:e,...n})},this.clearSelection=e=>{this.internalSetState({selectedItem:null,inputValue:"",highlightedIndex:this.props.defaultHighlightedIndex,isOpen:this.props.defaultIsOpen},e)},this.selectItem=(e,t,n)=>{t=xe(t),this.internalSetState({isOpen:this.props.defaultIsOpen,highlightedIndex:this.props.defaultHighlightedIndex,selectedItem:e,inputValue:this.props.itemToString(e),...t},n)},this.selectItemAtIndex=(e,t,n)=>{const i=this.items[e];null!=i&&this.selectItem(i,t,n)},this.selectHighlightedItem=(e,t)=>this.selectItemAtIndex(this.getState().highlightedIndex,e,t),this.internalSetState=(e,t)=>{let n,i;const o={},r="function"==typeof e;return!r&&e.hasOwnProperty("inputValue")&&this.props.onInputValueChange(e.inputValue,{...this.getStateAndHelpers(),...e}),this.setState((t=>{t=this.getState(t);let s=r?e(t):e;s=this.props.stateReducer(t,s),n=s.hasOwnProperty("selectedItem");const l={};return n&&s.selectedItem!==t.selectedItem&&(i=s.selectedItem),s.type=s.type||0,Object.keys(s).forEach((e=>{t[e]!==s[e]&&(o[e]=s[e]),"type"!==e&&(s[e],we(this.props,e)||(l[e]=s[e]))})),r&&s.hasOwnProperty("inputValue")&&this.props.onInputValueChange(s.inputValue,{...this.getStateAndHelpers(),...s}),l}),(()=>{ae(t)();Object.keys(o).length>1&&this.props.onStateChange(o,this.getStateAndHelpers()),n&&this.props.onSelect(e.selectedItem,this.getStateAndHelpers()),void 0!==i&&this.props.onChange(i,this.getStateAndHelpers()),this.props.onUserAction(o,this.getStateAndHelpers())}))},this.rootRef=e=>this._rootNode=e,this.getRootProps=function(e,n){let{refKey:i="ref",ref:o,...r}=void 0===e?{}:e,{suppressRefError:s=!1}=void 0===n?{}:n;t.getRootProps.called=!0,t.getRootProps.refKey=i,t.getRootProps.suppressRefError=s;const{isOpen:l}=t.getState();return{[i]:me(o,t.rootRef),role:"combobox","aria-expanded":l,"aria-haspopup":"listbox","aria-owns":l?t.menuId:null,"aria-labelledby":t.labelId,...r}},this.keyDownHandlers={ArrowDown(e){if(e.preventDefault(),this.getState().isOpen){const t=e.shiftKey?5:1;this.moveHighlightedIndex(t,{type:4})}else this.internalSetState({isOpen:!0,type:4},(()=>{const e=this.getItemCount();if(e>0){const{highlightedIndex:t}=this.getState(),n=Ce(1,t,e,(e=>this.getItemNodeFromIndex(e)));this.setHighlightedIndex(n,{type:4})}}))},ArrowUp(e){if(e.preventDefault(),this.getState().isOpen){const t=e.shiftKey?-5:-1;this.moveHighlightedIndex(t,{type:3})}else this.internalSetState({isOpen:!0,type:3},(()=>{const e=this.getItemCount();if(e>0){const{highlightedIndex:t}=this.getState(),n=Ce(-1,t,e,(e=>this.getItemNodeFromIndex(e)));this.setHighlightedIndex(n,{type:3})}}))},Enter(e){if(229===e.which)return;const{isOpen:t,highlightedIndex:n}=this.getState();if(t&&null!=n){e.preventDefault();const t=this.items[n],i=this.getItemNodeFromIndex(n);if(null==t||i&&i.hasAttribute("disabled"))return;this.selectHighlightedItem({type:6})}},Escape(e){e.preventDefault(),this.reset({type:5,...!this.state.isOpen&&{selectedItem:null,inputValue:""}})}},this.buttonKeyDownHandlers={...this.keyDownHandlers," "(e){e.preventDefault(),this.toggleMenu({type:12})}},this.inputKeyDownHandlers={...this.keyDownHandlers,Home(e){const{isOpen:t}=this.getState();if(!t)return;e.preventDefault();const n=this.getItemCount();if(n<=0||!t)return;const i=ke(1,0,n,(e=>this.getItemNodeFromIndex(e)),!1);this.setHighlightedIndex(i,{type:7})},End(e){const{isOpen:t}=this.getState();if(!t)return;e.preventDefault();const n=this.getItemCount();if(n<=0||!t)return;const i=ke(-1,n-1,n,(e=>this.getItemNodeFromIndex(e)),!1);this.setHighlightedIndex(i,{type:8})}},this.getToggleButtonProps=function(e){let{onClick:n,onPress:i,onKeyDown:o,onKeyUp:r,onBlur:s,...l}=void 0===e?{}:e;const{isOpen:u}=t.getState(),a={onClick:ge(n,t.buttonHandleClick),onKeyDown:ge(o,t.buttonHandleKeyDown),onKeyUp:ge(r,t.buttonHandleKeyUp),onBlur:ge(s,t.buttonHandleBlur)};return{type:"button",role:"button","aria-label":u?"close menu":"open menu","aria-haspopup":!0,"data-toggle":!0,...l.disabled?{}:a,...l}},this.buttonHandleKeyUp=e=>{e.preventDefault()},this.buttonHandleKeyDown=e=>{const t=Se(e);this.buttonKeyDownHandlers[t]&&this.buttonKeyDownHandlers[t].call(this,e)},this.buttonHandleClick=e=>{e.preventDefault(),this.props.environment.document.activeElement===this.props.environment.document.body&&e.target.focus(),this.internalSetTimeout((()=>this.toggleMenu({type:13})))},this.buttonHandleBlur=e=>{const t=e.target;this.internalSetTimeout((()=>{this.isMouseDown||null!=this.props.environment.document.activeElement&&this.props.environment.document.activeElement.id===this.inputId||this.props.environment.document.activeElement===t||this.reset({type:14})}))},this.getLabelProps=e=>({htmlFor:this.inputId,id:this.labelId,...e}),this.getInputProps=function(e){let n,{onKeyDown:i,onBlur:o,onChange:r,onInput:s,onChangeText:l,...u}=void 0===e?{}:e,a={};n="onChange";const{inputValue:d,isOpen:c,highlightedIndex:h}=t.getState();return u.disabled||(a={onChange:ge(r,s,t.inputHandleChange),onKeyDown:ge(i,t.inputHandleKeyDown),onBlur:ge(o,t.inputHandleBlur)}),{"aria-autocomplete":"list","aria-activedescendant":c&&"number"==typeof h&&h>=0?t.getItemId(h):null,"aria-controls":c?t.menuId:null,"aria-labelledby":t.labelId,autoComplete:"off",value:d,id:t.inputId,...a,...u}},this.inputHandleKeyDown=e=>{const t=Se(e);t&&this.inputKeyDownHandlers[t]&&this.inputKeyDownHandlers[t].call(this,e)},this.inputHandleChange=e=>{this.internalSetState({type:11,isOpen:!0,inputValue:e.target.value,highlightedIndex:this.props.defaultHighlightedIndex})},this.inputHandleBlur=()=>{this.internalSetTimeout((()=>{const e=this.props.environment.document&&!!this.props.environment.document.activeElement&&!!this.props.environment.document.activeElement.dataset&&this.props.environment.document.activeElement.dataset.toggle&&this._rootNode&&this._rootNode.contains(this.props.environment.document.activeElement);this.isMouseDown||e||this.reset({type:10})}))},this.menuRef=e=>{this._menuNode=e},this.getMenuProps=function(e,n){let{refKey:i="ref",ref:o,...r}=void 0===e?{}:e,{suppressRefError:s=!1}=void 0===n?{}:n;return t.getMenuProps.called=!0,t.getMenuProps.refKey=i,t.getMenuProps.suppressRefError=s,{[i]:me(o,t.menuRef),role:"listbox","aria-labelledby":r&&r["aria-label"]?null:t.labelId,id:t.menuId,...r}},this.getItemProps=function(e){let{onMouseMove:n,onMouseDown:i,onClick:o,onPress:r,index:s,item:l,...u}=void 0===e?{}:e;void 0===s?(t.items.push(l),s=t.items.indexOf(l)):t.items[s]=l;const a=o,d={onMouseMove:ge(n,(()=>{s!==t.getState().highlightedIndex&&(t.setHighlightedIndex(s,{type:2}),t.avoidScrolling=!0,t.internalSetTimeout((()=>t.avoidScrolling=!1),250))})),onMouseDown:ge(i,(e=>{e.preventDefault()})),onClick:ge(a,(()=>{t.selectItemAtIndex(s,{type:9})}))},c=u.disabled?{onMouseDown:d.onMouseDown}:d;return{id:t.getItemId(s),role:"option","aria-selected":t.getState().highlightedIndex===s,...c,...u}},this.clearItems=()=>{this.items=[]},this.reset=function(e,n){void 0===e&&(e={}),e=xe(e),t.internalSetState((n=>{let{selectedItem:i}=n;return{isOpen:t.props.defaultIsOpen,highlightedIndex:t.props.defaultHighlightedIndex,inputValue:t.props.itemToString(i),...e}}),n)},this.toggleMenu=function(e,n){void 0===e&&(e={}),e=xe(e),t.internalSetState((n=>{let{isOpen:i}=n;return{isOpen:!i,...i&&{highlightedIndex:t.props.defaultHighlightedIndex},...e}}),(()=>{const{isOpen:i,highlightedIndex:o}=t.getState();i&&t.getItemCount()>0&&"number"==typeof o&&t.setHighlightedIndex(o,e),ae(n)()}))},this.openMenu=e=>{this.internalSetState({isOpen:!0},e)},this.closeMenu=e=>{this.internalSetState({isOpen:!1},e)},this.updateStatus=pe((()=>{const e=this.getState(),t=this.items[e.highlightedIndex],n=this.getItemCount(),i=this.props.getA11yStatusMessage({itemToString:this.props.itemToString,previousResultCount:this.previousResultCount,resultCount:n,highlightedItem:t,...e});this.previousResultCount=n,Ee(i,this.props.environment.document)}),200);const{defaultHighlightedIndex:n,initialHighlightedIndex:i=n,defaultIsOpen:o,initialIsOpen:r=o,initialInputValue:s="",initialSelectedItem:l=null}=this.props,u=this.getState({highlightedIndex:i,isOpen:r,inputValue:s,selectedItem:l});null!=u.selectedItem&&void 0===this.props.initialInputValue&&(u.inputValue=this.props.itemToString(u.selectedItem)),this.state=u}internalClearTimeouts(){this.timeoutIds.forEach((e=>{clearTimeout(e)})),this.timeoutIds=[]}getState(e){return void 0===e&&(e=this.state),be(e,this.props)}getItemCount(){let e=this.items.length;return null!=this.itemCount?e=this.itemCount:void 0!==this.props.itemCount&&(e=this.props.itemCount),e}getItemNodeFromIndex(e){return this.props.environment.document.getElementById(this.getItemId(e))}scrollHighlightedItemIntoView(){{const e=this.getItemNodeFromIndex(this.getState().highlightedIndex);this.props.scrollIntoView(e,this._menuNode)}}moveHighlightedIndex(e,t){const n=this.getItemCount(),{highlightedIndex:i}=this.getState();if(n>0){const o=Ce(e,i,n,(e=>this.getItemNodeFromIndex(e)));this.setHighlightedIndex(o,t)}}getStateAndHelpers(){const{highlightedIndex:e,inputValue:t,selectedItem:n,isOpen:i}=this.getState(),{itemToString:o}=this.props,{id:r}=this,{getRootProps:s,getToggleButtonProps:l,getLabelProps:u,getMenuProps:a,getInputProps:d,getItemProps:c,openMenu:h,closeMenu:p,toggleMenu:g,selectItem:m,selectItemAtIndex:f,selectHighlightedItem:I,setHighlightedIndex:y,clearSelection:v,clearItems:x,reset:b,setItemCount:w,unsetItemCount:S,internalSetState:C}=this;return{getRootProps:s,getToggleButtonProps:l,getLabelProps:u,getMenuProps:a,getInputProps:d,getItemProps:c,reset:b,openMenu:h,closeMenu:p,toggleMenu:g,selectItem:m,selectItemAtIndex:f,selectHighlightedItem:I,setHighlightedIndex:y,clearSelection:v,clearItems:x,setItemCount:w,unsetItemCount:S,setState:C,itemToString:o,id:r,highlightedIndex:e,inputValue:t,isOpen:i,selectedItem:n}}componentDidMount(){{const e=()=>{this.isMouseDown=!0},t=e=>{this.isMouseDown=!1;!Oe(e.target,[this._rootNode,this._menuNode],this.props.environment)&&this.getState().isOpen&&this.reset({type:1},(()=>this.props.onOuterClick(this.getStateAndHelpers())))},n=()=>{this.isTouchMove=!1},i=()=>{this.isTouchMove=!0},o=e=>{const t=Oe(e.target,[this._rootNode,this._menuNode],this.props.environment,!1);this.isTouchMove||t||!this.getState().isOpen||this.reset({type:16},(()=>this.props.onOuterClick(this.getStateAndHelpers())))},{environment:r}=this.props;r.addEventListener("mousedown",e),r.addEventListener("mouseup",t),r.addEventListener("touchstart",n),r.addEventListener("touchmove",i),r.addEventListener("touchend",o),this.cleanup=()=>{this.internalClearTimeouts(),this.updateStatus.cancel(),r.removeEventListener("mousedown",e),r.removeEventListener("mouseup",t),r.removeEventListener("touchstart",n),r.removeEventListener("touchmove",i),r.removeEventListener("touchend",o)}}}shouldScroll(e,t){const{highlightedIndex:n}=void 0===this.props.highlightedIndex?this.getState():this.props,{highlightedIndex:i}=void 0===t.highlightedIndex?e:t;return n&&this.getState().isOpen&&!e.isOpen||n!==i}componentDidUpdate(e,t){we(this.props,"selectedItem")&&this.props.selectedItemChanged(e.selectedItem,this.props.selectedItem)&&this.internalSetState({type:15,inputValue:this.props.itemToString(this.props.selectedItem)}),!this.avoidScrolling&&this.shouldScroll(t,e)&&this.scrollHighlightedItemIntoView(),this.updateStatus()}componentWillUnmount(){this.cleanup()}render(){const e=ye(this.props.children,de);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;const n=ye(e(this.getStateAndHelpers()));return n?this.getRootProps.called||this.props.suppressRefError?n:function(e){return"string"==typeof e.type}(n)?t.cloneElement(n,this.getRootProps(function(e){return e.props}(n))):void 0:null}}return e.defaultProps={defaultHighlightedIndex:null,defaultIsOpen:!1,getA11yStatusMessage:Ie,itemToString:e=>null==e?"":String(e),onStateChange:de,onInputValueChange:de,onUserAction:de,onChange:de,onSelect:de,onOuterClick:de,selectedItemChanged:(e,t)=>e!==t,environment:"undefined"==typeof window?{}:window,stateReducer:(e,t)=>t,suppressRefError:!1,scrollIntoView:ce},e.stateChangeTypes=Pe,e})();var Re=Te;const He={highlightedIndex:-1,isOpen:!1,selectedItem:null,inputValue:""};function Fe(e,t,n){const{props:i,type:o}=e,r={};Object.keys(t).forEach((i=>{!function(e,t,n,i){const{props:o,type:r}=t,s=`on${Ne(e)}Change`;o[s]&&void 0!==i[e]&&i[e]!==n[e]&&o[s]({type:r,...i})}(i,e,t,n),n[i]!==t[i]&&(r[i]=n[i])})),i.onStateChange&&Object.keys(r).length&&i.onStateChange({type:o,...r})}const Ke=pe(((e,t)=>{Ee(e(),t)}),200),Ve="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?t.useLayoutEffect:t.useEffect;function $e(e){let{id:n=`downshift-${fe()}`,labelId:i,menuId:o,getItemId:r,toggleButtonId:s,inputId:l}=e;return t.useRef({labelId:i||`${n}-label`,menuId:o||`${n}-menu`,getItemId:r||(e=>`${n}-item-${e}`),toggleButtonId:s||`${n}-toggle-button`,inputId:l||`${n}-input`}).current}function Ae(e,t,n){return void 0!==e?e:0===n.length?-1:n.indexOf(t)}function Ne(e){return`${e.slice(0,1).toUpperCase()}${e.slice(1)}`}function Be(e){const n=t.useRef(e);return n.current=e,n}function Le(e,n,i){const o=t.useRef(),r=t.useRef(),s=t.useCallback(((t,n)=>{r.current=n,t=be(t,n.props);const i=e(t,n);return n.props.stateReducer(t,{...n,changes:i})}),[e]),[l,u]=t.useReducer(s,n),a=Be(i),d=t.useCallback((e=>u({props:a.current,...e})),[a]),c=r.current;return t.useEffect((()=>{c&&o.current&&o.current!==l&&Fe(c,be(o.current,c.props),l),o.current=l}),[l,i,c]),[l,d]}function _e(e,t,n){const[i,o]=Le(e,t,n);return[be(i,n),o]}const je={itemToString:function(e){return e?String(e):""},stateReducer:function(e,t){return t.changes},getA11ySelectionMessage:function(e){const{selectedItem:t,itemToString:n}=e;return t?`${n(t)} has been selected.`:""},scrollIntoView:ce,environment:"undefined"==typeof window?{}:window};function Ue(e,t,n){void 0===n&&(n=He);const i=e[`default${Ne(t)}`];return void 0!==i?i:n[t]}function We(e,t,n){void 0===n&&(n=He);const i=e[t];if(void 0!==i)return i;const o=e[`initial${Ne(t)}`];return void 0!==o?o:Ue(e,t,n)}function ze(e){const t=We(e,"selectedItem"),n=We(e,"isOpen"),i=We(e,"highlightedIndex"),o=We(e,"inputValue");return{highlightedIndex:i<0&&t&&n?e.items.indexOf(t):i,isOpen:n,selectedItem:t,inputValue:o}}function qe(e,t,n){const{items:i,initialHighlightedIndex:o,defaultHighlightedIndex:r}=e,{selectedItem:s,highlightedIndex:l}=t;return 0===i.length?-1:void 0!==o&&l===o?o:void 0!==r?r:s?i.indexOf(s):0===n?-1:n<0?i.length-1:0}function Ye(e,n,i,o){const r=t.useRef({isMouseDown:!1,isTouchMove:!1});return t.useEffect((()=>{const t=()=>{r.current.isMouseDown=!0},s=t=>{r.current.isMouseDown=!1,e&&!Oe(t.target,n.map((e=>e.current)),i)&&o()},l=()=>{r.current.isTouchMove=!1},u=()=>{r.current.isTouchMove=!0},a=t=>{!e||r.current.isTouchMove||Oe(t.target,n.map((e=>e.current)),i,!1)||o()};return i.addEventListener("mousedown",t),i.addEventListener("mouseup",s),i.addEventListener("touchstart",l),i.addEventListener("touchmove",u),i.addEventListener("touchend",a),function(){i.removeEventListener("mousedown",t),i.removeEventListener("mouseup",s),i.removeEventListener("touchstart",l),i.removeEventListener("touchmove",u),i.removeEventListener("touchend",a)}}),[e,i]),r}let Xe=()=>de;function Ge(e,n,i){let{isInitialMount:o,highlightedIndex:r,items:s,environment:l,...u}=i;t.useEffect((()=>{o||Ke((()=>e({highlightedIndex:r,highlightedItem:s[r],resultCount:s.length,...u})),l.document)}),n)}function Je(e){let{highlightedIndex:n,isOpen:i,itemRefs:o,getItemNodeFromIndex:r,menuElement:s,scrollIntoView:l}=e;const u=t.useRef(!0);return Ve((()=>{n<0||!i||!Object.keys(o.current).length||(!1===u.current?u.current=!0:l(r(n),s))}),[n]),u}let Qe=de;function Ze(e,t,n){const{type:i,props:o}=t;let r;switch(i){case n.ItemMouseMove:r={highlightedIndex:t.disabled?-1:t.index};break;case n.MenuMouseLeave:r={highlightedIndex:-1};break;case n.ToggleButtonClick:case n.FunctionToggleMenu:r={isOpen:!e.isOpen,highlightedIndex:e.isOpen?-1:qe(o,e,0)};break;case n.FunctionOpenMenu:r={isOpen:!0,highlightedIndex:qe(o,e,0)};break;case n.FunctionCloseMenu:r={isOpen:!1};break;case n.FunctionSetHighlightedIndex:r={highlightedIndex:t.highlightedIndex};break;case n.FunctionSetInputValue:r={inputValue:t.inputValue};break;case n.FunctionReset:r={highlightedIndex:Ue(o,"highlightedIndex"),isOpen:Ue(o,"isOpen"),selectedItem:Ue(o,"selectedItem"),inputValue:Ue(o,"inputValue")};break;default:throw new Error("Reducer called without proper action type.")}return{...e,...r}}var et=function(){return et=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},et.apply(this,arguments)};M.array.isRequired,M.func,M.func,M.func,M.number,M.number,M.number,M.bool,M.bool,M.bool,M.any,M.any,M.any,M.string,M.string,M.string,M.func,M.string,M.func,M.func,M.func,M.func,M.func,M.shape({addEventListener:M.func,removeEventListener:M.func,document:M.shape({getElementById:M.func,activeElement:M.any,body:M.any})});var tt=et(et({},je),{getA11yStatusMessage:function(e){var t=e.isOpen,n=e.resultCount,i=e.previousResultCount;return t?n?n!==i?"".concat(n," result").concat(1===n?" is":"s are"," available, use up and down arrow keys to navigate. Press Enter or Space Bar keys to select."):"":"No results are available.":""}}),nt=de;var it=Object.freeze({__proto__:null,ToggleButtonClick:0,ToggleButtonKeyDownArrowDown:1,ToggleButtonKeyDownArrowUp:2,ToggleButtonKeyDownCharacter:3,ToggleButtonKeyDownEscape:4,ToggleButtonKeyDownHome:5,ToggleButtonKeyDownEnd:6,ToggleButtonKeyDownEnter:7,ToggleButtonKeyDownSpaceButton:8,ToggleButtonKeyDownPageUp:9,ToggleButtonKeyDownPageDown:10,ToggleButtonBlur:11,MenuMouseLeave:12,ItemMouseMove:13,ItemClick:14,FunctionToggleMenu:15,FunctionOpenMenu:16,FunctionCloseMenu:17,FunctionSetHighlightedIndex:18,FunctionSelectItem:19,FunctionSetInputValue:20,FunctionReset:21});function ot(e,t){const{type:n,props:i,altKey:o}=t;let r;switch(n){case 14:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),selectedItem:i.items[t.index]};break;case 3:{const n=t.key,o=`${e.inputValue}${n}`,s=function(e){for(var t=e.keysSoFar,n=e.highlightedIndex,i=e.items,o=e.itemToString,r=e.getItemNodeFromIndex,s=t.toLowerCase(),l=0;l<i.length;l++){var u=(l+n+1)%i.length,a=i[u];if(void 0!==a&&o(a).toLowerCase().startsWith(s)){var d=r(u);if(!(null==d?void 0:d.hasAttribute("disabled")))return u}}return n}({keysSoFar:o,highlightedIndex:!e.isOpen&&e.selectedItem?i.items.indexOf(e.selectedItem):e.highlightedIndex,items:i.items,itemToString:i.itemToString,getItemNodeFromIndex:t.getItemNodeFromIndex});r={inputValue:o,highlightedIndex:s,isOpen:!0}}break;case 1:r={highlightedIndex:e.isOpen?Ce(1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1):o&&null==e.selectedItem?-1:qe(i,e,1),isOpen:!0};break;case 2:if(e.isOpen&&o)r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex]}};else{r={highlightedIndex:e.isOpen?Ce(-1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1):qe(i,e,-1),isOpen:!0}}break;case 7:case 8:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex]}};break;case 5:r={highlightedIndex:ke(1,0,i.items.length,t.getItemNodeFromIndex,!1),isOpen:!0};break;case 6:r={highlightedIndex:ke(-1,i.items.length-1,i.items.length,t.getItemNodeFromIndex,!1),isOpen:!0};break;case 9:r={highlightedIndex:Ce(-10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 10:r={highlightedIndex:Ce(10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 4:r={isOpen:!1,highlightedIndex:-1};break;case 11:r={isOpen:!1,highlightedIndex:-1,...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex]}};break;case 19:r={selectedItem:t.selectedItem};break;default:return Ze(e,t,it)}return{...e,...r}}function rt(e){void 0===e&&(e={}),nt();const n={...tt,...e},{items:i,scrollIntoView:o,environment:r,itemToString:s,getA11ySelectionMessage:l,getA11yStatusMessage:u}=n,a=ze(n),[d,c]=_e(ot,a,n),{isOpen:h,highlightedIndex:p,selectedItem:g,inputValue:m}=d,f=t.useRef(null),I=t.useRef(null),y=t.useRef({}),v=t.useRef(null),x=$e(n),b=t.useRef(),w=t.useRef(!0),S=Be({state:d,props:n}),C=t.useCallback((e=>y.current[x.getItemId(e)]),[x]);Ge(u,[h,p,m,i],{isInitialMount:w.current,previousResultCount:b.current,items:i,environment:r,itemToString:s,...d}),Ge(l,[g],{isInitialMount:w.current,previousResultCount:b.current,items:i,environment:r,itemToString:s,...d});const k=Je({menuElement:I.current,highlightedIndex:p,isOpen:h,itemRefs:y,scrollIntoView:o,getItemNodeFromIndex:C});t.useEffect((()=>(v.current=pe((e=>{e({type:20,inputValue:""})}),500),()=>{v.current.cancel()})),[]),t.useEffect((()=>{m&&v.current(c)}),[c,m]),Qe({isInitialMount:w.current,props:n,state:d}),t.useEffect((()=>{w.current||(b.current=i.length)}));const O=Ye(h,[I,f],r,(()=>{c({type:11})})),M=Xe();t.useEffect((()=>{w.current=!1}),[]),t.useEffect((()=>{h||(y.current={})}),[h]);const E=t.useMemo((()=>({ArrowDown(e){e.preventDefault(),c({type:1,getItemNodeFromIndex:C,altKey:e.altKey})},ArrowUp(e){e.preventDefault(),c({type:2,getItemNodeFromIndex:C,altKey:e.altKey})},Home(e){e.preventDefault(),c({type:5,getItemNodeFromIndex:C})},End(e){e.preventDefault(),c({type:6,getItemNodeFromIndex:C})},Escape(){S.current.state.isOpen&&c({type:4})},Enter(e){e.preventDefault(),c({type:S.current.state.isOpen?7:0})},PageUp(e){S.current.state.isOpen&&(e.preventDefault(),c({type:9,getItemNodeFromIndex:C}))},PageDown(e){S.current.state.isOpen&&(e.preventDefault(),c({type:10,getItemNodeFromIndex:C}))}," "(e){e.preventDefault(),c({type:S.current.state.isOpen?8:0})}})),[c,C,S]),D=t.useCallback((()=>{c({type:15})}),[c]),P=t.useCallback((()=>{c({type:17})}),[c]),T=t.useCallback((()=>{c({type:16})}),[c]),R=t.useCallback((e=>{c({type:18,highlightedIndex:e})}),[c]),H=t.useCallback((e=>{c({type:19,selectedItem:e})}),[c]),F=t.useCallback((()=>{c({type:21})}),[c]),K=t.useCallback((e=>{c({type:20,inputValue:e})}),[c]),V=t.useCallback((e=>({id:x.labelId,htmlFor:x.toggleButtonId,...e})),[x]),$=t.useCallback((function(e,t){let{onMouseLeave:n,refKey:i="ref",onKeyDown:o,onBlur:r,ref:s,...l}=void 0===e?{}:e,{suppressRefError:u=!1}=void 0===t?{}:t;return M("getMenuProps",u,i,I),{[i]:me(s,(e=>{I.current=e})),id:x.menuId,role:"listbox","aria-labelledby":x.labelId,tabIndex:-1,onMouseLeave:ge(n,(()=>{c({type:12})})),...l}}),[c,M,x]);return{getToggleButtonProps:t.useCallback((function(e,t){let{onBlur:n,onClick:i,onKeyDown:o,refKey:r="ref",ref:s,...l}=void 0===e?{}:e,{suppressRefError:u=!1}=void 0===t?{}:t;const a=S.current.state,d=()=>{c({type:0})},h=e=>{const t=Se(e);t&&E[t]?E[t](e):function(e){return/^\S{1}$/.test(e)}(t)&&c({type:3,key:t,getItemNodeFromIndex:C})},p={[r]:me(s,(e=>{f.current=e})),"aria-activedescendant":a.isOpen&&a.highlightedIndex>-1?x.getItemId(a.highlightedIndex):"","aria-controls":x.menuId,"aria-expanded":S.current.state.isOpen,"aria-haspopup":"listbox","aria-labelledby":`${x.labelId}`,id:x.toggleButtonId,role:"combobox",tabIndex:0,onBlur:ge(n,(()=>{a.isOpen&&!O.current.isMouseDown&&c({type:11})})),...l};return l.disabled||(p.onClick=ge(i,d),p.onKeyDown=ge(o,h)),M("getToggleButtonProps",u,r,f),p}),[S,x,M,c,O,E,C]),getLabelProps:V,getMenuProps:$,getItemProps:t.useCallback((function(e){let{item:t,index:n,onMouseMove:o,onClick:r,refKey:s="ref",ref:l,disabled:u,...a}=void 0===e?{}:e;const{state:d,props:h}=S.current,p=t??i[n],m=Ae(n,p,h.items),f=()=>{c({type:14,index:m})},I=Ae(m,p,h.items);if(I<0)throw new Error("Pass either item or item index in getItemProps!");const v={disabled:u,role:"option","aria-selected":`${p===g}`,id:x.getItemId(I),[s]:me(l,(e=>{e&&(y.current[x.getItemId(I)]=e)})),...a};return u||(v.onClick=ge(r,f)),v.onMouseMove=ge(o,(()=>{m!==d.highlightedIndex&&(k.current=!1,c({type:13,index:m,disabled:u}))})),v}),[S,i,g,x,k,c]),toggleMenu:D,openMenu:T,closeMenu:P,setHighlightedIndex:R,selectItem:H,reset:F,setInputValue:K,highlightedIndex:p,isOpen:h,selectedItem:g,inputValue:m}}rt.stateChangeTypes=it;var st=Object.freeze({__proto__:null,InputKeyDownArrowDown:0,InputKeyDownArrowUp:1,InputKeyDownEscape:2,InputKeyDownHome:3,InputKeyDownEnd:4,InputKeyDownPageUp:5,InputKeyDownPageDown:6,InputKeyDownEnter:7,InputChange:8,InputBlur:9,InputFocus:10,MenuMouseLeave:11,ItemMouseMove:12,ItemClick:13,ToggleButtonClick:14,FunctionToggleMenu:15,FunctionOpenMenu:16,FunctionCloseMenu:17,FunctionSetHighlightedIndex:18,FunctionSelectItem:19,FunctionSetInputValue:20,FunctionReset:21,ControlledPropUpdatedSelectedItem:22});M.array.isRequired,M.func,M.func,M.func,M.number,M.number,M.number,M.bool,M.bool,M.bool,M.any,M.any,M.any,M.string,M.string,M.string,M.string,M.string,M.string,M.func,M.string,M.string,M.func,M.func,M.func,M.func,M.func,M.func,M.shape({addEventListener:M.func,removeEventListener:M.func,document:M.shape({getElementById:M.func,activeElement:M.any,body:M.any})});let lt=de;const ut={...je,getA11yStatusMessage:Ie};function at(e,t){const{type:n,props:i,altKey:o}=t;let r;switch(n){case 13:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),selectedItem:i.items[t.index],inputValue:i.itemToString(i.items[t.index])};break;case 0:r=e.isOpen?{highlightedIndex:Ce(1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!0)}:{highlightedIndex:o&&null==e.selectedItem?-1:qe(i,e,1,t.getItemNodeFromIndex),isOpen:i.items.length>=0};break;case 1:r=e.isOpen?o?{isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex],inputValue:i.itemToString(i.items[e.highlightedIndex])}}:{highlightedIndex:Ce(-1,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!0)}:{highlightedIndex:qe(i,e,-1,t.getItemNodeFromIndex),isOpen:i.items.length>=0};break;case 7:r={isOpen:Ue(i,"isOpen"),highlightedIndex:Ue(i,"highlightedIndex"),...e.highlightedIndex>=0&&{selectedItem:i.items[e.highlightedIndex],inputValue:i.itemToString(i.items[e.highlightedIndex])}};break;case 2:r={isOpen:!1,highlightedIndex:-1,...!e.isOpen&&{selectedItem:null,inputValue:""}};break;case 5:r={highlightedIndex:Ce(-10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 6:r={highlightedIndex:Ce(10,e.highlightedIndex,i.items.length,t.getItemNodeFromIndex,!1)};break;case 3:r={highlightedIndex:ke(1,0,i.items.length,t.getItemNodeFromIndex,!1)};break;case 4:r={highlightedIndex:ke(-1,i.items.length-1,i.items.length,t.getItemNodeFromIndex,!1)};break;case 9:r={isOpen:!1,highlightedIndex:-1,...e.highlightedIndex>=0&&t.selectItem&&{selectedItem:i.items[e.highlightedIndex],inputValue:i.itemToString(i.items[e.highlightedIndex])}};break;case 8:r={isOpen:!0,highlightedIndex:Ue(i,"highlightedIndex"),inputValue:t.inputValue};break;case 10:r={isOpen:!0,highlightedIndex:qe(i,e,0)};break;case 19:r={selectedItem:t.selectedItem,inputValue:i.itemToString(t.selectedItem)};break;case 22:r={inputValue:t.inputValue};break;default:return Ze(e,t,st)}return{...e,...r}}function dt(e){void 0===e&&(e={}),lt();const n={...ut,...e},{initialIsOpen:i,defaultIsOpen:o,items:r,scrollIntoView:s,environment:l,getA11yStatusMessage:u,getA11ySelectionMessage:a,itemToString:d}=n,c=function(e){const t=ze(e),{selectedItem:n}=t;let{inputValue:i}=t;return""===i&&n&&void 0===e.defaultInputValue&&void 0===e.initialInputValue&&void 0===e.inputValue&&(i=e.itemToString(n)),{...t,inputValue:i}}(n),[h,p]=function(e,n,i){const o=t.useRef(),[r,s]=Le(e,n,i);return t.useEffect((()=>{we(i,"selectedItem")&&(o.current!==i.selectedItem&&s({type:22,inputValue:i.itemToString(i.selectedItem)}),o.current=r.selectedItem===o.current?i.selectedItem:r.selectedItem)})),[be(r,i),s]}(at,c,n),{isOpen:g,highlightedIndex:m,selectedItem:f,inputValue:I}=h,y=t.useRef(null),v=t.useRef({}),x=t.useRef(null),b=t.useRef(null),w=t.useRef(!0),S=$e(n),C=t.useRef(),k=Be({state:h,props:n}),O=t.useCallback((e=>v.current[S.getItemId(e)]),[S]);Ge(u,[g,m,I,r],{isInitialMount:w.current,previousResultCount:C.current,items:r,environment:l,itemToString:d,...h}),Ge(a,[f],{isInitialMount:w.current,previousResultCount:C.current,items:r,environment:l,itemToString:d,...h});const M=Je({menuElement:y.current,highlightedIndex:m,isOpen:g,itemRefs:v,scrollIntoView:s,getItemNodeFromIndex:O});Qe({isInitialMount:w.current,props:n,state:h}),t.useEffect((()=>{(i||o||g)&&x.current&&x.current.focus()}),[]),t.useEffect((()=>{w.current||(C.current=r.length)}));const E=Ye(g,[x,y,b],l,(()=>{p({type:9,selectItem:!1})})),D=Xe();t.useEffect((()=>{w.current=!1}),[]),t.useEffect((()=>{if(g){if(document.activeElement!==x.current){var e;null==x||null==(e=x.current)||e.focus()}}else v.current={}}),[g]);const P=t.useMemo((()=>({ArrowDown(e){e.preventDefault(),p({type:0,altKey:e.altKey,getItemNodeFromIndex:O})},ArrowUp(e){e.preventDefault(),p({type:1,altKey:e.altKey,getItemNodeFromIndex:O})},Home(e){k.current.state.isOpen&&(e.preventDefault(),p({type:3,getItemNodeFromIndex:O}))},End(e){k.current.state.isOpen&&(e.preventDefault(),p({type:4,getItemNodeFromIndex:O}))},Escape(e){const t=k.current.state;(t.isOpen||t.inputValue||t.selectedItem||t.highlightedIndex>-1)&&(e.preventDefault(),p({type:2}))},Enter(e){k.current.state.isOpen&&229!==e.which&&(e.preventDefault(),p({type:7,getItemNodeFromIndex:O}))},PageUp(e){k.current.state.isOpen&&(e.preventDefault(),p({type:5,getItemNodeFromIndex:O}))},PageDown(e){k.current.state.isOpen&&(e.preventDefault(),p({type:6,getItemNodeFromIndex:O}))}})),[p,k,O]),T=t.useCallback((e=>({id:S.labelId,htmlFor:S.inputId,...e})),[S]),R=t.useCallback((function(e,t){let{onMouseLeave:n,refKey:i="ref",ref:o,...r}=void 0===e?{}:e,{suppressRefError:s=!1}=void 0===t?{}:t;return D("getMenuProps",s,i,y),{[i]:me(o,(e=>{y.current=e})),id:S.menuId,role:"listbox","aria-labelledby":S.labelId,onMouseLeave:ge(n,(()=>{p({type:11})})),...r}}),[p,D,S]),H=t.useCallback((function(e){let{item:t,index:n,refKey:i="ref",ref:o,onMouseMove:r,onMouseDown:s,onClick:l,onPress:u,disabled:a,...d}=void 0===e?{}:e;const{props:c,state:h}=k.current,g=Ae(n,t,c.items);if(g<0)throw new Error("Pass either item or item index in getItemProps!");const m=l;return{[i]:me(o,(e=>{e&&(v.current[S.getItemId(g)]=e)})),disabled:a,role:"option","aria-selected":`${g===h.highlightedIndex}`,id:S.getItemId(g),...!a&&{onClick:ge(m,(()=>{p({type:13,index:n})}))},onMouseMove:ge(r,(()=>{n!==h.highlightedIndex&&(M.current=!1,p({type:12,index:n,disabled:a}))})),onMouseDown:ge(s,(e=>e.preventDefault())),...d}}),[p,k,M,S]),F=t.useCallback((function(e){let{onClick:t,onPress:n,refKey:i="ref",ref:o,...r}=void 0===e?{}:e;const s=k.current.state;return{[i]:me(o,(e=>{b.current=e})),"aria-controls":S.menuId,"aria-expanded":s.isOpen,id:S.toggleButtonId,tabIndex:-1,...!r.disabled&&{onClick:ge(t,(()=>{p({type:14})}))},...r}}),[p,k,S]),K=t.useCallback((function(e,t){let{onKeyDown:n,onChange:i,onInput:o,onFocus:r,onBlur:s,onChangeText:l,refKey:u="ref",ref:a,...d}=void 0===e?{}:e,{suppressRefError:c=!1}=void 0===t?{}:t;D("getInputProps",c,u,x);const h=k.current.state,g=e=>{const t=Se(e);t&&P[t]&&P[t](e)},m=e=>{p({type:8,inputValue:e.target.value})},f=()=>{h.isOpen&&!E.current.isMouseDown&&p({type:9,selectItem:!0})},I=()=>{h.isOpen||p({type:10})};let y={};return d.disabled||(y={onChange:ge(i,o,m),onKeyDown:ge(n,g),onBlur:ge(s,f),onFocus:ge(r,I)}),{[u]:me(a,(e=>{x.current=e})),"aria-activedescendant":h.isOpen&&h.highlightedIndex>-1?S.getItemId(h.highlightedIndex):"","aria-autocomplete":"list","aria-controls":S.menuId,"aria-expanded":h.isOpen,"aria-labelledby":S.labelId,autoComplete:"off",id:S.inputId,role:"combobox",value:h.inputValue,...y,...d}}),[p,P,k,E,D,S]),V=t.useCallback((()=>{p({type:15})}),[p]),$=t.useCallback((()=>{p({type:17})}),[p]),A=t.useCallback((()=>{p({type:16})}),[p]),N=t.useCallback((e=>{p({type:18,highlightedIndex:e})}),[p]),B=t.useCallback((e=>{p({type:19,selectedItem:e})}),[p]);return{getItemProps:H,getLabelProps:T,getMenuProps:R,getInputProps:K,getToggleButtonProps:F,toggleMenu:V,openMenu:A,closeMenu:$,setHighlightedIndex:N,setInputValue:t.useCallback((e=>{p({type:20,inputValue:e})}),[p]),selectItem:B,reset:t.useCallback((()=>{p({type:21})}),[p]),highlightedIndex:m,isOpen:g,selectedItem:f,inputValue:I}}dt.stateChangeTypes=st;const ct={activeIndex:-1,selectedItems:[]};function ht(e,t){return We(e,t,ct)}function pt(e,t){return Ue(e,t,ct)}function gt(e){if(e.shiftKey||e.metaKey||e.ctrlKey||e.altKey)return!1;const t=e.target;return!(t instanceof HTMLInputElement&&""!==t.value)||0===t.selectionStart&&0===t.selectionEnd}M.array,M.array,M.array,M.func,M.func,M.func,M.number,M.number,M.number,M.func,M.func,M.string,M.string,M.shape({addEventListener:M.func,removeEventListener:M.func,document:M.shape({getElementById:M.func,activeElement:M.any,body:M.any})});const mt={itemToString:je.itemToString,stateReducer:je.stateReducer,environment:je.environment,getA11yRemovalMessage:function(e){const{removedSelectedItem:t,itemToString:n}=e;return`${n(t)} has been removed.`},keyNavigationNext:"ArrowRight",keyNavigationPrevious:"ArrowLeft"};let ft=de;var It=Object.freeze({__proto__:null,SelectedItemClick:0,SelectedItemKeyDownDelete:1,SelectedItemKeyDownBackspace:2,SelectedItemKeyDownNavigationNext:3,SelectedItemKeyDownNavigationPrevious:4,DropdownKeyDownNavigationPrevious:5,DropdownKeyDownBackspace:6,DropdownClick:7,FunctionAddSelectedItem:8,FunctionRemoveSelectedItem:9,FunctionSetSelectedItems:10,FunctionSetActiveIndex:11,FunctionReset:12});function yt(e,t){const{type:n,index:i,props:o,selectedItem:r}=t,{activeIndex:s,selectedItems:l}=e;let u;switch(n){case 0:u={activeIndex:i};break;case 4:u={activeIndex:s-1<0?0:s-1};break;case 3:u={activeIndex:s+1>=l.length?-1:s+1};break;case 2:case 1:{let e=s;1===l.length?e=-1:s===l.length-1&&(e=l.length-2),u={selectedItems:[...l.slice(0,s),...l.slice(s+1)],activeIndex:e};break}case 5:u={activeIndex:l.length-1};break;case 6:u={selectedItems:l.slice(0,l.length-1)};break;case 8:u={selectedItems:[...l,r]};break;case 7:u={activeIndex:-1};break;case 9:{let e=s;const t=l.indexOf(r);t>=0&&(1===l.length?e=-1:t===l.length-1&&(e=l.length-2),u={selectedItems:[...l.slice(0,t),...l.slice(t+1)],activeIndex:e});break}case 10:{const{selectedItems:e}=t;u={selectedItems:e};break}case 11:{const{activeIndex:e}=t;u={activeIndex:e};break}case 12:u={activeIndex:pt(o,"activeIndex"),selectedItems:pt(o,"selectedItems")};break;default:throw new Error("Reducer called without proper action type.")}return{...e,...u}}function vt(e){void 0===e&&(e={}),ft();const n={...mt,...e},{getA11yRemovalMessage:i,itemToString:o,environment:r,keyNavigationNext:s,keyNavigationPrevious:l}=n,[u,a]=_e(yt,function(e){return{activeIndex:ht(e,"activeIndex"),selectedItems:ht(e,"selectedItems")}}(n),n),{activeIndex:d,selectedItems:c}=u,h=t.useRef(!0),p=t.useRef(null),g=t.useRef(c),m=t.useRef();m.current=[];const f=Be({state:u,props:n});t.useEffect((()=>{if(!h.current){if(c.length<g.current.length){const e=g.current.find((e=>c.indexOf(e)<0));Ee(i({itemToString:o,resultCount:c.length,removedSelectedItem:e,activeIndex:d,activeSelectedItem:c[d]}),r.document)}g.current=c}}),[c.length]),t.useEffect((()=>{h.current||(-1===d&&p.current?p.current.focus():m.current[d]&&m.current[d].focus())}),[d]),Qe({isInitialMount:h.current,props:n,state:u});const I=Xe();t.useEffect((()=>{h.current=!1}),[]);const y=t.useMemo((()=>({[l](){a({type:4})},[s](){a({type:3})},Delete(){a({type:1})},Backspace(){a({type:2})}})),[a,s,l]),v=t.useMemo((()=>({[l](e){gt(e)&&a({type:5})},Backspace(e){gt(e)&&a({type:6})}})),[a,l]);return{getSelectedItemProps:t.useCallback((function(e){let{refKey:t="ref",ref:n,onClick:i,onKeyDown:o,selectedItem:r,index:s,...l}=void 0===e?{}:e;const{state:u}=f.current;if(Ae(s,r,u.selectedItems)<0)throw new Error("Pass either selectedItem or index in getSelectedItemProps!");return{[t]:me(n,(e=>{e&&m.current.push(e)})),tabIndex:s===u.activeIndex?0:-1,onClick:ge(i,(()=>{a({type:0,index:s})})),onKeyDown:ge(o,(e=>{const t=Se(e);t&&y[t]&&y[t](e)})),...l}}),[a,f,y]),getDropdownProps:t.useCallback((function(e,t){let{refKey:n="ref",ref:i,onKeyDown:o,onClick:r,preventKeyAction:s=!1,...l}=void 0===e?{}:e,{suppressRefError:u=!1}=void 0===t?{}:t;return I("getDropdownProps",u,n,p),{[n]:me(i,(e=>{e&&(p.current=e)})),...!s&&{onKeyDown:ge(o,(e=>{const t=Se(e);t&&v[t]&&v[t](e)})),onClick:ge(r,(()=>{a({type:7})}))},...l}}),[a,v,I]),addSelectedItem:t.useCallback((e=>{a({type:8,selectedItem:e})}),[a]),removeSelectedItem:t.useCallback((e=>{a({type:9,selectedItem:e})}),[a]),setSelectedItems:t.useCallback((e=>{a({type:10,selectedItems:e})}),[a]),setActiveIndex:t.useCallback((e=>{a({type:11,activeIndex:e})}),[a]),reset:t.useCallback((()=>{a({type:12})}),[a]),selectedItems:c,activeIndex:d}}vt.stateChangeTypes=It,e.default=Re,e.resetIdCounter=function(){ue=0},e.useCombobox=dt,e.useMultipleSelection=vt,e.useSelect=rt,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=downshift.umd.min.js.map