canx-ui 1.0.3 → 1.1.1
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/bin/cli.d.ts +2 -0
- package/dist/bin/registry.d.ts +7 -0
- package/dist/components/ActionButton.d.ts +9 -0
- package/dist/components/Alert.d.ts +8 -0
- package/dist/components/AnimatedGradientText.d.ts +7 -0
- package/dist/components/ApplicationLogo.d.ts +1 -0
- package/dist/components/AuroraBackground.d.ts +5 -0
- package/dist/components/Badge.d.ts +9 -0
- package/dist/components/Button.d.ts +11 -0
- package/dist/components/Card.d.ts +8 -0
- package/dist/components/Checkbox.d.ts +8 -0
- package/dist/components/DataTable.d.ts +20 -0
- package/dist/components/GlowCard.d.ts +8 -0
- package/dist/components/GridPattern.d.ts +6 -0
- package/dist/components/Input.d.ts +5 -0
- package/dist/components/InputLabel.d.ts +8 -0
- package/dist/components/Label.d.ts +4 -0
- package/dist/components/Modal.d.ts +12 -0
- package/dist/components/PrimaryButton.d.ts +8 -0
- package/dist/components/ShimmerButton.d.ts +6 -0
- package/dist/components/SpotlightCard.d.ts +7 -0
- package/dist/components/Table.d.ts +10 -0
- package/dist/components/TextInput.d.ts +13 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.js +417 -288
- package/dist/lib/utils.d.ts +5 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -4
package/dist/index.js
CHANGED
|
@@ -1,6 +1,115 @@
|
|
|
1
|
-
//
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
// ../canxJS/dist/mvc/View.js
|
|
2
|
+
var Fragment = Symbol.for("canxjs.fragment");
|
|
3
|
+
var jsx = (type, props) => {
|
|
4
|
+
if (type === Fragment || typeof type === "symbol" && type.description === "canxjs.fragment") {
|
|
5
|
+
const children2 = props?.children;
|
|
6
|
+
if (Array.isArray(children2)) {
|
|
7
|
+
return children2.flat().map((c) => c === null || c === undefined || c === false ? "" : String(c)).join("");
|
|
8
|
+
}
|
|
9
|
+
return children2 ? String(children2) : "";
|
|
10
|
+
}
|
|
11
|
+
if (typeof type === "function") {
|
|
12
|
+
return type(props || {});
|
|
13
|
+
}
|
|
14
|
+
const tagName = type;
|
|
15
|
+
const children = props?.children;
|
|
16
|
+
const attrs = props ? Object.entries(props).filter(([key]) => key !== "children").map(([key, val]) => {
|
|
17
|
+
if (key === "className")
|
|
18
|
+
key = "class";
|
|
19
|
+
if (typeof val === "boolean")
|
|
20
|
+
return val ? key : "";
|
|
21
|
+
if (val === null || val === undefined)
|
|
22
|
+
return "";
|
|
23
|
+
return `${key}="${escapeHtml(String(val))}"`;
|
|
24
|
+
}).filter(Boolean).join(" ") : "";
|
|
25
|
+
let content = "";
|
|
26
|
+
if (children !== null && children !== undefined) {
|
|
27
|
+
if (Array.isArray(children)) {
|
|
28
|
+
content = children.flat().map((c) => c === null || c === undefined || c === false ? "" : String(c)).join("");
|
|
29
|
+
} else if (children !== false) {
|
|
30
|
+
content = String(children);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
const selfClosing = ["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "source", "track", "wbr"];
|
|
34
|
+
if (selfClosing.includes(tagName)) {
|
|
35
|
+
return `<${tagName}${attrs ? " " + attrs : ""} />`;
|
|
36
|
+
}
|
|
37
|
+
return `<${tagName}${attrs ? " " + attrs : ""}>${content}</${tagName}>`;
|
|
38
|
+
};
|
|
39
|
+
function escapeHtml(str) {
|
|
40
|
+
return str.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
41
|
+
}
|
|
42
|
+
// src/components/ActionButton.tsx
|
|
43
|
+
function ActionButton({ onClick, href, icon, variant = "neutral", label }) {
|
|
44
|
+
const baseClasses = "p-2 rounded-lg transition-all duration-200 flex items-center justify-center";
|
|
45
|
+
const variants = {
|
|
46
|
+
primary: "text-blue-400 hover:bg-blue-500/10 hover:text-blue-300",
|
|
47
|
+
danger: "text-red-400 hover:bg-red-500/10 hover:text-red-300",
|
|
48
|
+
neutral: "text-slate-400 hover:bg-slate-700/50 hover:text-white"
|
|
49
|
+
};
|
|
50
|
+
const content = /* @__PURE__ */ jsx(Fragment, {
|
|
51
|
+
children: [
|
|
52
|
+
icon && /* @__PURE__ */ jsx("svg", {
|
|
53
|
+
className: "w-4 h-4",
|
|
54
|
+
fill: "none",
|
|
55
|
+
stroke: "currentColor",
|
|
56
|
+
viewBox: "0 0 24 24",
|
|
57
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
58
|
+
strokeLinecap: "round",
|
|
59
|
+
strokeLinejoin: "round",
|
|
60
|
+
strokeWidth: "2",
|
|
61
|
+
d: icon
|
|
62
|
+
}, undefined, false, undefined, this)
|
|
63
|
+
}, undefined, false, undefined, this),
|
|
64
|
+
label && /* @__PURE__ */ jsx("span", {
|
|
65
|
+
className: icon ? "ml-2" : "",
|
|
66
|
+
children: label
|
|
67
|
+
}, undefined, false, undefined, this)
|
|
68
|
+
]
|
|
69
|
+
}, undefined, true, undefined, this);
|
|
70
|
+
if (href) {
|
|
71
|
+
return /* @__PURE__ */ jsx("a", {
|
|
72
|
+
href,
|
|
73
|
+
className: `${baseClasses} ${variants[variant]}`,
|
|
74
|
+
children: content
|
|
75
|
+
}, undefined, false, undefined, this);
|
|
76
|
+
}
|
|
77
|
+
return /* @__PURE__ */ jsx("button", {
|
|
78
|
+
onClick,
|
|
79
|
+
className: `${baseClasses} ${variants[variant]}`,
|
|
80
|
+
children: content
|
|
81
|
+
}, undefined, false, undefined, this);
|
|
82
|
+
}
|
|
83
|
+
// src/components/AnimatedGradientText.tsx
|
|
84
|
+
function AnimatedGradientText({
|
|
85
|
+
children,
|
|
86
|
+
className = "",
|
|
87
|
+
as: Tag = "span"
|
|
88
|
+
}) {
|
|
89
|
+
return /* @__PURE__ */ jsx(Tag, {
|
|
90
|
+
className: `text-gradient-animated ${className}`,
|
|
91
|
+
children
|
|
92
|
+
}, undefined, false, undefined, this);
|
|
93
|
+
}
|
|
94
|
+
// src/components/ApplicationLogo.tsx
|
|
95
|
+
function ApplicationLogo(props) {
|
|
96
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
97
|
+
viewBox: "0 0 317 48",
|
|
98
|
+
fill: "none",
|
|
99
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
100
|
+
...props,
|
|
101
|
+
children: [
|
|
102
|
+
/* @__PURE__ */ jsx("path", {
|
|
103
|
+
d: "M74.0664 47.3879H16.2917C14.1566 47.3879 12.0624 46.852 10.1989 45.8288C8.33534 44.8056 6.76212 43.3276 5.62173 41.5284C4.48135 39.7291 3.81055 37.6653 3.6703 35.525C3.53005 33.3846 3.92484 31.2359 4.81845 29.2721L17.2038 2.05353C17.3484 1.73562 17.5852 1.46782 17.8839 1.28424C18.1827 1.10066 18.53 1.00958 18.8821 1.02256C19.2341 1.03554 19.5753 1.152 19.8622 1.35712C20.1491 1.56223 20.3687 1.84656 20.4933 2.17384L30.2922 28.1691C30.5694 28.9103 30.7061 29.6973 30.6934 30.4891C30.6806 31.2809 30.5186 32.0637 30.218 32.8016C29.6596 34.1979 28.7618 35.4328 27.6012 36.4011C26.4406 37.3695 25.0531 38.0425 23.5562 38.3629L23.4756 38.3792L52.825 47.3879H74.0664Z",
|
|
104
|
+
fill: "#FF2D20"
|
|
105
|
+
}, undefined, false, undefined, this),
|
|
106
|
+
/* @__PURE__ */ jsx("path", {
|
|
107
|
+
d: "M67.3195 47.3879L86.6669 4.35339C86.7323 4.20909 86.8373 4.08573 86.969 3.99824C87.1007 3.91075 87.2536 3.86282 87.4093 3.86016C87.565 3.85751 87.7169 3.90025 87.8467 3.98319C87.9765 4.06614 88.0787 4.18573 88.141 4.3276L107.491 47.3879H130.435L98.5996 47.3879H67.3195Z",
|
|
108
|
+
fill: "#FF2D20"
|
|
109
|
+
}, undefined, false, undefined, this)
|
|
110
|
+
]
|
|
111
|
+
}, undefined, true, undefined, this);
|
|
112
|
+
}
|
|
4
113
|
// ../node_modules/clsx/dist/clsx.mjs
|
|
5
114
|
function r(e) {
|
|
6
115
|
var t, f, n = "";
|
|
@@ -22,72 +131,7 @@ function clsx() {
|
|
|
22
131
|
return n;
|
|
23
132
|
}
|
|
24
133
|
|
|
25
|
-
// ../node_modules/
|
|
26
|
-
var falsyToString = (value) => typeof value === "boolean" ? `${value}` : value === 0 ? "0" : value;
|
|
27
|
-
var cx = clsx;
|
|
28
|
-
var cva = (base, config) => (props) => {
|
|
29
|
-
var _config_compoundVariants;
|
|
30
|
-
if ((config === null || config === undefined ? undefined : config.variants) == null)
|
|
31
|
-
return cx(base, props === null || props === undefined ? undefined : props.class, props === null || props === undefined ? undefined : props.className);
|
|
32
|
-
const { variants, defaultVariants } = config;
|
|
33
|
-
const getVariantClassNames = Object.keys(variants).map((variant) => {
|
|
34
|
-
const variantProp = props === null || props === undefined ? undefined : props[variant];
|
|
35
|
-
const defaultVariantProp = defaultVariants === null || defaultVariants === undefined ? undefined : defaultVariants[variant];
|
|
36
|
-
if (variantProp === null)
|
|
37
|
-
return null;
|
|
38
|
-
const variantKey = falsyToString(variantProp) || falsyToString(defaultVariantProp);
|
|
39
|
-
return variants[variant][variantKey];
|
|
40
|
-
});
|
|
41
|
-
const propsWithoutUndefined = props && Object.entries(props).reduce((acc, param) => {
|
|
42
|
-
let [key, value] = param;
|
|
43
|
-
if (value === undefined) {
|
|
44
|
-
return acc;
|
|
45
|
-
}
|
|
46
|
-
acc[key] = value;
|
|
47
|
-
return acc;
|
|
48
|
-
}, {});
|
|
49
|
-
const getCompoundVariantClassNames = config === null || config === undefined ? undefined : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === undefined ? undefined : _config_compoundVariants.reduce((acc, param) => {
|
|
50
|
-
let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;
|
|
51
|
-
return Object.entries(compoundVariantOptions).every((param2) => {
|
|
52
|
-
let [key, value] = param2;
|
|
53
|
-
return Array.isArray(value) ? value.includes({
|
|
54
|
-
...defaultVariants,
|
|
55
|
-
...propsWithoutUndefined
|
|
56
|
-
}[key]) : {
|
|
57
|
-
...defaultVariants,
|
|
58
|
-
...propsWithoutUndefined
|
|
59
|
-
}[key] === value;
|
|
60
|
-
}) ? [
|
|
61
|
-
...acc,
|
|
62
|
-
cvClass,
|
|
63
|
-
cvClassName
|
|
64
|
-
] : acc;
|
|
65
|
-
}, []);
|
|
66
|
-
return cx(base, getVariantClassNames, getCompoundVariantClassNames, props === null || props === undefined ? undefined : props.class, props === null || props === undefined ? undefined : props.className);
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
// node_modules/clsx/dist/clsx.mjs
|
|
70
|
-
function r2(e) {
|
|
71
|
-
var t, f, n = "";
|
|
72
|
-
if (typeof e == "string" || typeof e == "number")
|
|
73
|
-
n += e;
|
|
74
|
-
else if (typeof e == "object")
|
|
75
|
-
if (Array.isArray(e)) {
|
|
76
|
-
var o = e.length;
|
|
77
|
-
for (t = 0;t < o; t++)
|
|
78
|
-
e[t] && (f = r2(e[t])) && (n && (n += " "), n += f);
|
|
79
|
-
} else
|
|
80
|
-
for (f in e)
|
|
81
|
-
e[f] && (n && (n += " "), n += f);
|
|
82
|
-
return n;
|
|
83
|
-
}
|
|
84
|
-
function clsx2() {
|
|
85
|
-
for (var e, t, f = 0, n = "", o = arguments.length;f < o; f++)
|
|
86
|
-
(e = arguments[f]) && (t = r2(e)) && (n && (n += " "), n += t);
|
|
87
|
-
return n;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
// node_modules/tailwind-merge/dist/bundle-mjs.mjs
|
|
134
|
+
// ../node_modules/tailwind-merge/dist/bundle-mjs.mjs
|
|
91
135
|
var concatArrays = (array1, array2) => {
|
|
92
136
|
const combinedArray = new Array(array1.length + array2.length);
|
|
93
137
|
for (let i = 0;i < array1.length; i++) {
|
|
@@ -1793,233 +1837,318 @@ var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
|
|
|
1793
1837
|
|
|
1794
1838
|
// src/lib/utils.ts
|
|
1795
1839
|
function cn(...inputs) {
|
|
1796
|
-
return twMerge(
|
|
1840
|
+
return twMerge(clsx(inputs));
|
|
1797
1841
|
}
|
|
1798
1842
|
|
|
1799
|
-
// src/components/
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1843
|
+
// src/components/AuroraBackground.tsx
|
|
1844
|
+
function AuroraBackground({ children, className, ...props }) {
|
|
1845
|
+
return /* @__PURE__ */ jsx("div", {
|
|
1846
|
+
className: cn("relative overflow-hidden", className),
|
|
1847
|
+
...props,
|
|
1848
|
+
children: [
|
|
1849
|
+
/* @__PURE__ */ jsx("div", {
|
|
1850
|
+
className: "absolute inset-0 overflow-hidden pointer-events-none",
|
|
1851
|
+
children: [
|
|
1852
|
+
/* @__PURE__ */ jsx("div", {
|
|
1853
|
+
className: "absolute top-0 -left-40 w-[500px] h-[500px] bg-emerald-500/20 rounded-full blur-[100px] aurora-blob-1"
|
|
1854
|
+
}, undefined, false, undefined, this),
|
|
1855
|
+
/* @__PURE__ */ jsx("div", {
|
|
1856
|
+
className: "absolute top-20 -right-40 w-[400px] h-[400px] bg-cyan-500/20 rounded-full blur-[100px] aurora-blob-2"
|
|
1857
|
+
}, undefined, false, undefined, this),
|
|
1858
|
+
/* @__PURE__ */ jsx("div", {
|
|
1859
|
+
className: "absolute -bottom-40 left-1/3 w-[600px] h-[600px] bg-purple-500/10 rounded-full blur-[120px] aurora-blob-3"
|
|
1860
|
+
}, undefined, false, undefined, this)
|
|
1861
|
+
]
|
|
1862
|
+
}, undefined, true, undefined, this),
|
|
1863
|
+
/* @__PURE__ */ jsx("div", {
|
|
1864
|
+
className: "absolute inset-0 grid-pattern pointer-events-none"
|
|
1865
|
+
}, undefined, false, undefined, this),
|
|
1866
|
+
/* @__PURE__ */ jsx("div", {
|
|
1867
|
+
className: "relative z-10",
|
|
1868
|
+
children
|
|
1869
|
+
}, undefined, false, undefined, this)
|
|
1870
|
+
]
|
|
1871
|
+
}, undefined, true, undefined, this);
|
|
1872
|
+
}
|
|
1873
|
+
// src/components/Checkbox.tsx
|
|
1874
|
+
function Checkbox({ name, value, checked, className = "" }) {
|
|
1875
|
+
const baseClass = "w-5 h-5 rounded border-slate-600 bg-slate-800 text-emerald-500 focus:ring-emerald-500/50 focus:ring-offset-0 focus:ring-2 transition-colors duration-200";
|
|
1876
|
+
const fullClass = `${baseClass} ${className}`;
|
|
1877
|
+
return /* @__PURE__ */ jsx("input", {
|
|
1878
|
+
type: "checkbox",
|
|
1879
|
+
name,
|
|
1880
|
+
value,
|
|
1881
|
+
checked,
|
|
1882
|
+
className: fullClass
|
|
1828
1883
|
}, undefined, false, undefined, this);
|
|
1829
|
-
}
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1884
|
+
}
|
|
1885
|
+
// src/components/DataTable.tsx
|
|
1886
|
+
function DataTable({ data, columns, actions, title, description, primaryAction }) {
|
|
1887
|
+
return /* @__PURE__ */ jsx("div", {
|
|
1888
|
+
className: "w-full",
|
|
1889
|
+
children: [
|
|
1890
|
+
(title || primaryAction) && /* @__PURE__ */ jsx("div", {
|
|
1891
|
+
className: "flex flex-col md:flex-row md:items-center justify-between gap-4 mb-6",
|
|
1892
|
+
children: [
|
|
1893
|
+
/* @__PURE__ */ jsx("div", {
|
|
1894
|
+
children: [
|
|
1895
|
+
title && /* @__PURE__ */ jsx("h2", {
|
|
1896
|
+
className: "text-2xl font-bold text-white tracking-tight",
|
|
1897
|
+
children: title
|
|
1898
|
+
}, undefined, false, undefined, this),
|
|
1899
|
+
description && /* @__PURE__ */ jsx("p", {
|
|
1900
|
+
className: "text-slate-400 mt-1",
|
|
1901
|
+
children: description
|
|
1902
|
+
}, undefined, false, undefined, this)
|
|
1903
|
+
]
|
|
1904
|
+
}, undefined, true, undefined, this),
|
|
1905
|
+
primaryAction && (primaryAction.href ? /* @__PURE__ */ jsx("a", {
|
|
1906
|
+
href: primaryAction.href,
|
|
1907
|
+
className: "btn-premium flex items-center gap-2",
|
|
1908
|
+
children: [
|
|
1909
|
+
/* @__PURE__ */ jsx("svg", {
|
|
1910
|
+
className: "w-5 h-5",
|
|
1911
|
+
fill: "none",
|
|
1912
|
+
stroke: "currentColor",
|
|
1913
|
+
viewBox: "0 0 24 24",
|
|
1914
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
1915
|
+
strokeLinecap: "round",
|
|
1916
|
+
strokeLinejoin: "round",
|
|
1917
|
+
strokeWidth: "2",
|
|
1918
|
+
d: "M12 4v16m8-8H4"
|
|
1919
|
+
}, undefined, false, undefined, this)
|
|
1920
|
+
}, undefined, false, undefined, this),
|
|
1921
|
+
primaryAction.label
|
|
1922
|
+
]
|
|
1923
|
+
}, undefined, true, undefined, this) : /* @__PURE__ */ jsx("button", {
|
|
1924
|
+
onClick: primaryAction.onClick,
|
|
1925
|
+
className: "btn-premium flex items-center gap-2",
|
|
1926
|
+
children: [
|
|
1927
|
+
/* @__PURE__ */ jsx("svg", {
|
|
1928
|
+
className: "w-5 h-5",
|
|
1929
|
+
fill: "none",
|
|
1930
|
+
stroke: "currentColor",
|
|
1931
|
+
viewBox: "0 0 24 24",
|
|
1932
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
1933
|
+
strokeLinecap: "round",
|
|
1934
|
+
strokeLinejoin: "round",
|
|
1935
|
+
strokeWidth: "2",
|
|
1936
|
+
d: "M12 4v16m8-8H4"
|
|
1937
|
+
}, undefined, false, undefined, this)
|
|
1938
|
+
}, undefined, false, undefined, this),
|
|
1939
|
+
primaryAction.label
|
|
1940
|
+
]
|
|
1941
|
+
}, undefined, true, undefined, this))
|
|
1942
|
+
]
|
|
1943
|
+
}, undefined, true, undefined, this),
|
|
1944
|
+
/* @__PURE__ */ jsx("div", {
|
|
1945
|
+
className: "glass rounded-xl overflow-hidden border border-slate-700/50 shadow-xl",
|
|
1946
|
+
children: [
|
|
1947
|
+
/* @__PURE__ */ jsx("div", {
|
|
1948
|
+
className: "overflow-x-auto",
|
|
1949
|
+
children: /* @__PURE__ */ jsx("table", {
|
|
1950
|
+
className: "w-full",
|
|
1951
|
+
children: [
|
|
1952
|
+
/* @__PURE__ */ jsx("thead", {
|
|
1953
|
+
children: /* @__PURE__ */ jsx("tr", {
|
|
1954
|
+
className: "bg-slate-800/50 border-b border-slate-700/50",
|
|
1955
|
+
children: [
|
|
1956
|
+
columns.map((col, idx) => /* @__PURE__ */ jsx("th", {
|
|
1957
|
+
className: `px-6 py-4 text-xs font-semibold text-slate-400 uppercase tracking-wider text-${col.align || "left"}`,
|
|
1958
|
+
children: col.header
|
|
1959
|
+
}, idx, false, undefined, this)),
|
|
1960
|
+
actions && /* @__PURE__ */ jsx("th", {
|
|
1961
|
+
className: "px-6 py-4 text-xs font-semibold text-slate-400 uppercase tracking-wider text-right",
|
|
1962
|
+
children: "Actions"
|
|
1963
|
+
}, undefined, false, undefined, this)
|
|
1964
|
+
]
|
|
1965
|
+
}, undefined, true, undefined, this)
|
|
1966
|
+
}, undefined, false, undefined, this),
|
|
1967
|
+
/* @__PURE__ */ jsx("tbody", {
|
|
1968
|
+
className: "divide-y divide-slate-700/50",
|
|
1969
|
+
children: data.map((item, rowIdx) => /* @__PURE__ */ jsx("tr", {
|
|
1970
|
+
className: "hover:bg-slate-800/30 transition-colors group",
|
|
1971
|
+
children: [
|
|
1972
|
+
columns.map((col, colIdx) => /* @__PURE__ */ jsx("td", {
|
|
1973
|
+
className: `px-6 py-4 whitespace-nowrap text-sm text-slate-300 text-${col.align || "left"}`,
|
|
1974
|
+
children: col.render ? col.render(item) : item[col.accessor]
|
|
1975
|
+
}, colIdx, false, undefined, this)),
|
|
1976
|
+
actions && /* @__PURE__ */ jsx("td", {
|
|
1977
|
+
className: "px-6 py-4 whitespace-nowrap text-right text-sm font-medium",
|
|
1978
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
1979
|
+
className: "flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100 transition-opacity",
|
|
1980
|
+
children: actions(item)
|
|
1981
|
+
}, undefined, false, undefined, this)
|
|
1982
|
+
}, undefined, false, undefined, this)
|
|
1983
|
+
]
|
|
1984
|
+
}, rowIdx, true, undefined, this))
|
|
1985
|
+
}, undefined, false, undefined, this)
|
|
1986
|
+
]
|
|
1987
|
+
}, undefined, true, undefined, this)
|
|
1988
|
+
}, undefined, false, undefined, this),
|
|
1989
|
+
/* @__PURE__ */ jsx("div", {
|
|
1990
|
+
className: "px-6 py-4 border-t border-slate-700/50 flex items-center justify-between bg-slate-800/30",
|
|
1991
|
+
children: [
|
|
1992
|
+
/* @__PURE__ */ jsx("span", {
|
|
1993
|
+
className: "text-sm text-slate-500",
|
|
1994
|
+
children: [
|
|
1995
|
+
"Showing 1 to ",
|
|
1996
|
+
data.length,
|
|
1997
|
+
" of ",
|
|
1998
|
+
data.length,
|
|
1999
|
+
" entries"
|
|
2000
|
+
]
|
|
2001
|
+
}, undefined, true, undefined, this),
|
|
2002
|
+
/* @__PURE__ */ jsx("div", {
|
|
2003
|
+
className: "flex gap-2",
|
|
2004
|
+
children: [
|
|
2005
|
+
/* @__PURE__ */ jsx("button", {
|
|
2006
|
+
className: "px-3 py-1 rounded-lg bg-slate-800 border border-slate-700 text-slate-400 text-sm hover:text-white hover:border-slate-600 transition",
|
|
2007
|
+
children: "Previous"
|
|
2008
|
+
}, undefined, false, undefined, this),
|
|
2009
|
+
/* @__PURE__ */ jsx("button", {
|
|
2010
|
+
className: "px-3 py-1 rounded-lg bg-primary/20 border border-primary/50 text-emerald-400 text-sm",
|
|
2011
|
+
children: "1"
|
|
2012
|
+
}, undefined, false, undefined, this),
|
|
2013
|
+
/* @__PURE__ */ jsx("button", {
|
|
2014
|
+
className: "px-3 py-1 rounded-lg bg-slate-800 border border-slate-700 text-slate-400 text-sm hover:text-white hover:border-slate-600 transition",
|
|
2015
|
+
children: "Next"
|
|
2016
|
+
}, undefined, false, undefined, this)
|
|
2017
|
+
]
|
|
2018
|
+
}, undefined, true, undefined, this)
|
|
2019
|
+
]
|
|
2020
|
+
}, undefined, true, undefined, this)
|
|
2021
|
+
]
|
|
2022
|
+
}, undefined, true, undefined, this)
|
|
2023
|
+
]
|
|
2024
|
+
}, undefined, true, undefined, this);
|
|
2025
|
+
}
|
|
2026
|
+
// src/components/GlowCard.tsx
|
|
2027
|
+
function GlowCard({
|
|
2028
|
+
children,
|
|
2029
|
+
className,
|
|
2030
|
+
hoverEffect = "both",
|
|
2031
|
+
...props
|
|
2032
|
+
}) {
|
|
2033
|
+
const hoverClasses = {
|
|
2034
|
+
lift: "card-hover-lift",
|
|
2035
|
+
glow: "card-hover-glow",
|
|
2036
|
+
both: "card-hover-lift card-hover-glow"
|
|
2037
|
+
};
|
|
2038
|
+
return /* @__PURE__ */ jsx("div", {
|
|
2039
|
+
className: cn("glass rounded-2xl p-6", hoverClasses[hoverEffect], className),
|
|
2040
|
+
...props,
|
|
2041
|
+
children
|
|
1840
2042
|
}, undefined, false, undefined, this);
|
|
1841
|
-
}
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
variant: {
|
|
1848
|
-
default: "border-transparent bg-primary text-primary-foreground hover:bg-primary/80",
|
|
1849
|
-
secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
1850
|
-
destructive: "border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",
|
|
1851
|
-
outline: "text-foreground"
|
|
1852
|
-
}
|
|
1853
|
-
},
|
|
1854
|
-
defaultVariants: {
|
|
1855
|
-
variant: "default"
|
|
1856
|
-
}
|
|
1857
|
-
});
|
|
1858
|
-
function Badge({ className, variant, ...props }) {
|
|
1859
|
-
return /* @__PURE__ */ jsxDEV3("div", {
|
|
1860
|
-
className: cn(badgeVariants({ variant }), className),
|
|
1861
|
-
...props
|
|
2043
|
+
}
|
|
2044
|
+
// src/components/GridPattern.tsx
|
|
2045
|
+
function GridPattern({ className = "", variant = "grid" }) {
|
|
2046
|
+
const patternClass = variant === "grid" ? "grid-pattern" : "dots-pattern";
|
|
2047
|
+
return /* @__PURE__ */ jsx("div", {
|
|
2048
|
+
className: `absolute inset-0 ${patternClass} pointer-events-none ${className}`
|
|
1862
2049
|
}, undefined, false, undefined, this);
|
|
1863
2050
|
}
|
|
1864
|
-
// src/components/
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
}
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
...props
|
|
1899
|
-
}, undefined, false, undefined, this));
|
|
1900
|
-
CardDescription.displayName = "CardDescription";
|
|
1901
|
-
var CardContent = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV5("div", {
|
|
1902
|
-
ref,
|
|
1903
|
-
className: cn("p-6 pt-0", className),
|
|
1904
|
-
...props
|
|
1905
|
-
}, undefined, false, undefined, this));
|
|
1906
|
-
CardContent.displayName = "CardContent";
|
|
1907
|
-
var CardFooter = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV5("div", {
|
|
1908
|
-
ref,
|
|
1909
|
-
className: cn("flex items-center p-6 pt-0", className),
|
|
2051
|
+
// src/components/InputLabel.tsx
|
|
2052
|
+
function InputLabel({ htmlFor, value, className = "", children }) {
|
|
2053
|
+
const fullClass = `block font-medium text-sm text-slate-300 mb-2 ${className}`;
|
|
2054
|
+
return /* @__PURE__ */ jsx("label", {
|
|
2055
|
+
htmlFor,
|
|
2056
|
+
className: fullClass,
|
|
2057
|
+
children: value ? value : children
|
|
2058
|
+
}, undefined, false, undefined, this);
|
|
2059
|
+
}
|
|
2060
|
+
// src/components/PrimaryButton.tsx
|
|
2061
|
+
function PrimaryButton({
|
|
2062
|
+
type = "submit",
|
|
2063
|
+
className = "",
|
|
2064
|
+
disabled = false,
|
|
2065
|
+
children
|
|
2066
|
+
}) {
|
|
2067
|
+
const baseClass = "inline-flex items-center justify-center px-6 py-3 bg-gradient-to-r from-emerald-500 to-cyan-500 text-white font-semibold rounded-xl shadow-lg shadow-emerald-500/25 hover:shadow-emerald-500/40 hover:scale-[1.02] focus:outline-none focus:ring-2 focus:ring-emerald-500/50 transition-all duration-300";
|
|
2068
|
+
const disabledClass = disabled ? " opacity-50 cursor-not-allowed hover:scale-100" : "";
|
|
2069
|
+
const fullClass = `${baseClass}${disabledClass} ${className}`;
|
|
2070
|
+
return /* @__PURE__ */ jsx("button", {
|
|
2071
|
+
type,
|
|
2072
|
+
className: fullClass,
|
|
2073
|
+
disabled,
|
|
2074
|
+
children
|
|
2075
|
+
}, undefined, false, undefined, this);
|
|
2076
|
+
}
|
|
2077
|
+
// src/components/ShimmerButton.tsx
|
|
2078
|
+
function ShimmerButton({
|
|
2079
|
+
children,
|
|
2080
|
+
className,
|
|
2081
|
+
href,
|
|
2082
|
+
type = "button",
|
|
2083
|
+
disabled = false,
|
|
2084
|
+
variant = "primary",
|
|
1910
2085
|
...props
|
|
1911
|
-
}
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
}
|
|
1922
|
-
},
|
|
1923
|
-
defaultVariants: {
|
|
1924
|
-
variant: "default"
|
|
2086
|
+
}) {
|
|
2087
|
+
const baseClass = variant === "primary" ? "btn-premium shimmer-effect" : "btn-outline-glow";
|
|
2088
|
+
const disabledClass = disabled ? "opacity-50 cursor-not-allowed" : "";
|
|
2089
|
+
if (href) {
|
|
2090
|
+
return /* @__PURE__ */ jsx("a", {
|
|
2091
|
+
href,
|
|
2092
|
+
className: cn(baseClass, disabledClass, className),
|
|
2093
|
+
...props,
|
|
2094
|
+
children
|
|
2095
|
+
}, undefined, false, undefined, this);
|
|
1925
2096
|
}
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
}, undefined, false, undefined, this)
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
}, undefined, false, undefined, this));
|
|
1969
|
-
TableBody.displayName = "TableBody";
|
|
1970
|
-
var TableFooter = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV7("tfoot", {
|
|
1971
|
-
ref,
|
|
1972
|
-
className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
|
|
1973
|
-
...props
|
|
1974
|
-
}, undefined, false, undefined, this));
|
|
1975
|
-
TableFooter.displayName = "TableFooter";
|
|
1976
|
-
var TableRow = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV7("tr", {
|
|
1977
|
-
ref,
|
|
1978
|
-
className: cn("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted", className),
|
|
1979
|
-
...props
|
|
1980
|
-
}, undefined, false, undefined, this));
|
|
1981
|
-
TableRow.displayName = "TableRow";
|
|
1982
|
-
var TableHead = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV7("th", {
|
|
1983
|
-
ref,
|
|
1984
|
-
className: cn("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0", className),
|
|
1985
|
-
...props
|
|
1986
|
-
}, undefined, false, undefined, this));
|
|
1987
|
-
TableHead.displayName = "TableHead";
|
|
1988
|
-
var TableCell = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV7("td", {
|
|
1989
|
-
ref,
|
|
1990
|
-
className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className),
|
|
1991
|
-
...props
|
|
1992
|
-
}, undefined, false, undefined, this));
|
|
1993
|
-
TableCell.displayName = "TableCell";
|
|
1994
|
-
var TableCaption = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxDEV7("caption", {
|
|
1995
|
-
ref,
|
|
1996
|
-
className: cn("mt-4 text-sm text-muted-foreground", className),
|
|
1997
|
-
...props
|
|
1998
|
-
}, undefined, false, undefined, this));
|
|
1999
|
-
TableCaption.displayName = "TableCaption";
|
|
2097
|
+
return /* @__PURE__ */ jsx("button", {
|
|
2098
|
+
type,
|
|
2099
|
+
className: cn(baseClass, disabledClass, className),
|
|
2100
|
+
disabled,
|
|
2101
|
+
...props,
|
|
2102
|
+
children
|
|
2103
|
+
}, undefined, false, undefined, this);
|
|
2104
|
+
}
|
|
2105
|
+
// src/components/SpotlightCard.tsx
|
|
2106
|
+
function SpotlightCard({ children, className, ...props }) {
|
|
2107
|
+
return /* @__PURE__ */ jsx("div", {
|
|
2108
|
+
className: cn("spotlight-card p-6", className),
|
|
2109
|
+
...props,
|
|
2110
|
+
children
|
|
2111
|
+
}, undefined, false, undefined, this);
|
|
2112
|
+
}
|
|
2113
|
+
// src/components/TextInput.tsx
|
|
2114
|
+
function TextInput({
|
|
2115
|
+
id,
|
|
2116
|
+
type = "text",
|
|
2117
|
+
name,
|
|
2118
|
+
value,
|
|
2119
|
+
className = "",
|
|
2120
|
+
placeholder,
|
|
2121
|
+
required,
|
|
2122
|
+
autoFocus,
|
|
2123
|
+
autoComplete
|
|
2124
|
+
}) {
|
|
2125
|
+
const baseClass = "w-full px-4 py-3 bg-slate-800/50 border border-slate-700 rounded-xl text-white placeholder-slate-400 focus:outline-none focus:border-emerald-500 focus:ring-2 focus:ring-emerald-500/20 transition-all duration-300";
|
|
2126
|
+
const fullClass = `${baseClass} ${className}`;
|
|
2127
|
+
return /* @__PURE__ */ jsx("input", {
|
|
2128
|
+
id,
|
|
2129
|
+
type,
|
|
2130
|
+
name,
|
|
2131
|
+
value,
|
|
2132
|
+
className: fullClass,
|
|
2133
|
+
placeholder,
|
|
2134
|
+
required,
|
|
2135
|
+
autoFocus,
|
|
2136
|
+
autoComplete
|
|
2137
|
+
}, undefined, false, undefined, this);
|
|
2138
|
+
}
|
|
2000
2139
|
export {
|
|
2001
2140
|
cn,
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
CardHeader,
|
|
2016
|
-
CardFooter,
|
|
2017
|
-
CardDescription,
|
|
2018
|
-
CardContent,
|
|
2019
|
-
Card,
|
|
2020
|
-
Button,
|
|
2021
|
-
Badge,
|
|
2022
|
-
AlertTitle,
|
|
2023
|
-
AlertDescription,
|
|
2024
|
-
Alert
|
|
2141
|
+
TextInput,
|
|
2142
|
+
SpotlightCard,
|
|
2143
|
+
ShimmerButton,
|
|
2144
|
+
PrimaryButton,
|
|
2145
|
+
InputLabel,
|
|
2146
|
+
GridPattern,
|
|
2147
|
+
GlowCard,
|
|
2148
|
+
DataTable,
|
|
2149
|
+
Checkbox,
|
|
2150
|
+
AuroraBackground,
|
|
2151
|
+
ApplicationLogo,
|
|
2152
|
+
AnimatedGradientText,
|
|
2153
|
+
ActionButton
|
|
2025
2154
|
};
|