// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0-or-later
// @source: https://gitlab.com/soapbox-pub/ditto/-/tree/f0a3877c
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{ci as t,qi as n}from"./lucide-icons-BdRF0moN.js";import{t as r}from"./jsx-runtime-By8HlURe.js";import{t as i}from"./utils-BFSTDHdM.js";import{n as a}from"./dist-BI-be9Ir.js";import{r as o}from"./dist-Bz2abD7M.js";import{t as s}from"./dist-BMrfXngQ.js";import{t as c}from"./dist-CxcvWxxD.js";import{t as l}from"./dist-CpRh64jj.js";import{t as u}from"./dist-BeEGgqo9.js";import{a as d,i as f,o as p,r as m}from"./dist-B6j_mgMi.js";import{t as h}from"./dist-B2RAV5d5.js";import{t as g}from"./dist-D7z3WTXi.js";var _=e(n(),1),v=r(),y=`Accordion`,b=[`Home`,`End`,`ArrowDown`,`ArrowUp`,`ArrowLeft`,`ArrowRight`],[x,S,C]=g(y),[w,ee]=o(y,[C,p]),T=p(),E=_.forwardRef((e,t)=>{let{type:n,...r}=e,i=r,a=r;return(0,v.jsx)(x.Provider,{scope:e.__scopeAccordion,children:n===`multiple`?(0,v.jsx)(M,{...a,ref:t}):(0,v.jsx)(j,{...i,ref:t})})});E.displayName=y;var[D,O]=w(y),[k,A]=w(y,{collapsible:!1}),j=_.forwardRef((e,t)=>{let{value:n,defaultValue:r,onValueChange:i=()=>{},collapsible:a=!1,...o}=e,[c,l]=s({prop:n,defaultProp:r??``,onChange:i,caller:y});return(0,v.jsx)(D,{scope:e.__scopeAccordion,value:_.useMemo(()=>c?[c]:[],[c]),onItemOpen:l,onItemClose:_.useCallback(()=>a&&l(``),[a,l]),children:(0,v.jsx)(k,{scope:e.__scopeAccordion,collapsible:a,children:(0,v.jsx)(F,{...o,ref:t})})})}),M=_.forwardRef((e,t)=>{let{value:n,defaultValue:r,onValueChange:i=()=>{},...a}=e,[o,c]=s({prop:n,defaultProp:r??[],onChange:i,caller:y}),l=_.useCallback(e=>c((t=[])=>[...t,e]),[c]),u=_.useCallback(e=>c((t=[])=>t.filter(t=>t!==e)),[c]);return(0,v.jsx)(D,{scope:e.__scopeAccordion,value:o,onItemOpen:l,onItemClose:u,children:(0,v.jsx)(k,{scope:e.__scopeAccordion,collapsible:!0,children:(0,v.jsx)(F,{...a,ref:t})})})}),[N,P]=w(y),F=_.forwardRef((e,t)=>{let{__scopeAccordion:n,disabled:r,dir:i,orientation:o=`vertical`,...s}=e,u=a(_.useRef(null),t),d=S(n),f=h(i)===`ltr`,p=c(e.onKeyDown,e=>{if(!b.includes(e.key))return;let t=e.target,n=d().filter(e=>!e.ref.current?.disabled),r=n.findIndex(e=>e.ref.current===t),i=n.length;if(r===-1)return;e.preventDefault();let a=r,s=i-1,c=()=>{a=r+1,a>s&&(a=0)},l=()=>{a=r-1,a<0&&(a=s)};switch(e.key){case`Home`:a=0;break;case`End`:a=s;break;case`ArrowRight`:o===`horizontal`&&(f?c():l());break;case`ArrowDown`:o===`vertical`&&c();break;case`ArrowLeft`:o===`horizontal`&&(f?l():c());break;case`ArrowUp`:o===`vertical`&&l();break}n[a%i].ref.current?.focus()});return(0,v.jsx)(N,{scope:n,disabled:r,direction:i,orientation:o,children:(0,v.jsx)(x.Slot,{scope:n,children:(0,v.jsx)(l.div,{...s,"data-orientation":o,ref:u,onKeyDown:r?void 0:p})})})}),I=`AccordionItem`,[L,R]=w(I),z=_.forwardRef((e,t)=>{let{__scopeAccordion:n,value:r,...i}=e,a=P(I,n),o=O(I,n),s=T(n),c=u(),l=r&&o.value.includes(r)||!1,d=a.disabled||e.disabled;return(0,v.jsx)(L,{scope:n,open:l,disabled:d,triggerId:c,children:(0,v.jsx)(f,{"data-orientation":a.orientation,"data-state":K(l),...s,...i,ref:t,disabled:d,open:l,onOpenChange:e=>{e?o.onItemOpen(r):o.onItemClose(r)}})})});z.displayName=I;var B=`AccordionHeader`,V=_.forwardRef((e,t)=>{let{__scopeAccordion:n,...r}=e,i=P(y,n),a=R(B,n);return(0,v.jsx)(l.h3,{"data-orientation":i.orientation,"data-state":K(a.open),"data-disabled":a.disabled?``:void 0,...r,ref:t})});V.displayName=B;var H=`AccordionTrigger`,U=_.forwardRef((e,t)=>{let{__scopeAccordion:n,...r}=e,i=P(y,n),a=R(H,n),o=A(H,n),s=T(n);return(0,v.jsx)(x.ItemSlot,{scope:n,children:(0,v.jsx)(d,{"aria-disabled":a.open&&!o.collapsible||void 0,"data-orientation":i.orientation,id:a.triggerId,...s,...r,ref:t})})});U.displayName=H;var W=`AccordionContent`,G=_.forwardRef((e,t)=>{let{__scopeAccordion:n,...r}=e,i=P(y,n),a=R(W,n),o=T(n);return(0,v.jsx)(m,{role:`region`,"aria-labelledby":a.triggerId,"data-orientation":i.orientation,...o,...r,ref:t,style:{"--radix-accordion-content-height":`var(--radix-collapsible-content-height)`,"--radix-accordion-content-width":`var(--radix-collapsible-content-width)`,...e.style}})});G.displayName=W;function K(e){return e?`open`:`closed`}var q=E,J=z,te=V,Y=U,X=G,ne=q,Z=_.forwardRef(({className:e,...t},n)=>(0,v.jsx)(J,{ref:n,className:i(`border-b`,e),...t}));Z.displayName=`AccordionItem`;var Q=_.forwardRef(({className:e,children:n,...r},a)=>(0,v.jsx)(te,{className:`flex`,children:(0,v.jsxs)(Y,{ref:a,className:i(`flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180`,e),...r,children:[n,(0,v.jsx)(t,{className:`h-4 w-4 shrink-0 transition-transform duration-200`})]})}));Q.displayName=Y.displayName;var $=_.forwardRef(({className:e,children:t,...n},r)=>(0,v.jsx)(X,{ref:r,className:`overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down`,...n,children:(0,v.jsx)(`div`,{className:i(`pb-4 pt-0`,e),children:t})}));$.displayName=X.displayName;export{Q as i,$ as n,Z as r,ne as t};
// @license-end
