@hoosei/voxweave-react
Version:
A customizable and interactive voice UI component for React applications
3 lines (2 loc) • 11.8 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ie=require("./index98.js"),N=require("./index23.js"),Re=require("react"),I=require("./index35.js"),O=require("./index29.js"),F=require("./index24.js");function xe(t){if(t&&t.__esModule)return t;const l=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const m=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(l,r,m.get?m:{enumerable:!0,get:()=>t[r]})}}return l.default=t,Object.freeze(l)}const n=xe(Re);var j='[cmdk-group=""]',Q='[cmdk-group-items=""]',Pe='[cmdk-group-heading=""]',de='[cmdk-item=""]',ce=`${de}:not([aria-disabled="true"])`,X="cmdk-item-select",q="data-value",se=(t,l,r)=>Ie.a(t,l,r),fe=n.createContext(void 0),K=()=>n.useContext(fe),me=n.createContext(void 0),ee=()=>n.useContext(me),ve=n.createContext(void 0),te=n.forwardRef((t,l)=>{let r=D(()=>{var e,a;return{search:"",value:(a=(e=t.value)!=null?e:t.defaultValue)!=null?a:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),m=D(()=>new Set),i=D(()=>new Map),c=D(()=>new Map),d=D(()=>new Set),v=we(t),{label:h,children:s,value:b,onValueChange:R,filter:C,shouldFilter:k,loop:L,disablePointerSelection:B=!1,vimBindings:x=!0,...V}=t,T=O.useId(),re=O.useId(),H=O.useId(),P=n.useRef(null),g=De();M(()=>{if(b!==void 0){let e=b.trim();r.current.value=e,y.emit()}},[b]),M(()=>{g(6,le)},[]);let y=n.useMemo(()=>({subscribe:e=>(d.current.add(e),()=>d.current.delete(e)),snapshot:()=>r.current,setState:(e,a,o)=>{var u,f,p,S;if(!Object.is(r.current[e],a)){if(r.current[e]=a,e==="search")W(),G(),g(1,J);else if(e==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let E=document.getElementById(H);E?E.focus():(u=document.getElementById(T))==null||u.focus()}if(g(7,()=>{var E;r.current.selectedItemId=(E=A())==null?void 0:E.id,y.emit()}),o||g(5,le),((f=v.current)==null?void 0:f.value)!==void 0){let E=a??"";(S=(p=v.current).onValueChange)==null||S.call(p,E);return}}y.emit()}},emit:()=>{d.current.forEach(e=>e())}}),[]),U=n.useMemo(()=>({value:(e,a,o)=>{var u;a!==((u=c.current.get(e))==null?void 0:u.value)&&(c.current.set(e,{value:a,keywords:o}),r.current.filtered.items.set(e,ne(a,o)),g(2,()=>{G(),y.emit()}))},item:(e,a)=>(m.current.add(e),a&&(i.current.has(a)?i.current.get(a).add(e):i.current.set(a,new Set([e]))),g(3,()=>{W(),G(),r.current.value||J(),y.emit()}),()=>{c.current.delete(e),m.current.delete(e),r.current.filtered.items.delete(e);let o=A();g(4,()=>{W(),o?.getAttribute("id")===e&&J(),y.emit()})}),group:e=>(i.current.has(e)||i.current.set(e,new Set),()=>{c.current.delete(e),i.current.delete(e)}),filter:()=>v.current.shouldFilter,label:h||t["aria-label"],getDisablePointerSelection:()=>v.current.disablePointerSelection,listId:T,inputId:H,labelId:re,listInnerRef:P}),[]);function ne(e,a){var o,u;let f=(u=(o=v.current)==null?void 0:o.filter)!=null?u:se;return e?f(e,r.current.search,a):0}function G(){if(!r.current.search||v.current.shouldFilter===!1)return;let e=r.current.filtered.items,a=[];r.current.filtered.groups.forEach(u=>{let f=i.current.get(u),p=0;f.forEach(S=>{let E=e.get(S);p=Math.max(E,p)}),a.push([u,p])});let o=P.current;$().sort((u,f)=>{var p,S;let E=u.getAttribute("id"),_=f.getAttribute("id");return((p=e.get(_))!=null?p:0)-((S=e.get(E))!=null?S:0)}).forEach(u=>{let f=u.closest(Q);f?f.appendChild(u.parentElement===f?u:u.closest(`${Q} > *`)):o.appendChild(u.parentElement===o?u:u.closest(`${Q} > *`))}),a.sort((u,f)=>f[1]-u[1]).forEach(u=>{var f;let p=(f=P.current)==null?void 0:f.querySelector(`${j}[${q}="${encodeURIComponent(u[0])}"]`);p?.parentElement.appendChild(p)})}function J(){let e=$().find(o=>o.getAttribute("aria-disabled")!=="true"),a=e?.getAttribute(q);y.setState("value",a||void 0)}function W(){var e,a,o,u;if(!r.current.search||v.current.shouldFilter===!1){r.current.filtered.count=m.current.size;return}r.current.filtered.groups=new Set;let f=0;for(let p of m.current){let S=(a=(e=c.current.get(p))==null?void 0:e.value)!=null?a:"",E=(u=(o=c.current.get(p))==null?void 0:o.keywords)!=null?u:[],_=ne(S,E);r.current.filtered.items.set(p,_),_>0&&f++}for(let[p,S]of i.current)for(let E of S)if(r.current.filtered.items.get(E)>0){r.current.filtered.groups.add(p);break}r.current.filtered.count=f}function le(){var e,a,o;let u=A();u&&(((e=u.parentElement)==null?void 0:e.firstChild)===u&&((o=(a=u.closest(j))==null?void 0:a.querySelector(Pe))==null||o.scrollIntoView({block:"nearest"})),u.scrollIntoView({block:"nearest"}))}function A(){var e;return(e=P.current)==null?void 0:e.querySelector(`${de}[aria-selected="true"]`)}function $(){var e;return Array.from(((e=P.current)==null?void 0:e.querySelectorAll(ce))||[])}function Y(e){let a=$()[e];a&&y.setState("value",a.getAttribute(q))}function Z(e){var a;let o=A(),u=$(),f=u.findIndex(S=>S===o),p=u[f+e];(a=v.current)!=null&&a.loop&&(p=f+e<0?u[u.length-1]:f+e===u.length?u[0]:u[f+e]),p&&y.setState("value",p.getAttribute(q))}function ue(e){let a=A(),o=a?.closest(j),u;for(;o&&!u;)o=e>0?Ae(o,j):qe(o,j),u=o?.querySelector(ce);u?y.setState("value",u.getAttribute(q)):Z(e)}let ae=()=>Y($().length-1),ie=e=>{e.preventDefault(),e.metaKey?ae():e.altKey?ue(1):Z(1)},oe=e=>{e.preventDefault(),e.metaKey?Y(0):e.altKey?ue(-1):Z(-1)};return n.createElement(I.Primitive.div,{ref:l,tabIndex:-1,...V,"cmdk-root":"",onKeyDown:e=>{var a;(a=V.onKeyDown)==null||a.call(V,e);let o=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||o))switch(e.key){case"n":case"j":{x&&e.ctrlKey&&ie(e);break}case"ArrowDown":{ie(e);break}case"p":case"k":{x&&e.ctrlKey&&oe(e);break}case"ArrowUp":{oe(e);break}case"Home":{e.preventDefault(),Y(0);break}case"End":{e.preventDefault(),ae();break}case"Enter":{e.preventDefault();let u=A();if(u){let f=new Event(X);u.dispatchEvent(f)}}}}},n.createElement("label",{"cmdk-label":"",htmlFor:U.inputId,id:U.labelId,style:$e},h),z(t,e=>n.createElement(me.Provider,{value:y},n.createElement(fe.Provider,{value:U},e))))}),pe=n.forwardRef((t,l)=>{var r,m;let i=O.useId(),c=n.useRef(null),d=n.useContext(ve),v=K(),h=we(t),s=(m=(r=h.current)==null?void 0:r.forceMount)!=null?m:d?.forceMount;M(()=>{if(!s)return v.item(i,d?.id)},[s]);let b=Ce(i,c,[t.value,t.children,c],t.keywords),R=ee(),C=w(g=>g.value&&g.value===b.current),k=w(g=>s||v.filter()===!1?!0:g.search?g.filtered.items.get(i)>0:!0);n.useEffect(()=>{let g=c.current;if(!(!g||t.disabled))return g.addEventListener(X,L),()=>g.removeEventListener(X,L)},[k,t.onSelect,t.disabled]);function L(){var g,y;B(),(y=(g=h.current).onSelect)==null||y.call(g,b.current)}function B(){R.setState("value",b.current,!0)}if(!k)return null;let{disabled:x,value:V,onSelect:T,forceMount:re,keywords:H,...P}=t;return n.createElement(I.Primitive.div,{ref:F.composeRefs(c,l),...P,id:i,"cmdk-item":"",role:"option","aria-disabled":!!x,"aria-selected":!!C,"data-disabled":!!x,"data-selected":!!C,onPointerMove:x||v.getDisablePointerSelection()?void 0:B,onClick:x?void 0:L},t.children)}),ge=n.forwardRef((t,l)=>{let{heading:r,children:m,forceMount:i,...c}=t,d=O.useId(),v=n.useRef(null),h=n.useRef(null),s=O.useId(),b=K(),R=w(k=>i||b.filter()===!1?!0:k.search?k.filtered.groups.has(d):!0);M(()=>b.group(d),[]),Ce(d,v,[t.value,t.heading,h]);let C=n.useMemo(()=>({id:d,forceMount:i}),[i]);return n.createElement(I.Primitive.div,{ref:F.composeRefs(v,l),...c,"cmdk-group":"",role:"presentation",hidden:R?void 0:!0},r&&n.createElement("div",{ref:h,"cmdk-group-heading":"","aria-hidden":!0,id:s},r),z(t,k=>n.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":r?s:void 0},n.createElement(ve.Provider,{value:C},k))))}),be=n.forwardRef((t,l)=>{let{alwaysRender:r,...m}=t,i=n.useRef(null),c=w(d=>!d.search);return!r&&!c?null:n.createElement(I.Primitive.div,{ref:F.composeRefs(i,l),...m,"cmdk-separator":"",role:"separator"})}),he=n.forwardRef((t,l)=>{let{onValueChange:r,...m}=t,i=t.value!=null,c=ee(),d=w(s=>s.search),v=w(s=>s.selectedItemId),h=K();return n.useEffect(()=>{t.value!=null&&c.setState("search",t.value)},[t.value]),n.createElement(I.Primitive.input,{ref:l,...m,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":h.listId,"aria-labelledby":h.labelId,"aria-activedescendant":v,id:h.inputId,type:"text",value:i?t.value:d,onChange:s=>{i||c.setState("search",s.target.value),r?.(s.target.value)}})}),Ee=n.forwardRef((t,l)=>{let{children:r,label:m="Suggestions",...i}=t,c=n.useRef(null),d=n.useRef(null),v=w(s=>s.selectedItemId),h=K();return n.useEffect(()=>{if(d.current&&c.current){let s=d.current,b=c.current,R,C=new ResizeObserver(()=>{R=requestAnimationFrame(()=>{let k=s.offsetHeight;b.style.setProperty("--cmdk-list-height",k.toFixed(1)+"px")})});return C.observe(s),()=>{cancelAnimationFrame(R),C.unobserve(s)}}},[]),n.createElement(I.Primitive.div,{ref:F.composeRefs(c,l),...i,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":v,"aria-label":m,id:h.listId},z(t,s=>n.createElement("div",{ref:F.composeRefs(d,h.listInnerRef),"cmdk-list-sizer":""},s)))}),ye=n.forwardRef((t,l)=>{let{open:r,onOpenChange:m,overlayClassName:i,contentClassName:c,container:d,...v}=t;return n.createElement(N.Root,{open:r,onOpenChange:m},n.createElement(N.Portal,{container:d},n.createElement(N.Overlay,{"cmdk-overlay":"",className:i}),n.createElement(N.Content,{"aria-label":t.label,"cmdk-dialog":"",className:c},n.createElement(te,{ref:l,...v}))))}),Se=n.forwardRef((t,l)=>w(r=>r.filtered.count===0)?n.createElement(I.Primitive.div,{ref:l,...t,"cmdk-empty":"",role:"presentation"}):null),ke=n.forwardRef((t,l)=>{let{progress:r,children:m,label:i="Loading...",...c}=t;return n.createElement(I.Primitive.div,{ref:l,...c,"cmdk-loading":"",role:"progressbar","aria-valuenow":r,"aria-valuemin":0,"aria-valuemax":100,"aria-label":i},z(t,d=>n.createElement("div",{"aria-hidden":!0},d)))}),Me=Object.assign(te,{List:Ee,Item:pe,Input:he,Group:ge,Separator:be,Dialog:ye,Empty:Se,Loading:ke});function Ae(t,l){let r=t.nextElementSibling;for(;r;){if(r.matches(l))return r;r=r.nextElementSibling}}function qe(t,l){let r=t.previousElementSibling;for(;r;){if(r.matches(l))return r;r=r.previousElementSibling}}function we(t){let l=n.useRef(t);return M(()=>{l.current=t}),l}var M=typeof window>"u"?n.useEffect:n.useLayoutEffect;function D(t){let l=n.useRef();return l.current===void 0&&(l.current=t()),l}function w(t){let l=ee(),r=()=>t(l.snapshot());return n.useSyncExternalStore(l.subscribe,r,r)}function Ce(t,l,r,m=[]){let i=n.useRef(),c=K();return M(()=>{var d;let v=(()=>{var s;for(let b of r){if(typeof b=="string")return b.trim();if(typeof b=="object"&&"current"in b)return b.current?(s=b.current.textContent)==null?void 0:s.trim():i.current}})(),h=m.map(s=>s.trim());c.value(t,v,h),(d=l.current)==null||d.setAttribute(q,v),i.current=v}),i}var De=()=>{let[t,l]=n.useState(),r=D(()=>new Map);return M(()=>{r.current.forEach(m=>m()),r.current=new Map},[t]),(m,i)=>{r.current.set(m,i),l({})}};function Oe(t){let l=t.type;return typeof l=="function"?l(t.props):"render"in l?l.render(t.props):t}function z({asChild:t,children:l},r){return t&&n.isValidElement(l)?n.cloneElement(Oe(l),{ref:l.ref},r(l.props.children)):r(l)}var $e={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};exports.Command=Me;exports.CommandDialog=ye;exports.CommandEmpty=Se;exports.CommandGroup=ge;exports.CommandInput=he;exports.CommandItem=pe;exports.CommandList=Ee;exports.CommandLoading=ke;exports.CommandRoot=te;exports.CommandSeparator=be;exports.defaultFilter=se;exports.useCommandState=w;
//# sourceMappingURL=index87.js.map