ivt 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion/index.mjs +19 -1
- package/dist/accordion/index.mjs.map +1 -1
- package/dist/alert/index.mjs +43 -1
- package/dist/alert/index.mjs.map +1 -1
- package/dist/alert-dialog/index.mjs +260 -1
- package/dist/alert-dialog/index.mjs.map +1 -1
- package/dist/avatar/index.mjs +164 -1
- package/dist/avatar/index.mjs.map +1 -1
- package/dist/badge/index.mjs +6 -1
- package/dist/badge/index.mjs.map +1 -1
- package/dist/base/index.mjs +760 -1
- package/dist/base/index.mjs.map +1 -1
- package/dist/button/index.mjs +6 -1
- package/dist/button/index.mjs.map +1 -1
- package/dist/calendar/index.mjs +11 -1
- package/dist/calendar/index.mjs.map +1 -1
- package/dist/card/index.mjs +55 -1
- package/dist/card/index.mjs.map +1 -1
- package/dist/chart/index.mjs +17042 -1
- package/dist/chart/index.mjs.map +1 -1
- package/dist/checkbox/index.mjs +223 -1
- package/dist/checkbox/index.mjs.map +1 -1
- package/dist/chunks/_commonjsHelpers-DqEvkrE1.mjs +6 -0
- package/dist/chunks/_commonjsHelpers-DqEvkrE1.mjs.map +1 -0
- package/dist/chunks/accordion-BMP2PSSC.mjs +455 -0
- package/dist/chunks/{accordion-CdshDFZC.mjs.map → accordion-BMP2PSSC.mjs.map} +1 -1
- package/dist/chunks/badge-DxuZhgBF.mjs +57 -0
- package/dist/chunks/{badge-BYqshEmA.mjs.map → badge-DxuZhgBF.mjs.map} +1 -1
- package/dist/chunks/bundle-mjs-tFg__FnT.mjs +4491 -0
- package/dist/chunks/{bundle-mjs-9BXytT_r.mjs.map → bundle-mjs-tFg__FnT.mjs.map} +1 -1
- package/dist/chunks/button-CX0htulo.mjs +47 -0
- package/dist/chunks/{button-DrFZXJ7z.mjs.map → button-CX0htulo.mjs.map} +1 -1
- package/dist/chunks/calendar-B4IV5RyM.mjs +7106 -0
- package/dist/chunks/calendar-B4IV5RyM.mjs.map +1 -0
- package/dist/chunks/check-B7209s3e.mjs +15 -0
- package/dist/chunks/{check-CimnOyD7.mjs.map → check-B7209s3e.mjs.map} +1 -1
- package/dist/chunks/chevron-down-D84DRJBv.mjs +15 -0
- package/dist/chunks/{chevron-down-D3fvbjxE.mjs.map → chevron-down-D84DRJBv.mjs.map} +1 -1
- package/dist/chunks/chevron-left-DtL1t1DJ.mjs +15 -0
- package/dist/chunks/{chevron-left-CrN7DlXg.mjs.map → chevron-left-DtL1t1DJ.mjs.map} +1 -1
- package/dist/chunks/chevron-right-Cdxg1JSQ.mjs +15 -0
- package/dist/chunks/{chevron-right-BMSCuDGK.mjs.map → chevron-right-Cdxg1JSQ.mjs.map} +1 -1
- package/dist/chunks/chevrons-up-down-DtBUG1i8.mjs +22 -0
- package/dist/chunks/{chevrons-up-down-DBgvRkZm.mjs.map → chevrons-up-down-DtBUG1i8.mjs.map} +1 -1
- package/dist/chunks/circle-BLWMZ9yp.mjs +17 -0
- package/dist/chunks/{circle-CGqt18Bd.mjs.map → circle-BLWMZ9yp.mjs.map} +1 -1
- package/dist/chunks/command-C8cVzg-x.mjs +611 -0
- package/dist/chunks/command-C8cVzg-x.mjs.map +1 -0
- package/dist/chunks/createLucideIcon-Ba0IWqsz.mjs +60 -0
- package/dist/chunks/{createLucideIcon-L-tld2uc.mjs.map → createLucideIcon-Ba0IWqsz.mjs.map} +1 -1
- package/dist/chunks/dialog-D9vbxUuQ.mjs +80 -0
- package/dist/chunks/{dialog-36eqHzT3.mjs.map → dialog-D9vbxUuQ.mjs.map} +1 -1
- package/dist/chunks/hover-card-idvDPXrI.mjs +274 -0
- package/dist/chunks/{hover-card-Cnd58du6.mjs.map → hover-card-idvDPXrI.mjs.map} +1 -1
- package/dist/chunks/index-6JUj2Tld.mjs +18 -0
- package/dist/chunks/{index-CRxQlsb9.mjs.map → index-6JUj2Tld.mjs.map} +1 -1
- package/dist/chunks/index-B0IElWB4.mjs +51 -0
- package/dist/chunks/{index-vmPXTidH.mjs.map → index-B0IElWB4.mjs.map} +1 -1
- package/dist/chunks/index-B4VRyyD1.mjs +40 -0
- package/dist/chunks/index-B4VRyyD1.mjs.map +1 -0
- package/dist/chunks/index-BE-_q4IW.mjs +266 -0
- package/dist/chunks/index-BE-_q4IW.mjs.map +1 -0
- package/dist/chunks/index-BNxaLFA6.mjs +216 -0
- package/dist/chunks/{index-LvOFIVGz.mjs.map → index-BNxaLFA6.mjs.map} +1 -1
- package/dist/chunks/index-BZUrHhU8.mjs +7 -0
- package/dist/chunks/{index-CLtWFQL5.mjs.map → index-BZUrHhU8.mjs.map} +1 -1
- package/dist/chunks/index-B_FsTtnF.mjs +110 -0
- package/dist/chunks/{index-CCcl327A.mjs.map → index-B_FsTtnF.mjs.map} +1 -1
- package/dist/chunks/index-CAg47KJ6.mjs +13 -0
- package/dist/chunks/{index-CXszXOf_.mjs.map → index-CAg47KJ6.mjs.map} +1 -1
- package/dist/chunks/index-CXuEm8w1.mjs +12 -0
- package/dist/chunks/{index-CU_y1XAz.mjs.map → index-CXuEm8w1.mjs.map} +1 -1
- package/dist/chunks/index-C_jFwfR_.mjs +77 -0
- package/dist/chunks/{index-CybgQKpz.mjs.map → index-C_jFwfR_.mjs.map} +1 -1
- package/dist/chunks/index-CglX-DNW.mjs +21 -0
- package/dist/chunks/index-CglX-DNW.mjs.map +1 -0
- package/dist/chunks/index-CyMuypYR.mjs +324 -0
- package/dist/chunks/{index-DUNcuWJE.mjs.map → index-CyMuypYR.mjs.map} +1 -1
- package/dist/chunks/index-D0S6rRRE.mjs +50 -0
- package/dist/chunks/{index-w9bxia3O.mjs.map → index-D0S6rRRE.mjs.map} +1 -1
- package/dist/chunks/index-D23BhVQG.mjs +859 -0
- package/dist/chunks/{index-DZHMFdr0.mjs.map → index-D23BhVQG.mjs.map} +1 -1
- package/dist/chunks/index-D2wfJaZh.mjs +145 -0
- package/dist/chunks/index-D2wfJaZh.mjs.map +1 -0
- package/dist/chunks/index-DNvm9MP3.mjs +34 -0
- package/dist/chunks/{index-D2sZp5OP.mjs.map → index-DNvm9MP3.mjs.map} +1 -1
- package/dist/chunks/index-Dm4_czlz.mjs +12 -0
- package/dist/chunks/index-Dm4_czlz.mjs.map +1 -0
- package/dist/chunks/index-PaJVyocC.mjs +151 -0
- package/dist/chunks/index-PaJVyocC.mjs.map +1 -0
- package/dist/chunks/index-kr6_v_F8.mjs +2370 -0
- package/dist/chunks/index-kr6_v_F8.mjs.map +1 -0
- package/dist/chunks/index-sz_BcBbA.mjs +1210 -0
- package/dist/chunks/index-sz_BcBbA.mjs.map +1 -0
- package/dist/chunks/input-DK1slFF1.mjs +14 -0
- package/dist/chunks/{input-85UFztMJ.mjs.map → input-DK1slFF1.mjs.map} +1 -1
- package/dist/chunks/label-D7ONQdHc.mjs +32 -0
- package/dist/chunks/{label-CICFzZIt.mjs.map → label-D7ONQdHc.mjs.map} +1 -1
- package/dist/chunks/pagination-BM_IQ6Qk.mjs +106 -0
- package/dist/chunks/{pagination-CReDQes6.mjs.map → pagination-BM_IQ6Qk.mjs.map} +1 -1
- package/dist/chunks/popover-D3F326FR.mjs +308 -0
- package/dist/chunks/{popover-Cn2ZTvKd.mjs.map → popover-D3F326FR.mjs.map} +1 -1
- package/dist/chunks/progress-BCl5yD5Q.mjs +99 -0
- package/dist/chunks/{progress-CSxQH6-f.mjs.map → progress-BCl5yD5Q.mjs.map} +1 -1
- package/dist/chunks/scroll-area-DB3eUx8V.mjs +791 -0
- package/dist/chunks/scroll-area-DB3eUx8V.mjs.map +1 -0
- package/dist/chunks/select-Cw81y8pT.mjs +104 -0
- package/dist/chunks/{select-BR6_N_Yo.mjs.map → select-Cw81y8pT.mjs.map} +1 -1
- package/dist/chunks/separator-2k1C7RSn.mjs +48 -0
- package/dist/chunks/{separator-BB6-E9Z1.mjs.map → separator-2k1C7RSn.mjs.map} +1 -1
- package/dist/chunks/skeleton-qx8-vr62.mjs +13 -0
- package/dist/chunks/{skeleton-XPWWiaac.mjs.map → skeleton-qx8-vr62.mjs.map} +1 -1
- package/dist/chunks/sortable-D8ayoe_b.mjs +4221 -0
- package/dist/chunks/sortable-D8ayoe_b.mjs.map +1 -0
- package/dist/chunks/table-BDNUhtz-.mjs +62 -0
- package/dist/chunks/{table-LQIHzPHi.mjs.map → table-BDNUhtz-.mjs.map} +1 -1
- package/dist/chunks/toggle-CE2ycSdL.mjs +65 -0
- package/dist/chunks/{toggle-Co72WXGd.mjs.map → toggle-CE2ycSdL.mjs.map} +1 -1
- package/dist/chunks/tooltip-DLD0ycR4.mjs +596 -0
- package/dist/chunks/{tooltip-qX2HjdJP.mjs.map → tooltip-DLD0ycR4.mjs.map} +1 -1
- package/dist/chunks/tslib.es6-BgHLrbno.mjs +61 -0
- package/dist/chunks/{tslib.es6-cMGqxriw.mjs.map → tslib.es6-BgHLrbno.mjs.map} +1 -1
- package/dist/chunks/utils-BUelq9Ro.mjs +42 -0
- package/dist/chunks/utils-BUelq9Ro.mjs.map +1 -0
- package/dist/chunks/x-Bjz0Vo6R.mjs +22 -0
- package/dist/chunks/{x-BNLl0E-E.mjs.map → x-Bjz0Vo6R.mjs.map} +1 -1
- package/dist/combobox/index.mjs +65 -1
- package/dist/combobox/index.mjs.map +1 -1
- package/dist/command/index.mjs +23 -1
- package/dist/command/index.mjs.map +1 -1
- package/dist/data-table/index.mjs +673 -1
- package/dist/data-table/index.mjs.map +1 -1
- package/dist/dialog/index.mjs +22 -1
- package/dist/dialog/index.mjs.map +1 -1
- package/dist/dropdown-menu/index.mjs +438 -1
- package/dist/dropdown-menu/index.mjs.map +1 -1
- package/dist/dropzone/index.mjs +7839 -1
- package/dist/dropzone/index.mjs.map +1 -1
- package/dist/form/index.mjs +649 -1
- package/dist/form/index.mjs.map +1 -1
- package/dist/hover-card/index.mjs +18 -1
- package/dist/hover-card/index.mjs.map +1 -1
- package/dist/icon/index.mjs +317 -1
- package/dist/icon/index.mjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/input/index.mjs +4 -1
- package/dist/input/index.mjs.map +1 -1
- package/dist/ivt.css +1 -1
- package/dist/label/index.mjs +8 -1
- package/dist/label/index.mjs.map +1 -1
- package/dist/menubar/index.mjs +583 -1
- package/dist/menubar/index.mjs.map +1 -1
- package/dist/multi-select/index.mjs +297 -1
- package/dist/multi-select/index.mjs.map +1 -1
- package/dist/pagination/index.mjs +10 -1
- package/dist/pagination/index.mjs.map +1 -1
- package/dist/popover/index.mjs +21 -1
- package/dist/popover/index.mjs.map +1 -1
- package/dist/progress/index.mjs +9 -1
- package/dist/progress/index.mjs.map +1 -1
- package/dist/radio-group/index.mjs +267 -1
- package/dist/radio-group/index.mjs.map +1 -1
- package/dist/scroll-area/index.mjs +15 -1
- package/dist/scroll-area/index.mjs.map +1 -1
- package/dist/select/index.mjs +8 -1
- package/dist/select/index.mjs.map +1 -1
- package/dist/separator/index.mjs +8 -1
- package/dist/separator/index.mjs.map +1 -1
- package/dist/sheet/index.mjs +96 -1
- package/dist/sheet/index.mjs.map +1 -1
- package/dist/skeleton/index.mjs +4 -1
- package/dist/skeleton/index.mjs.map +1 -1
- package/dist/sonner/index.mjs +1140 -1
- package/dist/sonner/index.mjs.map +1 -1
- package/dist/sortable/index.mjs +8 -1
- package/dist/sortable/index.mjs.map +1 -1
- package/dist/table/index.mjs +4 -1
- package/dist/table/index.mjs.map +1 -1
- package/dist/tabs/index.mjs +193 -1
- package/dist/tabs/index.mjs.map +1 -1
- package/dist/textarea/index.mjs +13 -1
- package/dist/textarea/index.mjs.map +1 -1
- package/dist/toast/index.mjs +705 -1
- package/dist/toast/index.mjs.map +1 -1
- package/dist/toggle/index.mjs +12 -1
- package/dist/toggle/index.mjs.map +1 -1
- package/dist/toggle-group/index.mjs +219 -1
- package/dist/toggle-group/index.mjs.map +1 -1
- package/dist/tooltip/index.mjs +20 -1
- package/dist/tooltip/index.mjs.map +1 -1
- package/package.json +2 -2
- package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs +0 -2
- package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs.map +0 -1
- package/dist/chunks/accordion-CdshDFZC.mjs +0 -2
- package/dist/chunks/badge-BYqshEmA.mjs +0 -2
- package/dist/chunks/bundle-mjs-9BXytT_r.mjs +0 -2
- package/dist/chunks/button-DrFZXJ7z.mjs +0 -2
- package/dist/chunks/calendar-BY6t8wdJ.mjs +0 -2
- package/dist/chunks/calendar-BY6t8wdJ.mjs.map +0 -1
- package/dist/chunks/check-CimnOyD7.mjs +0 -2
- package/dist/chunks/chevron-down-D3fvbjxE.mjs +0 -2
- package/dist/chunks/chevron-left-CrN7DlXg.mjs +0 -2
- package/dist/chunks/chevron-right-BMSCuDGK.mjs +0 -2
- package/dist/chunks/chevrons-up-down-DBgvRkZm.mjs +0 -2
- package/dist/chunks/circle-CGqt18Bd.mjs +0 -2
- package/dist/chunks/command-C6ON-ciq.mjs +0 -2
- package/dist/chunks/command-C6ON-ciq.mjs.map +0 -1
- package/dist/chunks/createLucideIcon-L-tld2uc.mjs +0 -2
- package/dist/chunks/dialog-36eqHzT3.mjs +0 -2
- package/dist/chunks/hover-card-Cnd58du6.mjs +0 -2
- package/dist/chunks/index-B4QsDzeM.mjs +0 -2
- package/dist/chunks/index-B4QsDzeM.mjs.map +0 -1
- package/dist/chunks/index-BdpYc58_.mjs +0 -2
- package/dist/chunks/index-BdpYc58_.mjs.map +0 -1
- package/dist/chunks/index-CCcl327A.mjs +0 -2
- package/dist/chunks/index-CLtWFQL5.mjs +0 -2
- package/dist/chunks/index-COvW87ew.mjs +0 -2
- package/dist/chunks/index-COvW87ew.mjs.map +0 -1
- package/dist/chunks/index-CRxQlsb9.mjs +0 -2
- package/dist/chunks/index-CU_y1XAz.mjs +0 -2
- package/dist/chunks/index-CXszXOf_.mjs +0 -2
- package/dist/chunks/index-CdJCOoFA.mjs +0 -2
- package/dist/chunks/index-CdJCOoFA.mjs.map +0 -1
- package/dist/chunks/index-Cpq7N5Ej.mjs +0 -2
- package/dist/chunks/index-Cpq7N5Ej.mjs.map +0 -1
- package/dist/chunks/index-CybgQKpz.mjs +0 -2
- package/dist/chunks/index-D2sZp5OP.mjs +0 -2
- package/dist/chunks/index-DOyt-JEx.mjs +0 -2
- package/dist/chunks/index-DOyt-JEx.mjs.map +0 -1
- package/dist/chunks/index-DUNcuWJE.mjs +0 -2
- package/dist/chunks/index-DZHMFdr0.mjs +0 -2
- package/dist/chunks/index-LvOFIVGz.mjs +0 -2
- package/dist/chunks/index-lvPXnk5F.mjs +0 -2
- package/dist/chunks/index-lvPXnk5F.mjs.map +0 -1
- package/dist/chunks/index-vmPXTidH.mjs +0 -2
- package/dist/chunks/index-w9bxia3O.mjs +0 -2
- package/dist/chunks/index-xew3kygQ.mjs +0 -2
- package/dist/chunks/index-xew3kygQ.mjs.map +0 -1
- package/dist/chunks/input-85UFztMJ.mjs +0 -2
- package/dist/chunks/label-CICFzZIt.mjs +0 -2
- package/dist/chunks/pagination-CReDQes6.mjs +0 -2
- package/dist/chunks/popover-Cn2ZTvKd.mjs +0 -2
- package/dist/chunks/progress-CSxQH6-f.mjs +0 -2
- package/dist/chunks/scroll-area-CvCz7cL_.mjs +0 -2
- package/dist/chunks/scroll-area-CvCz7cL_.mjs.map +0 -1
- package/dist/chunks/select-BR6_N_Yo.mjs +0 -2
- package/dist/chunks/separator-BB6-E9Z1.mjs +0 -2
- package/dist/chunks/skeleton-XPWWiaac.mjs +0 -2
- package/dist/chunks/sortable-CqPFGn8Q.mjs +0 -2
- package/dist/chunks/sortable-CqPFGn8Q.mjs.map +0 -1
- package/dist/chunks/table-LQIHzPHi.mjs +0 -2
- package/dist/chunks/toggle-Co72WXGd.mjs +0 -2
- package/dist/chunks/tooltip-qX2HjdJP.mjs +0 -2
- package/dist/chunks/tslib.es6-cMGqxriw.mjs +0 -2
- package/dist/chunks/utils-BctauAA9.mjs +0 -2
- package/dist/chunks/utils-BctauAA9.mjs.map +0 -1
- package/dist/chunks/x-BNLl0E-E.mjs +0 -2
@@ -0,0 +1,455 @@
|
|
1
|
+
import { c as cn } from './utils-BUelq9Ro.mjs';
|
2
|
+
import * as React from 'react';
|
3
|
+
import React__default from 'react';
|
4
|
+
import { c as createContextScope } from './index-B_FsTtnF.mjs';
|
5
|
+
import { createCollection } from '@radix-ui/react-collection';
|
6
|
+
import { u as useComposedRefs } from './index-B4VRyyD1.mjs';
|
7
|
+
import { c as composeEventHandlers } from './index-Dm4_czlz.mjs';
|
8
|
+
import { u as useControllableState } from './index-C_jFwfR_.mjs';
|
9
|
+
import { P as Primitive } from './index-D0S6rRRE.mjs';
|
10
|
+
import { u as useLayoutEffect2 } from './index-BZUrHhU8.mjs';
|
11
|
+
import { P as Presence } from './index-D2wfJaZh.mjs';
|
12
|
+
import { u as useId } from './index-6JUj2Tld.mjs';
|
13
|
+
import { jsx } from 'react/jsx-runtime';
|
14
|
+
import { u as useDirection } from './index-CXuEm8w1.mjs';
|
15
|
+
import { C as ChevronDown } from './chevron-down-D84DRJBv.mjs';
|
16
|
+
|
17
|
+
var COLLAPSIBLE_NAME = "Collapsible";
|
18
|
+
var [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);
|
19
|
+
var [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);
|
20
|
+
var Collapsible = React.forwardRef((props, forwardedRef)=>{
|
21
|
+
const { __scopeCollapsible, open: openProp, defaultOpen, disabled, onOpenChange, ...collapsibleProps } = props;
|
22
|
+
const [open, setOpen] = useControllableState({
|
23
|
+
prop: openProp,
|
24
|
+
defaultProp: defaultOpen ?? false,
|
25
|
+
onChange: onOpenChange,
|
26
|
+
caller: COLLAPSIBLE_NAME
|
27
|
+
});
|
28
|
+
return /* @__PURE__ */ jsx(CollapsibleProvider, {
|
29
|
+
scope: __scopeCollapsible,
|
30
|
+
disabled,
|
31
|
+
contentId: useId(),
|
32
|
+
open,
|
33
|
+
onOpenToggle: React.useCallback(()=>setOpen((prevOpen)=>!prevOpen), [
|
34
|
+
setOpen
|
35
|
+
]),
|
36
|
+
children: /* @__PURE__ */ jsx(Primitive.div, {
|
37
|
+
"data-state": getState$1(open),
|
38
|
+
"data-disabled": disabled ? "" : void 0,
|
39
|
+
...collapsibleProps,
|
40
|
+
ref: forwardedRef
|
41
|
+
})
|
42
|
+
});
|
43
|
+
});
|
44
|
+
Collapsible.displayName = COLLAPSIBLE_NAME;
|
45
|
+
var TRIGGER_NAME$1 = "CollapsibleTrigger";
|
46
|
+
var CollapsibleTrigger = React.forwardRef((props, forwardedRef)=>{
|
47
|
+
const { __scopeCollapsible, ...triggerProps } = props;
|
48
|
+
const context = useCollapsibleContext(TRIGGER_NAME$1, __scopeCollapsible);
|
49
|
+
return /* @__PURE__ */ jsx(Primitive.button, {
|
50
|
+
type: "button",
|
51
|
+
"aria-controls": context.contentId,
|
52
|
+
"aria-expanded": context.open || false,
|
53
|
+
"data-state": getState$1(context.open),
|
54
|
+
"data-disabled": context.disabled ? "" : void 0,
|
55
|
+
disabled: context.disabled,
|
56
|
+
...triggerProps,
|
57
|
+
ref: forwardedRef,
|
58
|
+
onClick: composeEventHandlers(props.onClick, context.onOpenToggle)
|
59
|
+
});
|
60
|
+
});
|
61
|
+
CollapsibleTrigger.displayName = TRIGGER_NAME$1;
|
62
|
+
var CONTENT_NAME$1 = "CollapsibleContent";
|
63
|
+
var CollapsibleContent = React.forwardRef((props, forwardedRef)=>{
|
64
|
+
const { forceMount, ...contentProps } = props;
|
65
|
+
const context = useCollapsibleContext(CONTENT_NAME$1, props.__scopeCollapsible);
|
66
|
+
return /* @__PURE__ */ jsx(Presence, {
|
67
|
+
present: forceMount || context.open,
|
68
|
+
children: ({ present })=>/* @__PURE__ */ jsx(CollapsibleContentImpl, {
|
69
|
+
...contentProps,
|
70
|
+
ref: forwardedRef,
|
71
|
+
present
|
72
|
+
})
|
73
|
+
});
|
74
|
+
});
|
75
|
+
CollapsibleContent.displayName = CONTENT_NAME$1;
|
76
|
+
var CollapsibleContentImpl = React.forwardRef((props, forwardedRef)=>{
|
77
|
+
const { __scopeCollapsible, present, children, ...contentProps } = props;
|
78
|
+
const context = useCollapsibleContext(CONTENT_NAME$1, __scopeCollapsible);
|
79
|
+
const [isPresent, setIsPresent] = React.useState(present);
|
80
|
+
const ref = React.useRef(null);
|
81
|
+
const composedRefs = useComposedRefs(forwardedRef, ref);
|
82
|
+
const heightRef = React.useRef(0);
|
83
|
+
const height = heightRef.current;
|
84
|
+
const widthRef = React.useRef(0);
|
85
|
+
const width = widthRef.current;
|
86
|
+
const isOpen = context.open || isPresent;
|
87
|
+
const isMountAnimationPreventedRef = React.useRef(isOpen);
|
88
|
+
const originalStylesRef = React.useRef(void 0);
|
89
|
+
React.useEffect(()=>{
|
90
|
+
const rAF = requestAnimationFrame(()=>isMountAnimationPreventedRef.current = false);
|
91
|
+
return ()=>cancelAnimationFrame(rAF);
|
92
|
+
}, []);
|
93
|
+
useLayoutEffect2(()=>{
|
94
|
+
const node = ref.current;
|
95
|
+
if (node) {
|
96
|
+
originalStylesRef.current = originalStylesRef.current || {
|
97
|
+
transitionDuration: node.style.transitionDuration,
|
98
|
+
animationName: node.style.animationName
|
99
|
+
};
|
100
|
+
node.style.transitionDuration = "0s";
|
101
|
+
node.style.animationName = "none";
|
102
|
+
const rect = node.getBoundingClientRect();
|
103
|
+
heightRef.current = rect.height;
|
104
|
+
widthRef.current = rect.width;
|
105
|
+
if (!isMountAnimationPreventedRef.current) {
|
106
|
+
node.style.transitionDuration = originalStylesRef.current.transitionDuration;
|
107
|
+
node.style.animationName = originalStylesRef.current.animationName;
|
108
|
+
}
|
109
|
+
setIsPresent(present);
|
110
|
+
}
|
111
|
+
}, [
|
112
|
+
context.open,
|
113
|
+
present
|
114
|
+
]);
|
115
|
+
return /* @__PURE__ */ jsx(Primitive.div, {
|
116
|
+
"data-state": getState$1(context.open),
|
117
|
+
"data-disabled": context.disabled ? "" : void 0,
|
118
|
+
id: context.contentId,
|
119
|
+
hidden: !isOpen,
|
120
|
+
...contentProps,
|
121
|
+
ref: composedRefs,
|
122
|
+
style: {
|
123
|
+
[`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,
|
124
|
+
[`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,
|
125
|
+
...props.style
|
126
|
+
},
|
127
|
+
children: isOpen && children
|
128
|
+
});
|
129
|
+
});
|
130
|
+
function getState$1(open) {
|
131
|
+
return open ? "open" : "closed";
|
132
|
+
}
|
133
|
+
var Root = Collapsible;
|
134
|
+
var Trigger = CollapsibleTrigger;
|
135
|
+
var Content = CollapsibleContent;
|
136
|
+
|
137
|
+
var ACCORDION_NAME = "Accordion";
|
138
|
+
var ACCORDION_KEYS = [
|
139
|
+
"Home",
|
140
|
+
"End",
|
141
|
+
"ArrowDown",
|
142
|
+
"ArrowUp",
|
143
|
+
"ArrowLeft",
|
144
|
+
"ArrowRight"
|
145
|
+
];
|
146
|
+
var [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);
|
147
|
+
var [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [
|
148
|
+
createCollectionScope,
|
149
|
+
createCollapsibleScope
|
150
|
+
]);
|
151
|
+
var useCollapsibleScope = createCollapsibleScope();
|
152
|
+
var Accordion$1 = React__default.forwardRef((props, forwardedRef)=>{
|
153
|
+
const { type, ...accordionProps } = props;
|
154
|
+
const singleProps = accordionProps;
|
155
|
+
const multipleProps = accordionProps;
|
156
|
+
return /* @__PURE__ */ jsx(Collection.Provider, {
|
157
|
+
scope: props.__scopeAccordion,
|
158
|
+
children: type === "multiple" ? /* @__PURE__ */ jsx(AccordionImplMultiple, {
|
159
|
+
...multipleProps,
|
160
|
+
ref: forwardedRef
|
161
|
+
}) : /* @__PURE__ */ jsx(AccordionImplSingle, {
|
162
|
+
...singleProps,
|
163
|
+
ref: forwardedRef
|
164
|
+
})
|
165
|
+
});
|
166
|
+
});
|
167
|
+
Accordion$1.displayName = ACCORDION_NAME;
|
168
|
+
var [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);
|
169
|
+
var [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(ACCORDION_NAME, {
|
170
|
+
collapsible: false
|
171
|
+
});
|
172
|
+
var AccordionImplSingle = React__default.forwardRef((props, forwardedRef)=>{
|
173
|
+
const { value: valueProp, defaultValue, onValueChange = ()=>{}, collapsible = false, ...accordionSingleProps } = props;
|
174
|
+
const [value, setValue] = useControllableState({
|
175
|
+
prop: valueProp,
|
176
|
+
defaultProp: defaultValue ?? "",
|
177
|
+
onChange: onValueChange,
|
178
|
+
caller: ACCORDION_NAME
|
179
|
+
});
|
180
|
+
return /* @__PURE__ */ jsx(AccordionValueProvider, {
|
181
|
+
scope: props.__scopeAccordion,
|
182
|
+
value: React__default.useMemo(()=>value ? [
|
183
|
+
value
|
184
|
+
] : [], [
|
185
|
+
value
|
186
|
+
]),
|
187
|
+
onItemOpen: setValue,
|
188
|
+
onItemClose: React__default.useCallback(()=>collapsible && setValue(""), [
|
189
|
+
collapsible,
|
190
|
+
setValue
|
191
|
+
]),
|
192
|
+
children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, {
|
193
|
+
scope: props.__scopeAccordion,
|
194
|
+
collapsible,
|
195
|
+
children: /* @__PURE__ */ jsx(AccordionImpl, {
|
196
|
+
...accordionSingleProps,
|
197
|
+
ref: forwardedRef
|
198
|
+
})
|
199
|
+
})
|
200
|
+
});
|
201
|
+
});
|
202
|
+
var AccordionImplMultiple = React__default.forwardRef((props, forwardedRef)=>{
|
203
|
+
const { value: valueProp, defaultValue, onValueChange = ()=>{}, ...accordionMultipleProps } = props;
|
204
|
+
const [value, setValue] = useControllableState({
|
205
|
+
prop: valueProp,
|
206
|
+
defaultProp: defaultValue ?? [],
|
207
|
+
onChange: onValueChange,
|
208
|
+
caller: ACCORDION_NAME
|
209
|
+
});
|
210
|
+
const handleItemOpen = React__default.useCallback((itemValue)=>setValue((prevValue = [])=>[
|
211
|
+
...prevValue,
|
212
|
+
itemValue
|
213
|
+
]), [
|
214
|
+
setValue
|
215
|
+
]);
|
216
|
+
const handleItemClose = React__default.useCallback((itemValue)=>setValue((prevValue = [])=>prevValue.filter((value2)=>value2 !== itemValue)), [
|
217
|
+
setValue
|
218
|
+
]);
|
219
|
+
return /* @__PURE__ */ jsx(AccordionValueProvider, {
|
220
|
+
scope: props.__scopeAccordion,
|
221
|
+
value,
|
222
|
+
onItemOpen: handleItemOpen,
|
223
|
+
onItemClose: handleItemClose,
|
224
|
+
children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, {
|
225
|
+
scope: props.__scopeAccordion,
|
226
|
+
collapsible: true,
|
227
|
+
children: /* @__PURE__ */ jsx(AccordionImpl, {
|
228
|
+
...accordionMultipleProps,
|
229
|
+
ref: forwardedRef
|
230
|
+
})
|
231
|
+
})
|
232
|
+
});
|
233
|
+
});
|
234
|
+
var [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);
|
235
|
+
var AccordionImpl = React__default.forwardRef((props, forwardedRef)=>{
|
236
|
+
const { __scopeAccordion, disabled, dir, orientation = "vertical", ...accordionProps } = props;
|
237
|
+
const accordionRef = React__default.useRef(null);
|
238
|
+
const composedRefs = useComposedRefs(accordionRef, forwardedRef);
|
239
|
+
const getItems = useCollection(__scopeAccordion);
|
240
|
+
const direction = useDirection(dir);
|
241
|
+
const isDirectionLTR = direction === "ltr";
|
242
|
+
const handleKeyDown = composeEventHandlers(props.onKeyDown, (event)=>{
|
243
|
+
if (!ACCORDION_KEYS.includes(event.key)) return;
|
244
|
+
const target = event.target;
|
245
|
+
const triggerCollection = getItems().filter((item)=>!item.ref.current?.disabled);
|
246
|
+
const triggerIndex = triggerCollection.findIndex((item)=>item.ref.current === target);
|
247
|
+
const triggerCount = triggerCollection.length;
|
248
|
+
if (triggerIndex === -1) return;
|
249
|
+
event.preventDefault();
|
250
|
+
let nextIndex = triggerIndex;
|
251
|
+
const homeIndex = 0;
|
252
|
+
const endIndex = triggerCount - 1;
|
253
|
+
const moveNext = ()=>{
|
254
|
+
nextIndex = triggerIndex + 1;
|
255
|
+
if (nextIndex > endIndex) {
|
256
|
+
nextIndex = homeIndex;
|
257
|
+
}
|
258
|
+
};
|
259
|
+
const movePrev = ()=>{
|
260
|
+
nextIndex = triggerIndex - 1;
|
261
|
+
if (nextIndex < homeIndex) {
|
262
|
+
nextIndex = endIndex;
|
263
|
+
}
|
264
|
+
};
|
265
|
+
switch(event.key){
|
266
|
+
case "Home":
|
267
|
+
nextIndex = homeIndex;
|
268
|
+
break;
|
269
|
+
case "End":
|
270
|
+
nextIndex = endIndex;
|
271
|
+
break;
|
272
|
+
case "ArrowRight":
|
273
|
+
if (orientation === "horizontal") {
|
274
|
+
if (isDirectionLTR) {
|
275
|
+
moveNext();
|
276
|
+
} else {
|
277
|
+
movePrev();
|
278
|
+
}
|
279
|
+
}
|
280
|
+
break;
|
281
|
+
case "ArrowDown":
|
282
|
+
if (orientation === "vertical") {
|
283
|
+
moveNext();
|
284
|
+
}
|
285
|
+
break;
|
286
|
+
case "ArrowLeft":
|
287
|
+
if (orientation === "horizontal") {
|
288
|
+
if (isDirectionLTR) {
|
289
|
+
movePrev();
|
290
|
+
} else {
|
291
|
+
moveNext();
|
292
|
+
}
|
293
|
+
}
|
294
|
+
break;
|
295
|
+
case "ArrowUp":
|
296
|
+
if (orientation === "vertical") {
|
297
|
+
movePrev();
|
298
|
+
}
|
299
|
+
break;
|
300
|
+
}
|
301
|
+
const clampedIndex = nextIndex % triggerCount;
|
302
|
+
triggerCollection[clampedIndex].ref.current?.focus();
|
303
|
+
});
|
304
|
+
return /* @__PURE__ */ jsx(AccordionImplProvider, {
|
305
|
+
scope: __scopeAccordion,
|
306
|
+
disabled,
|
307
|
+
direction: dir,
|
308
|
+
orientation,
|
309
|
+
children: /* @__PURE__ */ jsx(Collection.Slot, {
|
310
|
+
scope: __scopeAccordion,
|
311
|
+
children: /* @__PURE__ */ jsx(Primitive.div, {
|
312
|
+
...accordionProps,
|
313
|
+
"data-orientation": orientation,
|
314
|
+
ref: composedRefs,
|
315
|
+
onKeyDown: disabled ? void 0 : handleKeyDown
|
316
|
+
})
|
317
|
+
})
|
318
|
+
});
|
319
|
+
});
|
320
|
+
var ITEM_NAME = "AccordionItem";
|
321
|
+
var [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);
|
322
|
+
var AccordionItem$1 = React__default.forwardRef((props, forwardedRef)=>{
|
323
|
+
const { __scopeAccordion, value, ...accordionItemProps } = props;
|
324
|
+
const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);
|
325
|
+
const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);
|
326
|
+
const collapsibleScope = useCollapsibleScope(__scopeAccordion);
|
327
|
+
const triggerId = useId();
|
328
|
+
const open = value && valueContext.value.includes(value) || false;
|
329
|
+
const disabled = accordionContext.disabled || props.disabled;
|
330
|
+
return /* @__PURE__ */ jsx(AccordionItemProvider, {
|
331
|
+
scope: __scopeAccordion,
|
332
|
+
open,
|
333
|
+
disabled,
|
334
|
+
triggerId,
|
335
|
+
children: /* @__PURE__ */ jsx(Root, {
|
336
|
+
"data-orientation": accordionContext.orientation,
|
337
|
+
"data-state": getState(open),
|
338
|
+
...collapsibleScope,
|
339
|
+
...accordionItemProps,
|
340
|
+
ref: forwardedRef,
|
341
|
+
disabled,
|
342
|
+
open,
|
343
|
+
onOpenChange: (open2)=>{
|
344
|
+
if (open2) {
|
345
|
+
valueContext.onItemOpen(value);
|
346
|
+
} else {
|
347
|
+
valueContext.onItemClose(value);
|
348
|
+
}
|
349
|
+
}
|
350
|
+
})
|
351
|
+
});
|
352
|
+
});
|
353
|
+
AccordionItem$1.displayName = ITEM_NAME;
|
354
|
+
var HEADER_NAME = "AccordionHeader";
|
355
|
+
var AccordionHeader = React__default.forwardRef((props, forwardedRef)=>{
|
356
|
+
const { __scopeAccordion, ...headerProps } = props;
|
357
|
+
const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
|
358
|
+
const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);
|
359
|
+
return /* @__PURE__ */ jsx(Primitive.h3, {
|
360
|
+
"data-orientation": accordionContext.orientation,
|
361
|
+
"data-state": getState(itemContext.open),
|
362
|
+
"data-disabled": itemContext.disabled ? "" : void 0,
|
363
|
+
...headerProps,
|
364
|
+
ref: forwardedRef
|
365
|
+
});
|
366
|
+
});
|
367
|
+
AccordionHeader.displayName = HEADER_NAME;
|
368
|
+
var TRIGGER_NAME = "AccordionTrigger";
|
369
|
+
var AccordionTrigger$1 = React__default.forwardRef((props, forwardedRef)=>{
|
370
|
+
const { __scopeAccordion, ...triggerProps } = props;
|
371
|
+
const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
|
372
|
+
const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);
|
373
|
+
const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);
|
374
|
+
const collapsibleScope = useCollapsibleScope(__scopeAccordion);
|
375
|
+
return /* @__PURE__ */ jsx(Collection.ItemSlot, {
|
376
|
+
scope: __scopeAccordion,
|
377
|
+
children: /* @__PURE__ */ jsx(Trigger, {
|
378
|
+
"aria-disabled": itemContext.open && !collapsibleContext.collapsible || void 0,
|
379
|
+
"data-orientation": accordionContext.orientation,
|
380
|
+
id: itemContext.triggerId,
|
381
|
+
...collapsibleScope,
|
382
|
+
...triggerProps,
|
383
|
+
ref: forwardedRef
|
384
|
+
})
|
385
|
+
});
|
386
|
+
});
|
387
|
+
AccordionTrigger$1.displayName = TRIGGER_NAME;
|
388
|
+
var CONTENT_NAME = "AccordionContent";
|
389
|
+
var AccordionContent$1 = React__default.forwardRef((props, forwardedRef)=>{
|
390
|
+
const { __scopeAccordion, ...contentProps } = props;
|
391
|
+
const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
|
392
|
+
const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);
|
393
|
+
const collapsibleScope = useCollapsibleScope(__scopeAccordion);
|
394
|
+
return /* @__PURE__ */ jsx(Content, {
|
395
|
+
role: "region",
|
396
|
+
"aria-labelledby": itemContext.triggerId,
|
397
|
+
"data-orientation": accordionContext.orientation,
|
398
|
+
...collapsibleScope,
|
399
|
+
...contentProps,
|
400
|
+
ref: forwardedRef,
|
401
|
+
style: {
|
402
|
+
["--radix-accordion-content-height"]: "var(--radix-collapsible-content-height)",
|
403
|
+
["--radix-accordion-content-width"]: "var(--radix-collapsible-content-width)",
|
404
|
+
...props.style
|
405
|
+
}
|
406
|
+
});
|
407
|
+
});
|
408
|
+
AccordionContent$1.displayName = CONTENT_NAME;
|
409
|
+
function getState(open) {
|
410
|
+
return open ? "open" : "closed";
|
411
|
+
}
|
412
|
+
var Root2 = Accordion$1;
|
413
|
+
var Item = AccordionItem$1;
|
414
|
+
var Header = AccordionHeader;
|
415
|
+
var Trigger2 = AccordionTrigger$1;
|
416
|
+
var Content2 = AccordionContent$1;
|
417
|
+
|
418
|
+
function Accordion({ ...props }) {
|
419
|
+
return /*#__PURE__*/ React__default.createElement(Root2, {
|
420
|
+
"data-slot": "accordion",
|
421
|
+
...props
|
422
|
+
});
|
423
|
+
}
|
424
|
+
function AccordionItem({ className, ...props }) {
|
425
|
+
return /*#__PURE__*/ React__default.createElement(Item, {
|
426
|
+
"data-slot": "accordion-item",
|
427
|
+
className: cn("border-b last:border-b-0", className),
|
428
|
+
...props
|
429
|
+
});
|
430
|
+
}
|
431
|
+
function AccordionTrigger({ className, children, iconPosition, iconSize = "size-4", ...props }) {
|
432
|
+
return /*#__PURE__*/ React__default.createElement(Header, {
|
433
|
+
className: "flex"
|
434
|
+
}, /*#__PURE__*/ React__default.createElement(Trigger2, {
|
435
|
+
"data-slot": "accordion-trigger",
|
436
|
+
className: cn("flex flex-1 cursor-pointer items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180", className),
|
437
|
+
...props
|
438
|
+
}, iconPosition === "left" ? /*#__PURE__*/ React__default.createElement(ChevronDown, {
|
439
|
+
className: cn(iconSize, "shrink-0 transition-transform duration-200")
|
440
|
+
}) : null, children, iconPosition !== "left" ? /*#__PURE__*/ React__default.createElement(ChevronDown, {
|
441
|
+
className: cn(iconSize, "shrink-0 transition-transform duration-200")
|
442
|
+
}) : null));
|
443
|
+
}
|
444
|
+
function AccordionContent({ className, children, ...props }) {
|
445
|
+
return /*#__PURE__*/ React__default.createElement(Content2, {
|
446
|
+
"data-slot": "accordion-content",
|
447
|
+
className: "data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",
|
448
|
+
...props
|
449
|
+
}, /*#__PURE__*/ React__default.createElement("div", {
|
450
|
+
className: cn("pt-0 pb-4", className)
|
451
|
+
}, children));
|
452
|
+
}
|
453
|
+
|
454
|
+
export { Accordion as A, AccordionItem as a, AccordionTrigger as b, AccordionContent as c };
|
455
|
+
//# sourceMappingURL=accordion-BMP2PSSC.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"accordion-CdshDFZC.mjs","sources":["../../node_modules/@radix-ui/react-collapsible/dist/index.mjs","../../node_modules/@radix-ui/react-accordion/dist/index.mjs","../../src/components/ui/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\n// src/collapsible.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar COLLAPSIBLE_NAME = \"Collapsible\";\nvar [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\nvar [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);\nvar Collapsible = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: COLLAPSIBLE_NAME\n });\n return /* @__PURE__ */ jsx(\n CollapsibleProvider,\n {\n scope: __scopeCollapsible,\n disabled,\n contentId: useId(),\n open,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(open),\n \"data-disabled\": disabled ? \"\" : void 0,\n ...collapsibleProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nCollapsible.displayName = COLLAPSIBLE_NAME;\nvar TRIGGER_NAME = \"CollapsibleTrigger\";\nvar CollapsibleTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open || false,\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n disabled: context.disabled,\n ...triggerProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nCollapsibleTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"CollapsibleContent\";\nvar CollapsibleContent = React.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });\n }\n);\nCollapsibleContent.displayName = CONTENT_NAME;\nvar CollapsibleContentImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef(0);\n const height = heightRef.current;\n const widthRef = React.useRef(0);\n const width = widthRef.current;\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef(void 0);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName\n };\n node.style.transitionDuration = \"0s\";\n node.style.animationName = \"none\";\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration;\n node.style.animationName = originalStylesRef.current.animationName;\n }\n setIsPresent(present);\n }\n }, [context.open, present]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n id: context.contentId,\n hidden: !isOpen,\n ...contentProps,\n ref: composedRefs,\n style: {\n [`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,\n [`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,\n ...props.style\n },\n children: isOpen && children\n }\n );\n});\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root = Collapsible;\nvar Trigger = CollapsibleTrigger;\nvar Content = CollapsibleContent;\nexport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n Content,\n Root,\n Trigger,\n createCollapsibleScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/accordion.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { createCollapsibleScope } from \"@radix-ui/react-collapsible\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ACCORDION_NAME = \"Accordion\";\nvar ACCORDION_KEYS = [\"Home\", \"End\", \"ArrowDown\", \"ArrowUp\", \"ArrowLeft\", \"ArrowRight\"];\nvar [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);\nvar [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n createCollectionScope,\n createCollapsibleScope\n]);\nvar useCollapsibleScope = createCollapsibleScope();\nvar Accordion = React.forwardRef(\n (props, forwardedRef) => {\n const { type, ...accordionProps } = props;\n const singleProps = accordionProps;\n const multipleProps = accordionProps;\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === \"multiple\" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });\n }\n);\nAccordion.displayName = ACCORDION_NAME;\nvar [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);\nvar [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n ACCORDION_NAME,\n { collapsible: false }\n);\nvar AccordionImplSingle = React.forwardRef(\n (props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n collapsible = false,\n ...accordionSingleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? \"\",\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value: React.useMemo(() => value ? [value] : [], [value]),\n onItemOpen: setValue,\n onItemClose: React.useCallback(() => collapsible && setValue(\"\"), [collapsible, setValue]),\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })\n }\n );\n }\n);\nvar AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n ...accordionMultipleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? [],\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n const handleItemOpen = React.useCallback(\n (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n const handleItemClose = React.useCallback(\n (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),\n [setValue]\n );\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value,\n onItemOpen: handleItemOpen,\n onItemClose: handleItemClose,\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })\n }\n );\n});\nvar [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);\nvar AccordionImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, disabled, dir, orientation = \"vertical\", ...accordionProps } = props;\n const accordionRef = React.useRef(null);\n const composedRefs = useComposedRefs(accordionRef, forwardedRef);\n const getItems = useCollection(__scopeAccordion);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const handleKeyDown = composeEventHandlers(props.onKeyDown, (event) => {\n if (!ACCORDION_KEYS.includes(event.key)) return;\n const target = event.target;\n const triggerCollection = getItems().filter((item) => !item.ref.current?.disabled);\n const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target);\n const triggerCount = triggerCollection.length;\n if (triggerIndex === -1) return;\n event.preventDefault();\n let nextIndex = triggerIndex;\n const homeIndex = 0;\n const endIndex = triggerCount - 1;\n const moveNext = () => {\n nextIndex = triggerIndex + 1;\n if (nextIndex > endIndex) {\n nextIndex = homeIndex;\n }\n };\n const movePrev = () => {\n nextIndex = triggerIndex - 1;\n if (nextIndex < homeIndex) {\n nextIndex = endIndex;\n }\n };\n switch (event.key) {\n case \"Home\":\n nextIndex = homeIndex;\n break;\n case \"End\":\n nextIndex = endIndex;\n break;\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n moveNext();\n } else {\n movePrev();\n }\n }\n break;\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n moveNext();\n }\n break;\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n movePrev();\n } else {\n moveNext();\n }\n }\n break;\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n movePrev();\n }\n break;\n }\n const clampedIndex = nextIndex % triggerCount;\n triggerCollection[clampedIndex].ref.current?.focus();\n });\n return /* @__PURE__ */ jsx(\n AccordionImplProvider,\n {\n scope: __scopeAccordion,\n disabled,\n direction: dir,\n orientation,\n children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...accordionProps,\n \"data-orientation\": orientation,\n ref: composedRefs,\n onKeyDown: disabled ? void 0 : handleKeyDown\n }\n ) })\n }\n );\n }\n);\nvar ITEM_NAME = \"AccordionItem\";\nvar [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);\nvar AccordionItem = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, value, ...accordionItemProps } = props;\n const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);\n const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n const triggerId = useId();\n const open = value && valueContext.value.includes(value) || false;\n const disabled = accordionContext.disabled || props.disabled;\n return /* @__PURE__ */ jsx(\n AccordionItemProvider,\n {\n scope: __scopeAccordion,\n open,\n disabled,\n triggerId,\n children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Root,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(open),\n ...collapsibleScope,\n ...accordionItemProps,\n ref: forwardedRef,\n disabled,\n open,\n onOpenChange: (open2) => {\n if (open2) {\n valueContext.onItemOpen(value);\n } else {\n valueContext.onItemClose(value);\n }\n }\n }\n )\n }\n );\n }\n);\nAccordionItem.displayName = ITEM_NAME;\nvar HEADER_NAME = \"AccordionHeader\";\nvar AccordionHeader = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...headerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);\n return /* @__PURE__ */ jsx(\n Primitive.h3,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(itemContext.open),\n \"data-disabled\": itemContext.disabled ? \"\" : void 0,\n ...headerProps,\n ref: forwardedRef\n }\n );\n }\n);\nAccordionHeader.displayName = HEADER_NAME;\nvar TRIGGER_NAME = \"AccordionTrigger\";\nvar AccordionTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...triggerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Trigger,\n {\n \"aria-disabled\": itemContext.open && !collapsibleContext.collapsible || void 0,\n \"data-orientation\": accordionContext.orientation,\n id: itemContext.triggerId,\n ...collapsibleScope,\n ...triggerProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nAccordionTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"AccordionContent\";\nvar AccordionContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...contentProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Content,\n {\n role: \"region\",\n \"aria-labelledby\": itemContext.triggerId,\n \"data-orientation\": accordionContext.orientation,\n ...collapsibleScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n [\"--radix-accordion-content-height\"]: \"var(--radix-collapsible-content-height)\",\n [\"--radix-accordion-content-width\"]: \"var(--radix-collapsible-content-width)\",\n ...props.style\n }\n }\n );\n }\n);\nAccordionContent.displayName = CONTENT_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Accordion;\nvar Item = AccordionItem;\nvar Header = AccordionHeader;\nvar Trigger2 = AccordionTrigger;\nvar Content2 = AccordionContent;\nexport {\n Accordion,\n AccordionContent,\n AccordionHeader,\n AccordionItem,\n AccordionTrigger,\n Content2 as Content,\n Header,\n Item,\n Root2 as Root,\n Trigger2 as Trigger,\n createAccordionScope\n};\n//# sourceMappingURL=index.mjs.map\n","import { cn } from \"@/lib/utils\";\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport React from \"react\";\n\nfunction Accordion({ ...props }: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n\treturn <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\nfunction AccordionItem({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n\treturn (\n\t\t<AccordionPrimitive.Item\n\t\t\tdata-slot=\"accordion-item\"\n\t\t\tclassName={cn(\"border-b last:border-b-0\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction AccordionTrigger({\n\tclassName,\n\tchildren,\n\ticonPosition,\n\ticonSize = \"size-4\",\n\t...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger> & {\n\ticonPosition?: \"right\" | \"left\";\n\ticonSize?: string;\n}) {\n\treturn (\n\t\t<AccordionPrimitive.Header className=\"flex\">\n\t\t\t<AccordionPrimitive.Trigger\n\t\t\t\tdata-slot=\"accordion-trigger\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"flex flex-1 cursor-pointer items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{iconPosition === \"left\" ? (\n\t\t\t\t\t<ChevronDownIcon className={cn(iconSize, \"shrink-0 transition-transform duration-200\")} />\n\t\t\t\t) : null}\n\n\t\t\t\t{children}\n\n\t\t\t\t{iconPosition !== \"left\" ? (\n\t\t\t\t\t<ChevronDownIcon className={cn(iconSize, \"shrink-0 transition-transform duration-200\")} />\n\t\t\t\t) : null}\n\t\t\t</AccordionPrimitive.Trigger>\n\t\t</AccordionPrimitive.Header>\n\t);\n}\n\nfunction AccordionContent({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n\treturn (\n\t\t<AccordionPrimitive.Content\n\t\t\tdata-slot=\"accordion-content\"\n\t\t\tclassName=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n\t\t\t{...props}\n\t\t>\n\t\t\t<div className={cn(\"pt-0 pb-4\", className)}>{children}</div>\n\t\t</AccordionPrimitive.Content>\n\t);\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"names":["COLLAPSIBLE_NAME","createCollapsibleContext","createCollapsibleScope","createContextScope","CollapsibleProvider","useCollapsibleContext","Collapsible","React","forwardRef","props","forwardedRef","__scopeCollapsible","open","openProp","defaultOpen","disabled","onOpenChange","collapsibleProps","setOpen","useControllableState","prop","defaultProp","onChange","caller","jsx","scope","contentId","useId","onOpenToggle","useCallback","prevOpen","children","Primitive","div","getState","ref","displayName","TRIGGER_NAME","CollapsibleTrigger","triggerProps","context","button","type","onClick","composeEventHandlers","CONTENT_NAME","CollapsibleContent","forceMount","contentProps","Presence","present","CollapsibleContentImpl","isPresent","setIsPresent","useState","useRef","composedRefs","useComposedRefs","heightRef","height","current","widthRef","width","isOpen","isMountAnimationPreventedRef","originalStylesRef","useEffect","rAF","requestAnimationFrame","cancelAnimationFrame","useLayoutEffect","node","transitionDuration","style","animationName","rect","getBoundingClientRect","id","hidden","Root","Trigger","Content","ACCORDION_NAME","ACCORDION_KEYS","Collection","useCollection","createCollectionScope","createCollection","createAccordionContext","createAccordionScope","useCollapsibleScope","Accordion","accordionProps","singleProps","multipleProps","Provider","__scopeAccordion","AccordionImplMultiple","AccordionImplSingle","AccordionValueProvider","useAccordionValueContext","AccordionCollapsibleProvider","useAccordionCollapsibleContext","collapsible","value","valueProp","defaultValue","onValueChange","accordionSingleProps","setValue","useMemo","onItemOpen","onItemClose","AccordionImpl","accordionMultipleProps","handleItemOpen","itemValue","prevValue","handleItemClose","filter","AccordionImplProvider","useAccordionContext","dir","orientation","accordionRef","getItems","isDirectionLTR","useDirection","handleKeyDown","onKeyDown","event","includes","key","target","triggerCollection","item","triggerIndex","findIndex","triggerCount","length","preventDefault","nextIndex","endIndex","moveNext","movePrev","clampedIndex","focus","direction","Slot","ITEM_NAME","AccordionItemProvider","useAccordionItemContext","AccordionItem","accordionItemProps","accordionContext","valueContext","collapsibleScope","triggerId","CollapsiblePrimitive.Root","HEADER_NAME","AccordionHeader","headerProps","itemContext","h3","AccordionTrigger","collapsibleContext","ItemSlot","CollapsiblePrimitive.Trigger","AccordionContent","CollapsiblePrimitive.Content","role","Item","Header","createElement","AccordionPrimitive","data-slot","className","cn","iconPosition","iconSize","ChevronDownIcon"],"mappings":"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","x_google_ignoreList":[0,1]}
|
1
|
+
{"version":3,"file":"accordion-BMP2PSSC.mjs","sources":["../../node_modules/@radix-ui/react-collapsible/dist/index.mjs","../../node_modules/@radix-ui/react-accordion/dist/index.mjs","../../src/components/ui/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\n// src/collapsible.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar COLLAPSIBLE_NAME = \"Collapsible\";\nvar [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\nvar [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);\nvar Collapsible = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: COLLAPSIBLE_NAME\n });\n return /* @__PURE__ */ jsx(\n CollapsibleProvider,\n {\n scope: __scopeCollapsible,\n disabled,\n contentId: useId(),\n open,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(open),\n \"data-disabled\": disabled ? \"\" : void 0,\n ...collapsibleProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nCollapsible.displayName = COLLAPSIBLE_NAME;\nvar TRIGGER_NAME = \"CollapsibleTrigger\";\nvar CollapsibleTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open || false,\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n disabled: context.disabled,\n ...triggerProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nCollapsibleTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"CollapsibleContent\";\nvar CollapsibleContent = React.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });\n }\n);\nCollapsibleContent.displayName = CONTENT_NAME;\nvar CollapsibleContentImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef(0);\n const height = heightRef.current;\n const widthRef = React.useRef(0);\n const width = widthRef.current;\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef(void 0);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName\n };\n node.style.transitionDuration = \"0s\";\n node.style.animationName = \"none\";\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration;\n node.style.animationName = originalStylesRef.current.animationName;\n }\n setIsPresent(present);\n }\n }, [context.open, present]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n id: context.contentId,\n hidden: !isOpen,\n ...contentProps,\n ref: composedRefs,\n style: {\n [`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,\n [`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,\n ...props.style\n },\n children: isOpen && children\n }\n );\n});\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root = Collapsible;\nvar Trigger = CollapsibleTrigger;\nvar Content = CollapsibleContent;\nexport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n Content,\n Root,\n Trigger,\n createCollapsibleScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/accordion.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { createCollapsibleScope } from \"@radix-ui/react-collapsible\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ACCORDION_NAME = \"Accordion\";\nvar ACCORDION_KEYS = [\"Home\", \"End\", \"ArrowDown\", \"ArrowUp\", \"ArrowLeft\", \"ArrowRight\"];\nvar [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);\nvar [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n createCollectionScope,\n createCollapsibleScope\n]);\nvar useCollapsibleScope = createCollapsibleScope();\nvar Accordion = React.forwardRef(\n (props, forwardedRef) => {\n const { type, ...accordionProps } = props;\n const singleProps = accordionProps;\n const multipleProps = accordionProps;\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === \"multiple\" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });\n }\n);\nAccordion.displayName = ACCORDION_NAME;\nvar [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);\nvar [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n ACCORDION_NAME,\n { collapsible: false }\n);\nvar AccordionImplSingle = React.forwardRef(\n (props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n collapsible = false,\n ...accordionSingleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? \"\",\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value: React.useMemo(() => value ? [value] : [], [value]),\n onItemOpen: setValue,\n onItemClose: React.useCallback(() => collapsible && setValue(\"\"), [collapsible, setValue]),\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })\n }\n );\n }\n);\nvar AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n ...accordionMultipleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? [],\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n const handleItemOpen = React.useCallback(\n (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n const handleItemClose = React.useCallback(\n (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),\n [setValue]\n );\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value,\n onItemOpen: handleItemOpen,\n onItemClose: handleItemClose,\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })\n }\n );\n});\nvar [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);\nvar AccordionImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, disabled, dir, orientation = \"vertical\", ...accordionProps } = props;\n const accordionRef = React.useRef(null);\n const composedRefs = useComposedRefs(accordionRef, forwardedRef);\n const getItems = useCollection(__scopeAccordion);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const handleKeyDown = composeEventHandlers(props.onKeyDown, (event) => {\n if (!ACCORDION_KEYS.includes(event.key)) return;\n const target = event.target;\n const triggerCollection = getItems().filter((item) => !item.ref.current?.disabled);\n const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target);\n const triggerCount = triggerCollection.length;\n if (triggerIndex === -1) return;\n event.preventDefault();\n let nextIndex = triggerIndex;\n const homeIndex = 0;\n const endIndex = triggerCount - 1;\n const moveNext = () => {\n nextIndex = triggerIndex + 1;\n if (nextIndex > endIndex) {\n nextIndex = homeIndex;\n }\n };\n const movePrev = () => {\n nextIndex = triggerIndex - 1;\n if (nextIndex < homeIndex) {\n nextIndex = endIndex;\n }\n };\n switch (event.key) {\n case \"Home\":\n nextIndex = homeIndex;\n break;\n case \"End\":\n nextIndex = endIndex;\n break;\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n moveNext();\n } else {\n movePrev();\n }\n }\n break;\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n moveNext();\n }\n break;\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n movePrev();\n } else {\n moveNext();\n }\n }\n break;\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n movePrev();\n }\n break;\n }\n const clampedIndex = nextIndex % triggerCount;\n triggerCollection[clampedIndex].ref.current?.focus();\n });\n return /* @__PURE__ */ jsx(\n AccordionImplProvider,\n {\n scope: __scopeAccordion,\n disabled,\n direction: dir,\n orientation,\n children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...accordionProps,\n \"data-orientation\": orientation,\n ref: composedRefs,\n onKeyDown: disabled ? void 0 : handleKeyDown\n }\n ) })\n }\n );\n }\n);\nvar ITEM_NAME = \"AccordionItem\";\nvar [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);\nvar AccordionItem = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, value, ...accordionItemProps } = props;\n const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);\n const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n const triggerId = useId();\n const open = value && valueContext.value.includes(value) || false;\n const disabled = accordionContext.disabled || props.disabled;\n return /* @__PURE__ */ jsx(\n AccordionItemProvider,\n {\n scope: __scopeAccordion,\n open,\n disabled,\n triggerId,\n children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Root,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(open),\n ...collapsibleScope,\n ...accordionItemProps,\n ref: forwardedRef,\n disabled,\n open,\n onOpenChange: (open2) => {\n if (open2) {\n valueContext.onItemOpen(value);\n } else {\n valueContext.onItemClose(value);\n }\n }\n }\n )\n }\n );\n }\n);\nAccordionItem.displayName = ITEM_NAME;\nvar HEADER_NAME = \"AccordionHeader\";\nvar AccordionHeader = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...headerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);\n return /* @__PURE__ */ jsx(\n Primitive.h3,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(itemContext.open),\n \"data-disabled\": itemContext.disabled ? \"\" : void 0,\n ...headerProps,\n ref: forwardedRef\n }\n );\n }\n);\nAccordionHeader.displayName = HEADER_NAME;\nvar TRIGGER_NAME = \"AccordionTrigger\";\nvar AccordionTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...triggerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Trigger,\n {\n \"aria-disabled\": itemContext.open && !collapsibleContext.collapsible || void 0,\n \"data-orientation\": accordionContext.orientation,\n id: itemContext.triggerId,\n ...collapsibleScope,\n ...triggerProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nAccordionTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"AccordionContent\";\nvar AccordionContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...contentProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Content,\n {\n role: \"region\",\n \"aria-labelledby\": itemContext.triggerId,\n \"data-orientation\": accordionContext.orientation,\n ...collapsibleScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n [\"--radix-accordion-content-height\"]: \"var(--radix-collapsible-content-height)\",\n [\"--radix-accordion-content-width\"]: \"var(--radix-collapsible-content-width)\",\n ...props.style\n }\n }\n );\n }\n);\nAccordionContent.displayName = CONTENT_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Accordion;\nvar Item = AccordionItem;\nvar Header = AccordionHeader;\nvar Trigger2 = AccordionTrigger;\nvar Content2 = AccordionContent;\nexport {\n Accordion,\n AccordionContent,\n AccordionHeader,\n AccordionItem,\n AccordionTrigger,\n Content2 as Content,\n Header,\n Item,\n Root2 as Root,\n Trigger2 as Trigger,\n createAccordionScope\n};\n//# sourceMappingURL=index.mjs.map\n","import { cn } from \"@/lib/utils\";\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport React from \"react\";\n\nfunction Accordion({ ...props }: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n\treturn <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\nfunction AccordionItem({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n\treturn (\n\t\t<AccordionPrimitive.Item\n\t\t\tdata-slot=\"accordion-item\"\n\t\t\tclassName={cn(\"border-b last:border-b-0\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction AccordionTrigger({\n\tclassName,\n\tchildren,\n\ticonPosition,\n\ticonSize = \"size-4\",\n\t...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger> & {\n\ticonPosition?: \"right\" | \"left\";\n\ticonSize?: string;\n}) {\n\treturn (\n\t\t<AccordionPrimitive.Header className=\"flex\">\n\t\t\t<AccordionPrimitive.Trigger\n\t\t\t\tdata-slot=\"accordion-trigger\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"flex flex-1 cursor-pointer items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{iconPosition === \"left\" ? (\n\t\t\t\t\t<ChevronDownIcon className={cn(iconSize, \"shrink-0 transition-transform duration-200\")} />\n\t\t\t\t) : null}\n\n\t\t\t\t{children}\n\n\t\t\t\t{iconPosition !== \"left\" ? (\n\t\t\t\t\t<ChevronDownIcon className={cn(iconSize, \"shrink-0 transition-transform duration-200\")} />\n\t\t\t\t) : null}\n\t\t\t</AccordionPrimitive.Trigger>\n\t\t</AccordionPrimitive.Header>\n\t);\n}\n\nfunction AccordionContent({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n\treturn (\n\t\t<AccordionPrimitive.Content\n\t\t\tdata-slot=\"accordion-content\"\n\t\t\tclassName=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n\t\t\t{...props}\n\t\t>\n\t\t\t<div className={cn(\"pt-0 pb-4\", className)}>{children}</div>\n\t\t</AccordionPrimitive.Content>\n\t);\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"names":["getState","TRIGGER_NAME","CONTENT_NAME","useLayoutEffect","Accordion","React","value","AccordionItem","CollapsiblePrimitive.Root","open","AccordionTrigger","CollapsiblePrimitive.Trigger","AccordionContent","CollapsiblePrimitive.Content","Root","Trigger","Content","props","AccordionPrimitive","data-slot","className","cn","children","iconPosition","iconSize","ChevronDownIcon","div"],"mappings":"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","x_google_ignoreList":[0,1]}
|