"use strict";(self.webpackChunksubstack=self.webpackChunksubstack||[]).push([["546"],{58017:function(e,t,n){let o,r,i,l;/** * react-virtual * * Copyright (c) TanStack * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function a(){return(a=Object.assign?Object.assign.bind():function(e){for(var t=1;ted});var u=n(98661);/** * virtual-core * * Copyright (c) TanStack * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0;i--){var l=e[i];if(!n.has(l.lane)){var a=r.get(l.lane);if(null==a||l.end>a.end?r.set(l.lane,l):l.end0?Math.min.apply(Math,o.pendingMeasuredCacheIndexes):0;o.pendingMeasuredCacheIndexes=[];for(var u=o.measurementsCache.slice(0,a),s=a;s0&&t>0?function(e){for(var t=e.measurements,n=e.outerSize,o=e.scrollOffset,r=t.length-1,i=x(0,r,function(e){return t[e].start},o),l=i;l=o.scrollOffset+n?"end":"start"),"start"===t||("end"===t?e-=n:"center"===t&&(e-=n/2));var r=o.options.horizontal?"scrollWidth":"scrollHeight";return Math.max(Math.min((o.scrollElement?"document"in o.scrollElement?o.scrollElement.document.documentElement[r]:o.scrollElement[r]:0)-o.getSize(),e),0)},this.getOffsetForIndex=function(e,t){void 0===t&&(t="auto"),e=Math.max(0,Math.min(e,o.options.count-1));var n=d(o.getMeasurements()[e]);if("auto"===t){if(n.end>=o.scrollOffset+o.getSize()-o.options.scrollPaddingEnd)t="end";else{if(!(n.start<=o.scrollOffset+o.options.scrollPaddingStart))return[o.scrollOffset,t];t="start"}}var r="end"===t?n.end+o.options.scrollPaddingEnd:n.start-o.options.scrollPaddingStart;return[o.getOffsetForAlignment(r,t),t]},this.isDynamicMode=function(){return o.measureElementCache.size>0},this.cancelScrollToIndex=function(){null!==o.scrollToIndexTimeoutId&&(clearTimeout(o.scrollToIndexTimeoutId),o.scrollToIndexTimeoutId=null)},this.scrollToOffset=function(e,t){var n=void 0===t?{}:t,r=n.align,i=n.behavior;o.cancelScrollToIndex(),"smooth"===i&&o.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),o._scrollToOffset(o.getOffsetForAlignment(e,void 0===r?"start":r),{adjustments:void 0,behavior:i})},this.scrollToIndex=function(e,t){var n=void 0===t?{}:t,r=n.align,i=n.behavior;e=Math.max(0,Math.min(e,o.options.count-1)),o.cancelScrollToIndex(),"smooth"===i&&o.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size.");var l=o.getOffsetForIndex(e,void 0===r?"auto":r),a=l[0],u=l[1];o._scrollToOffset(a,{adjustments:void 0,behavior:i}),"smooth"!==i&&o.isDynamicMode()&&(o.scrollToIndexTimeoutId=setTimeout(function(){(o.scrollToIndexTimeoutId=null,o.measureElementCache.has(o.options.getItemKey(e)))?!(1>Math.abs(o.getOffsetForIndex(e,u)[0]-o.scrollOffset))&&o.scrollToIndex(e,{align:u,behavior:i}):o.scrollToIndex(e,{align:u,behavior:i})}))},this.scrollBy=function(e,t){var n=(void 0===t?{}:t).behavior;o.cancelScrollToIndex(),"smooth"===n&&o.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),o._scrollToOffset(o.scrollOffset+e,{adjustments:void 0,behavior:n})},this.getTotalSize=function(){var e;return((null==(e=o.getMeasurements()[o.options.count-1])?void 0:e.end)||o.options.paddingStart)-o.options.scrollMargin+o.options.paddingEnd},this._scrollToOffset=function(e,t){var n=t.adjustments,r=t.behavior;o.options.scrollToFn(e,{behavior:r,adjustments:n},o)},this.measure=function(){o.itemSizeCache=new Map,o.notify(!1)},this.setOptions(e),this.scrollRect=this.options.initialRect,this.scrollOffset=this.options.initialOffset,this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(function(e){o.itemSizeCache.set(e.key,e.size)}),this.maybeNotify()},x=function(e,t,n,o){for(;e<=t;){var r=(e+t)/2|0,i=n(r);if(io))return r;t=r-1}}return e>0?e-1:0},O="undefined"!=typeof document?u.useLayoutEffect:u.useEffect,I=n(98790),R=n(43090);function T(e,t){let[n,o]=(0,u.useState)(e),r=(0,R.E)(e);return(0,I.e)(()=>o(r.current),[r,o,...t]),n}var S=n(57319),y=n(28842),C=n(76396),E=n(16457),M=n(55068),z=n(72146),w=n(45514),P=n(16653),k=n(57511),F=n(64897),A=n(75838),D=n(57820),_=n(27737),j=n(83575),L=n(17714),V=n(5181),B=n(98652),N=n(43149),K=n(42800),$=n(76984),U=n(7137),q=n(4470),Y=n(35521),G=n(34155),Z=((o=Z||{})[o.Open=0]="Open",o[o.Closed=1]="Closed",o),H=((r=H||{})[r.Single=0]="Single",r[r.Multi=1]="Multi",r),J=((i=J||{})[i.Pointer=0]="Pointer",i[i.Focus=1]="Focus",i[i.Other=2]="Other",i),W=((l=W||{})[l.OpenCombobox=0]="OpenCombobox",l[l.CloseCombobox=1]="CloseCombobox",l[l.GoToOption=2]="GoToOption",l[l.RegisterOption=3]="RegisterOption",l[l.UnregisterOption=4]="UnregisterOption",l[l.RegisterLabel=5]="RegisterLabel",l[l.SetActivationTrigger=6]="SetActivationTrigger",l[l.UpdateVirtualOptions=7]="UpdateVirtualOptions",l);function Q(e,t=e=>e){let n=null!==e.activeOptionIndex?e.options[e.activeOptionIndex]:null,o=t(e.options.slice()),r=o.length>0&&null!==o[0].dataRef.current.order?o.sort((e,t)=>e.dataRef.current.order-t.dataRef.current.order):(0,N.z2)(o,e=>e.dataRef.current.domRef.current),i=n?r.indexOf(n):null;return -1===i&&(i=null),{options:r,activeOptionIndex:i}}let X={1(e){var t;return null!=(t=e.dataRef.current)&&t.disabled||1===e.comboboxState?e:{...e,activeOptionIndex:null,comboboxState:1}},0(e){var t,n;if(null!=(t=e.dataRef.current)&&t.disabled||0===e.comboboxState)return e;if(null!=(n=e.dataRef.current)&&n.value){let t=e.dataRef.current.calculateIndex(e.dataRef.current.value);if(-1!==t)return{...e,activeOptionIndex:t,comboboxState:0}}return{...e,comboboxState:0}},2(e,t){var n,o,r,i,l;if(null!=(n=e.dataRef.current)&&n.disabled||null!=(o=e.dataRef.current)&&o.optionsRef.current&&!(null!=(r=e.dataRef.current)&&r.optionsPropsRef.current.static)&&1===e.comboboxState)return e;if(e.virtual){let n=t.focus===V.T.Specific?t.idx:(0,V.d)(t,{resolveItems:()=>e.virtual.options,resolveActiveIndex:()=>{var t,n;return null!=(n=null!=(t=e.activeOptionIndex)?t:e.virtual.options.findIndex(t=>!e.virtual.disabled(t)))?n:null},resolveDisabled:e.virtual.disabled,resolveId(){throw Error("Function not implemented.")}}),o=null!=(i=t.trigger)?i:2;return e.activeOptionIndex===n&&e.activationTrigger===o?e:{...e,activeOptionIndex:n,activationTrigger:o}}let a=Q(e);if(null===a.activeOptionIndex){let e=a.options.findIndex(e=>!e.dataRef.current.disabled);-1!==e&&(a.activeOptionIndex=e)}let u=t.focus===V.T.Specific?t.idx:(0,V.d)(t,{resolveItems:()=>a.options,resolveActiveIndex:()=>a.activeOptionIndex,resolveId:e=>e.id,resolveDisabled:e=>e.dataRef.current.disabled}),s=null!=(l=t.trigger)?l:2;return e.activeOptionIndex===u&&e.activationTrigger===s?e:{...e,...a,activeOptionIndex:u,activationTrigger:s}},3:(e,t)=>{var n,o,r;if(null!=(n=e.dataRef.current)&&n.virtual)return{...e,options:[...e.options,t.payload]};let i=t.payload,l=Q(e,e=>(e.push(i),e));null===e.activeOptionIndex&&null!=(o=e.dataRef.current)&&o.isSelected(t.payload.dataRef.current.value)&&(l.activeOptionIndex=l.options.indexOf(i));let a={...e,...l,activationTrigger:2};return null!=(r=e.dataRef.current)&&r.__demoMode&&void 0===e.dataRef.current.value&&(a.activeOptionIndex=0),a},4:(e,t)=>{var n;if(null!=(n=e.dataRef.current)&&n.virtual)return{...e,options:e.options.filter(e=>e.id!==t.id)};let o=Q(e,e=>{let n=e.findIndex(e=>e.id===t.id);return -1!==n&&e.splice(n,1),e});return{...e,...o,activationTrigger:2}},5:(e,t)=>e.labelId===t.id?e:{...e,labelId:t.id},6:(e,t)=>e.activationTrigger===t.trigger?e:{...e,activationTrigger:t.trigger},7:(e,t)=>{var n;if((null==(n=e.virtual)?void 0:n.options)===t.options)return e;let o=e.activeOptionIndex;if(null!==e.activeOptionIndex){let n=t.options.indexOf(e.virtual.options[e.activeOptionIndex]);o=-1!==n?n:null}return{...e,activeOptionIndex:o,virtual:Object.assign({},e.virtual,{options:t.options})}}},ee=(0,u.createContext)(null);function et(e){let t=(0,u.useContext)(ee);if(null===t){let t=Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,et),t}return t}ee.displayName="ComboboxActionsContext";let en=(0,u.createContext)(null);function eo(e){var t,n,o,r,i,l;let s=ei("VirtualProvider"),[c,d]=(0,u.useMemo)(()=>{let e=s.optionsRef.current;if(!e)return[0,0];let t=window.getComputedStyle(e);return[parseFloat(t.paddingBlockStart||t.paddingTop),parseFloat(t.paddingBlockEnd||t.paddingBottom)]},[s.optionsRef.current]),f=(n={scrollPaddingStart:c,scrollPaddingEnd:d,count:s.virtual.options.length,estimateSize:()=>40,getScrollElement(){var e;return null!=(e=s.optionsRef.current)?e:null},overscan:12},o=a({observeElementRect:v,observeElementOffset:b,scrollToFn:g},n),r=u.useReducer(function(){return{}},{})[1],i=a({},o,{onChange:function(e,t){t?(0,u.flushSync)(r):r(),null==o.onChange||o.onChange(e,t)}}),(l=u.useState(function(){return new h(i)})[0]).setOptions(i),u.useEffect(function(){return l._didMount()},[]),O(function(){return l._willUpdate()}),l),[p,m]=(0,u.useState)(0);return(0,I.e)(()=>{m(e=>e+1)},[null==(t=s.virtual)?void 0:t.options]),u.default.createElement(en.Provider,{value:f},u.default.createElement("div",{style:{position:"relative",width:"100%",height:`${f.getTotalSize()}px`},ref:e=>{e&&(void 0===G||void 0===G.env.JEST_WORKER_ID)&&0!==s.activationTrigger&&null!==s.activeOptionIndex&&s.virtual.options.length>s.activeOptionIndex&&f.scrollToIndex(s.activeOptionIndex)}},f.getVirtualItems().map(t=>{var n;return u.default.createElement(u.Fragment,{key:t.key},u.default.cloneElement(null==(n=e.children)?void 0:n.call(e,{option:s.virtual.options[t.index],open:0===s.comboboxState}),{key:`${p}-${t.key}`,"data-index":t.index,"aria-setsize":s.virtual.options.length,"aria-posinset":t.index+1,style:{position:"absolute",top:0,left:0,transform:`translateY(${t.start}px)`,overflowAnchor:"none"}}))})))}let er=(0,u.createContext)(null);function ei(e){let t=(0,u.useContext)(er);if(null===t){let t=Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,ei),t}return t}function el(e,t){return(0,$.E)(t.type,X,e,t)}er.displayName="ComboboxDataContext";let ea=u.Fragment,eu=q.AN.RenderStrategy|q.AN.Static,es=(0,q.yV)(function(e,t){let{value:n,defaultValue:o,onChange:r,form:i,name:l,by:a=null,disabled:s=!1,__demoMode:c=!1,nullable:d=!1,multiple:f=!1,immediate:p=!1,virtual:v=null,...b}=e,[m=f?[]:void 0,g]=(0,S.q)(n,r,o),[h,x]=(0,u.useReducer)(el,{dataRef:(0,u.createRef)(),comboboxState:+!c,options:[],virtual:null,activeOptionIndex:null,activationTrigger:2,labelId:null}),O=(0,u.useRef)(!1),R=(0,u.useRef)({static:!1,hold:!1}),T=(0,u.useRef)(null),E=(0,u.useRef)(null),z=(0,u.useRef)(null),w=(0,u.useRef)(null),P=(0,C.z)("string"==typeof a?(e,t)=>(null==e?void 0:e[a])===(null==t?void 0:t[a]):null!=a?a:(e,t)=>e===t),k=(0,C.z)(e=>h.options.findIndex(t=>P(t.dataRef.current.value,e))),F=(0,u.useCallback)(e=>(0,$.E)(j.mode,{1:()=>m.some(t=>P(t,e)),0:()=>P(m,e)}),[m]),A=(0,C.z)(e=>h.activeOptionIndex===k(e)),j=(0,u.useMemo)(()=>({...h,immediate:!1,optionsPropsRef:R,labelRef:T,inputRef:E,buttonRef:z,optionsRef:w,value:m,defaultValue:o,disabled:s,mode:+!!f,virtual:h.virtual,get activeOptionIndex(){if(O.current&&null===h.activeOptionIndex&&h.options.length>0){let e=h.options.findIndex(e=>!e.dataRef.current.disabled);if(-1!==e)return e}return h.activeOptionIndex},calculateIndex:k,compare:P,isSelected:F,isActive:A,nullable:d,__demoMode:c}),[m,o,s,f,d,c,h,null]);(0,I.e)(()=>{},[null,void 0]),(0,I.e)(()=>{h.dataRef.current=j},[j]),(0,M.O)([j.buttonRef,j.inputRef,j.optionsRef],()=>W.closeCombobox(),0===j.comboboxState);let L=(0,u.useMemo)(()=>{var e,t,n;return{open:0===j.comboboxState,disabled:s,activeIndex:j.activeOptionIndex,activeOption:null===j.activeOptionIndex?null:j.virtual?j.virtual.options[null!=(e=j.activeOptionIndex)?e:0]:null!=(n=null==(t=j.options[j.activeOptionIndex])?void 0:t.dataRef.current.value)?n:null,value:m}},[j,s,m]),B=(0,C.z)(()=>{if(null!==j.activeOptionIndex){if(j.virtual)H(j.virtual.options[j.activeOptionIndex]);else{let{dataRef:e}=j.options[j.activeOptionIndex];H(e.current.value)}W.goToOption(V.T.Specific,j.activeOptionIndex)}}),N=(0,C.z)(()=>{x({type:0}),O.current=!0}),U=(0,C.z)(()=>{x({type:1}),O.current=!1}),Y=(0,C.z)((e,t,n)=>(O.current=!1,e===V.T.Specific?x({type:2,focus:V.T.Specific,idx:t,trigger:n}):x({type:2,focus:e,trigger:n}))),G=(0,C.z)((e,t)=>(x({type:3,payload:{id:e,dataRef:t}}),()=>{j.isActive(t.current.value)&&(O.current=!0),x({type:4,id:e})})),Z=(0,C.z)(e=>(x({type:5,id:e}),()=>x({type:5,id:null}))),H=(0,C.z)(e=>(0,$.E)(j.mode,{0:()=>null==g?void 0:g(e),1(){let t=j.value.slice(),n=t.findIndex(t=>P(t,e));return -1===n?t.push(e):t.splice(n,1),null==g?void 0:g(t)}})),J=(0,C.z)(e=>{x({type:6,trigger:e})}),W=(0,u.useMemo)(()=>({onChange:H,registerOption:G,registerLabel:Z,goToOption:Y,closeCombobox:U,openCombobox:N,setActivationTrigger:J,selectActiveOption:B}),[]),Q=(0,u.useRef)(null),X=(0,y.G)();return(0,u.useEffect)(()=>{Q.current&&void 0!==o&&X.addEventListener(Q.current,"reset",()=>{null==g||g(o)})},[Q,g]),u.default.createElement(ee.Provider,{value:W},u.default.createElement(er.Provider,{value:j},u.default.createElement(_.up,{value:(0,$.E)(j.comboboxState,{0:_.ZM.Open,1:_.ZM.Closed})},null!=l&&null!=m&&(0,K.t)({[l]:m}).map(([e,t],n)=>u.default.createElement(D._,{features:D.A.Hidden,ref:0===n?e=>{var t;Q.current=null!=(t=null==e?void 0:e.closest("form"))?t:null}:void 0,...(0,q.oA)({key:e,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:i,disabled:s,name:e,value:t})})),(0,q.sY)({ourProps:null===t?{}:{ref:t},theirProps:b,slot:L,defaultTag:ea,name:"Combobox"}))))}),ec=(0,q.yV)(function(e,t){var n;let o=ei("Combobox.Button"),r=et("Combobox.Button"),i=(0,P.T)(o.buttonRef,t),l=(0,E.M)(),{id:a=`headlessui-combobox-button-${l}`,...s}=e,c=(0,y.G)(),d=(0,C.z)(e=>{switch(e.key){case Y.R.ArrowDown:return e.preventDefault(),e.stopPropagation(),1===o.comboboxState&&r.openCombobox(),c.nextFrame(()=>{var e;return null==(e=o.inputRef.current)?void 0:e.focus({preventScroll:!0})});case Y.R.ArrowUp:return e.preventDefault(),e.stopPropagation(),1===o.comboboxState&&(r.openCombobox(),c.nextFrame(()=>{o.value||r.goToOption(V.T.Last)})),c.nextFrame(()=>{var e;return null==(e=o.inputRef.current)?void 0:e.focus({preventScroll:!0})});case Y.R.Escape:return 0!==o.comboboxState?void 0:(e.preventDefault(),o.optionsRef.current&&!o.optionsPropsRef.current.static&&e.stopPropagation(),r.closeCombobox(),c.nextFrame(()=>{var e;return null==(e=o.inputRef.current)?void 0:e.focus({preventScroll:!0})}));default:return}}),f=(0,C.z)(e=>{if((0,L.P)(e.currentTarget))return e.preventDefault();0===o.comboboxState?r.closeCombobox():(e.preventDefault(),r.openCombobox()),c.nextFrame(()=>{var e;return null==(e=o.inputRef.current)?void 0:e.focus({preventScroll:!0})})}),p=T(()=>{if(o.labelId)return[o.labelId,a].join(" ")},[o.labelId,a]),v=(0,u.useMemo)(()=>({open:0===o.comboboxState,disabled:o.disabled,value:o.value}),[o]),b={ref:i,id:a,type:(0,w.f)(e,o.buttonRef),tabIndex:-1,"aria-haspopup":"listbox","aria-controls":null==(n=o.optionsRef.current)?void 0:n.id,"aria-expanded":0===o.comboboxState,"aria-labelledby":p,disabled:o.disabled,onClick:f,onKeyDown:d};return(0,q.sY)({ourProps:b,theirProps:s,slot:v,defaultTag:"button",name:"Combobox.Button"})}),ed=Object.assign(es,{Input:(0,q.yV)(function(e,t){var n,o,r,i,l,a;let s=(0,E.M)(),{id:c=`headlessui-combobox-input-${s}`,onChange:d,displayValue:f,type:p="text",...v}=e,b=ei("Combobox.Input"),m=et("Combobox.Input"),g=(0,P.T)(b.inputRef,t),h=(0,z.i)(b.inputRef),x=(0,u.useRef)(!1),O=(0,y.G)(),I=(0,C.z)(()=>{m.onChange(null),b.optionsRef.current&&(b.optionsRef.current.scrollTop=0),m.goToOption(V.T.Nothing)}),R="function"==typeof f&&void 0!==b.value?null!=(a=f(b.value))?a:"":"string"==typeof b.value?b.value:"";(0,A.q)(([e,t],[n,o])=>{if(x.current)return;let r=b.inputRef.current;r&&((0===o&&1===t||e!==n)&&(r.value=e),requestAnimationFrame(()=>{if(x.current||!r||(null==h?void 0:h.activeElement)!==r)return;let{selectionStart:e,selectionEnd:t}=r;0===Math.abs((null!=t?t:0)-(null!=e?e:0))&&0===e&&r.setSelectionRange(r.value.length,r.value.length)}))},[R,b.comboboxState,h]),(0,A.q)(([e],[t])=>{if(0===e&&1===t){if(x.current)return;let e=b.inputRef.current;if(!e)return;let t=e.value,{selectionStart:n,selectionEnd:o,selectionDirection:r}=e;e.value="",e.value=t,null!==r?e.setSelectionRange(n,o,r):e.setSelectionRange(n,o)}},[b.comboboxState]);let S=(0,u.useRef)(!1),M=(0,C.z)(()=>{S.current=!0}),w=(0,C.z)(()=>{O.nextFrame(()=>{S.current=!1})}),k=(0,C.z)(e=>{switch(x.current=!0,e.key){case Y.R.Enter:if(x.current=!1,0!==b.comboboxState||S.current)return;if(e.preventDefault(),e.stopPropagation(),null===b.activeOptionIndex){m.closeCombobox();return}m.selectActiveOption(),0===b.mode&&m.closeCombobox();break;case Y.R.ArrowDown:return x.current=!1,e.preventDefault(),e.stopPropagation(),(0,$.E)(b.comboboxState,{0:()=>m.goToOption(V.T.Next),1:()=>m.openCombobox()});case Y.R.ArrowUp:return x.current=!1,e.preventDefault(),e.stopPropagation(),(0,$.E)(b.comboboxState,{0:()=>m.goToOption(V.T.Previous),1:()=>{m.openCombobox(),O.nextFrame(()=>{b.value||m.goToOption(V.T.Last)})}});case Y.R.Home:if(e.shiftKey)break;return x.current=!1,e.preventDefault(),e.stopPropagation(),m.goToOption(V.T.First);case Y.R.PageUp:return x.current=!1,e.preventDefault(),e.stopPropagation(),m.goToOption(V.T.First);case Y.R.End:if(e.shiftKey)break;return x.current=!1,e.preventDefault(),e.stopPropagation(),m.goToOption(V.T.Last);case Y.R.PageDown:return x.current=!1,e.preventDefault(),e.stopPropagation(),m.goToOption(V.T.Last);case Y.R.Escape:return x.current=!1,0!==b.comboboxState?void 0:(e.preventDefault(),b.optionsRef.current&&!b.optionsPropsRef.current.static&&e.stopPropagation(),b.nullable&&0===b.mode&&null===b.value&&I(),m.closeCombobox());case Y.R.Tab:if(x.current=!1,0!==b.comboboxState)return;0===b.mode&&1!==b.activationTrigger&&m.selectActiveOption(),m.closeCombobox()}}),F=(0,C.z)(e=>{null==d||d(e),b.nullable&&0===b.mode&&""===e.target.value&&I(),m.openCombobox()}),D=(0,C.z)(e=>{var t,n,o;let r=null!=(t=e.relatedTarget)?t:j.m.find(t=>t!==e.currentTarget);if(x.current=!1,!(null!=(n=b.optionsRef.current)&&n.contains(r))&&!(null!=(o=b.buttonRef.current)&&o.contains(r))&&0===b.comboboxState)return e.preventDefault(),0===b.mode&&(b.nullable&&null===b.value?I():1!==b.activationTrigger&&m.selectActiveOption()),m.closeCombobox()}),_=(0,C.z)(e=>{var t,n,o;let r=null!=(t=e.relatedTarget)?t:j.m.find(t=>t!==e.currentTarget);null!=(n=b.buttonRef.current)&&n.contains(r)||null!=(o=b.optionsRef.current)&&o.contains(r)||b.disabled||b.immediate&&0!==b.comboboxState&&(m.openCombobox(),O.nextFrame(()=>{m.setActivationTrigger(1)}))}),L=T(()=>{if(b.labelId)return[b.labelId].join(" ")},[b.labelId]),B=(0,u.useMemo)(()=>({open:0===b.comboboxState,disabled:b.disabled}),[b]),N={ref:g,id:c,role:"combobox",type:p,"aria-controls":null==(n=b.optionsRef.current)?void 0:n.id,"aria-expanded":0===b.comboboxState,"aria-activedescendant":null===b.activeOptionIndex?void 0:b.virtual?null==(o=b.options.find(e=>{var t;return!(null!=(t=b.virtual)&&t.disabled(e.dataRef.current.value))&&b.compare(e.dataRef.current.value,b.virtual.options[b.activeOptionIndex])}))?void 0:o.id:null==(r=b.options[b.activeOptionIndex])?void 0:r.id,"aria-labelledby":L,"aria-autocomplete":"list",defaultValue:null!=(l=null!=(i=e.defaultValue)?i:void 0!==b.defaultValue?null==f?void 0:f(b.defaultValue):null)?l:b.defaultValue,disabled:b.disabled,onCompositionStart:M,onCompositionEnd:w,onKeyDown:k,onChange:F,onFocus:_,onBlur:D};return(0,q.sY)({ourProps:N,theirProps:v,slot:B,defaultTag:"input",name:"Combobox.Input"})}),Button:ec,Label:(0,q.yV)(function(e,t){let n=(0,E.M)(),{id:o=`headlessui-combobox-label-${n}`,...r}=e,i=ei("Combobox.Label"),l=et("Combobox.Label"),a=(0,P.T)(i.labelRef,t);(0,I.e)(()=>l.registerLabel(o),[o]);let s=(0,C.z)(()=>{var e;return null==(e=i.inputRef.current)?void 0:e.focus({preventScroll:!0})}),c=(0,u.useMemo)(()=>({open:0===i.comboboxState,disabled:i.disabled}),[i]);return(0,q.sY)({ourProps:{ref:a,id:o,onClick:s},theirProps:r,slot:c,defaultTag:"label",name:"Combobox.Label"})}),Options:(0,q.yV)(function(e,t){let n=(0,E.M)(),{id:o=`headlessui-combobox-options-${n}`,hold:r=!1,...i}=e,l=ei("Combobox.Options"),a=(0,P.T)(l.optionsRef,t),s=(0,_.oJ)(),c=null!==s?(s&_.ZM.Open)===_.ZM.Open:0===l.comboboxState;(0,I.e)(()=>{var t;l.optionsPropsRef.current.static=null!=(t=e.static)&&t},[l.optionsPropsRef,e.static]),(0,I.e)(()=>{l.optionsPropsRef.current.hold=r},[l.optionsPropsRef,r]),(0,F.B)({container:l.optionsRef.current,enabled:0===l.comboboxState,accept:e=>"option"===e.getAttribute("role")?NodeFilter.FILTER_REJECT:e.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT,walk(e){e.setAttribute("role","none")}});let d=T(()=>{var e,t;return null!=(t=l.labelId)?t:null==(e=l.buttonRef.current)?void 0:e.id},[l.labelId,l.buttonRef.current]),f=(0,u.useMemo)(()=>({open:0===l.comboboxState,option:void 0}),[l]),p={"aria-labelledby":d,role:"listbox","aria-multiselectable":1===l.mode||void 0,id:o,ref:a};return l.virtual&&0===l.comboboxState&&Object.assign(i,{children:u.default.createElement(eo,null,i.children)}),(0,q.sY)({ourProps:p,theirProps:i,slot:f,defaultTag:"ul",features:eu,visible:c,name:"Combobox.Options"})}),Option:(0,q.yV)(function(e,t){var n;let o=(0,E.M)(),{id:r=`headlessui-combobox-option-${o}`,disabled:i=!1,value:l,order:a=null,...s}=e,c=ei("Combobox.Option"),d=et("Combobox.Option"),f=c.virtual?c.activeOptionIndex===c.calculateIndex(l):null!==c.activeOptionIndex&&(null==(n=c.options[c.activeOptionIndex])?void 0:n.id)===r,p=c.isSelected(l),v=(0,u.useRef)(null),b=(0,R.E)({disabled:i,value:l,domRef:v,order:a}),m=(0,u.useContext)(en),g=(0,P.T)(t,v,m?m.measureElement:null),h=(0,C.z)(()=>d.onChange(l));(0,I.e)(()=>d.registerOption(r,b),[b,r]);let x=(0,u.useRef)(!(c.virtual||c.__demoMode));(0,I.e)(()=>{if(!c.virtual||!c.__demoMode)return;let e=(0,B.k)();return e.requestAnimationFrame(()=>{x.current=!0}),e.dispose},[c.virtual,c.__demoMode]),(0,I.e)(()=>{if(!x.current||0!==c.comboboxState||!f||0===c.activationTrigger)return;let e=(0,B.k)();return e.requestAnimationFrame(()=>{var e,t;null==(t=null==(e=v.current)?void 0:e.scrollIntoView)||t.call(e,{block:"nearest"})}),e.dispose},[v,f,c.comboboxState,c.activationTrigger,c.activeOptionIndex]);let O=(0,C.z)(e=>{var t;if(i||null!=(t=c.virtual)&&t.disabled(l))return e.preventDefault();h(),(0,U.tq)()||requestAnimationFrame(()=>{var e;return null==(e=c.inputRef.current)?void 0:e.focus({preventScroll:!0})}),0===c.mode&&requestAnimationFrame(()=>d.closeCombobox())}),T=(0,C.z)(()=>{var e;if(i||null!=(e=c.virtual)&&e.disabled(l))return d.goToOption(V.T.Nothing);let t=c.calculateIndex(l);d.goToOption(V.T.Specific,t)}),S=(0,k.g)(),y=(0,C.z)(e=>S.update(e)),M=(0,C.z)(e=>{var t;if(!S.wasMoved(e)||i||null!=(t=c.virtual)&&t.disabled(l)||f)return;let n=c.calculateIndex(l);d.goToOption(V.T.Specific,n,0)}),z=(0,C.z)(e=>{var t;S.wasMoved(e)&&(i||null!=(t=c.virtual)&&t.disabled(l)||f&&(c.optionsPropsRef.current.hold||d.goToOption(V.T.Nothing)))}),w=(0,u.useMemo)(()=>({active:f,selected:p,disabled:i}),[f,p,i]);return(0,q.sY)({ourProps:{id:r,ref:g,role:"option",tabIndex:!0===i?void 0:-1,"aria-disabled":!0===i||void 0,"aria-selected":p,disabled:void 0,onClick:O,onFocus:T,onPointerEnter:y,onMouseEnter:y,onPointerMove:M,onMouseMove:M,onPointerLeave:z,onMouseLeave:z},theirProps:s,slot:w,defaultTag:"li",name:"Combobox.Option"})})})}}]); //# sourceMappingURL=546.66d4dbe3.js.map