Socket
Socket
Sign inDemoInstall

@spark-ui/combobox

Package Overview
Dependencies
Maintainers
7
Versions
119
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@spark-ui/combobox - npm Package Compare versions

Comparing version 0.11.6 to 0.11.7

4

CHANGELOG.md

@@ -6,2 +6,6 @@ # Change Log

## [0.11.7](https://github.com/adevinta/spark/compare/@spark-ui/combobox@0.11.6...@spark-ui/combobox@0.11.7) (2024-04-22)
**Note:** Version bump only for package @spark-ui/combobox
## [0.11.6](https://github.com/adevinta/spark/compare/@spark-ui/combobox@0.11.5...@spark-ui/combobox@0.11.6) (2024-04-11)

@@ -8,0 +12,0 @@

@@ -101,4 +101,5 @@ import { Dispatch, PropsWithChildren, SetStateAction } from 'react';

export type ComboboxContextProps = ComboboxContextCommonProps & (ComboboxPropsSingle | ComboboxPropsMultiple);
export declare const ID_PREFIX = ":combobox";
export declare const ComboboxProvider: ({ children, state: stateProp, allowCustomValue, autoFilter, disabled: disabledProp, multiple, readOnly: readOnlyProp, wrap, value: controlledValue, defaultValue, onValueChange, open: controlledOpen, defaultOpen, onOpenChange, isLoading, }: ComboboxContextProps) => import("react").JSX.Element;
export declare const useComboboxContext: () => ComboboxContextState;
export {};

2

dist/index.js

@@ -1,1 +0,1 @@

