@stanfordspezi/spezi-web-design-system
Version:
Stanford Biodesign Digital Health Spezi Web Design System
2 lines (1 loc) • 17.6 kB
JavaScript
;const x=require("react/jsx-runtime"),W=require("./index-Gv5S_MDL.js"),Ne=require("react");require("react-dom");const L=require("./index-CajSSBH7.js"),O=require("./index-C7R_tQdV.js"),re=require("./Dialog-BHzDip85.js"),I=require("./index-DwV9MiDB.js"),Ae=require("./search-x-BVVO3mHB.js"),$e=require("./search-BfYzQ5DB.js");function De(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const l=De(Ne);var ge=1,Pe=.9,Me=.8,qe=.17,ne=.1,le=.999,Oe=.9999,Le=.99,Ve=/[\\\/_+.#"@\[\(\{&]/,Fe=/[\\\/_+.#"@\[\(\{&]/g,ze=/[\s-]/,ye=/[\s-]/g;function oe(e,r,t,o,a,i,s){if(i===r.length)return a===e.length?ge:Le;var m=`${a},${i}`;if(s[m]!==void 0)return s[m];for(var p=o.charAt(i),c=t.indexOf(p,a),v=0,h,S,k,j;c>=0;)h=oe(e,r,t,o,c+1,i+1,s),h>v&&(c===a?h*=ge:Ve.test(e.charAt(c-1))?(h*=Me,k=e.slice(a,c-1).match(Fe),k&&a>0&&(h*=Math.pow(le,k.length))):ze.test(e.charAt(c-1))?(h*=Pe,j=e.slice(a,c-1).match(ye),j&&a>0&&(h*=Math.pow(le,j.length))):(h*=qe,a>0&&(h*=Math.pow(le,c-a))),e.charAt(c)!==r.charAt(i)&&(h*=Oe)),(h<ne&&t.charAt(c-1)===o.charAt(i+1)||o.charAt(i+1)===o.charAt(i)&&t.charAt(c-1)!==o.charAt(i))&&(S=oe(e,r,t,o,c+1,i+2,s),S*ne>h&&(h=S*ne)),h>v&&(v=h),c=t.indexOf(p,c+1);return s[m]=v,v}function he(e){return e.toLowerCase().replace(ye," ")}function Ke(e,r,t){return e=t&&t.length>0?`${e+" "+t.join(" ")}`:e,oe(e,r,he(e),he(r),0,0,{})}var Te=Symbol.for("react.lazy"),B=l[" use ".trim().toString()];function We(e){return typeof e=="object"&&e!==null&&"then"in e}function xe(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===Te&&"_payload"in e&&We(e._payload)}function Be(e){const r=Ge(e),t=l.forwardRef((o,a)=>{let{children:i,...s}=o;xe(i)&&typeof B=="function"&&(i=B(i._payload));const m=l.Children.toArray(i),p=m.find(Ue);if(p){const c=p.props.children,v=m.map(h=>h===p?l.Children.count(c)>1?l.Children.only(null):l.isValidElement(c)?c.props.children:null:h);return x.jsx(r,{...s,ref:a,children:l.isValidElement(c)?l.cloneElement(c,void 0,v):null})}return x.jsx(r,{...s,ref:a,children:i})});return t.displayName=`${e}.Slot`,t}function Ge(e){const r=l.forwardRef((t,o)=>{let{children:a,...i}=t;if(xe(a)&&typeof B=="function"&&(a=B(a._payload)),l.isValidElement(a)){const s=Xe(a),m=Ye(i,a.props);return a.type!==l.Fragment&&(m.ref=o?L.composeRefs(o,s):s),l.cloneElement(a,m)}return l.Children.count(a)>1?l.Children.only(null):null});return r.displayName=`${e}.SlotClone`,r}var He=Symbol("radix.slottable");function Ue(e){return l.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===He}function Ye(e,r){const t={...r};for(const o in r){const a=e[o],i=r[o];/^on[A-Z]/.test(o)?a&&i?t[o]=(...m)=>{const p=i(...m);return a(...m),p}:a&&(t[o]=a):o==="style"?t[o]={...a,...i}:o==="className"&&(t[o]=[a,i].filter(Boolean).join(" "))}return{...e,...t}}function Xe(e){let r=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,t=r&&"isReactWarning"in r&&r.isReactWarning;return t?e.ref:(r=Object.getOwnPropertyDescriptor(e,"ref")?.get,t=r&&"isReactWarning"in r&&r.isReactWarning,t?e.props.ref:e.props.ref||e.ref)}var Ze=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],_=Ze.reduce((e,r)=>{const t=Be(`Primitive.${r}`),o=l.forwardRef((a,i)=>{const{asChild:s,...m}=a,p=s?t:r;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),x.jsx(p,{...m,ref:i})});return o.displayName=`Primitive.${r}`,{...e,[r]:o}},{}),F='[cmdk-group=""]',ae='[cmdk-group-items=""]',Je='[cmdk-group-heading=""]',we='[cmdk-item=""]',be=`${we}:not([aria-disabled="true"])`,ie="cmdk-item-select",M="data-value",ke=(e,r,t)=>Ke(e,r,t),Ce=l.createContext(void 0),z=()=>l.useContext(Ce),Ee=l.createContext(void 0),ue=()=>l.useContext(Ee),Se=l.createContext(void 0),Ie=l.forwardRef((e,r)=>{let t=q(()=>{var n,d;return{search:"",value:(d=(n=e.value)!=null?n:e.defaultValue)!=null?d:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),o=q(()=>new Set),a=q(()=>new Map),i=q(()=>new Map),s=q(()=>new Set),m=Re(e),{label:p,children:c,value:v,onValueChange:h,filter:S,shouldFilter:k,loop:j,disablePointerSelection:H=!1,vimBindings:N=!0,...K}=e,U=O.useId(),ce=O.useId(),Y=O.useId(),A=l.useRef(null),y=ct();$(()=>{if(v!==void 0){let n=v.trim();t.current.value=n,C.emit()}},[v]),$(()=>{y(6,de)},[]);let C=l.useMemo(()=>({subscribe:n=>(s.current.add(n),()=>s.current.delete(n)),snapshot:()=>t.current,setState:(n,d,f)=>{var u,g,b,E;if(!Object.is(t.current[n],d)){if(t.current[n]=d,n==="search")Q(),Z(),y(1,J);else if(n==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let w=document.getElementById(Y);w?w.focus():(u=document.getElementById(U))==null||u.focus()}if(y(7,()=>{var w;t.current.selectedItemId=(w=P())==null?void 0:w.id,C.emit()}),f||y(5,de),((g=m.current)==null?void 0:g.value)!==void 0){let w=d??"";(E=(b=m.current).onValueChange)==null||E.call(b,w);return}}C.emit()}},emit:()=>{s.current.forEach(n=>n())}}),[]),X=l.useMemo(()=>({value:(n,d,f)=>{var u;d!==((u=i.current.get(n))==null?void 0:u.value)&&(i.current.set(n,{value:d,keywords:f}),t.current.filtered.items.set(n,se(d,f)),y(2,()=>{Z(),C.emit()}))},item:(n,d)=>(o.current.add(n),d&&(a.current.has(d)?a.current.get(d).add(n):a.current.set(d,new Set([n]))),y(3,()=>{Q(),Z(),t.current.value||J(),C.emit()}),()=>{i.current.delete(n),o.current.delete(n),t.current.filtered.items.delete(n);let f=P();y(4,()=>{Q(),f?.getAttribute("id")===n&&J(),C.emit()})}),group:n=>(a.current.has(n)||a.current.set(n,new Set),()=>{i.current.delete(n),a.current.delete(n)}),filter:()=>m.current.shouldFilter,label:p||e["aria-label"],getDisablePointerSelection:()=>m.current.disablePointerSelection,listId:U,inputId:Y,labelId:ce,listInnerRef:A}),[]);function se(n,d){var f,u;let g=(u=(f=m.current)==null?void 0:f.filter)!=null?u:ke;return n?g(n,t.current.search,d):0}function Z(){if(!t.current.search||m.current.shouldFilter===!1)return;let n=t.current.filtered.items,d=[];t.current.filtered.groups.forEach(u=>{let g=a.current.get(u),b=0;g.forEach(E=>{let w=n.get(E);b=Math.max(w,b)}),d.push([u,b])});let f=A.current;V().sort((u,g)=>{var b,E;let w=u.getAttribute("id"),T=g.getAttribute("id");return((b=n.get(T))!=null?b:0)-((E=n.get(w))!=null?E:0)}).forEach(u=>{let g=u.closest(ae);g?g.appendChild(u.parentElement===g?u:u.closest(`${ae} > *`)):f.appendChild(u.parentElement===f?u:u.closest(`${ae} > *`))}),d.sort((u,g)=>g[1]-u[1]).forEach(u=>{var g;let b=(g=A.current)==null?void 0:g.querySelector(`${F}[${M}="${encodeURIComponent(u[0])}"]`);b?.parentElement.appendChild(b)})}function J(){let n=V().find(f=>f.getAttribute("aria-disabled")!=="true"),d=n?.getAttribute(M);C.setState("value",d||void 0)}function Q(){var n,d,f,u;if(!t.current.search||m.current.shouldFilter===!1){t.current.filtered.count=o.current.size;return}t.current.filtered.groups=new Set;let g=0;for(let b of o.current){let E=(d=(n=i.current.get(b))==null?void 0:n.value)!=null?d:"",w=(u=(f=i.current.get(b))==null?void 0:f.keywords)!=null?u:[],T=se(E,w);t.current.filtered.items.set(b,T),T>0&&g++}for(let[b,E]of a.current)for(let w of E)if(t.current.filtered.items.get(w)>0){t.current.filtered.groups.add(b);break}t.current.filtered.count=g}function de(){var n,d,f;let u=P();u&&(((n=u.parentElement)==null?void 0:n.firstChild)===u&&((f=(d=u.closest(F))==null?void 0:d.querySelector(Je))==null||f.scrollIntoView({block:"nearest"})),u.scrollIntoView({block:"nearest"}))}function P(){var n;return(n=A.current)==null?void 0:n.querySelector(`${we}[aria-selected="true"]`)}function V(){var n;return Array.from(((n=A.current)==null?void 0:n.querySelectorAll(be))||[])}function ee(n){let d=V()[n];d&&C.setState("value",d.getAttribute(M))}function te(n){var d;let f=P(),u=V(),g=u.findIndex(E=>E===f),b=u[g+n];(d=m.current)!=null&&d.loop&&(b=g+n<0?u[u.length-1]:g+n===u.length?u[0]:u[g+n]),b&&C.setState("value",b.getAttribute(M))}function me(n){let d=P(),f=d?.closest(F),u;for(;f&&!u;)f=n>0?it(f,F):ut(f,F),u=f?.querySelector(be);u?C.setState("value",u.getAttribute(M)):te(n)}let fe=()=>ee(V().length-1),pe=n=>{n.preventDefault(),n.metaKey?fe():n.altKey?me(1):te(1)},ve=n=>{n.preventDefault(),n.metaKey?ee(0):n.altKey?me(-1):te(-1)};return l.createElement(_.div,{ref:r,tabIndex:-1,...K,"cmdk-root":"",onKeyDown:n=>{var d;(d=K.onKeyDown)==null||d.call(K,n);let f=n.nativeEvent.isComposing||n.keyCode===229;if(!(n.defaultPrevented||f))switch(n.key){case"n":case"j":{N&&n.ctrlKey&&pe(n);break}case"ArrowDown":{pe(n);break}case"p":case"k":{N&&n.ctrlKey&&ve(n);break}case"ArrowUp":{ve(n);break}case"Home":{n.preventDefault(),ee(0);break}case"End":{n.preventDefault(),fe();break}case"Enter":{n.preventDefault();let u=P();if(u){let g=new Event(ie);u.dispatchEvent(g)}}}}},l.createElement("label",{"cmdk-label":"",htmlFor:X.inputId,id:X.labelId,style:dt},p),G(e,n=>l.createElement(Ee.Provider,{value:C},l.createElement(Ce.Provider,{value:X},n))))}),Qe=l.forwardRef((e,r)=>{var t,o;let a=O.useId(),i=l.useRef(null),s=l.useContext(Se),m=z(),p=Re(e),c=(o=(t=p.current)==null?void 0:t.forceMount)!=null?o:s?.forceMount;$(()=>{if(!c)return m.item(a,s?.id)},[c]);let v=je(a,i,[e.value,e.children,i],e.keywords),h=ue(),S=R(y=>y.value&&y.value===v.current),k=R(y=>c||m.filter()===!1?!0:y.search?y.filtered.items.get(a)>0:!0);l.useEffect(()=>{let y=i.current;if(!(!y||e.disabled))return y.addEventListener(ie,j),()=>y.removeEventListener(ie,j)},[k,e.onSelect,e.disabled]);function j(){var y,C;H(),(C=(y=p.current).onSelect)==null||C.call(y,v.current)}function H(){h.setState("value",v.current,!0)}if(!k)return null;let{disabled:N,value:K,onSelect:U,forceMount:ce,keywords:Y,...A}=e;return l.createElement(_.div,{ref:L.composeRefs(i,r),...A,id:a,"cmdk-item":"",role:"option","aria-disabled":!!N,"aria-selected":!!S,"data-disabled":!!N,"data-selected":!!S,onPointerMove:N||m.getDisablePointerSelection()?void 0:H,onClick:N?void 0:j},e.children)}),et=l.forwardRef((e,r)=>{let{heading:t,children:o,forceMount:a,...i}=e,s=O.useId(),m=l.useRef(null),p=l.useRef(null),c=O.useId(),v=z(),h=R(k=>a||v.filter()===!1?!0:k.search?k.filtered.groups.has(s):!0);$(()=>v.group(s),[]),je(s,m,[e.value,e.heading,p]);let S=l.useMemo(()=>({id:s,forceMount:a}),[a]);return l.createElement(_.div,{ref:L.composeRefs(m,r),...i,"cmdk-group":"",role:"presentation",hidden:h?void 0:!0},t&&l.createElement("div",{ref:p,"cmdk-group-heading":"","aria-hidden":!0,id:c},t),G(e,k=>l.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":t?c:void 0},l.createElement(Se.Provider,{value:S},k))))}),tt=l.forwardRef((e,r)=>{let{alwaysRender:t,...o}=e,a=l.useRef(null),i=R(s=>!s.search);return!t&&!i?null:l.createElement(_.div,{ref:L.composeRefs(a,r),...o,"cmdk-separator":"",role:"separator"})}),rt=l.forwardRef((e,r)=>{let{onValueChange:t,...o}=e,a=e.value!=null,i=ue(),s=R(c=>c.search),m=R(c=>c.selectedItemId),p=z();return l.useEffect(()=>{e.value!=null&&i.setState("search",e.value)},[e.value]),l.createElement(_.input,{ref:r,...o,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":p.listId,"aria-labelledby":p.labelId,"aria-activedescendant":m,id:p.inputId,type:"text",value:a?e.value:s,onChange:c=>{a||i.setState("search",c.target.value),t?.(c.target.value)}})}),nt=l.forwardRef((e,r)=>{let{children:t,label:o="Suggestions",...a}=e,i=l.useRef(null),s=l.useRef(null),m=R(c=>c.selectedItemId),p=z();return l.useEffect(()=>{if(s.current&&i.current){let c=s.current,v=i.current,h,S=new ResizeObserver(()=>{h=requestAnimationFrame(()=>{let k=c.offsetHeight;v.style.setProperty("--cmdk-list-height",k.toFixed(1)+"px")})});return S.observe(c),()=>{cancelAnimationFrame(h),S.unobserve(c)}}},[]),l.createElement(_.div,{ref:L.composeRefs(i,r),...a,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":m,"aria-label":o,id:p.listId},G(e,c=>l.createElement("div",{ref:L.composeRefs(s,p.listInnerRef),"cmdk-list-sizer":""},c)))}),lt=l.forwardRef((e,r)=>{let{open:t,onOpenChange:o,overlayClassName:a,contentClassName:i,container:s,...m}=e;return l.createElement(W.Root,{open:t,onOpenChange:o},l.createElement(W.Portal,{container:s},l.createElement(W.Overlay,{"cmdk-overlay":"",className:a}),l.createElement(W.Content,{"aria-label":e.label,"cmdk-dialog":"",className:i},l.createElement(Ie,{ref:r,...m}))))}),at=l.forwardRef((e,r)=>R(t=>t.filtered.count===0)?l.createElement(_.div,{ref:r,...e,"cmdk-empty":"",role:"presentation"}):null),ot=l.forwardRef((e,r)=>{let{progress:t,children:o,label:a="Loading...",...i}=e;return l.createElement(_.div,{ref:r,...i,"cmdk-loading":"",role:"progressbar","aria-valuenow":t,"aria-valuemin":0,"aria-valuemax":100,"aria-label":a},G(e,s=>l.createElement("div",{"aria-hidden":!0},s)))}),D=Object.assign(Ie,{List:nt,Item:Qe,Input:rt,Group:et,Separator:tt,Dialog:lt,Empty:at,Loading:ot});function it(e,r){let t=e.nextElementSibling;for(;t;){if(t.matches(r))return t;t=t.nextElementSibling}}function ut(e,r){let t=e.previousElementSibling;for(;t;){if(t.matches(r))return t;t=t.previousElementSibling}}function Re(e){let r=l.useRef(e);return $(()=>{r.current=e}),r}var $=typeof window>"u"?l.useEffect:l.useLayoutEffect;function q(e){let r=l.useRef();return r.current===void 0&&(r.current=e()),r}function R(e){let r=ue(),t=()=>e(r.snapshot());return l.useSyncExternalStore(r.subscribe,t,t)}function je(e,r,t,o=[]){let a=l.useRef(),i=z();return $(()=>{var s;let m=(()=>{var c;for(let v of t){if(typeof v=="string")return v.trim();if(typeof v=="object"&&"current"in v)return v.current?(c=v.current.textContent)==null?void 0:c.trim():a.current}})(),p=o.map(c=>c.trim());i.value(e,m,p),(s=r.current)==null||s.setAttribute(M,m),a.current=m}),a}var ct=()=>{let[e,r]=l.useState(),t=q(()=>new Map);return $(()=>{t.current.forEach(o=>o()),t.current=new Map},[e]),(o,a)=>{t.current.set(o,a),r({})}};function st(e){let r=e.type;return typeof r=="function"?r(e.props):"render"in r?r.render(e.props):e}function G({asChild:e,children:r},t){return e&&l.isValidElement(r)?l.cloneElement(st(r),{ref:r.ref},t(r.props.children)):t(r)}var dt={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};const _e=({className:e,...r})=>x.jsx(D,{"data-slot":"command",className:I.cn("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md",e),...r}),mt=({title:e="Command Palette",description:r="Search for a command to run...",children:t,className:o,...a})=>x.jsxs(re.DialogContent,{className:I.cn("overflow-hidden !p-0",o),...a,children:[x.jsx(re.DialogTitle,{className:"sr-only",children:e}),x.jsx(re.DialogDescription,{className:"sr-only",children:r}),x.jsx(_e,{className:I.cn("[&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium","[&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0","**:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12","[&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3","[&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5"),children:t})]}),ft=({className:e,placeholder:r="Search...",...t})=>x.jsxs("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[x.jsx($e.default,{className:"size-4 shrink-0 opacity-50"}),x.jsx(D.Input,{"data-slot":"command-input",placeholder:r,className:I.cn("placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",e),...t})]}),pt=({className:e,...r})=>x.jsx(D.List,{"data-slot":"command-list",className:I.cn("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",e),...r}),vt=({className:e,children:r="No results found",...t})=>x.jsxs(D.Empty,{"data-slot":"command-empty",className:I.cn("text-muted-foreground flex-center gap-2 py-6 text-center text-sm",e),...t,children:[x.jsx(Ae.default,{className:"size-4"}),r]}),gt=({className:e,...r})=>x.jsx(D.Group,{"data-slot":"command-group",className:I.cn("text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium",e),...r}),ht=({className:e,...r})=>x.jsx(D.Separator,{"data-slot":"command-separator",className:I.cn("bg-border -mx-1 h-px",e),...r}),bt=({className:e,...r})=>x.jsx(D.Item,{"data-slot":"command-item",className:I.cn("data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...r}),yt=({className:e,...r})=>x.jsx("span",{"data-slot":"command-shortcut",className:I.cn("text-muted-foreground ml-auto text-xs tracking-widest",e),...r});exports.Command=_e;exports.CommandDialogContent=mt;exports.CommandEmpty=vt;exports.CommandGroup=gt;exports.CommandInput=ft;exports.CommandItem=bt;exports.CommandList=pt;exports.CommandSeparator=ht;exports.CommandShortcut=yt;exports.P=R;exports.Re=ke;