@etus/ui 0.4.0-beta.13 → 0.4.0-beta.15
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/chunk-FES2I2OT.js +3 -0
- package/dist/{chunk-6Z73ZQOP.js.map → chunk-FES2I2OT.js.map} +1 -1
- package/dist/chunk-K4MYVFWQ.js +109 -0
- package/dist/chunk-K4MYVFWQ.js.map +1 -0
- package/dist/chunk-KDJCZXLB.js +91 -0
- package/dist/chunk-KDJCZXLB.js.map +1 -0
- package/dist/{chunk-P27ERD6W.js → chunk-MDIXY44D.js} +2 -2
- package/dist/{chunk-P27ERD6W.js.map → chunk-MDIXY44D.js.map} +1 -1
- package/dist/chunk-OOJO4QGD.js +3 -0
- package/dist/{chunk-ATIEGLR2.js.map → chunk-OOJO4QGD.js.map} +1 -1
- package/dist/chunk-VORFH6HQ.js +46 -0
- package/dist/chunk-VORFH6HQ.js.map +1 -0
- package/dist/components/advanced/index.js +6 -6
- package/dist/components/data-display/DataTable/index.js +1 -1
- package/dist/components/data-display/FeatureItem/index.js +6 -0
- package/dist/components/data-display/index.js +15 -13
- package/dist/components/feedback/index.js +2 -2
- package/dist/components/forms/index.js +14 -14
- package/dist/components/index.js +90 -88
- package/dist/components/layout/index.js +1 -1
- package/dist/components/navigation/LogoConta/index.js +5 -0
- package/dist/components/navigation/LogoConta/index.js.map +1 -0
- package/dist/components/navigation/index.js +5 -4
- package/dist/components/primitives/ArrowAnimated/index.js +2 -89
- package/dist/components/primitives/ArrowAnimated/index.js.map +1 -1
- package/dist/components/primitives/index.js +12 -12
- package/dist/components/workflow/index.js +4 -4
- package/dist/index.d.ts +444 -306
- package/dist/index.js +90 -88
- package/dist/styles.css +27 -48
- package/package.json +2 -2
- package/dist/chunk-6Z73ZQOP.js +0 -3
- package/dist/chunk-ATIEGLR2.js +0 -3
- package/dist/chunk-N23L6UDK.js +0 -108
- package/dist/chunk-N23L6UDK.js.map +0 -1
- package/dist/components/data-display/DashboardFilterbar/index.js +0 -111
- package/dist/components/data-display/DashboardFilterbar/index.js.map +0 -1
- package/dist/components/navigation/MobileSidebar/index.js +0 -190
- package/dist/components/navigation/MobileSidebar/index.js.map +0 -1
- package/dist/components/navigation/UserProfileDropdown/index.js +0 -224
- package/dist/components/navigation/UserProfileDropdown/index.js.map +0 -1
- package/dist/components/navigation/WorkspaceDropdown/index.js +0 -192
- package/dist/components/navigation/WorkspaceDropdown/index.js.map +0 -1
- package/dist/components/primitives/FeatureItem/index.js +0 -5
- /package/dist/components/{primitives → data-display}/FeatureItem/index.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-FES2I2OT.js"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { FeaturedIcon } from './chunk-PK5O62XD.js';
|
|
2
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
var featureItemVariants = cva("flex flex-col items-start text-left", {
|
|
7
|
+
variants: {
|
|
8
|
+
variant: {
|
|
9
|
+
badge: "gap-[var(--feature-item-root-gap)]",
|
|
10
|
+
"feature-icon": "gap-[var(--feature-item-root-gap)]",
|
|
11
|
+
icon: "gap-[var(--feature-item-body-gap)]"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
defaultVariants: {
|
|
15
|
+
variant: "feature-icon"
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
function FeatureItem({
|
|
19
|
+
badge,
|
|
20
|
+
className,
|
|
21
|
+
description,
|
|
22
|
+
icon,
|
|
23
|
+
iconTone = "default",
|
|
24
|
+
title,
|
|
25
|
+
variant = "feature-icon",
|
|
26
|
+
...props
|
|
27
|
+
}) {
|
|
28
|
+
const isIconVariant = variant === "icon";
|
|
29
|
+
const titleNode = /* @__PURE__ */ jsx(
|
|
30
|
+
"p",
|
|
31
|
+
{
|
|
32
|
+
style: {
|
|
33
|
+
fontWeight: "var(--feature-item-title-font-weight)",
|
|
34
|
+
lineHeight: "var(--feature-item-title-line-height)"
|
|
35
|
+
},
|
|
36
|
+
className: "text-[length:var(--feature-item-title-font-size)] text-[color:var(--feature-item-title-color)]",
|
|
37
|
+
"data-slot": "feature-item-title",
|
|
38
|
+
children: title
|
|
39
|
+
}
|
|
40
|
+
);
|
|
41
|
+
return /* @__PURE__ */ jsxs(
|
|
42
|
+
"div",
|
|
43
|
+
{
|
|
44
|
+
className: cn(featureItemVariants({ variant }), className),
|
|
45
|
+
"data-slot": "feature-item",
|
|
46
|
+
"data-variant": variant,
|
|
47
|
+
...props,
|
|
48
|
+
children: [
|
|
49
|
+
variant === "feature-icon" && icon ? /* @__PURE__ */ jsx(FeaturedIcon, { tone: iconTone, children: icon }) : null,
|
|
50
|
+
variant === "badge" && badge ? /* @__PURE__ */ jsx(
|
|
51
|
+
"span",
|
|
52
|
+
{
|
|
53
|
+
style: {
|
|
54
|
+
fontWeight: "var(--feature-item-badge-font-weight)",
|
|
55
|
+
lineHeight: "var(--feature-item-badge-line-height)"
|
|
56
|
+
},
|
|
57
|
+
className: "inline-flex w-fit items-center rounded-[var(--feature-item-badge-radius)] border border-[color:var(--feature-item-badge-border)] bg-[color:var(--feature-item-badge-bg)] px-[var(--feature-item-badge-padding-x)] py-[var(--feature-item-badge-padding-y)] text-[length:var(--feature-item-badge-font-size)] text-[color:var(--feature-item-badge-fg)]",
|
|
58
|
+
"data-slot": "feature-item-badge",
|
|
59
|
+
children: badge
|
|
60
|
+
}
|
|
61
|
+
) : null,
|
|
62
|
+
/* @__PURE__ */ jsxs(
|
|
63
|
+
"div",
|
|
64
|
+
{
|
|
65
|
+
className: "flex flex-col items-start gap-[var(--feature-item-body-gap)]",
|
|
66
|
+
"data-slot": "feature-item-body",
|
|
67
|
+
children: [
|
|
68
|
+
isIconVariant ? /* @__PURE__ */ jsxs(
|
|
69
|
+
"div",
|
|
70
|
+
{
|
|
71
|
+
className: "flex items-center gap-[var(--feature-item-body-gap)]",
|
|
72
|
+
"data-slot": "feature-item-title-row",
|
|
73
|
+
children: [
|
|
74
|
+
icon ? /* @__PURE__ */ jsx(
|
|
75
|
+
"span",
|
|
76
|
+
{
|
|
77
|
+
"aria-hidden": "true",
|
|
78
|
+
className: "inline-flex shrink-0 items-center justify-center text-[color:var(--feature-item-title-color)] [&_svg]:size-[var(--feature-item-icon-size)]",
|
|
79
|
+
"data-slot": "feature-item-icon",
|
|
80
|
+
children: icon
|
|
81
|
+
}
|
|
82
|
+
) : null,
|
|
83
|
+
titleNode
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
) : titleNode,
|
|
87
|
+
description ? /* @__PURE__ */ jsx(
|
|
88
|
+
"p",
|
|
89
|
+
{
|
|
90
|
+
style: {
|
|
91
|
+
fontWeight: "var(--feature-item-description-font-weight)",
|
|
92
|
+
lineHeight: "var(--feature-item-description-line-height)"
|
|
93
|
+
},
|
|
94
|
+
className: "text-[length:var(--feature-item-description-font-size)] text-[color:var(--feature-item-description-color)]",
|
|
95
|
+
"data-slot": "feature-item-description",
|
|
96
|
+
children: description
|
|
97
|
+
}
|
|
98
|
+
) : null
|
|
99
|
+
]
|
|
100
|
+
}
|
|
101
|
+
)
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export { FeatureItem, featureItemVariants };
|
|
108
|
+
//# sourceMappingURL=chunk-K4MYVFWQ.js.map
|
|
109
|
+
//# sourceMappingURL=chunk-K4MYVFWQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/FeatureItem/FeatureItem.variants.ts","../src/components/data-display/FeatureItem/FeatureItem.tsx"],"names":[],"mappings":";;;;;AAQO,IAAM,mBAAA,GAAsB,IAAI,qCAAA,EAAuC;AAAA,EAC5E,QAAA,EAAU;AAAA,IACR,OAAA,EAAS;AAAA,MACP,KAAA,EAAO,oCAAA;AAAA,MACP,cAAA,EAAgB,oCAAA;AAAA,MAChB,IAAA,EAAM;AAAA;AACR,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,OAAA,EAAS;AAAA;AAEb,CAAC;ACHD,SAAS,WAAA,CAAY;AAAA,EACnB,KAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA,GAAW,SAAA;AAAA,EACX,KAAA;AAAA,EACA,OAAA,GAAU,cAAA;AAAA,EACV,GAAG;AACL,CAAA,EAAqB;AACnB,EAAA,MAAM,gBAAgB,OAAA,KAAY,MAAA;AAElC,EAAA,MAAM,SAAA,mBACJ,GAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAO;AAAA,QACL,UAAA,EAAY,uCAAA;AAAA,QACZ,UAAA,EAAY;AAAA,OACd;AAAA,MACA,SAAA,EAAU,gGAAA;AAAA,MACV,WAAA,EAAU,oBAAA;AAAA,MAET,QAAA,EAAA;AAAA;AAAA,GACH;AAGF,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAW,EAAA,CAAG,mBAAA,CAAoB,EAAE,OAAA,EAAS,GAAG,SAAS,CAAA;AAAA,MACzD,WAAA,EAAU,cAAA;AAAA,MACV,cAAA,EAAc,OAAA;AAAA,MACb,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,OAAA,KAAY,kBAAkB,IAAA,mBAC7B,GAAA,CAAC,gBAAa,IAAA,EAAM,QAAA,EAAW,gBAAK,CAAA,GAClC,IAAA;AAAA,QAEH,OAAA,KAAY,WAAW,KAAA,mBACtB,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,KAAA,EAAO;AAAA,cACL,UAAA,EAAY,uCAAA;AAAA,cACZ,UAAA,EAAY;AAAA,aACd;AAAA,YACA,SAAA,EAAU,wVAAA;AAAA,YACV,WAAA,EAAU,oBAAA;AAAA,YAET,QAAA,EAAA;AAAA;AAAA,SACH,GACE,IAAA;AAAA,wBAEJ,IAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,8DAAA;AAAA,YACV,WAAA,EAAU,mBAAA;AAAA,YAET,QAAA,EAAA;AAAA,cAAA,aAAA,mBACC,IAAA;AAAA,gBAAC,KAAA;AAAA,gBAAA;AAAA,kBACC,SAAA,EAAU,sDAAA;AAAA,kBACV,WAAA,EAAU,wBAAA;AAAA,kBAET,QAAA,EAAA;AAAA,oBAAA,IAAA,mBACC,GAAA;AAAA,sBAAC,MAAA;AAAA,sBAAA;AAAA,wBACC,aAAA,EAAY,MAAA;AAAA,wBACZ,SAAA,EAAU,4IAAA;AAAA,wBACV,WAAA,EAAU,mBAAA;AAAA,wBAET,QAAA,EAAA;AAAA;AAAA,qBACH,GACE,IAAA;AAAA,oBACH;AAAA;AAAA;AAAA,eACH,GAEA,SAAA;AAAA,cAGD,WAAA,mBACC,GAAA;AAAA,gBAAC,GAAA;AAAA,gBAAA;AAAA,kBACC,KAAA,EAAO;AAAA,oBACL,UAAA,EAAY,6CAAA;AAAA,oBACZ,UAAA,EAAY;AAAA,mBACd;AAAA,kBACA,SAAA,EAAU,4GAAA;AAAA,kBACV,WAAA,EAAU,0BAAA;AAAA,kBAET,QAAA,EAAA;AAAA;AAAA,eACH,GACE;AAAA;AAAA;AAAA;AACN;AAAA;AAAA,GACF;AAEJ","file":"chunk-K4MYVFWQ.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * FeatureItem root layout. The leading visual (FeaturedIcon / Badge) is stacked\n * above the text body for the `feature-icon` and `badge` styles, separated by\n * `--feature-item-root-gap`. The `icon` style has no stacked leading element, so\n * its single body uses the tighter `--feature-item-body-gap`.\n */\nexport const featureItemVariants = cva(\"flex flex-col items-start text-left\", {\n variants: {\n variant: {\n badge: \"gap-[var(--feature-item-root-gap)]\",\n \"feature-icon\": \"gap-[var(--feature-item-root-gap)]\",\n icon: \"gap-[var(--feature-item-body-gap)]\",\n },\n },\n defaultVariants: {\n variant: \"feature-icon\",\n },\n})\n","import type { FeatureItemProps } from \"./FeatureItem.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { FeaturedIcon } from \"../../primitives/FeaturedIcon\"\nimport { featureItemVariants } from \"./FeatureItem.variants\"\n\n/**\n * FeatureItem is a promotional card pairing a leading visual with a title and\n * description. The leading visual is selected via `variant`:\n *\n * - `feature-icon` — an icon inside a FeaturedIcon plate, stacked above the text\n * - `badge` — a status badge, stacked above the text\n * - `icon` — a small icon rendered inline, to the left of the title\n *\n * All spacing, color and type come from `--feature-item-*` design tokens.\n */\nfunction FeatureItem({\n badge,\n className,\n description,\n icon,\n iconTone = \"default\",\n title,\n variant = \"feature-icon\",\n ...props\n}: FeatureItemProps) {\n const isIconVariant = variant === \"icon\"\n\n const titleNode = (\n <p\n style={{\n fontWeight: \"var(--feature-item-title-font-weight)\",\n lineHeight: \"var(--feature-item-title-line-height)\",\n }}\n className=\"text-[length:var(--feature-item-title-font-size)] text-[color:var(--feature-item-title-color)]\"\n data-slot=\"feature-item-title\"\n >\n {title}\n </p>\n )\n\n return (\n <div\n className={cn(featureItemVariants({ variant }), className)}\n data-slot=\"feature-item\"\n data-variant={variant}\n {...props}\n >\n {variant === \"feature-icon\" && icon ? (\n <FeaturedIcon tone={iconTone}>{icon}</FeaturedIcon>\n ) : null}\n\n {variant === \"badge\" && badge ? (\n <span\n style={{\n fontWeight: \"var(--feature-item-badge-font-weight)\",\n lineHeight: \"var(--feature-item-badge-line-height)\",\n }}\n className=\"inline-flex w-fit items-center rounded-[var(--feature-item-badge-radius)] border border-[color:var(--feature-item-badge-border)] bg-[color:var(--feature-item-badge-bg)] px-[var(--feature-item-badge-padding-x)] py-[var(--feature-item-badge-padding-y)] text-[length:var(--feature-item-badge-font-size)] text-[color:var(--feature-item-badge-fg)]\"\n data-slot=\"feature-item-badge\"\n >\n {badge}\n </span>\n ) : null}\n\n <div\n className=\"flex flex-col items-start gap-[var(--feature-item-body-gap)]\"\n data-slot=\"feature-item-body\"\n >\n {isIconVariant ? (\n <div\n className=\"flex items-center gap-[var(--feature-item-body-gap)]\"\n data-slot=\"feature-item-title-row\"\n >\n {icon ? (\n <span\n aria-hidden=\"true\"\n className=\"inline-flex shrink-0 items-center justify-center text-[color:var(--feature-item-title-color)] [&_svg]:size-[var(--feature-item-icon-size)]\"\n data-slot=\"feature-item-icon\"\n >\n {icon}\n </span>\n ) : null}\n {titleNode}\n </div>\n ) : (\n titleNode\n )}\n\n {description ? (\n <p\n style={{\n fontWeight: \"var(--feature-item-description-font-weight)\",\n lineHeight: \"var(--feature-item-description-line-height)\",\n }}\n className=\"text-[length:var(--feature-item-description-font-size)] text-[color:var(--feature-item-description-color)]\"\n data-slot=\"feature-item-description\"\n >\n {description}\n </p>\n ) : null}\n </div>\n </div>\n )\n}\n\nexport { FeatureItem, featureItemVariants }\n"]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
2
|
+
import { cva } from 'class-variance-authority';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
var arrowAnimatedVariants = cva(
|
|
6
|
+
// Base styles
|
|
7
|
+
["stroke-[1.5px]"],
|
|
8
|
+
{
|
|
9
|
+
variants: {
|
|
10
|
+
size: {
|
|
11
|
+
sm: "size-2.5",
|
|
12
|
+
md: "size-3",
|
|
13
|
+
lg: "size-4"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
size: "md"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
var arrowAnimatedLineVariants = cva([
|
|
22
|
+
"opacity-0 transition-opacity duration-200",
|
|
23
|
+
"group-hover:opacity-100"
|
|
24
|
+
]);
|
|
25
|
+
var arrowAnimatedHeadVariants = cva([
|
|
26
|
+
"transition-transform duration-200"
|
|
27
|
+
]);
|
|
28
|
+
var arrowAnimatedHeadTransforms = {
|
|
29
|
+
right: "group-hover:translate-x-[3px]",
|
|
30
|
+
left: "group-hover:-translate-x-[3px]",
|
|
31
|
+
up: "group-hover:-translate-y-[3px]",
|
|
32
|
+
down: "group-hover:translate-y-[3px]"
|
|
33
|
+
};
|
|
34
|
+
var directionPaths = {
|
|
35
|
+
right: {
|
|
36
|
+
line: "M0 5h7",
|
|
37
|
+
head: "M1 1l4 4-4 4",
|
|
38
|
+
viewBox: "0 0 10 10"
|
|
39
|
+
},
|
|
40
|
+
left: {
|
|
41
|
+
line: "M3 5h7",
|
|
42
|
+
head: "M9 1l-4 4 4 4",
|
|
43
|
+
viewBox: "0 0 10 10"
|
|
44
|
+
},
|
|
45
|
+
up: {
|
|
46
|
+
line: "M5 3v7",
|
|
47
|
+
head: "M1 9l4-4 4 4",
|
|
48
|
+
viewBox: "0 0 10 10"
|
|
49
|
+
},
|
|
50
|
+
down: {
|
|
51
|
+
line: "M5 0v7",
|
|
52
|
+
head: "M1 1l4 4 4-4",
|
|
53
|
+
viewBox: "0 0 10 10"
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
function ArrowAnimated({
|
|
57
|
+
direction = "right",
|
|
58
|
+
size,
|
|
59
|
+
className,
|
|
60
|
+
...props
|
|
61
|
+
}) {
|
|
62
|
+
const paths = directionPaths[direction];
|
|
63
|
+
const headTransform = arrowAnimatedHeadTransforms[direction];
|
|
64
|
+
return /* @__PURE__ */ jsxs(
|
|
65
|
+
"svg",
|
|
66
|
+
{
|
|
67
|
+
"aria-hidden": "true",
|
|
68
|
+
className: cn(arrowAnimatedVariants({ size }), className),
|
|
69
|
+
"data-slot": "arrow-animated",
|
|
70
|
+
fill: "none",
|
|
71
|
+
stroke: "currentColor",
|
|
72
|
+
viewBox: paths.viewBox,
|
|
73
|
+
...props,
|
|
74
|
+
children: [
|
|
75
|
+
/* @__PURE__ */ jsx("path", { className: cn(arrowAnimatedLineVariants()), d: paths.line }),
|
|
76
|
+
/* @__PURE__ */ jsx(
|
|
77
|
+
"path",
|
|
78
|
+
{
|
|
79
|
+
className: cn(arrowAnimatedHeadVariants(), headTransform),
|
|
80
|
+
d: paths.head
|
|
81
|
+
}
|
|
82
|
+
)
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
ArrowAnimated.displayName = "ArrowAnimated";
|
|
88
|
+
|
|
89
|
+
export { ArrowAnimated, arrowAnimatedHeadTransforms, arrowAnimatedHeadVariants, arrowAnimatedLineVariants, arrowAnimatedVariants };
|
|
90
|
+
//# sourceMappingURL=chunk-KDJCZXLB.js.map
|
|
91
|
+
//# sourceMappingURL=chunk-KDJCZXLB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/primitives/ArrowAnimated/ArrowAnimated.variants.ts","../src/components/primitives/ArrowAnimated/ArrowAnimated.tsx"],"names":[],"mappings":";;;;AAMO,IAAM,qBAAA,GAAwB,GAAA;AAAA;AAAA,EAEnC,CAAC,gBAAgB,CAAA;AAAA,EACjB;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,EAAA,EAAI,QAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAEO,IAAM,4BAA4B,GAAA,CAAI;AAAA,EAC3C,2CAAA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,4BAA4B,GAAA,CAAI;AAAA,EAC3C;AACF,CAAC;AAGM,IAAM,2BAAA,GAA8B;AAAA,EACzC,KAAA,EAAO,+BAAA;AAAA,EACP,IAAA,EAAM,gCAAA;AAAA,EACN,EAAA,EAAI,gCAAA;AAAA,EACJ,IAAA,EAAM;AACR;ACxBA,IAAM,cAAA,GAAiB;AAAA,EACrB,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,QAAA;AAAA,IACN,IAAA,EAAM,cAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,QAAA;AAAA,IACN,IAAA,EAAM,eAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,EAAA,EAAI;AAAA,IACF,IAAA,EAAM,QAAA;AAAA,IACN,IAAA,EAAM,cAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,QAAA;AAAA,IACN,IAAA,EAAM,cAAA;AAAA,IACN,OAAA,EAAS;AAAA;AAEb,CAAA;AA4BA,SAAS,aAAA,CAAc;AAAA,EACrB,SAAA,GAAY,OAAA;AAAA,EACZ,IAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAuB;AACrB,EAAA,MAAM,KAAA,GAAQ,eAAe,SAAS,CAAA;AACtC,EAAA,MAAM,aAAA,GAAgB,4BAA4B,SAAS,CAAA;AAE3D,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,WAAW,EAAA,CAAG,qBAAA,CAAsB,EAAE,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,MACxD,WAAA,EAAU,gBAAA;AAAA,MACV,IAAA,EAAK,MAAA;AAAA,MACL,MAAA,EAAO,cAAA;AAAA,MACP,SAAS,KAAA,CAAM,OAAA;AAAA,MACd,GAAG,KAAA;AAAA,MAGJ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,WAAW,EAAA,CAAG,yBAAA,EAA2B,CAAA,EAAG,CAAA,EAAG,MAAM,IAAA,EAAM,CAAA;AAAA,wBAEjE,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA,CAAG,yBAAA,EAA0B,EAAG,aAAa,CAAA;AAAA,YACxD,GAAG,KAAA,CAAM;AAAA;AAAA;AACX;AAAA;AAAA,GACF;AAEJ;AAEA,aAAA,CAAc,WAAA,GAAc,eAAA","file":"chunk-KDJCZXLB.js","sourcesContent":["// ArrowAnimated/ArrowAnimated.variants.ts\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * ArrowAnimated style variants using CVA\n */\nexport const arrowAnimatedVariants = cva(\n // Base styles\n [\"stroke-[1.5px]\"],\n {\n variants: {\n size: {\n sm: \"size-2.5\",\n md: \"size-3\",\n lg: \"size-4\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const arrowAnimatedLineVariants = cva([\n \"opacity-0 transition-opacity duration-200\",\n \"group-hover:opacity-100\",\n])\n\nexport const arrowAnimatedHeadVariants = cva([\n \"transition-transform duration-200\",\n])\n\n// Direction-specific translate transforms\nexport const arrowAnimatedHeadTransforms = {\n right: \"group-hover:translate-x-[3px]\",\n left: \"group-hover:-translate-x-[3px]\",\n up: \"group-hover:-translate-y-[3px]\",\n down: \"group-hover:translate-y-[3px]\",\n} as const\n\nexport type ArrowAnimatedVariantProps = VariantProps<\n typeof arrowAnimatedVariants\n>\n","// ArrowAnimated/ArrowAnimated.tsx\nimport type { ArrowAnimatedProps } from \"./ArrowAnimated.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n arrowAnimatedHeadTransforms,\n arrowAnimatedHeadVariants,\n arrowAnimatedLineVariants,\n arrowAnimatedVariants,\n} from \"./ArrowAnimated.variants\"\n\n/**\n * SVG path data for each direction\n */\nconst directionPaths = {\n right: {\n line: \"M0 5h7\",\n head: \"M1 1l4 4-4 4\",\n viewBox: \"0 0 10 10\",\n },\n left: {\n line: \"M3 5h7\",\n head: \"M9 1l-4 4 4 4\",\n viewBox: \"0 0 10 10\",\n },\n up: {\n line: \"M5 3v7\",\n head: \"M1 9l4-4 4 4\",\n viewBox: \"0 0 10 10\",\n },\n down: {\n line: \"M5 0v7\",\n head: \"M1 1l4 4 4-4\",\n viewBox: \"0 0 10 10\",\n },\n} as const\n\n/**\n * ArrowAnimated - Animated arrow icon for CTAs and links\n *\n * An SVG arrow that animates on hover (when parent has `group` class).\n * The line fades in and the arrow head translates in the direction of the arrow.\n *\n * @example\n * ```tsx\n * // Basic usage (requires parent with 'group' class)\n * <a href=\"/link\" className=\"group flex items-center\">\n * Learn more\n * <ArrowAnimated className=\"ml-1\" />\n * </a>\n *\n * // Different directions\n * <ArrowAnimated direction=\"right\" />\n * <ArrowAnimated direction=\"left\" />\n * <ArrowAnimated direction=\"up\" />\n * <ArrowAnimated direction=\"down\" />\n *\n * // Different sizes\n * <ArrowAnimated size=\"sm\" />\n * <ArrowAnimated size=\"md\" />\n * <ArrowAnimated size=\"lg\" />\n * ```\n */\nfunction ArrowAnimated({\n direction = \"right\",\n size,\n className,\n ...props\n}: ArrowAnimatedProps) {\n const paths = directionPaths[direction]\n const headTransform = arrowAnimatedHeadTransforms[direction]\n\n return (\n <svg\n aria-hidden=\"true\"\n className={cn(arrowAnimatedVariants({ size }), className)}\n data-slot=\"arrow-animated\"\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox={paths.viewBox}\n {...props}\n >\n {/* Line that fades in on hover */}\n <path className={cn(arrowAnimatedLineVariants())} d={paths.line} />\n {/* Arrow head that translates on hover */}\n <path\n className={cn(arrowAnimatedHeadVariants(), headTransform)}\n d={paths.head}\n />\n </svg>\n )\n}\n\nArrowAnimated.displayName = \"ArrowAnimated\"\n\nexport { ArrowAnimated }\n"]}
|
|
@@ -4501,5 +4501,5 @@ function DataTableDateCell({
|
|
|
4501
4501
|
}
|
|
4502
4502
|
|
|
4503
4503
|
export { DataTable, DataTableBooleanCell, DataTableCurrencyCell, DataTableDateCell, DataTableProgressCell, DataTableRatingCell, downloadFile, exportToCSV, exportToExcel, exportToPDF, tableToCSV };
|
|
4504
|
-
//# sourceMappingURL=chunk-
|
|
4505
|
-
//# sourceMappingURL=chunk-
|
|
4504
|
+
//# sourceMappingURL=chunk-MDIXY44D.js.map
|
|
4505
|
+
//# sourceMappingURL=chunk-MDIXY44D.js.map
|