"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),tt=require("@radix-ui/react-id"),nr=require("@spark-ui/form-field"),Te=require("@spark-ui/popover"),M=require("downshift"),he=require("@spark-ui/icon"),V=require("class-variance-authority"),zr=require("@spark-ui/icon-button"),Re=require("@spark-ui/use-merge-refs"),Vr=require("@spark-ui/visually-hidden"),Ar=require("@spark-ui/spinner");var et=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Lr(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var xt={exports:{}};(function(r,a){var o="__lodash_hash_undefined__",l=1,i=2,d=9007199254740991,u="[object Arguments]",b="[object Array]",p="[object AsyncFunction]",h="[object Boolean]",_="[object Date]",I="[object Error]",T="[object Function]",R="[object GeneratorFunction]",D="[object Map]",$="[object Number]",H="[object Null]",F="[object Object]",A="[object Promise]",Z="[object Proxy]",ee="[object RegExp]",G="[object Set]",L="[object String]",j="[object Symbol]",nt="[object Undefined]",te="[object WeakMap]",ge="[object ArrayBuffer]",de="[object DataView]",Pe=/^\[object .+?Constructor\]$/,ze=/^(?:0|[1-9]\d*)$/,v={};v["[object Float32Array]"]=v["[object Float64Array]"]=v["[object Int8Array]"]=v["[object Int16Array]"]=v["[object Int32Array]"]=v["[object Uint8Array]"]=v["[object Uint8ClampedArray]"]=v["[object Uint16Array]"]=v["[object Uint32Array]"]=!0,v[u]=v[b]=v[ge]=v[h]=v[de]=v[_]=v[I]=v[T]=v[D]=v[$]=v[F]=v[ee]=v[G]=v[L]=v[te]=!1;var ve=typeof et=="object"&&et&&et.Object===Object&&et,ye=typeof self=="object"&&self&&self.Object===Object&&self,P=ve||ye||Function("return this")(),Ve=a&&!a.nodeType&&a,Ae=Ve&&r&&!r.nodeType&&r,Le=Ae&&Ae.exports===Ve,xe=Le&&ve.process,Me=function(){try{return xe&&xe.binding&&xe.binding("util")}catch{}}(),Ie=Me&&Me.isTypedArray;function ot(e,t){for(var s=-1,c=e==null?0:e.length;++s<c;)if(t(e[s],s,e))return!0;return!1}function at(e){var t=-1,s=Array(e.size);return e.forEach(function(c,x){s[++t]=[x,c]}),s}function st(e){var t=-1,s=Array(e.size);return e.forEach(function(c){s[++t]=c}),s}var Ce,we,pe,lt=Array.prototype,it=Function.prototype,f=Object.prototype,k=P["__core-js_shared__"],E=it.toString,C=f.hasOwnProperty,U=(Ce=/[^.]+$/.exec(k&&k.keys&&k.keys.IE_PROTO||""))?"Symbol(src)_1."+Ce:"",De=f.toString,ct=RegExp("^"+E.call(C).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Mt=Le?P.Buffer:void 0,Fe=P.Symbol,Dt=P.Uint8Array,Ft=f.propertyIsEnumerable,gr=lt.splice,se=Fe?Fe.toStringTag:void 0,Bt=Object.getOwnPropertySymbols,vr=Mt?Mt.isBuffer:void 0,yr=(we=Object.keys,pe=Object,function(e){return we(pe(e))}),ut=me(P,"DataView"),_e=me(P,"Map"),dt=me(P,"Promise"),pt=me(P,"Set"),mt=me(P,"WeakMap"),Ee=me(Object,"create"),xr=ce(ut),Ir=ce(_e),Cr=ce(dt),wr=ce(pt),_r=ce(mt),qt=Fe?Fe.prototype:void 0,ft=qt?qt.valueOf:void 0;function le(e){var t=-1,s=e==null?0:e.length;for(this.clear();++t<s;){var c=e[t];this.set(c[0],c[1])}}function J(e){var t=-1,s=e==null?0:e.length;for(this.clear();++t<s;){var c=e[t];this.set(c[0],c[1])}}function ie(e){var t=-1,s=e==null?0:e.length;for(this.clear();++t<s;){var c=e[t];this.set(c[0],c[1])}}function Be(e){var t=-1,s=e==null?0:e.length;for(this.__data__=new ie;++t<s;)this.add(e[t])}function re(e){var t=this.__data__=new J(e);this.size=t.size}function Er(e,t){var s=He(e),c=!s&&kr(e),x=!s&&!c&&bt(e),m=!s&&!c&&!x&&Qt(e),w=s||c||x||m,N=w?function(S,K){for(var Q=-1,z=Array(S);++Q<S;)z[Q]=K(Q);return z}(e.length,String):[],W=N.length;for(var O in e)!t&&!C.call(e,O)||w&&(O=="length"||x&&(O=="offset"||O=="parent")||m&&(O=="buffer"||O=="byteLength"||O=="byteOffset")||jr(O,W))||N.push(O);return N}function qe(e,t){for(var s=e.length;s--;)if(Zt(e[s][0],t))return s;return-1}function Ne(e){return e==null?e===void 0?nt:H:se&&se in Object(e)?function(t){var s=C.call(t,se),c=t[se];try{t[se]=void 0;var x=!0}catch{}var m=De.call(t);return x&&(s?t[se]=c:delete t[se]),m}(e):function(t){return De.call(t)}(e)}function $t(e){return Oe(e)&&Ne(e)==u}function Ht(e,t,s,c,x){return e===t||(e==null||t==null||!Oe(e)&&!Oe(t)?e!=e&&t!=t:function(m,w,N,W,O,S){var K=He(m),Q=He(w),z=K?b:ne(m),X=Q?b:ne(w),fe=(z=z==u?F:z)==F,We=(X=X==u?F:X)==F,be=z==X;if(be&&bt(m)){if(!bt(w))return!1;K=!0,fe=!1}if(be&&!fe)return S||(S=new re),K||Qt(m)?Wt(m,w,N,W,O,S):function(y,g,Ke,oe,ht,B,Y){switch(Ke){case de:if(y.byteLength!=g.byteLength||y.byteOffset!=g.byteOffset)return!1;y=y.buffer,g=g.buffer;case ge:return!(y.byteLength!=g.byteLength||!B(new Dt(y),new Dt(g)));case h:case _:case $:return Zt(+y,+g);case I:return y.name==g.name&&y.message==g.message;case ee:case L:return y==g+"";case D:var ae=at;case G:var je=oe&l;if(ae||(ae=st),y.size!=g.size&&!je)return!1;var Ze=Y.get(y);if(Ze)return Ze==g;oe|=i,Y.set(y,g);var gt=Wt(ae(y),ae(g),oe,ht,B,Y);return Y.delete(y),gt;case j:if(ft)return ft.call(y)==ft.call(g)}return!1}(m,w,z,N,W,O,S);if(!(N&l)){var Se=fe&&C.call(m,"__wrapped__"),Xt=We&&C.call(w,"__wrapped__");if(Se||Xt){var Rr=Se?m.value():m,Pr=Xt?w.value():w;return S||(S=new re),O(Rr,Pr,N,W,S)}}return be?(S||(S=new re),function(y,g,Ke,oe,ht,B){var Y=Ke&l,ae=Kt(y),je=ae.length,Ze=Kt(g),gt=Ze.length;if(je!=gt&&!Y)return!1;for(var Ge=je;Ge--;){var ue=ae[Ge];if(!(Y?ue in g:C.call(g,ue)))return!1}var Yt=B.get(y);if(Yt&&B.get(g))return Yt==g;var Ue=!0;B.set(y,g),B.set(g,y);for(var vt=Y;++Ge<je;){var Je=y[ue=ae[Ge]],Qe=g[ue];if(oe)var er=Y?oe(Qe,Je,ue,g,y,B):oe(Je,Qe,ue,y,g,B);if(!(er===void 0?Je===Qe||ht(Je,Qe,Ke,oe,B):er)){Ue=!1;break}vt||(vt=ue=="constructor")}if(Ue&&!vt){var Xe=y.constructor,Ye=g.constructor;Xe==Ye||!("constructor"in y)||!("constructor"in g)||typeof Xe=="function"&&Xe instanceof Xe&&typeof Ye=="function"&&Ye instanceof Ye||(Ue=!1)}return B.delete(y),B.delete(g),Ue}(m,w,N,W,O,S)):!1}(e,t,s,c,Ht,x))}function Nr(e){return!(!Jt(e)||function(t){return!!U&&U in t}(e))&&(Gt(e)?ct:Pe).test(ce(e))}function Or(e){if(s=(t=e)&&t.constructor,c=typeof s=="function"&&s.prototype||f,t!==c)return yr(e);var t,s,c,x=[];for(var m in Object(e))C.call(e,m)&&m!="constructor"&&x.push(m);return x}function Wt(e,t,s,c,x,m){var w=s&l,N=e.length,W=t.length;if(N!=W&&!(w&&W>N))return!1;var O=m.get(e);if(O&&m.get(t))return O==t;var S=-1,K=!0,Q=s&i?new Be:void 0;for(m.set(e,t),m.set(t,e);++S<N;){var z=e[S],X=t[S];if(c)var fe=w?c(X,z,S,t,e,m):c(z,X,S,e,t,m);if(fe!==void 0){if(fe)continue;K=!1;break}if(Q){if(!ot(t,function(We,be){if(Se=be,!Q.has(Se)&&(z===We||x(z,We,s,c,m)))return Q.push(be);var Se})){K=!1;break}}else if(z!==X&&!x(z,X,s,c,m)){K=!1;break}}return m.delete(e),m.delete(t),K}function Kt(e){return function(t,s,c){var x=s(t);return He(t)?x:function(m,w){for(var N=-1,W=w.length,O=m.length;++N<W;)m[O+N]=w[N];return m}(x,c(t))}(e,Tr,Sr)}function $e(e,t){var s,c,x=e.__data__;return((c=typeof(s=t))=="string"||c=="number"||c=="symbol"||c=="boolean"?s!=="__proto__":s===null)?x[typeof t=="string"?"string":"hash"]:x.map}function me(e,t){var s=function(c,x){return c?.[x]}(e,t);return Nr(s)?s:void 0}le.prototype.clear=function(){this.__data__=Ee?Ee(null):{},this.size=0},le.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},le.prototype.get=function(e){var t=this.__data__;if(Ee){var s=t[e];return s===o?void 0:s}return C.call(t,e)?t[e]:void 0},le.prototype.has=function(e){var t=this.__data__;return Ee?t[e]!==void 0:C.call(t,e)},le.prototype.set=function(e,t){var s=this.__data__;return this.size+=this.has(e)?0:1,s[e]=Ee&&t===void 0?o:t,this},J.prototype.clear=function(){this.__data__=[],this.size=0},J.prototype.delete=function(e){var t=this.__data__,s=qe(t,e);return!(s<0)&&(s==t.length-1?t.pop():gr.call(t,s,1),--this.size,!0)},J.prototype.get=function(e){var t=this.__data__,s=qe(t,e);return s<0?void 0:t[s][1]},J.prototype.has=function(e){return qe(this.__data__,e)>-1},J.prototype.set=function(e,t){var s=this.__data__,c=qe(s,e);return c<0?(++this.size,s.push([e,t])):s[c][1]=t,this},ie.prototype.clear=function(){this.size=0,this.__data__={hash:new le,map:new(_e||J),string:new le}},ie.prototype.delete=function(e){var t=$e(this,e).delete(e);return this.size-=t?1:0,t},ie.prototype.get=function(e){return $e(this,e).get(e)},ie.prototype.has=function(e){return $e(this,e).has(e)},ie.prototype.set=function(e,t){var s=$e(this,e),c=s.size;return s.set(e,t),this.size+=s.size==c?0:1,this},Be.prototype.add=Be.prototype.push=function(e){return this.__data__.set(e,o),this},Be.prototype.has=function(e){return this.__data__.has(e)},re.prototype.clear=function(){this.__data__=new J,this.size=0},re.prototype.delete=function(e){var t=this.__data__,s=t.delete(e);return this.size=t.size,s},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var s=this.__data__;if(s instanceof J){var c=s.__data__;if(!_e||c.length<199)return c.push([e,t]),this.size=++s.size,this;s=this.__data__=new ie(c)}return s.set(e,t),this.size=s.size,this};var Sr=Bt?function(e){return e==null?[]:(e=Object(e),function(t,s){for(var c=-1,x=t==null?0:t.length,m=0,w=[];++c<x;){var N=t[c];s(N,c,t)&&(w[m++]=N)}return w}(Bt(e),function(t){return Ft.call(e,t)}))}:function(){return[]},ne=Ne;function jr(e,t){return!!(t=t??d)&&(typeof e=="number"||ze.test(e))&&e>-1&&e%1==0&&e<t}function ce(e){if(e!=null){try{return E.call(e)}catch{}try{return e+""}catch{}}return""}function Zt(e,t){return e===t||e!=e&&t!=t}(ut&&ne(new ut(new ArrayBuffer(1)))!=de||_e&&ne(new _e)!=D||dt&&ne(dt.resolve())!=A||pt&&ne(new pt)!=G||mt&&ne(new mt)!=te)&&(ne=function(e){var t=Ne(e),s=t==F?e.constructor:void 0,c=s?ce(s):"";if(c)switch(c){case xr:return de;case Ir:return D;case Cr:return A;case wr:return G;case _r:return te}return t});var kr=$t(function(){return arguments}())?$t:function(e){return Oe(e)&&C.call(e,"callee")&&!Ft.call(e,"callee")},He=Array.isArray,bt=vr||function(){return!1};function Gt(e){if(!Jt(e))return!1;var t=Ne(e);return t==T||t==R||t==p||t==Z}function Ut(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=d}function Jt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function Oe(e){return e!=null&&typeof e=="object"}var Qt=Ie?function(e){return function(t){return e(t)}}(Ie):function(e){return Oe(e)&&Ut(e.length)&&!!v[Ne(e)]};function Tr(e){return(t=e)!=null&&Ut(t.length)&&!Gt(t)?Er(e):Or(e);var t}r.exports=function(e,t){return Ht(e,t)}})(xt,xt.exports);const Mr=Lr(xt.exports);function or(r,a,o){const l=r!==void 0,{current:i}=n.useRef(l?r:a),[d,u]=n.useState(a),b=l?r:d,p=n.useCallback((h,_=(I,T)=>!Mr(I,T))=>{const I=typeof h!="function"?h:h(b);_(b,I)&&!l&&u(I),o&&o(I)},[l,b,o]);return[b,p,l,i]}const Dr=({multiselect:r,selectedItems:a,allowCustomValue:o=!1,setSelectedItems:l,triggerAreaRef:i})=>(d,{changes:u,type:b})=>{const p=i.current?.contains?.(document.activeElement);switch(b){case M.useCombobox.stateChangeTypes.InputClick:return{...u,isOpen:!0};case M.useCombobox.stateChangeTypes.InputKeyDownEnter:case M.useCombobox.stateChangeTypes.ItemClick:{const h={...u};if(u.selectedItem!=null){h.inputValue="",h.isOpen=!0,h.highlightedIndex=d.highlightedIndex;const _=r.selectedItems.some(I=>I.value===u.selectedItem?.value)?a.filter(I=>I.value!==u.selectedItem?.value):[...a,u.selectedItem];l(_)}return h}case M.useCombobox.stateChangeTypes.ToggleButtonClick:return{...u,inputValue:o?u.inputValue:""};case M.useCombobox.stateChangeTypes.InputBlur:return{...u,inputValue:o?u.inputValue:"",isOpen:p};default:return u}},Fr=({filteredItems:r,allowCustomValue:a=!1,setSelectedItem:o})=>(l,{changes:i,type:d})=>{const u=r.find(b=>b.text.toLowerCase()===l.inputValue.toLowerCase());switch(d){case M.useCombobox.stateChangeTypes.ItemClick:case M.useCombobox.stateChangeTypes.InputKeyDownEnter:return i.selectedItem&&o(i.selectedItem),i;case M.useCombobox.stateChangeTypes.InputClick:return{...i,isOpen:!0};case M.useCombobox.stateChangeTypes.ToggleButtonClick:case M.useCombobox.stateChangeTypes.InputBlur:return a?i:l.inputValue===""?(o(null),{...i,selectedItem:null}):u?(o(u),{...i,selectedItem:u,inputValue:u.text}):l.selectedItem?{...i,inputValue:l.selectedItem.text}:{...i,inputValue:""};default:return i}},Br=(r,a)=>{const o=((l,i)=>{let d=0;for(const u of l.keys()){if(d===i)return u;d++}})(r,a);return o!==void 0?r.get(o):void 0},rt=r=>r?r.type.displayName:"",ar=(r,a=[])=>(n.Children.forEach(r,o=>{if(n.isValidElement(o)){if(rt(o)==="Combobox.Item"){const l=o.props;a.push({value:l.value,disabled:!!l.disabled,text:It(l.children)})}o.props.children&&ar(o.props.children,a)}}),a),It=(r,a="")=>typeof r=="string"?r:(n.Children.forEach(r,o=>{n.isValidElement(o)&&(rt(o)==="Combobox.ItemText"&&(a=o.props.children),o.props.children&&It(o.props.children,a))}),a),tr=r=>{const a=new Map;return ar(r).forEach(o=>{a.set(o.value,o)}),a},sr=(r,a)=>n.Children.toArray(r).some(o=>!!n.isValidElement(o)&&(rt(o)===a||!!o.props.children&&sr(o.props.children,a))),ke=(r,a)=>n.Children.toArray(r).filter(n.isValidElement).find(o=>a===rt(o)||""),lr=n.createContext(null),yt=(r,a)=>a?new Map(Array.from(r).filter(([o,{text:l}])=>l.toLowerCase().includes(a.toLowerCase()))):r,ir=({children:r,state:a,allowCustomValue:o=!1,autoFilter:l=!0,disabled:i=!1,multiple:d=!1,readOnly:u=!1,wrap:b=!0,value:p,defaultValue:h,onValueChange:_,open:I,defaultOpen:T,onOpenChange:R,isLoading:D})=>{const $=n.useRef(!1),[H,F]=n.useState(""),A=n.useRef(null),Z=n.useRef(null),[ee,G]=n.useState(null),[L]=or(p,h),[j,nt]=n.useState(tr(r)),[te,ge]=n.useState(l?yt(j,H):j),[de,Pe]=n.useState(j.get(L)||null),[ze,v]=n.useState(L?[...j.values()].filter(f=>L.includes(f.value)):[]),ve=f=>{Pe(f),setTimeout(()=>{_?.(f?.value)},0)},ye=f=>{v(f),setTimeout(()=>{_?.(f.map(k=>k.value))},0)};n.useEffect(()=>{if($.current)if(d){const f=L.reduce((k,E)=>{const C=j.get(E);return C?[...k,C]:k},[]);v(L?f:[])}else Pe(j.get(L)||null);else $.current=!0},[d?JSON.stringify(L):L]);const P=nr.useFormFieldControl(),Ve=tt.useId(P.id),Ae=tt.useId(P.labelId),Le=P.state||a,xe=P.disabled??i,Me=P.readOnly??u,[Ie,ot]=n.useState(sr(r,"Combobox.Popover")),[at,st]=n.useState("mouse");n.useEffect(()=>{ge(l?yt(j,H):j)},[H,j]);const Ce=M.useMultipleSelection({selectedItems:ze,stateReducer:(f,{type:k,changes:E})=>{const C=M.useMultipleSelection.stateChangeTypes;switch(k){case C.SelectedItemKeyDownBackspace:case C.SelectedItemKeyDownDelete:{let U;return ye(E.selectedItems||[]),k===C.SelectedItemKeyDownDelete?U=f?.activeIndex===E.selectedItems?.length?-1:f.activeIndex:U=(E?.activeIndex||0)-1>=0?f.activeIndex-1:E?.activeIndex,{...E,activeIndex:U}}case C.SelectedItemClick:return Z.current&&Z.current.focus(),{...E,activeIndex:-1};case C.FunctionRemoveSelectedItem:return{...E,activeIndex:-1};case C.DropdownKeyDownNavigationPrevious:return pe.closeMenu(),E;default:return E}}}),we=Array.from(te.values());n.useEffect(()=>{ee?.(H||"")},[H]);const pe=M.useCombobox({items:we,selectedItem:d?void 0:de,id:Ve,labelId:Ae,inputValue:H,onInputValueChange:({inputValue:f})=>{if(F(f),l){const k=yt(j,f||"");ge(k)}},initialIsOpen:T,...I!=null&&{isOpen:I},onIsOpenChange:f=>{f.isOpen!=null&&R?.(f.isOpen)},itemToString:f=>f?.text,isItemDisabled:f=>{const k=!!H&&!we.some(E=>f.value===E.value);return f.disabled||k},stateReducer:d?Dr({multiselect:Ce,selectedItems:ze,allowCustomValue:o,setSelectedItems:ye,triggerAreaRef:A}):Fr({allowCustomValue:o,setSelectedItem:ve,filteredItems:[...te.values()]}),scrollIntoView:f=>{f&&f.scrollIntoView({block:"nearest"})}});n.useEffect(()=>{const f=tr(r),k=[...j.values()],E=[...f.values()];(k.length!==E.length||k.some((C,U)=>{const De=C.value!==E[U]?.value,ct=C.text!==E[U]?.text;return De||ct}))&&nt(f)},[r]);const[lt,it]=Ie?[Te.Popover,{open:!0}]:[n.Fragment,{}];return n.createElement(lr.Provider,{value:{itemsMap:j,filteredItemsMap:te,highlightedItem:Br(te,pe.highlightedIndex),multiple:d,disabled:xe,readOnly:Me,hasPopover:Ie,setHasPopover:ot,state:Le,lastInteractionType:at,setLastInteractionType:st,wrap:b,innerInputRef:Z,triggerAreaRef:A,...pe,...Ce,setInputValue:F,selectItem:ve,setSelectedItems:ye,isLoading:D,setOnInputValueChange:G}},n.createElement(lt,{...it},r))},q=()=>{const r=n.useContext(lr);if(!r)throw Error("useComboboxContext must be used within a Combobox provider");return r},cr=({children:r,...a})=>n.createElement(ir,{...a},r);cr.displayName="Combobox";const ur=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"DeleteFill",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path fill-rule="evenodd" d="m2,12C2,6.48,6.48,2,12,2s10,4.48,10,10-4.48,10-10,10S2,17.52,2,12Zm7.75-3.67c-.39-.39-1.02-.39-1.41,0-.39.39-.39,1.02,0,1.41l2.23,2.23-2.23,2.23c-.39.39-.39,1.02,0,1.41.39.39,1.02.39,1.41,0l2.23-2.23,2.23,2.23c.39.39,1.02.39,1.41,0s.39-1.02,0-1.41l-2.23-2.23,2.23-2.23c.39-.39.39-1.02,0-1.41-.39-.39-1.02-.39-1.41,0l-2.23,2.23-2.23-2.23Z"/>'}}));ur.displayName="DeleteFill";const Ct=n.forwardRef(({className:r,tabIndex:a=-1,onClick:o,...l},i)=>{const d=q();return n.createElement("button",{ref:i,className:V.cx(r,"h-sz-44 text-neutral hover:text-neutral-hovered"),tabIndex:a,onClick:u=>{u.stopPropagation(),d.multiple?d.setSelectedItems([]):d.selectItem(null),d.setInputValue(""),d.innerInputRef.current&&d.innerInputRef.current.focus(),o&&o(u)},type:"button",...l},n.createElement(he.Icon,{size:"sm"},n.createElement(ur,null)))});Ct.displayName="Combobox.ClearButton";const dr=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"ArrowHorizontalDown",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path fill-rule="evenodd" d="m2.33,7.3c.43-.4,1.14-.4,1.57,0l8.1,7.48,8.1-7.48c.43-.4,1.14-.4,1.57,0,.43.4.43,1.06,0,1.47l-8.34,7.7c-.17.17-.37.3-.6.39-.23.09-.48.14-.73.14s-.5-.05-.73-.14c-.23-.09-.43-.22-.6-.39L2.33,8.77c-.43-.4-.43-1.06,0-1.47Z"/>'}}));dr.displayName="ArrowHorizontalDown";const wt=n.forwardRef(({className:r,closedLabel:a,openedLabel:o,intent:l="neutral",design:i="ghost",size:d="sm",...u},b)=>{const p=q(),{ref:h,..._}=p.getToggleButtonProps({disabled:p.disabled||p.readOnly,onClick:R=>{R.stopPropagation()}}),I=_["aria-expanded"],T=Re.useMergeRefs(b,h);return n.createElement(zr.IconButton,{ref:T,className:V.cx(r,"mt-[calc((44px-32px)/2)]"),intent:l,design:i,size:d,..._,...u,"aria-label":I?o:a,disabled:p.disabled},n.createElement(he.Icon,null,n.createElement(he.Icon,{className:"shrink-0",size:"sm"},n.createElement(dr,null))))});wt.displayName="Combobox.Disclosure";const _t=n.forwardRef(({className:r,children:a},o)=>q().filteredItemsMap.size===0?n.createElement("div",{ref:o,className:r},a):null);_t.displayName="Combobox.Empty";const pr=n.createContext(null),qr=({children:r})=>{const a=tt.useId();return n.createElement(pr.Provider,{value:{groupLabelId:a}},r)},mr=()=>{const r=n.useContext(pr);if(!r)throw Error("useComboboxGroupContext must be used within a ComboboxGroup provider");return r},Et=n.forwardRef(({children:r,...a},o)=>n.createElement(qr,null,n.createElement($r,{ref:o,...a},r))),$r=n.forwardRef(({children:r,className:a},o)=>{const l=q(),i=mr();return n.Children.toArray(r).some(d=>n.isValidElement(d)&&l.filteredItemsMap.get(d.props.value))?n.createElement("div",{ref:o,role:"group","aria-labelledby":i.groupLabelId,className:V.cx(a)},r):null});Et.displayName="Combobox.Group";const Nt=n.forwardRef(({"aria-label":r,className:a,placeholder:o,value:l,defaultValue:i,onValueChange:d,...u},b)=>{const p=q(),[h]=or(l,i);n.useEffect(()=>{h!=null&&p.setInputValue(h)},[h]),n.useEffect(()=>{d&&p.setOnInputValueChange(()=>d),!p.multiple&&p.selectedItem&&p.setInputValue(p.selectedItem.text)},[]);const[_,I]=p.hasPopover?[Te.Popover.Trigger,{asChild:!0,type:void 0}]:[n.Fragment,{}],T=p.getDropdownProps(),R=Re.useMergeRefs(b,p.innerInputRef,T.ref),D=p.getInputProps({disabled:p.disabled||p.readOnly,...T,onKeyDown:$=>{T.onKeyDown?.($),p.setLastInteractionType("keyboard")},ref:R});return n.createElement(n.Fragment,null,r&&n.createElement(Vr.VisuallyHidden,null,n.createElement("label",{...p.getLabelProps()},r)),n.createElement(_,{...I},n.createElement("input",{"data-spark-component":"combobox-input",type:"text",placeholder:o,className:V.cx("h-sz-28 shrink-0 flex-grow basis-[80px] text-ellipsis px-sm outline-none","disabled:cursor-not-allowed disabled:bg-transparent disabled:text-on-surface/dim-3","read-only:cursor-default read-only:bg-transparent read-only:text-on-surface",a),...u,...D,value:p.inputValue,"aria-label":r,disabled:p.disabled,readOnly:p.readOnly})))});Nt.displayName="Combobox.Input";const fr=n.createContext(null),Hr=({value:r,disabled:a=!1,children:o})=>{const l=q(),[i,d]=n.useState(void 0),u=function(h,_){let I=0;for(const[T]of h.entries()){if(T===_)return I;I++}return-1}(l.itemsMap,r),b={disabled:a,value:r,text:It(o)},p=l.multiple?l.selectedItems.some(h=>h.value===r):l.selectedItem?.value===r;return n.createElement(fr.Provider,{value:{textId:i,setTextId:d,isSelected:p,itemData:b,index:u,disabled:a}},o)},Ot=()=>{const r=n.useContext(fr);if(!r)throw Error("useComboboxItemContext must be used within a ComboboxItem provider");return r},St=n.forwardRef(({children:r,...a},o)=>{const{value:l,disabled:i}=a;return n.createElement(Hr,{value:l,disabled:i},n.createElement(Kr,{ref:o,...a},r))}),Wr=V.cva("px-lg py-md text-body-1",{variants:{selected:{true:"font-bold"},disabled:{true:"opacity-dim-3 cursor-not-allowed",false:"cursor-pointer"},highlighted:{true:""},interactionType:{mouse:"",keyboard:""}},compoundVariants:[{highlighted:!0,interactionType:"mouse",class:"bg-surface-hovered"},{highlighted:!0,interactionType:"keyboard",class:"u-ring"}]}),Kr=n.forwardRef(({className:r,disabled:a=!1,value:o,children:l},i)=>{const d=q(),u=Ot(),b=!!d.filteredItemsMap.get(o),{ref:p,...h}=d.getItemProps({item:u.itemData,index:u.index}),_=Re.useMergeRefs(i,p);return b?n.createElement("li",{ref:_,className:V.cx(Wr({selected:u.isSelected,disabled:a,highlighted:d.highlightedItem?.value===o,interactionType:d.lastInteractionType,className:r})),key:o,...h,"aria-selected":u.isSelected,"aria-labelledby":u.textId},l):null});St.displayName="Combobox.Item";const br=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"Check",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path d="m8.92,19.08c-.18,0-.36-.03-.53-.1s-.33-.17-.47-.31l-5.49-5.34c-.28-.28-.42-.61-.42-1s.14-.73.42-1c.28-.28.62-.41,1.02-.41s.74.14,1.05.41l4.43,4.3,10.62-10.29c.28-.28.62-.42,1.02-.43.39,0,.73.13,1.02.43.28.28.42.61.42,1s-.14.73-.42,1l-11.65,11.32c-.14.14-.3.24-.47.31-.17.07-.35.1-.53.1Z"/>'}}));br.displayName="Check";const jt=n.forwardRef(({className:r,children:a,label:o},l)=>{const{disabled:i,isSelected:d}=Ot(),u=a||n.createElement(he.Icon,{size:"sm"},n.createElement(br,{"aria-label":o}));return n.createElement("span",{ref:l,className:V.cx("flex min-h-sz-16 min-w-sz-16",i&&"opacity-dim-3",r)},d&&u)});jt.displayName="Combobox.ItemIndicator";const kt=n.forwardRef(({children:r,className:a,...o},l)=>{const i=q(),{ref:d,...u}=i.getMenuProps({onMouseMove:()=>{i.setLastInteractionType("mouse")}}),b=n.useRef(null),p=Re.useMergeRefs(l,d,b),h=!i.hasPopover||i.isOpen;return n.useLayoutEffect(()=>{i.hasPopover&&b.current?.parentElement&&(b.current.parentElement.style.pointerEvents=h?"":"none")},[h,i.hasPopover]),n.createElement("ul",{ref:p,className:V.cx(a,"flex flex-col",h?"block":"pointer-events-none invisible opacity-0",i.hasPopover&&"p-lg",i.isLoading&&"items-center overflow-y-auto"),...o,...u,"aria-busy":i.isLoading,"data-spark-component":"combobox-items"},i.isLoading?n.createElement(Ar.Spinner,{size:"sm"}):r)});kt.displayName="Combobox.Items";const Tt=n.forwardRef(({children:r},a)=>{const o=tt.useId(),{setTextId:l}=Ot();return n.useEffect(()=>(l(o),()=>l(void 0))),n.createElement("span",{id:o,className:V.cx("inline"),ref:a},r)});Tt.displayName="Combobox.ItemText";const Rt=n.forwardRef(({children:r,className:a},o)=>{const l=mr();return n.createElement("div",{ref:o,id:l.groupLabelId,className:V.cx("px-md py-sm text-body-2 italic text-neutral",a)},r)});Rt.displayName="Combobox.Label";const Pt=({children:r})=>n.createElement(he.Icon,{size:"sm",className:"h-sz-44 shrink-0"},r);Pt.displayName="Combobox.LeadingIcon";const zt=n.forwardRef(({children:r,matchTriggerWidth:a=!0,sideOffset:o=4,className:l,...i},d)=>{const u=q();return n.useEffect(()=>(u.setHasPopover(!0),()=>u.setHasPopover(!1)),[]),n.createElement(Te.Popover.Content,{ref:d,inset:!0,asChild:!0,matchTriggerWidth:a,className:V.cx("relative !z-dropdown",l),sideOffset:o,onOpenAutoFocus:b=>{b.preventDefault()},...i,"data-spark-component":"combobox-popover"},r)});zt.displayName="Combobox.Popover";const Vt=({children:r,...a})=>n.createElement(Te.Popover.Portal,{...a},r);Vt.displayName="Combobox.Portal";const hr=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"DeleteOutline",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path fill-rule="evenodd" d="m12,4c-4.42,0-8,3.58-8,8s3.58,8,8,8,8-3.58,8-8-3.58-8-8-8ZM2,12C2,6.48,6.48,2,12,2s10,4.48,10,10-4.48,10-10,10S2,17.52,2,12Zm6.33-3.67c.39-.39,1.02-.39,1.41,0l2.23,2.23,2.23-2.23c.39-.39,1.02-.39,1.41,0,.39.39.39,1.02,0,1.41l-2.23,2.23,2.23,2.23c.39.39.39,1.02,0,1.41-.39.39-1.02.39-1.41,0l-2.23-2.23-2.23,2.23c-.39.39-1.02.39-1.41,0-.39-.39-.39-1.02,0-1.41l2.23-2.23-2.23-2.23c-.39-.39-.39-1.02,0-1.41Z"/>'}}));hr.displayName="DeleteOutline";const At=()=>{const r=q();if(!r.selectedItems.length||!r.multiple)return null;const a=!r.disabled&&!r.readOnly;return n.createElement(n.Fragment,null,r.selectedItems.map((o,l)=>{const i=r.getSelectedItemProps({disabled:r.disabled||r.readOnly,selectedItem:o,index:l});return n.createElement("span",{role:"presentation","data-spark-component":"combobox-selected-item",key:`selected-item-${l}`,className:V.cx("flex h-sz-28 items-center rounded-md bg-neutral-container align-middle","text-body-2 text-on-neutral-container",{"px-md":!a,"pl-md":a}),...i,tabIndex:-1,onFocus:d=>{const u=d.target;r.lastInteractionType==="keyboard"&&u.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}},n.createElement("span",{className:V.cx("line-clamp-1 overflow-x-hidden text-ellipsis break-all leading-normal",{"w-max":!r.wrap})},o.text),r.disabled,a&&n.createElement("button",{type:"button",tabIndex:-1,"aria-hidden":!0,className:"h-full cursor-pointer px-md",onClick:d=>{d.stopPropagation();const u=r.selectedItems.filter(b=>b.value!==o.value);r.setSelectedItems(u),r.innerInputRef.current&&r.innerInputRef.current.focus({preventScroll:!0})}},n.createElement(he.Icon,{size:"sm"},n.createElement(hr,null))))}))};At.displayName="Combobox.SelectedItems";const Zr=V.cva(["flex items-start gap-md min-h-sz-44","h-fit rounded-lg px-lg","ring-1 outline-none ring-inset focus-within:ring-2"],{variants:{allowWrap:{true:"",false:"h-sz-44"},state:{undefined:"ring-outline focus-within:ring-outline-high",error:"ring-error",alert:"ring-alert",success:"ring-success"},disabled:{true:"cursor-not-allowed border-outline bg-on-surface/dim-5 text-on-surface/dim-3"},readOnly:{true:"cursor-default bg-on-surface/dim-5 text-on-surface"}},compoundVariants:[{disabled:!1,state:void 0,class:"hover:ring-outline-high"},{disabled:!1,readOnly:!1,class:"bg-surface text-on-surface cursor-text"}],defaultVariants:{state:void 0,disabled:!1,readOnly:!1}}),Lt=n.forwardRef(({className:r,children:a},o)=>{const l=q(),i=nr.useFormFieldControl(),d=ke(a,"Combobox.LeadingIcon"),u=ke(a,"Combobox.SelectedItems"),b=ke(a,"Combobox.Input"),p=ke(a,"Combobox.ClearButton"),h=ke(a,"Combobox.Disclosure"),[_,I]=l.hasPopover?[Te.Popover.Anchor,{asChild:!0,type:void 0}]:[n.Fragment,{}],T=Re.useMergeRefs(o,l.triggerAreaRef),R=n.useRef(null),D=i.disabled||l.disabled,$=i.readOnly||l.readOnly,H=!!p&&!D&&!$,F=()=>{if(R.current&&!l.wrap){const{scrollWidth:A,clientWidth:Z}=R.current;R.current.scrollLeft=A-Z}};return((A,Z)=>{const ee=n.useRef(null);n.useEffect(()=>{const G=()=>{const j=A.current?.scrollWidth||null;ee.current&&j&&j>ee.current&&Z(),ee.current=j,requestAnimationFrame(G)},L=requestAnimationFrame(G);return()=>cancelAnimationFrame(L)},[A])})(R,F),n.useEffect(()=>{const A=new ResizeObserver(F);return R.current&&A.observe(R.current),()=>{A.disconnect()}},[]),n.createElement(n.Fragment,null,n.createElement(_,{...I},n.createElement("div",{ref:T,className:Zr({className:r,state:l.state,disabled:D,readOnly:$,allowWrap:l.wrap}),onClick:()=>{l.isOpen||D||$||(l.openMenu(),l.innerInputRef.current&&l.innerInputRef.current.focus())}},d,n.createElement("div",{ref:R,className:V.cx("inline-flex grow items-start gap-sm py-md",l.wrap?"flex-wrap":"overflow-x-auto p-[2px] u-no-scrollbar")},u,b),H&&p,h)))});Lt.displayName="Combobox.Trigger";const rr=Object.assign(cr,{Group:Et,Item:St,Items:kt,ItemText:Tt,ItemIndicator:jt,Label:Rt,Popover:zt,Trigger:Lt,LeadingIcon:Pt,Empty:_t,Input:Nt,Disclosure:wt,SelectedItems:At,ClearButton:Ct,Portal:Vt});rr.displayName="Combobox",Et.displayName="Combobox.Group",kt.displayName="Combobox.Items",St.displayName="Combobox.Item",Tt.displayName="Combobox.ItemText",jt.displayName="Combobox.ItemIndicator",Rt.displayName="Combobox.Label",zt.displayName="Combobox.Popover",Lt.displayName="Combobox.Trigger",Pt.displayName="Combobox.LeadingIcon",_t.displayName="Combobox.Empty",Nt.displayName="Combobox.Input",wt.displayName="Combobox.Disclosure",At.displayName="Combobox.SelectedItems",Ct.displayName="Combobox.ClearButton",Vt.displayName="Combobox.Portal",exports.Combobox=rr,exports.ComboboxProvider=ir,exports.useComboboxContext=q;
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),nr=require("@spark-ui/form-field"),Re=require("@spark-ui/popover"),M=require("downshift"),ge=require("@spark-ui/icon"),V=require("class-variance-authority"),zr=require("@spark-ui/icon-button"),Pe=require("@spark-ui/use-merge-refs"),Vr=require("@spark-ui/visually-hidden"),Ar=require("@spark-ui/spinner");var at=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Lr(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var It={exports:{}};(function(r,a){var o="__lodash_hash_undefined__",l=1,i=2,d=9007199254740991,u="[object Arguments]",b="[object Array]",p="[object AsyncFunction]",h="[object Boolean]",_="[object Date]",C="[object Error]",k="[object Function]",T="[object GeneratorFunction]",D="[object Map]",q="[object Number]",H="[object Null]",F="[object Object]",A="[object Promise]",Z="[object Proxy]",Y="[object RegExp]",G="[object Set]",L="[object String]",j="[object Symbol]",it="[object Undefined]",ee="[object WeakMap]",ve="[object ArrayBuffer]",de="[object DataView]",ze=/^\[object .+?Constructor\]$/,Ve=/^(?:0|[1-9]\d*)$/,v={};v["[object Float32Array]"]=v["[object Float64Array]"]=v["[object Int8Array]"]=v["[object Int16Array]"]=v["[object Int32Array]"]=v["[object Uint8Array]"]=v["[object Uint8ClampedArray]"]=v["[object Uint16Array]"]=v["[object Uint32Array]"]=!0,v[u]=v[b]=v[ve]=v[h]=v[de]=v[_]=v[C]=v[k]=v[D]=v[q]=v[F]=v[Y]=v[G]=v[L]=v[ee]=!1;var ye=typeof at=="object"&&at&&at.Object===Object&&at,xe=typeof self=="object"&&self&&self.Object===Object&&self,R=ye||xe||Function("return this")(),Ae=a&&!a.nodeType&&a,Le=Ae&&r&&!r.nodeType&&r,Me=Le&&Le.exports===Ae,Ie=Me&&ye.process,De=function(){try{return Ie&&Ie.binding&&Ie.binding("util")}catch{}}(),Fe=De&&De.isTypedArray;function ct(e,t){for(var s=-1,c=e==null?0:e.length;++s<c;)if(t(e[s],s,e))return!0;return!1}function Be(e){var t=-1,s=Array(e.size);return e.forEach(function(c,I){s[++t]=[I,c]}),s}function ut(e){var t=-1,s=Array(e.size);return e.forEach(function(c){s[++t]=c}),s}var $e,qe,Ce,He=Array.prototype,we=Function.prototype,pe=Object.prototype,_e=R["__core-js_shared__"],f=we.toString,x=pe.hasOwnProperty,E=($e=/[^.]+$/.exec(_e&&_e.keys&&_e.keys.IE_PROTO||""))?"Symbol(src)_1."+$e:"",P=pe.toString,te=RegExp("^"+f.call(x).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),We=Me?R.Buffer:void 0,me=R.Symbol,Dt=R.Uint8Array,Ft=pe.propertyIsEnumerable,gr=He.splice,se=me?me.toStringTag:void 0,Bt=Object.getOwnPropertySymbols,vr=We?We.isBuffer:void 0,yr=(qe=Object.keys,Ce=Object,function(e){return qe(Ce(e))}),dt=fe(R,"DataView"),Ee=fe(R,"Map"),pt=fe(R,"Promise"),mt=fe(R,"Set"),ft=fe(R,"WeakMap"),Ne=fe(Object,"create"),xr=ce(dt),Ir=ce(Ee),Cr=ce(pt),wr=ce(mt),_r=ce(ft),$t=me?me.prototype:void 0,bt=$t?$t.valueOf:void 0;function le(e){var t=-1,s=e==null?0:e.length;for(this.clear();++t<s;){var c=e[t];this.set(c[0],c[1])}}function U(e){var t=-1,s=e==null?0:e.length;for(this.clear();++t<s;){var c=e[t];this.set(c[0],c[1])}}function ie(e){var t=-1,s=e==null?0:e.length;for(this.clear();++t<s;){var c=e[t];this.set(c[0],c[1])}}function Ke(e){var t=-1,s=e==null?0:e.length;for(this.__data__=new ie;++t<s;)this.add(e[t])}function re(e){var t=this.__data__=new U(e);this.size=t.size}function Er(e,t){var s=Ue(e),c=!s&&kr(e),I=!s&&!c&&ht(e),m=!s&&!c&&!I&&Qt(e),w=s||c||I||m,N=w?function(S,K){for(var J=-1,z=Array(S);++J<S;)z[J]=K(J);return z}(e.length,String):[],W=N.length;for(var O in e)!t&&!x.call(e,O)||w&&(O=="length"||I&&(O=="offset"||O=="parent")||m&&(O=="buffer"||O=="byteLength"||O=="byteOffset")||jr(O,W))||N.push(O);return N}function Ze(e,t){for(var s=e.length;s--;)if(Zt(e[s][0],t))return s;return-1}function Oe(e){return e==null?e===void 0?it:H:se&&se in Object(e)?function(t){var s=x.call(t,se),c=t[se];try{t[se]=void 0;var I=!0}catch{}var m=P.call(t);return I&&(s?t[se]=c:delete t[se]),m}(e):function(t){return P.call(t)}(e)}function qt(e){return Se(e)&&Oe(e)==u}function Ht(e,t,s,c,I){return e===t||(e==null||t==null||!Se(e)&&!Se(t)?e!=e&&t!=t:function(m,w,N,W,O,S){var K=Ue(m),J=Ue(w),z=K?b:ne(m),Q=J?b:ne(w),be=(z=z==u?F:z)==F,Je=(Q=Q==u?F:Q)==F,he=z==Q;if(he&&ht(m)){if(!ht(w))return!1;K=!0,be=!1}if(he&&!be)return S||(S=new re),K||Qt(m)?Wt(m,w,N,W,O,S):function(y,g,Qe,oe,gt,B,X){switch(Qe){case de:if(y.byteLength!=g.byteLength||y.byteOffset!=g.byteOffset)return!1;y=y.buffer,g=g.buffer;case ve:return!(y.byteLength!=g.byteLength||!B(new Dt(y),new Dt(g)));case h:case _:case q:return Zt(+y,+g);case C:return y.name==g.name&&y.message==g.message;case Y:case L:return y==g+"";case D:var ae=Be;case G:var ke=oe&l;if(ae||(ae=ut),y.size!=g.size&&!ke)return!1;var Xe=X.get(y);if(Xe)return Xe==g;oe|=i,X.set(y,g);var vt=Wt(ae(y),ae(g),oe,gt,B,X);return X.delete(y),vt;case j:if(bt)return bt.call(y)==bt.call(g)}return!1}(m,w,z,N,W,O,S);if(!(N&l)){var je=be&&x.call(m,"__wrapped__"),Xt=Je&&x.call(w,"__wrapped__");if(je||Xt){var Rr=je?m.value():m,Pr=Xt?w.value():w;return S||(S=new re),O(Rr,Pr,N,W,S)}}return he?(S||(S=new re),function(y,g,Qe,oe,gt,B){var X=Qe&l,ae=Kt(y),ke=ae.length,Xe=Kt(g),vt=Xe.length;if(ke!=vt&&!X)return!1;for(var Ye=ke;Ye--;){var ue=ae[Ye];if(!(X?ue in g:x.call(g,ue)))return!1}var Yt=B.get(y);if(Yt&&B.get(g))return Yt==g;var et=!0;B.set(y,g),B.set(g,y);for(var yt=X;++Ye<ke;){var tt=y[ue=ae[Ye]],rt=g[ue];if(oe)var er=X?oe(rt,tt,ue,g,y,B):oe(tt,rt,ue,y,g,B);if(!(er===void 0?tt===rt||gt(tt,rt,Qe,oe,B):er)){et=!1;break}yt||(yt=ue=="constructor")}if(et&&!yt){var nt=y.constructor,ot=g.constructor;nt==ot||!("constructor"in y)||!("constructor"in g)||typeof nt=="function"&&nt instanceof nt&&typeof ot=="function"&&ot instanceof ot||(et=!1)}return B.delete(y),B.delete(g),et}(m,w,N,W,O,S)):!1}(e,t,s,c,Ht,I))}function Nr(e){return!(!Jt(e)||function(t){return!!E&&E in t}(e))&&(Gt(e)?te:ze).test(ce(e))}function Or(e){if(s=(t=e)&&t.constructor,c=typeof s=="function"&&s.prototype||pe,t!==c)return yr(e);var t,s,c,I=[];for(var m in Object(e))x.call(e,m)&&m!="constructor"&&I.push(m);return I}function Wt(e,t,s,c,I,m){var w=s&l,N=e.length,W=t.length;if(N!=W&&!(w&&W>N))return!1;var O=m.get(e);if(O&&m.get(t))return O==t;var S=-1,K=!0,J=s&i?new Ke:void 0;for(m.set(e,t),m.set(t,e);++S<N;){var z=e[S],Q=t[S];if(c)var be=w?c(Q,z,S,t,e,m):c(z,Q,S,e,t,m);if(be!==void 0){if(be)continue;K=!1;break}if(J){if(!ct(t,function(Je,he){if(je=he,!J.has(je)&&(z===Je||I(z,Je,s,c,m)))return J.push(he);var je})){K=!1;break}}else if(z!==Q&&!I(z,Q,s,c,m)){K=!1;break}}return m.delete(e),m.delete(t),K}function Kt(e){return function(t,s,c){var I=s(t);return Ue(t)?I:function(m,w){for(var N=-1,W=w.length,O=m.length;++N<W;)m[O+N]=w[N];return m}(I,c(t))}(e,Tr,Sr)}function Ge(e,t){var s,c,I=e.__data__;return((c=typeof(s=t))=="string"||c=="number"||c=="symbol"||c=="boolean"?s!=="__proto__":s===null)?I[typeof t=="string"?"string":"hash"]:I.map}function fe(e,t){var s=function(c,I){return c?.[I]}(e,t);return Nr(s)?s:void 0}le.prototype.clear=function(){this.__data__=Ne?Ne(null):{},this.size=0},le.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},le.prototype.get=function(e){var t=this.__data__;if(Ne){var s=t[e];return s===o?void 0:s}return x.call(t,e)?t[e]:void 0},le.prototype.has=function(e){var t=this.__data__;return Ne?t[e]!==void 0:x.call(t,e)},le.prototype.set=function(e,t){var s=this.__data__;return this.size+=this.has(e)?0:1,s[e]=Ne&&t===void 0?o:t,this},U.prototype.clear=function(){this.__data__=[],this.size=0},U.prototype.delete=function(e){var t=this.__data__,s=Ze(t,e);return!(s<0)&&(s==t.length-1?t.pop():gr.call(t,s,1),--this.size,!0)},U.prototype.get=function(e){var t=this.__data__,s=Ze(t,e);return s<0?void 0:t[s][1]},U.prototype.has=function(e){return Ze(this.__data__,e)>-1},U.prototype.set=function(e,t){var s=this.__data__,c=Ze(s,e);return c<0?(++this.size,s.push([e,t])):s[c][1]=t,this},ie.prototype.clear=function(){this.size=0,this.__data__={hash:new le,map:new(Ee||U),string:new le}},ie.prototype.delete=function(e){var t=Ge(this,e).delete(e);return this.size-=t?1:0,t},ie.prototype.get=function(e){return Ge(this,e).get(e)},ie.prototype.has=function(e){return Ge(this,e).has(e)},ie.prototype.set=function(e,t){var s=Ge(this,e),c=s.size;return s.set(e,t),this.size+=s.size==c?0:1,this},Ke.prototype.add=Ke.prototype.push=function(e){return this.__data__.set(e,o),this},Ke.prototype.has=function(e){return this.__data__.has(e)},re.prototype.clear=function(){this.__data__=new U,this.size=0},re.prototype.delete=function(e){var t=this.__data__,s=t.delete(e);return this.size=t.size,s},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var s=this.__data__;if(s instanceof U){var c=s.__data__;if(!Ee||c.length<199)return c.push([e,t]),this.size=++s.size,this;s=this.__data__=new ie(c)}return s.set(e,t),this.size=s.size,this};var Sr=Bt?function(e){return e==null?[]:(e=Object(e),function(t,s){for(var c=-1,I=t==null?0:t.length,m=0,w=[];++c<I;){var N=t[c];s(N,c,t)&&(w[m++]=N)}return w}(Bt(e),function(t){return Ft.call(e,t)}))}:function(){return[]},ne=Oe;function jr(e,t){return!!(t=t??d)&&(typeof e=="number"||Ve.test(e))&&e>-1&&e%1==0&&e<t}function ce(e){if(e!=null){try{return f.call(e)}catch{}try{return e+""}catch{}}return""}function Zt(e,t){return e===t||e!=e&&t!=t}(dt&&ne(new dt(new ArrayBuffer(1)))!=de||Ee&&ne(new Ee)!=D||pt&&ne(pt.resolve())!=A||mt&&ne(new mt)!=G||ft&&ne(new ft)!=ee)&&(ne=function(e){var t=Oe(e),s=t==F?e.constructor:void 0,c=s?ce(s):"";if(c)switch(c){case xr:return de;case Ir:return D;case Cr:return A;case wr:return G;case _r:return ee}return t});var kr=qt(function(){return arguments}())?qt:function(e){return Se(e)&&x.call(e,"callee")&&!Ft.call(e,"callee")},Ue=Array.isArray,ht=vr||function(){return!1};function Gt(e){if(!Jt(e))return!1;var t=Oe(e);return t==k||t==T||t==p||t==Z}function Ut(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=d}function Jt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function Se(e){return e!=null&&typeof e=="object"}var Qt=Fe?function(e){return function(t){return e(t)}}(Fe):function(e){return Se(e)&&Ut(e.length)&&!!v[Oe(e)]};function Tr(e){return(t=e)!=null&&Ut(t.length)&&!Gt(t)?Er(e):Or(e);var t}r.exports=function(e,t){return Ht(e,t)}})(It,It.exports);const Mr=Lr(It.exports);function or(r,a,o){const l=r!==void 0,{current:i}=n.useRef(l?r:a),[d,u]=n.useState(a),b=l?r:d,p=n.useCallback((h,_=(C,k)=>!Mr(C,k))=>{const C=typeof h!="function"?h:h(b);_(b,C)&&!l&&u(C),o&&o(C)},[l,b,o]);return[b,p,l,i]}const Dr=({multiselect:r,selectedItems:a,allowCustomValue:o=!1,setSelectedItems:l,triggerAreaRef:i})=>(d,{changes:u,type:b})=>{const p=i.current?.contains?.(document.activeElement);switch(b){case M.useCombobox.stateChangeTypes.InputClick:return{...u,isOpen:!0};case M.useCombobox.stateChangeTypes.InputKeyDownEnter:case M.useCombobox.stateChangeTypes.ItemClick:{const h={...u};if(u.selectedItem!=null){h.inputValue="",h.isOpen=!0,h.highlightedIndex=d.highlightedIndex;const _=r.selectedItems.some(C=>C.value===u.selectedItem?.value)?a.filter(C=>C.value!==u.selectedItem?.value):[...a,u.selectedItem];l(_)}return h}case M.useCombobox.stateChangeTypes.ToggleButtonClick:return{...u,inputValue:o?u.inputValue:""};case M.useCombobox.stateChangeTypes.InputBlur:return{...u,inputValue:o?u.inputValue:"",isOpen:p};default:return u}},Fr=({filteredItems:r,allowCustomValue:a=!1,setSelectedItem:o})=>(l,{changes:i,type:d})=>{const u=r.find(b=>b.text.toLowerCase()===l.inputValue.toLowerCase());switch(d){case M.useCombobox.stateChangeTypes.ItemClick:case M.useCombobox.stateChangeTypes.InputKeyDownEnter:return i.selectedItem&&o(i.selectedItem),i;case M.useCombobox.stateChangeTypes.InputClick:return{...i,isOpen:!0};case M.useCombobox.stateChangeTypes.ToggleButtonClick:case M.useCombobox.stateChangeTypes.InputBlur:return a?i:l.inputValue===""?(o(null),{...i,selectedItem:null}):u?(o(u),{...i,selectedItem:u,inputValue:u.text}):l.selectedItem?{...i,inputValue:l.selectedItem.text}:{...i,inputValue:""};default:return i}},Br=(r,a)=>{const o=((l,i)=>{let d=0;for(const u of l.keys()){if(d===i)return u;d++}})(r,a);return o!==void 0?r.get(o):void 0},lt=r=>r?r.type.displayName:"",ar=(r,a=[])=>(n.Children.forEach(r,o=>{if(n.isValidElement(o)){if(lt(o)==="Combobox.Item"){const l=o.props;a.push({value:l.value,disabled:!!l.disabled,text:Ct(l.children)})}o.props.children&&ar(o.props.children,a)}}),a),Ct=(r,a="")=>typeof r=="string"?r:(n.Children.forEach(r,o=>{n.isValidElement(o)&&(lt(o)==="Combobox.ItemText"&&(a=o.props.children),o.props.children&&Ct(o.props.children,a))}),a),tr=r=>{const a=new Map;return ar(r).forEach(o=>{a.set(o.value,o)}),a},sr=(r,a)=>n.Children.toArray(r).some(o=>!!n.isValidElement(o)&&(lt(o)===a||!!o.props.children&&sr(o.props.children,a))),Te=(r,a)=>n.Children.toArray(r).filter(n.isValidElement).find(o=>a===lt(o)||""),lr=n.createContext(null),xt=(r,a)=>a?new Map(Array.from(r).filter(([o,{text:l}])=>l.toLowerCase().includes(a.toLowerCase()))):r,st=":combobox",ir=({children:r,state:a,allowCustomValue:o=!1,autoFilter:l=!0,disabled:i=!1,multiple:d=!1,readOnly:u=!1,wrap:b=!0,value:p,defaultValue:h,onValueChange:_,open:C,defaultOpen:k,onOpenChange:T,isLoading:D})=>{const q=n.useRef(!1),[H,F]=n.useState(""),A=n.useRef(null),Z=n.useRef(null),[Y,G]=n.useState(null),[L]=or(p,h),[j,it]=n.useState(tr(r)),[ee,ve]=n.useState(l?xt(j,H):j),[de,ze]=n.useState(j.get(L)||null),[Ve,v]=n.useState(L?[...j.values()].filter(f=>L.includes(f.value)):[]),ye=f=>{ze(f),setTimeout(()=>{_?.(f?.value)},0)},xe=f=>{v(f),setTimeout(()=>{_?.(f.map(x=>x.value))},0)};n.useEffect(()=>{if(q.current)if(d){const f=L.reduce((x,E)=>{const P=j.get(E);return P?[...x,P]:x},[]);v(L?f:[])}else ze(j.get(L)||null);else q.current=!0},[d?JSON.stringify(L):L]);const R=nr.useFormFieldControl(),Ae=`${st}-label-${n.useId()}`,Le=`${st}-field-${n.useId()}`,Me=R.id||Le,Ie=R.labelId||Ae,De=R.state||a,Fe=R.disabled??i,ct=R.readOnly??u,[Be,ut]=n.useState(sr(r,"Combobox.Popover")),[$e,qe]=n.useState("mouse");n.useEffect(()=>{ve(l?xt(j,H):j)},[H,j]);const Ce=M.useMultipleSelection({selectedItems:Ve,stateReducer:(f,{type:x,changes:E})=>{const P=M.useMultipleSelection.stateChangeTypes;switch(x){case P.SelectedItemKeyDownBackspace:case P.SelectedItemKeyDownDelete:{let te;return xe(E.selectedItems||[]),x===P.SelectedItemKeyDownDelete?te=f?.activeIndex===E.selectedItems?.length?-1:f.activeIndex:te=(E?.activeIndex||0)-1>=0?f.activeIndex-1:E?.activeIndex,{...E,activeIndex:te}}case P.SelectedItemClick:return Z.current&&Z.current.focus(),{...E,activeIndex:-1};case P.FunctionRemoveSelectedItem:return{...E,activeIndex:-1};case P.DropdownKeyDownNavigationPrevious:return we.closeMenu(),E;default:return E}}}),He=Array.from(ee.values());n.useEffect(()=>{Y?.(H||"")},[H]);const we=M.useCombobox({items:He,selectedItem:d?void 0:de,id:Me,labelId:Ie,inputValue:H,onInputValueChange:({inputValue:f})=>{if(F(f),l){const x=xt(j,f||"");ve(x)}},initialIsOpen:k,...C!=null&&{isOpen:C},onIsOpenChange:f=>{f.isOpen!=null&&T?.(f.isOpen)},itemToString:f=>f?.text,isItemDisabled:f=>{const x=!!H&&!He.some(E=>f.value===E.value);return f.disabled||x},stateReducer:d?Dr({multiselect:Ce,selectedItems:Ve,allowCustomValue:o,setSelectedItems:xe,triggerAreaRef:A}):Fr({allowCustomValue:o,setSelectedItem:ye,filteredItems:[...ee.values()]}),scrollIntoView:f=>{f&&f.scrollIntoView({block:"nearest"})}});n.useEffect(()=>{const f=tr(r),x=[...j.values()],E=[...f.values()];(x.length!==E.length||x.some((P,te)=>{const We=P.value!==E[te]?.value,me=P.text!==E[te]?.text;return We||me}))&&it(f)},[r]);const[pe,_e]=Be?[Re.Popover,{open:!0}]:[n.Fragment,{}];return n.createElement(lr.Provider,{value:{itemsMap:j,filteredItemsMap:ee,highlightedItem:Br(ee,we.highlightedIndex),multiple:d,disabled:Fe,readOnly:ct,hasPopover:Be,setHasPopover:ut,state:De,lastInteractionType:$e,setLastInteractionType:qe,wrap:b,innerInputRef:Z,triggerAreaRef:A,...we,...Ce,setInputValue:F,selectItem:ye,setSelectedItems:xe,isLoading:D,setOnInputValueChange:G}},n.createElement(pe,{..._e},r))},$=()=>{const r=n.useContext(lr);if(!r)throw Error("useComboboxContext must be used within a Combobox provider");return r},cr=({children:r,...a})=>n.createElement(ir,{...a},r);cr.displayName="Combobox";const ur=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"DeleteFill",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path fill-rule="evenodd" d="m2,12C2,6.48,6.48,2,12,2s10,4.48,10,10-4.48,10-10,10S2,17.52,2,12Zm7.75-3.67c-.39-.39-1.02-.39-1.41,0-.39.39-.39,1.02,0,1.41l2.23,2.23-2.23,2.23c-.39.39-.39,1.02,0,1.41.39.39,1.02.39,1.41,0l2.23-2.23,2.23,2.23c.39.39,1.02.39,1.41,0s.39-1.02,0-1.41l-2.23-2.23,2.23-2.23c.39-.39.39-1.02,0-1.41-.39-.39-1.02-.39-1.41,0l-2.23,2.23-2.23-2.23Z"/>'}}));ur.displayName="DeleteFill";const wt=n.forwardRef(({className:r,tabIndex:a=-1,onClick:o,...l},i)=>{const d=$();return n.createElement("button",{ref:i,className:V.cx(r,"h-sz-44 text-neutral hover:text-neutral-hovered"),tabIndex:a,onClick:u=>{u.stopPropagation(),d.multiple?d.setSelectedItems([]):d.selectItem(null),d.setInputValue(""),d.innerInputRef.current&&d.innerInputRef.current.focus(),o&&o(u)},type:"button",...l},n.createElement(ge.Icon,{size:"sm"},n.createElement(ur,null)))});wt.displayName="Combobox.ClearButton";const dr=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"ArrowHorizontalDown",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path fill-rule="evenodd" d="m2.33,7.3c.43-.4,1.14-.4,1.57,0l8.1,7.48,8.1-7.48c.43-.4,1.14-.4,1.57,0,.43.4.43,1.06,0,1.47l-8.34,7.7c-.17.17-.37.3-.6.39-.23.09-.48.14-.73.14s-.5-.05-.73-.14c-.23-.09-.43-.22-.6-.39L2.33,8.77c-.43-.4-.43-1.06,0-1.47Z"/>'}}));dr.displayName="ArrowHorizontalDown";const _t=n.forwardRef(({className:r,closedLabel:a,openedLabel:o,intent:l="neutral",design:i="ghost",size:d="sm",...u},b)=>{const p=$(),{ref:h,..._}=p.getToggleButtonProps({disabled:p.disabled||p.readOnly,onClick:T=>{T.stopPropagation()}}),C=_["aria-expanded"],k=Pe.useMergeRefs(b,h);return n.createElement(zr.IconButton,{ref:k,className:V.cx(r,"mt-[calc((44px-32px)/2)]"),intent:l,design:i,size:d,..._,...u,"aria-label":C?o:a,disabled:p.disabled},n.createElement(ge.Icon,null,n.createElement(ge.Icon,{className:"shrink-0",size:"sm"},n.createElement(dr,null))))});_t.displayName="Combobox.Disclosure";const Et=n.forwardRef(({className:r,children:a},o)=>$().filteredItemsMap.size===0?n.createElement("div",{ref:o,className:r},a):null);Et.displayName="Combobox.Empty";const pr=n.createContext(null),$r=({children:r})=>{const a=`${st}-group-label-${n.useId()}`;return n.createElement(pr.Provider,{value:{groupLabelId:a}},r)},mr=()=>{const r=n.useContext(pr);if(!r)throw Error("useComboboxGroupContext must be used within a ComboboxGroup provider");return r},Nt=n.forwardRef(({children:r,...a},o)=>n.createElement($r,null,n.createElement(qr,{ref:o,...a},r))),qr=n.forwardRef(({children:r,className:a},o)=>{const l=$(),i=mr();return n.Children.toArray(r).some(d=>n.isValidElement(d)&&l.filteredItemsMap.get(d.props.value))?n.createElement("div",{ref:o,role:"group","aria-labelledby":i.groupLabelId,className:V.cx(a)},r):null});Nt.displayName="Combobox.Group";const Ot=n.forwardRef(({"aria-label":r,className:a,placeholder:o,value:l,defaultValue:i,onValueChange:d,...u},b)=>{const p=$(),[h]=or(l,i);n.useEffect(()=>{h!=null&&p.setInputValue(h)},[h]),n.useEffect(()=>{d&&p.setOnInputValueChange(()=>d),!p.multiple&&p.selectedItem&&p.setInputValue(p.selectedItem.text)},[]);const[_,C]=p.hasPopover?[Re.Popover.Trigger,{asChild:!0,type:void 0}]:[n.Fragment,{}],k=p.getDropdownProps(),T=Pe.useMergeRefs(b,p.innerInputRef,k.ref),D=p.getInputProps({disabled:p.disabled||p.readOnly,...k,onKeyDown:q=>{k.onKeyDown?.(q),p.setLastInteractionType("keyboard")},ref:T});return n.createElement(n.Fragment,null,r&&n.createElement(Vr.VisuallyHidden,null,n.createElement("label",{...p.getLabelProps()},r)),n.createElement(_,{...C},n.createElement("input",{"data-spark-component":"combobox-input",type:"text",placeholder:o,className:V.cx("h-sz-28 shrink-0 flex-grow basis-[80px] text-ellipsis px-sm outline-none","disabled:cursor-not-allowed disabled:bg-transparent disabled:text-on-surface/dim-3","read-only:cursor-default read-only:bg-transparent read-only:text-on-surface",a),...u,...D,value:p.inputValue,"aria-label":r,disabled:p.disabled,readOnly:p.readOnly})))});Ot.displayName="Combobox.Input";const fr=n.createContext(null),Hr=({value:r,disabled:a=!1,children:o})=>{const l=$(),[i,d]=n.useState(void 0),u=function(h,_){let C=0;for(const[k]of h.entries()){if(k===_)return C;C++}return-1}(l.itemsMap,r),b={disabled:a,value:r,text:Ct(o)},p=l.multiple?l.selectedItems.some(h=>h.value===r):l.selectedItem?.value===r;return n.createElement(fr.Provider,{value:{textId:i,setTextId:d,isSelected:p,itemData:b,index:u,disabled:a}},o)},St=()=>{const r=n.useContext(fr);if(!r)throw Error("useComboboxItemContext must be used within a ComboboxItem provider");return r},jt=n.forwardRef(({children:r,...a},o)=>{const{value:l,disabled:i}=a;return n.createElement(Hr,{value:l,disabled:i},n.createElement(Kr,{ref:o,...a},r))}),Wr=V.cva("px-lg py-md text-body-1",{variants:{selected:{true:"font-bold"},disabled:{true:"opacity-dim-3 cursor-not-allowed",false:"cursor-pointer"},highlighted:{true:""},interactionType:{mouse:"",keyboard:""}},compoundVariants:[{highlighted:!0,interactionType:"mouse",class:"bg-surface-hovered"},{highlighted:!0,interactionType:"keyboard",class:"u-ring"}]}),Kr=n.forwardRef(({className:r,disabled:a=!1,value:o,children:l},i)=>{const d=$(),u=St(),b=!!d.filteredItemsMap.get(o),{ref:p,...h}=d.getItemProps({item:u.itemData,index:u.index}),_=Pe.useMergeRefs(i,p);return b?n.createElement("li",{ref:_,className:V.cx(Wr({selected:u.isSelected,disabled:a,highlighted:d.highlightedItem?.value===o,interactionType:d.lastInteractionType,className:r})),key:o,...h,"aria-selected":u.isSelected,"aria-labelledby":u.textId},l):null});jt.displayName="Combobox.Item";const br=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"Check",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path d="m8.92,19.08c-.18,0-.36-.03-.53-.1s-.33-.17-.47-.31l-5.49-5.34c-.28-.28-.42-.61-.42-1s.14-.73.42-1c.28-.28.62-.41,1.02-.41s.74.14,1.05.41l4.43,4.3,10.62-10.29c.28-.28.62-.42,1.02-.43.39,0,.73.13,1.02.43.28.28.42.61.42,1s-.14.73-.42,1l-11.65,11.32c-.14.14-.3.24-.47.31-.17.07-.35.1-.53.1Z"/>'}}));br.displayName="Check";const kt=n.forwardRef(({className:r,children:a,label:o},l)=>{const{disabled:i,isSelected:d}=St(),u=a||n.createElement(ge.Icon,{size:"sm"},n.createElement(br,{"aria-label":o}));return n.createElement("span",{ref:l,className:V.cx("flex min-h-sz-16 min-w-sz-16",i&&"opacity-dim-3",r)},d&&u)});kt.displayName="Combobox.ItemIndicator";const Tt=n.forwardRef(({children:r,className:a,...o},l)=>{const i=$(),{ref:d,...u}=i.getMenuProps({onMouseMove:()=>{i.setLastInteractionType("mouse")}}),b=n.useRef(null),p=Pe.useMergeRefs(l,d,b),h=!i.hasPopover||i.isOpen;return n.useLayoutEffect(()=>{i.hasPopover&&b.current?.parentElement&&(b.current.parentElement.style.pointerEvents=h?"":"none")},[h,i.hasPopover]),n.createElement("ul",{ref:p,className:V.cx(a,"flex flex-col",h?"block":"pointer-events-none invisible opacity-0",i.hasPopover&&"p-lg",i.isLoading&&"items-center overflow-y-auto"),...o,...u,"aria-busy":i.isLoading,"data-spark-component":"combobox-items"},i.isLoading?n.createElement(Ar.Spinner,{size:"sm"}):r)});Tt.displayName="Combobox.Items";const Rt=n.forwardRef(({children:r},a)=>{const o=`${st}-item-text-${n.useId()}`,{setTextId:l}=St();return n.useEffect(()=>(l(o),()=>l(void 0))),n.createElement("span",{id:o,className:V.cx("inline"),ref:a},r)});Rt.displayName="Combobox.ItemText";const Pt=n.forwardRef(({children:r,className:a},o)=>{const l=mr();return n.createElement("div",{ref:o,id:l.groupLabelId,className:V.cx("px-md py-sm text-body-2 italic text-neutral",a)},r)});Pt.displayName="Combobox.Label";const zt=({children:r})=>n.createElement(ge.Icon,{size:"sm",className:"h-sz-44 shrink-0"},r);zt.displayName="Combobox.LeadingIcon";const Vt=n.forwardRef(({children:r,matchTriggerWidth:a=!0,sideOffset:o=4,className:l,...i},d)=>{const u=$();return n.useEffect(()=>(u.setHasPopover(!0),()=>u.setHasPopover(!1)),[]),n.createElement(Re.Popover.Content,{ref:d,inset:!0,asChild:!0,matchTriggerWidth:a,className:V.cx("relative !z-dropdown",l),sideOffset:o,onOpenAutoFocus:b=>{b.preventDefault()},...i,"data-spark-component":"combobox-popover"},r)});Vt.displayName="Combobox.Popover";const At=({children:r,...a})=>n.createElement(Re.Popover.Portal,{...a},r);At.displayName="Combobox.Portal";const hr=n.forwardRef(({title:r,fill:a="currentColor",stroke:o="none",...l},i)=>n.createElement("svg",{ref:i,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","data-title":"DeleteOutline",...r&&{"data-title":r},fill:a,stroke:o,...l,dangerouslySetInnerHTML:{__html:(r===void 0?"":`<title>${r}</title>`)+'<path fill-rule="evenodd" d="m12,4c-4.42,0-8,3.58-8,8s3.58,8,8,8,8-3.58,8-8-3.58-8-8-8ZM2,12C2,6.48,6.48,2,12,2s10,4.48,10,10-4.48,10-10,10S2,17.52,2,12Zm6.33-3.67c.39-.39,1.02-.39,1.41,0l2.23,2.23,2.23-2.23c.39-.39,1.02-.39,1.41,0,.39.39.39,1.02,0,1.41l-2.23,2.23,2.23,2.23c.39.39.39,1.02,0,1.41-.39.39-1.02.39-1.41,0l-2.23-2.23-2.23,2.23c-.39.39-1.02.39-1.41,0-.39-.39-.39-1.02,0-1.41l2.23-2.23-2.23-2.23c-.39-.39-.39-1.02,0-1.41Z"/>'}}));hr.displayName="DeleteOutline";const Lt=()=>{const r=$();if(!r.selectedItems.length||!r.multiple)return null;const a=!r.disabled&&!r.readOnly;return n.createElement(n.Fragment,null,r.selectedItems.map((o,l)=>{const i=r.getSelectedItemProps({disabled:r.disabled||r.readOnly,selectedItem:o,index:l});return n.createElement("span",{role:"presentation","data-spark-component":"combobox-selected-item",key:`selected-item-${l}`,className:V.cx("flex h-sz-28 items-center rounded-md bg-neutral-container align-middle","text-body-2 text-on-neutral-container",{"px-md":!a,"pl-md":a}),...i,tabIndex:-1,onFocus:d=>{const u=d.target;r.lastInteractionType==="keyboard"&&u.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}},n.createElement("span",{className:V.cx("line-clamp-1 overflow-x-hidden text-ellipsis break-all leading-normal",{"w-max":!r.wrap})},o.text),r.disabled,a&&n.createElement("button",{type:"button",tabIndex:-1,"aria-hidden":!0,className:"h-full cursor-pointer px-md",onClick:d=>{d.stopPropagation();const u=r.selectedItems.filter(b=>b.value!==o.value);r.setSelectedItems(u),r.innerInputRef.current&&r.innerInputRef.current.focus({preventScroll:!0})}},n.createElement(ge.Icon,{size:"sm"},n.createElement(hr,null))))}))};Lt.displayName="Combobox.SelectedItems";const Zr=V.cva(["flex items-start gap-md min-h-sz-44","h-fit rounded-lg px-lg","ring-1 outline-none ring-inset focus-within:ring-2"],{variants:{allowWrap:{true:"",false:"h-sz-44"},state:{undefined:"ring-outline focus-within:ring-outline-high",error:"ring-error",alert:"ring-alert",success:"ring-success"},disabled:{true:"cursor-not-allowed border-outline bg-on-surface/dim-5 text-on-surface/dim-3"},readOnly:{true:"cursor-default bg-on-surface/dim-5 text-on-surface"}},compoundVariants:[{disabled:!1,state:void 0,class:"hover:ring-outline-high"},{disabled:!1,readOnly:!1,class:"bg-surface text-on-surface cursor-text"}],defaultVariants:{state:void 0,disabled:!1,readOnly:!1}}),Mt=n.forwardRef(({className:r,children:a},o)=>{const l=$(),i=nr.useFormFieldControl(),d=Te(a,"Combobox.LeadingIcon"),u=Te(a,"Combobox.SelectedItems"),b=Te(a,"Combobox.Input"),p=Te(a,"Combobox.ClearButton"),h=Te(a,"Combobox.Disclosure"),[_,C]=l.hasPopover?[Re.Popover.Anchor,{asChild:!0,type:void 0}]:[n.Fragment,{}],k=Pe.useMergeRefs(o,l.triggerAreaRef),T=n.useRef(null),D=i.disabled||l.disabled,q=i.readOnly||l.readOnly,H=!!p&&!D&&!q,F=()=>{if(T.current&&!l.wrap){const{scrollWidth:A,clientWidth:Z}=T.current;T.current.scrollLeft=A-Z}};return((A,Z)=>{const Y=n.useRef(null);n.useEffect(()=>{const G=()=>{const j=A.current?.scrollWidth||null;Y.current&&j&&j>Y.current&&Z(),Y.current=j,requestAnimationFrame(G)},L=requestAnimationFrame(G);return()=>cancelAnimationFrame(L)},[A])})(T,F),n.useEffect(()=>{const A=new ResizeObserver(F);return T.current&&A.observe(T.current),()=>{A.disconnect()}},[]),n.createElement(n.Fragment,null,n.createElement(_,{...C},n.createElement("div",{ref:k,className:Zr({className:r,state:l.state,disabled:D,readOnly:q,allowWrap:l.wrap}),onClick:()=>{l.isOpen||D||q||(l.openMenu(),l.innerInputRef.current&&l.innerInputRef.current.focus())}},d,n.createElement("div",{ref:T,className:V.cx("inline-flex grow items-start gap-sm py-md",l.wrap?"flex-wrap":"overflow-x-auto p-[2px] u-no-scrollbar")},u,b),H&&p,h)))});Mt.displayName="Combobox.Trigger";const rr=Object.assign(cr,{Group:Nt,Item:jt,Items:Tt,ItemText:Rt,ItemIndicator:kt,Label:Pt,Popover:Vt,Trigger:Mt,LeadingIcon:zt,Empty:Et,Input:Ot,Disclosure:_t,SelectedItems:Lt,ClearButton:wt,Portal:At});rr.displayName="Combobox",Nt.displayName="Combobox.Group",Tt.displayName="Combobox.Items",jt.displayName="Combobox.Item",Rt.displayName="Combobox.ItemText",kt.displayName="Combobox.ItemIndicator",Pt.displayName="Combobox.Label",Vt.displayName="Combobox.Popover",Mt.displayName="Combobox.Trigger",zt.displayName="Combobox.LeadingIcon",Et.displayName="Combobox.Empty",Ot.displayName="Combobox.Input",_t.displayName="Combobox.Disclosure",Lt.displayName="Combobox.SelectedItems",wt.displayName="Combobox.ClearButton",At.displayName="Combobox.Portal",exports.Combobox=rr,exports.ComboboxProvider=ir,exports.useComboboxContext=$;
{
"name": "@spark-ui/combobox",
"version": "0.11.6",
"version": "0.11.7",
"description": "An input that behaves similarly to a select, with the addition of a free text input to filter options.",

@@ -31,8 +31,7 @@ "publishConfig": {

"dependencies": {
"@radix-ui/react-id": "1.0.1",
"@spark-ui/form-field": "^1.5.0",
"@spark-ui/form-field": "^1.5.1",
"@spark-ui/icon": "^2.1.2",
"@spark-ui/icon-button": "^2.2.4",
"@spark-ui/icons": "^1.21.6",
"@spark-ui/popover": "^1.5.7",
"@spark-ui/popover": "^1.5.8",
"@spark-ui/spinner": "^2.2.2",

@@ -58,3 +57,3 @@ "@spark-ui/use-merge-refs": "^0.4.0",

"license": "MIT",
"gitHead": "3fcd9e70d6419263ae24b6267e9c1cfb290966fb"
"gitHead": "5ed3e4725b9166b355dc96ce39f0d35e414a1ad9"
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc