lecom-ui 5.3.33 → 5.3.34
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/README.md +1 -1
- package/dist/components/Collapse/Collapse.js +94 -0
- package/dist/components/TagInput/TagInput.js +3 -37
- package/dist/index.d.ts +7 -8
- package/dist/plugin/extend.js +78 -78
- package/dist/plugin/fontFaces.js +172 -172
- package/dist/plugin/general.js +12 -12
- package/dist/plugin/pluginDev.cjs +5 -5
- package/dist/plugin/pluginNext.cjs +5 -5
- package/dist/plugin/pluginNextTurbo.cjs +5 -5
- package/dist/plugin/pluginVite.cjs +5 -5
- package/dist/plugin/template.js +31 -31
- package/dist/plugin/typographies.js +152 -152
- package/dist/plugin/varsTheme.js +79 -79
- package/dist/style.min.css +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
lecom-ui
|
|
1
|
+
lecom-ui
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { cn } from '../../lib/utils.js';
|
|
3
|
+
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
import { ChevronRight } from 'lucide-react';
|
|
6
|
+
|
|
7
|
+
const collapseTriggerVariants = cva(
|
|
8
|
+
"flex items-center justify-between w-full transition-all text-left outline-none data-[state=open]:font-semibold",
|
|
9
|
+
{
|
|
10
|
+
variants: {
|
|
11
|
+
size: {
|
|
12
|
+
small: "text-sm py-1.5 px-4 min-h-8",
|
|
13
|
+
medium: "text-base py-2.5 px-4 min-h-10",
|
|
14
|
+
large: "text-lg py-3 px-4 min-h-12"
|
|
15
|
+
},
|
|
16
|
+
ghost: {
|
|
17
|
+
true: "bg-transparent border-none",
|
|
18
|
+
false: "border-t-none border-grey-400"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
defaultVariants: {
|
|
22
|
+
size: "large",
|
|
23
|
+
ghost: false
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
);
|
|
27
|
+
const CollapseRoot = AccordionPrimitive.Root;
|
|
28
|
+
const CollapseItem = AccordionPrimitive.Item;
|
|
29
|
+
const CollapsePanel = React.forwardRef(
|
|
30
|
+
({
|
|
31
|
+
header,
|
|
32
|
+
children,
|
|
33
|
+
extra,
|
|
34
|
+
expandIconPosition = "start",
|
|
35
|
+
size = "large",
|
|
36
|
+
ghost = false,
|
|
37
|
+
disabled = false,
|
|
38
|
+
className,
|
|
39
|
+
...props
|
|
40
|
+
}, ref) => /* @__PURE__ */ React.createElement(
|
|
41
|
+
CollapseItem,
|
|
42
|
+
{
|
|
43
|
+
ref,
|
|
44
|
+
...props,
|
|
45
|
+
className: cn(
|
|
46
|
+
"group w-full",
|
|
47
|
+
disabled && "pointer-events-none opacity-50",
|
|
48
|
+
className
|
|
49
|
+
)
|
|
50
|
+
},
|
|
51
|
+
/* @__PURE__ */ React.createElement(AccordionPrimitive.Header, { asChild: true }, /* @__PURE__ */ React.createElement(
|
|
52
|
+
AccordionPrimitive.Trigger,
|
|
53
|
+
{
|
|
54
|
+
disabled,
|
|
55
|
+
className: cn(
|
|
56
|
+
collapseTriggerVariants({ size, ghost }),
|
|
57
|
+
"flex gap-2 items-center text-left font-normal"
|
|
58
|
+
)
|
|
59
|
+
},
|
|
60
|
+
/* @__PURE__ */ React.createElement(
|
|
61
|
+
"div",
|
|
62
|
+
{
|
|
63
|
+
className: cn(
|
|
64
|
+
"flex flex-1 items-center justify-between gap-4 w-full",
|
|
65
|
+
expandIconPosition === "end" ? "flex-row-reverse" : ""
|
|
66
|
+
)
|
|
67
|
+
},
|
|
68
|
+
/* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-2 truncate" }, /* @__PURE__ */ React.createElement(
|
|
69
|
+
"span",
|
|
70
|
+
{
|
|
71
|
+
className: "flex items-center justify-center flex-shrink-0 min-w-4 min-h-4 transition-transform duration-300 group-data-[state=open]:rotate-90 text-grey-700 text-lg select-none font-normal"
|
|
72
|
+
},
|
|
73
|
+
/* @__PURE__ */ React.createElement(ChevronRight, { className: "size-4" })
|
|
74
|
+
), /* @__PURE__ */ React.createElement("span", { className: "font-normal" }, header)),
|
|
75
|
+
extra && /* @__PURE__ */ React.createElement("div", { className: "text-sm text-grey-500" }, extra)
|
|
76
|
+
)
|
|
77
|
+
)),
|
|
78
|
+
/* @__PURE__ */ React.createElement(
|
|
79
|
+
AccordionPrimitive.Content,
|
|
80
|
+
{
|
|
81
|
+
className: cn(
|
|
82
|
+
"overflow-hidden data-[state=open]:animate-accordion-down data-[state=closed]:animate-accordion-up"
|
|
83
|
+
)
|
|
84
|
+
},
|
|
85
|
+
/* @__PURE__ */ React.createElement("div", { className: "text-sm text-grey-800 pt-2 pb-4 px-4" }, children)
|
|
86
|
+
)
|
|
87
|
+
)
|
|
88
|
+
);
|
|
89
|
+
CollapsePanel.displayName = "CollapsePanel";
|
|
90
|
+
const Collapse = Object.assign(CollapseRoot, {
|
|
91
|
+
Panel: CollapsePanel
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
export { Collapse, collapseTriggerVariants };
|
|
@@ -23,27 +23,8 @@ function TagItem({ item, onRemove, readOnly }) {
|
|
|
23
23
|
}
|
|
24
24
|
));
|
|
25
25
|
}
|
|
26
|
-
function HiddenCountTag({
|
|
27
|
-
count
|
|
28
|
-
onRemoveHidden,
|
|
29
|
-
readOnly
|
|
30
|
-
}) {
|
|
31
|
-
const handleRemove = React.useCallback(
|
|
32
|
-
(e) => {
|
|
33
|
-
e.stopPropagation();
|
|
34
|
-
onRemoveHidden();
|
|
35
|
-
},
|
|
36
|
-
[onRemoveHidden]
|
|
37
|
-
);
|
|
38
|
-
return /* @__PURE__ */ React.createElement(Tag, { color: "blue", "data-tag": "true" }, /* @__PURE__ */ React.createElement(Typography, { variant: "body-small-400", className: "text-blue-600" }, "+", count), !readOnly && /* @__PURE__ */ React.createElement(
|
|
39
|
-
X,
|
|
40
|
-
{
|
|
41
|
-
className: "w-4 h-4 cursor-pointer",
|
|
42
|
-
onClick: handleRemove,
|
|
43
|
-
"aria-label": "Remover tag oculta",
|
|
44
|
-
tabIndex: 0
|
|
45
|
-
}
|
|
46
|
-
));
|
|
26
|
+
function HiddenCountTag({ count }) {
|
|
27
|
+
return /* @__PURE__ */ React.createElement(Tag, { color: "blue", "data-tag": "true" }, /* @__PURE__ */ React.createElement(Typography, { variant: "body-small-400", className: "text-blue-600" }, "+", count));
|
|
47
28
|
}
|
|
48
29
|
function useTagVisibility(ref, value) {
|
|
49
30
|
const getInitialEstimate = React.useCallback((totalTags) => {
|
|
@@ -166,14 +147,6 @@ function TagInput(props) {
|
|
|
166
147
|
(valueToRemove) => onRemove(valueToRemove),
|
|
167
148
|
[onRemove]
|
|
168
149
|
);
|
|
169
|
-
const handleRemoveHidden = React.useCallback(() => {
|
|
170
|
-
if (value.length > visibleCount) {
|
|
171
|
-
const tagToRemove = value[visibleCount];
|
|
172
|
-
if (tagToRemove) {
|
|
173
|
-
onRemove(tagToRemove.value);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}, [value, visibleCount, onRemove]);
|
|
177
150
|
return /* @__PURE__ */ React.createElement(
|
|
178
151
|
"div",
|
|
179
152
|
{
|
|
@@ -194,14 +167,7 @@ function TagInput(props) {
|
|
|
194
167
|
readOnly
|
|
195
168
|
}
|
|
196
169
|
)),
|
|
197
|
-
actualHiddenCount > 0 && /* @__PURE__ */ React.createElement(
|
|
198
|
-
HiddenCountTag,
|
|
199
|
-
{
|
|
200
|
-
count: actualHiddenCount,
|
|
201
|
-
onRemoveHidden: handleRemoveHidden,
|
|
202
|
-
readOnly
|
|
203
|
-
}
|
|
204
|
-
)
|
|
170
|
+
actualHiddenCount > 0 && /* @__PURE__ */ React.createElement(HiddenCountTag, { count: actualHiddenCount })
|
|
205
171
|
);
|
|
206
172
|
}
|
|
207
173
|
|
package/dist/index.d.ts
CHANGED
|
@@ -743,8 +743,8 @@ interface HeaderProps extends React$1.HTMLAttributes<HTMLElement>, VariantProps<
|
|
|
743
743
|
|
|
744
744
|
declare const inputVariants: (props?: ({
|
|
745
745
|
variant?: "default" | "filled" | "borderless" | null | undefined;
|
|
746
|
-
size?: "
|
|
747
|
-
radius?: "
|
|
746
|
+
size?: "default" | "small" | "large" | null | undefined;
|
|
747
|
+
radius?: "default" | "small" | "large" | "full" | null | undefined;
|
|
748
748
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
749
749
|
interface InputProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, 'size' | 'sufix' | 'prefix'>, VariantProps<typeof inputVariants> {
|
|
750
750
|
sufix?: React$1.ReactNode;
|
|
@@ -914,7 +914,7 @@ declare const RadioGroup: React$1.ForwardRefExoticComponent<Omit<RadioGroupPrimi
|
|
|
914
914
|
declare const RadioGroupItem: React$1.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupItemProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
915
915
|
|
|
916
916
|
declare const ResizablePanelGroup: ({ className, ...props }: React$1.ComponentProps<typeof ResizablePrimitive.PanelGroup>) => React$1.JSX.Element;
|
|
917
|
-
declare const ResizablePanel: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLDivElement | HTMLElement | HTMLButtonElement | HTMLOListElement | HTMLLIElement | HTMLAnchorElement | HTMLSpanElement |
|
|
917
|
+
declare const ResizablePanel: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLDivElement | HTMLElement | HTMLButtonElement | HTMLOListElement | HTMLLIElement | HTMLAnchorElement | HTMLSpanElement | HTMLHeadingElement | HTMLParagraphElement | HTMLLabelElement | HTMLInputElement | HTMLUListElement | HTMLObjectElement | HTMLAreaElement | HTMLAudioElement | HTMLBaseElement | HTMLQuoteElement | HTMLBodyElement | HTMLBRElement | HTMLCanvasElement | HTMLTableCaptionElement | HTMLTableColElement | HTMLDataElement | HTMLDataListElement | HTMLModElement | HTMLDetailsElement | HTMLDialogElement | HTMLDListElement | HTMLEmbedElement | HTMLFieldSetElement | HTMLFormElement | HTMLHeadElement | HTMLHRElement | HTMLHtmlElement | HTMLIFrameElement | HTMLImageElement | HTMLLegendElement | HTMLLinkElement | HTMLMapElement | HTMLMenuElement | HTMLMetaElement | HTMLMeterElement | HTMLOptGroupElement | HTMLOptionElement | HTMLOutputElement | HTMLPictureElement | HTMLPreElement | HTMLProgressElement | HTMLScriptElement | HTMLSelectElement | HTMLSlotElement | HTMLSourceElement | HTMLStyleElement | HTMLTableElement | HTMLTableSectionElement | HTMLTableCellElement | HTMLTemplateElement | HTMLTextAreaElement | HTMLTimeElement | HTMLTitleElement | HTMLTableRowElement | HTMLTrackElement | HTMLVideoElement>, "id" | "onResize"> & {
|
|
918
918
|
className?: string;
|
|
919
919
|
collapsedSize?: number | undefined;
|
|
920
920
|
collapsible?: boolean | undefined;
|
|
@@ -1070,9 +1070,9 @@ declare const TabsContent: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.
|
|
|
1070
1070
|
|
|
1071
1071
|
declare const textareaVariants: (props?: ({
|
|
1072
1072
|
variant?: "default" | "filled" | "borderless" | null | undefined;
|
|
1073
|
-
size?: "
|
|
1074
|
-
radius?: "
|
|
1075
|
-
resize?: "
|
|
1073
|
+
size?: "default" | "small" | "large" | null | undefined;
|
|
1074
|
+
radius?: "default" | "small" | "large" | "full" | null | undefined;
|
|
1075
|
+
resize?: "default" | "both" | "horizontal" | "vertical" | "vertical-limited" | null | undefined;
|
|
1076
1076
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
1077
1077
|
interface TextareaProps extends React$1.ComponentProps<'textarea'>, VariantProps<typeof textareaVariants> {
|
|
1078
1078
|
}
|
|
@@ -1148,7 +1148,6 @@ interface TagInputProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
|
1148
1148
|
className?: string;
|
|
1149
1149
|
variant?: 'default' | 'filled' | 'borderless';
|
|
1150
1150
|
radius?: 'default' | 'full';
|
|
1151
|
-
/** Maximum tags visible before collapsing into +N */
|
|
1152
1151
|
maxDisplayCount?: number;
|
|
1153
1152
|
}
|
|
1154
1153
|
declare function TagInput(props: TagInputProps): React$1.JSX.Element;
|
|
@@ -1201,7 +1200,7 @@ declare const SheetClose: React$1.ForwardRefExoticComponent<DialogPrimitive.Dial
|
|
|
1201
1200
|
declare const SheetPortal: React$1.FC<DialogPrimitive.DialogPortalProps>;
|
|
1202
1201
|
declare const SheetOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1203
1202
|
declare const sheetVariants: (props?: ({
|
|
1204
|
-
side?: "
|
|
1203
|
+
side?: "left" | "right" | "top" | "bottom" | null | undefined;
|
|
1205
1204
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
1206
1205
|
interface SheetContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>, VariantProps<typeof sheetVariants> {
|
|
1207
1206
|
}
|
package/dist/plugin/extend.js
CHANGED
|
@@ -1,78 +1,78 @@
|
|
|
1
|
-
const extend = {
|
|
2
|
-
colors: {
|
|
3
|
-
background: 'hsl(var(--background))',
|
|
4
|
-
foreground: 'hsl(var(--foreground))',
|
|
5
|
-
card: {
|
|
6
|
-
DEFAULT: 'hsl(var(--card))',
|
|
7
|
-
foreground: 'hsl(var(--card-foreground))',
|
|
8
|
-
},
|
|
9
|
-
popover: {
|
|
10
|
-
DEFAULT: 'hsl(var(--popover))',
|
|
11
|
-
foreground: 'hsl(var(--popover-foreground))',
|
|
12
|
-
},
|
|
13
|
-
primary: {
|
|
14
|
-
DEFAULT: 'hsl(var(--primary))',
|
|
15
|
-
foreground: 'hsl(var(--primary-foreground))',
|
|
16
|
-
},
|
|
17
|
-
secondary: {
|
|
18
|
-
DEFAULT: 'hsl(var(--secondary))',
|
|
19
|
-
foreground: 'hsl(var(--secondary-foreground))',
|
|
20
|
-
},
|
|
21
|
-
muted: {
|
|
22
|
-
DEFAULT: 'hsl(var(--muted))',
|
|
23
|
-
foreground: 'hsl(var(--muted-foreground))',
|
|
24
|
-
},
|
|
25
|
-
accent: {
|
|
26
|
-
DEFAULT: 'hsl(var(--accent))',
|
|
27
|
-
foreground: 'hsl(var(--accent-foreground))',
|
|
28
|
-
},
|
|
29
|
-
destructive: {
|
|
30
|
-
DEFAULT: 'hsl(var(--destructive))',
|
|
31
|
-
foreground: 'hsl(var(--destructive-foreground))',
|
|
32
|
-
},
|
|
33
|
-
border: 'hsl(var(--border))',
|
|
34
|
-
input: 'hsl(var(--input))',
|
|
35
|
-
ring: 'hsl(var(--ring))',
|
|
36
|
-
chart: {
|
|
37
|
-
1: 'hsl(var(--chart-1))',
|
|
38
|
-
2: 'hsl(var(--chart-2))',
|
|
39
|
-
3: 'hsl(var(--chart-3))',
|
|
40
|
-
4: 'hsl(var(--chart-4))',
|
|
41
|
-
5: 'hsl(var(--chart-5))',
|
|
42
|
-
6: 'hsl(var(--chart-6))',
|
|
43
|
-
7: 'hsl(var(--chart-7))',
|
|
44
|
-
8: 'hsl(var(--chart-8))',
|
|
45
|
-
},
|
|
46
|
-
sidebar: {
|
|
47
|
-
DEFAULT: 'hsl(var(--sidebar-background))',
|
|
48
|
-
foreground: 'hsl(var(--sidebar-foreground))',
|
|
49
|
-
primary: 'hsl(var(--sidebar-primary))',
|
|
50
|
-
'primary-foreground': 'hsl(var(--sidebar-primary-foreground))',
|
|
51
|
-
accent: 'hsl(var(--sidebar-accent))',
|
|
52
|
-
'accent-foreground': 'hsl(var(--sidebar-accent-foreground))',
|
|
53
|
-
border: 'hsl(var(--sidebar-border))',
|
|
54
|
-
ring: 'hsl(var(--sidebar-ring))',
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
borderRadius: {
|
|
58
|
-
lg: 'var(--radius)',
|
|
59
|
-
md: 'calc(var(--radius) - 2px)',
|
|
60
|
-
sm: 'calc(var(--radius) - 4px)',
|
|
61
|
-
},
|
|
62
|
-
keyframes: {
|
|
63
|
-
'accordion-down': {
|
|
64
|
-
from: { height: '0' },
|
|
65
|
-
to: { height: 'var(--radix-accordion-content-height)' },
|
|
66
|
-
},
|
|
67
|
-
'accordion-up': {
|
|
68
|
-
from: { height: 'var(--radix-accordion-content-height)' },
|
|
69
|
-
to: { height: '0' },
|
|
70
|
-
},
|
|
71
|
-
},
|
|
72
|
-
animation: {
|
|
73
|
-
'accordion-down': 'accordion-down 0.2s ease-out',
|
|
74
|
-
'accordion-up': 'accordion-up 0.2s ease-out',
|
|
75
|
-
},
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
export { extend };
|
|
1
|
+
const extend = {
|
|
2
|
+
colors: {
|
|
3
|
+
background: 'hsl(var(--background))',
|
|
4
|
+
foreground: 'hsl(var(--foreground))',
|
|
5
|
+
card: {
|
|
6
|
+
DEFAULT: 'hsl(var(--card))',
|
|
7
|
+
foreground: 'hsl(var(--card-foreground))',
|
|
8
|
+
},
|
|
9
|
+
popover: {
|
|
10
|
+
DEFAULT: 'hsl(var(--popover))',
|
|
11
|
+
foreground: 'hsl(var(--popover-foreground))',
|
|
12
|
+
},
|
|
13
|
+
primary: {
|
|
14
|
+
DEFAULT: 'hsl(var(--primary))',
|
|
15
|
+
foreground: 'hsl(var(--primary-foreground))',
|
|
16
|
+
},
|
|
17
|
+
secondary: {
|
|
18
|
+
DEFAULT: 'hsl(var(--secondary))',
|
|
19
|
+
foreground: 'hsl(var(--secondary-foreground))',
|
|
20
|
+
},
|
|
21
|
+
muted: {
|
|
22
|
+
DEFAULT: 'hsl(var(--muted))',
|
|
23
|
+
foreground: 'hsl(var(--muted-foreground))',
|
|
24
|
+
},
|
|
25
|
+
accent: {
|
|
26
|
+
DEFAULT: 'hsl(var(--accent))',
|
|
27
|
+
foreground: 'hsl(var(--accent-foreground))',
|
|
28
|
+
},
|
|
29
|
+
destructive: {
|
|
30
|
+
DEFAULT: 'hsl(var(--destructive))',
|
|
31
|
+
foreground: 'hsl(var(--destructive-foreground))',
|
|
32
|
+
},
|
|
33
|
+
border: 'hsl(var(--border))',
|
|
34
|
+
input: 'hsl(var(--input))',
|
|
35
|
+
ring: 'hsl(var(--ring))',
|
|
36
|
+
chart: {
|
|
37
|
+
1: 'hsl(var(--chart-1))',
|
|
38
|
+
2: 'hsl(var(--chart-2))',
|
|
39
|
+
3: 'hsl(var(--chart-3))',
|
|
40
|
+
4: 'hsl(var(--chart-4))',
|
|
41
|
+
5: 'hsl(var(--chart-5))',
|
|
42
|
+
6: 'hsl(var(--chart-6))',
|
|
43
|
+
7: 'hsl(var(--chart-7))',
|
|
44
|
+
8: 'hsl(var(--chart-8))',
|
|
45
|
+
},
|
|
46
|
+
sidebar: {
|
|
47
|
+
DEFAULT: 'hsl(var(--sidebar-background))',
|
|
48
|
+
foreground: 'hsl(var(--sidebar-foreground))',
|
|
49
|
+
primary: 'hsl(var(--sidebar-primary))',
|
|
50
|
+
'primary-foreground': 'hsl(var(--sidebar-primary-foreground))',
|
|
51
|
+
accent: 'hsl(var(--sidebar-accent))',
|
|
52
|
+
'accent-foreground': 'hsl(var(--sidebar-accent-foreground))',
|
|
53
|
+
border: 'hsl(var(--sidebar-border))',
|
|
54
|
+
ring: 'hsl(var(--sidebar-ring))',
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
borderRadius: {
|
|
58
|
+
lg: 'var(--radius)',
|
|
59
|
+
md: 'calc(var(--radius) - 2px)',
|
|
60
|
+
sm: 'calc(var(--radius) - 4px)',
|
|
61
|
+
},
|
|
62
|
+
keyframes: {
|
|
63
|
+
'accordion-down': {
|
|
64
|
+
from: { height: '0' },
|
|
65
|
+
to: { height: 'var(--radix-accordion-content-height)' },
|
|
66
|
+
},
|
|
67
|
+
'accordion-up': {
|
|
68
|
+
from: { height: 'var(--radix-accordion-content-height)' },
|
|
69
|
+
to: { height: '0' },
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
animation: {
|
|
73
|
+
'accordion-down': 'accordion-down 0.2s ease-out',
|
|
74
|
+
'accordion-up': 'accordion-up 0.2s ease-out',
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export { extend };
|