virtual-ui-project-lib 1.0.0 → 1.0.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/README.md +0 -4
- package/dist/index.js +165 -154
- package/dist/index.mjs +162 -153
- package/package.json +1 -1
package/README.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -37,9 +37,11 @@ __export(index_exports, {
|
|
|
37
37
|
Card: () => Card,
|
|
38
38
|
Charts: () => Charts,
|
|
39
39
|
ColorPicker: () => ColorPicker,
|
|
40
|
-
|
|
40
|
+
DatePicker: () => DatePicker,
|
|
41
|
+
ECommerceCard: () => ECommerceCard,
|
|
41
42
|
FileUpload: () => FileUpload,
|
|
42
43
|
Footer: () => Footer,
|
|
44
|
+
IDCard: () => IDCard,
|
|
43
45
|
ImageCard: () => ImageCard,
|
|
44
46
|
ImageSlider: () => ImageSlider,
|
|
45
47
|
InvoiceCard: () => InvoiceCard,
|
|
@@ -3582,64 +3584,8 @@ var ProgressBar = ({
|
|
|
3582
3584
|
return null;
|
|
3583
3585
|
};
|
|
3584
3586
|
|
|
3585
|
-
// src/components/EcommerceCard/EcommerceCard.jsx
|
|
3586
|
-
var import_react20 = __toESM(require("react"));
|
|
3587
|
-
var EcommerceCard = ({
|
|
3588
|
-
image = "https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=600&q=80",
|
|
3589
|
-
title = "Wireless Headphones",
|
|
3590
|
-
description = "Premium noise-cancelling headphones with 40 hours battery life.",
|
|
3591
|
-
price = 199,
|
|
3592
|
-
currency = "$",
|
|
3593
|
-
accent = "#6366f1",
|
|
3594
|
-
bg = "#0f172a",
|
|
3595
|
-
onAddToCart = () => {
|
|
3596
|
-
},
|
|
3597
|
-
onViewDetails = () => {
|
|
3598
|
-
}
|
|
3599
|
-
}) => {
|
|
3600
|
-
const [hovered, setHovered] = (0, import_react20.useState)(false);
|
|
3601
|
-
const alpha = (hex, op) => {
|
|
3602
|
-
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3603
|
-
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3604
|
-
};
|
|
3605
|
-
return /* @__PURE__ */ import_react20.default.createElement(
|
|
3606
|
-
"div",
|
|
3607
|
-
{
|
|
3608
|
-
onMouseEnter: () => setHovered(true),
|
|
3609
|
-
onMouseLeave: () => setHovered(false),
|
|
3610
|
-
style: {
|
|
3611
|
-
background: bg,
|
|
3612
|
-
borderRadius: "20px",
|
|
3613
|
-
overflow: "hidden",
|
|
3614
|
-
width: "300px",
|
|
3615
|
-
border: "1px solid " + (hovered ? alpha(accent, 0.3) : "rgba(255,255,255,0.07)"),
|
|
3616
|
-
fontFamily: "system-ui,sans-serif",
|
|
3617
|
-
transition: "transform 0.25s, box-shadow 0.25s",
|
|
3618
|
-
transform: hovered ? "translateY(-4px)" : "translateY(0px)",
|
|
3619
|
-
boxShadow: hovered ? "0 16px 40px rgba(0,0,0,0.5)" : "0 4px 20px rgba(0,0,0,0.3)"
|
|
3620
|
-
}
|
|
3621
|
-
},
|
|
3622
|
-
/* @__PURE__ */ import_react20.default.createElement("div", { style: { position: "relative", width: "100%", height: "200px", overflow: "hidden" } }, /* @__PURE__ */ import_react20.default.createElement("img", { src: image, alt: title, style: { width: "100%", height: "100%", objectFit: "cover", transform: hovered ? "scale(1.05)" : "scale(1)", transition: "transform 0.4s ease" } }), /* @__PURE__ */ import_react20.default.createElement("div", { style: { position: "absolute", inset: 0, background: "linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%)" } })),
|
|
3623
|
-
/* @__PURE__ */ import_react20.default.createElement("div", { style: { padding: "18px" } }, /* @__PURE__ */ import_react20.default.createElement("h3", { style: { fontSize: "15px", fontWeight: "700", color: "#fff", margin: "0 0 8px", lineHeight: 1.4 } }, title), /* @__PURE__ */ import_react20.default.createElement("p", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", lineHeight: 1.65, margin: "0 0 18px" } }, description), /* @__PURE__ */ import_react20.default.createElement("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between", marginBottom: "18px" } }, /* @__PURE__ */ import_react20.default.createElement("span", { style: { fontSize: "24px", fontWeight: "800", color: "#fff" } }, currency, price), /* @__PURE__ */ import_react20.default.createElement(
|
|
3624
|
-
"button",
|
|
3625
|
-
{
|
|
3626
|
-
onClick: onAddToCart,
|
|
3627
|
-
style: { padding: "8px 16px", borderRadius: "12px", border: "none", background: accent, color: "#fff", fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3628
|
-
},
|
|
3629
|
-
"Add to Cart"
|
|
3630
|
-
)), /* @__PURE__ */ import_react20.default.createElement(
|
|
3631
|
-
"button",
|
|
3632
|
-
{
|
|
3633
|
-
onClick: onViewDetails,
|
|
3634
|
-
style: { width: "100%", padding: "11px", borderRadius: "12px", border: "1px solid " + alpha(accent, 0.3), background: "transparent", color: accent, fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3635
|
-
},
|
|
3636
|
-
"View Details"
|
|
3637
|
-
))
|
|
3638
|
-
);
|
|
3639
|
-
};
|
|
3640
|
-
|
|
3641
3587
|
// src/components/AnimatedForm/AnimatedForm.jsx
|
|
3642
|
-
var
|
|
3588
|
+
var import_react20 = __toESM(require("react"));
|
|
3643
3589
|
var AnimatedForm = ({
|
|
3644
3590
|
title = "Contact Us",
|
|
3645
3591
|
description = "We'll get back to you shortly",
|
|
@@ -3649,15 +3595,15 @@ var AnimatedForm = ({
|
|
|
3649
3595
|
onSubmit = () => {
|
|
3650
3596
|
}
|
|
3651
3597
|
}) => {
|
|
3652
|
-
const [name, setName] = (0,
|
|
3653
|
-
const [email, setEmail] = (0,
|
|
3654
|
-
const [message, setMessage] = (0,
|
|
3655
|
-
const [hovered, setHovered] = (0,
|
|
3598
|
+
const [name, setName] = (0, import_react20.useState)("");
|
|
3599
|
+
const [email, setEmail] = (0, import_react20.useState)("");
|
|
3600
|
+
const [message, setMessage] = (0, import_react20.useState)("");
|
|
3601
|
+
const [hovered, setHovered] = (0, import_react20.useState)(false);
|
|
3656
3602
|
const alpha = (hex, op) => {
|
|
3657
3603
|
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3658
3604
|
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3659
3605
|
};
|
|
3660
|
-
return /* @__PURE__ */
|
|
3606
|
+
return /* @__PURE__ */ import_react20.default.createElement(
|
|
3661
3607
|
"div",
|
|
3662
3608
|
{
|
|
3663
3609
|
onMouseEnter: () => setHovered(true),
|
|
@@ -3674,9 +3620,9 @@ var AnimatedForm = ({
|
|
|
3674
3620
|
boxShadow: hovered ? "0 16px 40px rgba(0,0,0,0.5)" : "0 4px 20px rgba(0,0,0,0.3)"
|
|
3675
3621
|
}
|
|
3676
3622
|
},
|
|
3677
|
-
/* @__PURE__ */
|
|
3678
|
-
/* @__PURE__ */
|
|
3679
|
-
/* @__PURE__ */
|
|
3623
|
+
/* @__PURE__ */ import_react20.default.createElement("h2", { style: { fontSize: "20px", fontWeight: "700", color: "#fff", margin: "0 0 8px" } }, title),
|
|
3624
|
+
/* @__PURE__ */ import_react20.default.createElement("p", { style: { fontSize: "14px", color: "rgba(255,255,255,0.45)", margin: "0 0 24px" } }, description),
|
|
3625
|
+
/* @__PURE__ */ import_react20.default.createElement(
|
|
3680
3626
|
"input",
|
|
3681
3627
|
{
|
|
3682
3628
|
type: "text",
|
|
@@ -3698,7 +3644,7 @@ var AnimatedForm = ({
|
|
|
3698
3644
|
}
|
|
3699
3645
|
}
|
|
3700
3646
|
),
|
|
3701
|
-
/* @__PURE__ */
|
|
3647
|
+
/* @__PURE__ */ import_react20.default.createElement(
|
|
3702
3648
|
"input",
|
|
3703
3649
|
{
|
|
3704
3650
|
type: "email",
|
|
@@ -3720,7 +3666,7 @@ var AnimatedForm = ({
|
|
|
3720
3666
|
}
|
|
3721
3667
|
}
|
|
3722
3668
|
),
|
|
3723
|
-
/* @__PURE__ */
|
|
3669
|
+
/* @__PURE__ */ import_react20.default.createElement(
|
|
3724
3670
|
"textarea",
|
|
3725
3671
|
{
|
|
3726
3672
|
placeholder: "Your Message",
|
|
@@ -3743,7 +3689,7 @@ var AnimatedForm = ({
|
|
|
3743
3689
|
}
|
|
3744
3690
|
}
|
|
3745
3691
|
),
|
|
3746
|
-
/* @__PURE__ */
|
|
3692
|
+
/* @__PURE__ */ import_react20.default.createElement(
|
|
3747
3693
|
"button",
|
|
3748
3694
|
{
|
|
3749
3695
|
onClick: () => onSubmit({ name, email, message }),
|
|
@@ -3766,7 +3712,7 @@ var AnimatedForm = ({
|
|
|
3766
3712
|
};
|
|
3767
3713
|
|
|
3768
3714
|
// src/components/ReviewCard/ReviewCard.jsx
|
|
3769
|
-
var
|
|
3715
|
+
var import_react21 = __toESM(require("react"));
|
|
3770
3716
|
var ReviewCard = ({
|
|
3771
3717
|
avatar = "https://images.unsplash.com/photo-1633332755192-727a05c4013d?w=800&q=80",
|
|
3772
3718
|
name = "John Doe",
|
|
@@ -3782,11 +3728,11 @@ var ReviewCard = ({
|
|
|
3782
3728
|
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3783
3729
|
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3784
3730
|
};
|
|
3785
|
-
return /* @__PURE__ */
|
|
3731
|
+
return /* @__PURE__ */ import_react21.default.createElement("div", { style: { background: bg, borderRadius: "16px", padding: "16px", width: "320px", fontFamily: "system-ui,sans-serif", border: "1px solid rgba(255,255,255,0.08)", boxShadow: "0 4px 16px rgba(0,0,0,0.3)" } }, /* @__PURE__ */ import_react21.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "12px", marginBottom: "12px" } }, /* @__PURE__ */ import_react21.default.createElement("img", { src: avatar, alt: name, onClick: onProfileClick, style: { width: "40px", height: "40px", borderRadius: "50%", cursor: "pointer" } }), /* @__PURE__ */ import_react21.default.createElement("div", { style: { display: "flex", flexDirection: "column", gap: "2px" } }, /* @__PURE__ */ import_react21.default.createElement("div", { style: { fontSize: "14px", fontWeight: "700", color: "#fff" } }, name), /* @__PURE__ */ import_react21.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "4px" } }, Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ import_react21.default.createElement("svg", { key: i, width: "14", height: "14", viewBox: "0 0 24 24", fill: i < rating ? accent : "rgba(255,255,255,0.15)", stroke: "none" }, /* @__PURE__ */ import_react21.default.createElement("path", { d: "M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z" })))))), /* @__PURE__ */ import_react21.default.createElement("div", { style: { fontSize: "13px", color: "rgba(255,255,255,0.7)", lineHeight: 1.5, marginBottom: "12px" } }, review), /* @__PURE__ */ import_react21.default.createElement("div", { style: { fontSize: "11px", color: "rgba(255,255,255,0.4)" } }, date));
|
|
3786
3732
|
};
|
|
3787
3733
|
|
|
3788
3734
|
// src/components/Card/Card.jsx
|
|
3789
|
-
var
|
|
3735
|
+
var import_react22 = __toESM(require("react"));
|
|
3790
3736
|
var Card = ({
|
|
3791
3737
|
title = "Performance",
|
|
3792
3738
|
description = "Real-time metrics with live dashboard updates every second.",
|
|
@@ -3794,8 +3740,8 @@ var Card = ({
|
|
|
3794
3740
|
tag = "Active",
|
|
3795
3741
|
onClick
|
|
3796
3742
|
}) => {
|
|
3797
|
-
const [hovered, setHovered] = (0,
|
|
3798
|
-
return /* @__PURE__ */
|
|
3743
|
+
const [hovered, setHovered] = (0, import_react22.useState)(false);
|
|
3744
|
+
return /* @__PURE__ */ import_react22.default.createElement(
|
|
3799
3745
|
"div",
|
|
3800
3746
|
{
|
|
3801
3747
|
onMouseEnter: () => setHovered(true),
|
|
@@ -3815,7 +3761,7 @@ var Card = ({
|
|
|
3815
3761
|
width: "260px"
|
|
3816
3762
|
}
|
|
3817
3763
|
},
|
|
3818
|
-
/* @__PURE__ */
|
|
3764
|
+
/* @__PURE__ */ import_react22.default.createElement("div", { style: {
|
|
3819
3765
|
position: "absolute",
|
|
3820
3766
|
top: 0,
|
|
3821
3767
|
left: 0,
|
|
@@ -3824,7 +3770,7 @@ var Card = ({
|
|
|
3824
3770
|
background: "#1D9E75",
|
|
3825
3771
|
borderRadius: "12px 12px 0 0"
|
|
3826
3772
|
} }),
|
|
3827
|
-
/* @__PURE__ */
|
|
3773
|
+
/* @__PURE__ */ import_react22.default.createElement("div", { style: {
|
|
3828
3774
|
width: 40,
|
|
3829
3775
|
height: 40,
|
|
3830
3776
|
borderRadius: 8,
|
|
@@ -3835,22 +3781,22 @@ var Card = ({
|
|
|
3835
3781
|
fontSize: 18,
|
|
3836
3782
|
marginBottom: 14
|
|
3837
3783
|
} }, icon),
|
|
3838
|
-
/* @__PURE__ */
|
|
3839
|
-
/* @__PURE__ */
|
|
3840
|
-
/* @__PURE__ */
|
|
3784
|
+
/* @__PURE__ */ import_react22.default.createElement("p", { style: { fontSize: 15, fontWeight: 700, color: "#111", margin: "0 0 6px" } }, title),
|
|
3785
|
+
/* @__PURE__ */ import_react22.default.createElement("p", { style: { fontSize: 13, color: "#666", lineHeight: 1.6, margin: "0 0 16px" } }, description),
|
|
3786
|
+
/* @__PURE__ */ import_react22.default.createElement("div", { style: {
|
|
3841
3787
|
display: "flex",
|
|
3842
3788
|
alignItems: "center",
|
|
3843
3789
|
justifyContent: "space-between",
|
|
3844
3790
|
borderTop: "0.5px solid #0000001a",
|
|
3845
3791
|
paddingTop: 12
|
|
3846
|
-
} }, /* @__PURE__ */
|
|
3792
|
+
} }, /* @__PURE__ */ import_react22.default.createElement("span", { style: {
|
|
3847
3793
|
fontSize: 11,
|
|
3848
3794
|
fontWeight: 500,
|
|
3849
3795
|
padding: "3px 9px",
|
|
3850
3796
|
borderRadius: 20,
|
|
3851
3797
|
background: "#E1F5EE",
|
|
3852
3798
|
color: "#0F6E56"
|
|
3853
|
-
} }, tag), /* @__PURE__ */
|
|
3799
|
+
} }, tag), /* @__PURE__ */ import_react22.default.createElement("span", { style: {
|
|
3854
3800
|
fontSize: 14,
|
|
3855
3801
|
color: "#999",
|
|
3856
3802
|
display: "inline-block",
|
|
@@ -3861,90 +3807,36 @@ var Card = ({
|
|
|
3861
3807
|
};
|
|
3862
3808
|
|
|
3863
3809
|
// src/components/Button/Button.jsx
|
|
3864
|
-
var
|
|
3865
|
-
var Button = ({
|
|
3866
|
-
|
|
3867
|
-
|
|
3868
|
-
|
|
3869
|
-
size = "md",
|
|
3870
|
-
// sm | md | lg
|
|
3871
|
-
icon,
|
|
3872
|
-
loading = false,
|
|
3873
|
-
disabled = false,
|
|
3874
|
-
onClick
|
|
3875
|
-
}) => {
|
|
3876
|
-
const [hovered, setHovered] = (0, import_react24.useState)(false);
|
|
3877
|
-
const variants = {
|
|
3878
|
-
primary: {
|
|
3879
|
-
background: "#2563eb",
|
|
3880
|
-
color: "#fff",
|
|
3881
|
-
border: "none"
|
|
3882
|
-
},
|
|
3883
|
-
outline: {
|
|
3884
|
-
background: "transparent",
|
|
3885
|
-
color: "#2563eb",
|
|
3886
|
-
border: "1px solid #2563eb"
|
|
3887
|
-
},
|
|
3888
|
-
ghost: {
|
|
3889
|
-
background: "transparent",
|
|
3890
|
-
color: "#111",
|
|
3891
|
-
border: "none"
|
|
3892
|
-
},
|
|
3893
|
-
gradient: {
|
|
3894
|
-
background: "linear-gradient(135deg, #6366f1, #06b6d4)",
|
|
3895
|
-
color: "#fff",
|
|
3896
|
-
border: "none"
|
|
3897
|
-
}
|
|
3898
|
-
};
|
|
3899
|
-
const sizes = {
|
|
3900
|
-
sm: { padding: "6px 12px", fontSize: "12px" },
|
|
3901
|
-
md: { padding: "10px 18px", fontSize: "14px" },
|
|
3902
|
-
lg: { padding: "14px 24px", fontSize: "16px" }
|
|
3903
|
-
};
|
|
3904
|
-
return /* @__PURE__ */ import_react24.default.createElement(
|
|
3810
|
+
var import_react23 = __toESM(require("react"));
|
|
3811
|
+
var Button = ({ text = "Get Started", bg = "#7c3aed", color = "#fff", size = "md", disabled = false, loading = false, onClick = () => {
|
|
3812
|
+
} }) => {
|
|
3813
|
+
const sizes = { sm: "8px 16px", md: "11px 24px", lg: "14px 32px" };
|
|
3814
|
+
return /* @__PURE__ */ import_react23.default.createElement(
|
|
3905
3815
|
"button",
|
|
3906
3816
|
{
|
|
3907
3817
|
onClick,
|
|
3908
3818
|
disabled: disabled || loading,
|
|
3909
|
-
onMouseEnter: () => setHovered(true),
|
|
3910
|
-
onMouseLeave: () => setHovered(false),
|
|
3911
3819
|
style: {
|
|
3912
|
-
|
|
3913
|
-
|
|
3820
|
+
background: bg,
|
|
3821
|
+
color,
|
|
3822
|
+
padding: sizes[size],
|
|
3914
3823
|
borderRadius: "10px",
|
|
3824
|
+
border: "none",
|
|
3915
3825
|
cursor: disabled ? "not-allowed" : "pointer",
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
fontFamily: "sans-serif",
|
|
3921
|
-
// 🔥 Animation
|
|
3922
|
-
transform: hovered ? "translateY(-2px) scale(1.02)" : "scale(1)",
|
|
3923
|
-
boxShadow: hovered ? "0 10px 20px rgba(0,0,0,0.15)" : "0 2px 6px rgba(0,0,0,0.1)",
|
|
3924
|
-
transition: "all 0.2s ease",
|
|
3826
|
+
fontWeight: "700",
|
|
3827
|
+
fontSize: "15px",
|
|
3828
|
+
fontFamily: "system-ui,sans-serif",
|
|
3829
|
+
boxShadow: "0 4px 14px rgba(124,58,237,0.4)",
|
|
3925
3830
|
opacity: disabled ? 0.6 : 1,
|
|
3926
|
-
|
|
3927
|
-
overflow: "hidden"
|
|
3831
|
+
transition: "opacity 0.2s"
|
|
3928
3832
|
}
|
|
3929
3833
|
},
|
|
3930
|
-
|
|
3931
|
-
"span",
|
|
3932
|
-
{
|
|
3933
|
-
style: {
|
|
3934
|
-
position: "absolute",
|
|
3935
|
-
inset: 0,
|
|
3936
|
-
background: "rgba(255,255,255,0.2)",
|
|
3937
|
-
opacity: hovered ? 1 : 0,
|
|
3938
|
-
transition: "opacity 0.3s"
|
|
3939
|
-
}
|
|
3940
|
-
}
|
|
3941
|
-
),
|
|
3942
|
-
loading ? /* @__PURE__ */ import_react24.default.createElement("span", null, "Loading...") : /* @__PURE__ */ import_react24.default.createElement(import_react24.default.Fragment, null, icon && /* @__PURE__ */ import_react24.default.createElement("span", null, icon), /* @__PURE__ */ import_react24.default.createElement("span", null, text))
|
|
3834
|
+
loading ? "Loading..." : text
|
|
3943
3835
|
);
|
|
3944
3836
|
};
|
|
3945
3837
|
|
|
3946
3838
|
// src/components/AnimatedButton/AnimatedButton.jsx
|
|
3947
|
-
var
|
|
3839
|
+
var import_react24 = __toESM(require("react"));
|
|
3948
3840
|
var AnimatedButton = ({
|
|
3949
3841
|
text = "Click Me!",
|
|
3950
3842
|
bg = "#7c3aed",
|
|
@@ -3958,8 +3850,8 @@ var AnimatedButton = ({
|
|
|
3958
3850
|
onClick
|
|
3959
3851
|
}) => {
|
|
3960
3852
|
const sizes = { sm: "8px 16px", md: "12px 24px", lg: "16px 32px" };
|
|
3961
|
-
const [hovered, setHovered] = (0,
|
|
3962
|
-
return /* @__PURE__ */
|
|
3853
|
+
const [hovered, setHovered] = (0, import_react24.useState)(false);
|
|
3854
|
+
return /* @__PURE__ */ import_react24.default.createElement(
|
|
3963
3855
|
"button",
|
|
3964
3856
|
{
|
|
3965
3857
|
onClick,
|
|
@@ -3988,6 +3880,123 @@ var AnimatedButton = ({
|
|
|
3988
3880
|
text
|
|
3989
3881
|
);
|
|
3990
3882
|
};
|
|
3883
|
+
|
|
3884
|
+
// src/components/ECommerceCard/ECommerceCard.jsx
|
|
3885
|
+
var import_react25 = __toESM(require("react"));
|
|
3886
|
+
var ECommerceCard = ({
|
|
3887
|
+
title = "Wireless Headphones",
|
|
3888
|
+
description = "Experience immersive sound with noise cancellation.",
|
|
3889
|
+
price = 199.99,
|
|
3890
|
+
currency = "$",
|
|
3891
|
+
image = "https://images.unsplash.com/photo-1618366712010-f4ae9c647dc5?w=600&q=80",
|
|
3892
|
+
rating = 4.5,
|
|
3893
|
+
accent = "#6366f1",
|
|
3894
|
+
bg = "#0f172a",
|
|
3895
|
+
onAddToCart = () => {
|
|
3896
|
+
},
|
|
3897
|
+
onViewDetails = () => {
|
|
3898
|
+
}
|
|
3899
|
+
}) => {
|
|
3900
|
+
const [hovered, setHovered] = (0, import_react25.useState)(false);
|
|
3901
|
+
const alpha = (hex, op) => {
|
|
3902
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3903
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3904
|
+
};
|
|
3905
|
+
return /* @__PURE__ */ import_react25.default.createElement(
|
|
3906
|
+
"div",
|
|
3907
|
+
{
|
|
3908
|
+
onMouseEnter: () => setHovered(true),
|
|
3909
|
+
onMouseLeave: () => setHovered(false),
|
|
3910
|
+
style: {
|
|
3911
|
+
background: bg,
|
|
3912
|
+
borderRadius: "20px",
|
|
3913
|
+
overflow: "hidden",
|
|
3914
|
+
width: "280px",
|
|
3915
|
+
border: "1px solid " + (hovered ? alpha(accent, 0.3) : "rgba(255,255,255,0.07)"),
|
|
3916
|
+
fontFamily: "system-ui,sans-serif",
|
|
3917
|
+
transition: "transform 0.25s, box-shadow 0.25s",
|
|
3918
|
+
transform: hovered ? "translateY(-4px)" : "translateY(0px)",
|
|
3919
|
+
boxShadow: hovered ? "0 16px 40px rgba(0,0,0,0.5)" : "0 4px 20px rgba(0,0,0,0.3)"
|
|
3920
|
+
}
|
|
3921
|
+
},
|
|
3922
|
+
/* @__PURE__ */ import_react25.default.createElement("div", { style: { position: "relative", width: "100%", height: "180px", overflow: "hidden" } }, /* @__PURE__ */ import_react25.default.createElement("img", { src: image, alt: title, style: { width: "100%", height: "100%", objectFit: "cover", transform: hovered ? "scale(1.05)" : "scale(1)", transition: "transform 0.4s ease" } }), /* @__PURE__ */ import_react25.default.createElement("div", { style: { position: "absolute", inset: 0, background: "linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%)" } }), /* @__PURE__ */ import_react25.default.createElement("div", { style: { position: "absolute", top: "12px", left: "12px", padding: "4px 10px", borderRadius: "20px", background: alpha(accent, 0.85), fontSize: "10px", fontWeight: "700", color: "#fff", textTransform: "uppercase", letterSpacing: "0.5px" } }, rating.toFixed(1), " \u2605")),
|
|
3923
|
+
/* @__PURE__ */ import_react25.default.createElement("div", { style: { padding: "18px" } }, /* @__PURE__ */ import_react25.default.createElement("h3", { style: { fontSize: "15px", fontWeight: "700", color: "#fff", margin: "0 0 8px", lineHeight: 1.4 } }, title), /* @__PURE__ */ import_react25.default.createElement("p", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", lineHeight: 1.65, margin: "0 0 18px" } }, description), /* @__PURE__ */ import_react25.default.createElement("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between" } }, /* @__PURE__ */ import_react25.default.createElement("div", { style: { fontSize: "24px", fontWeight: "800", color: accent } }, currency, Math.round(price)), /* @__PURE__ */ import_react25.default.createElement("div", { style: { display: "flex", gap: "8px" } }, /* @__PURE__ */ import_react25.default.createElement(
|
|
3924
|
+
"button",
|
|
3925
|
+
{
|
|
3926
|
+
onClick: onViewDetails,
|
|
3927
|
+
style: { padding: "8px 16px", borderRadius: "10px", border: "1px solid " + alpha(accent, 0.3), background: "transparent", color: accent, fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3928
|
+
},
|
|
3929
|
+
"Details"
|
|
3930
|
+
), /* @__PURE__ */ import_react25.default.createElement(
|
|
3931
|
+
"button",
|
|
3932
|
+
{
|
|
3933
|
+
onClick: onAddToCart,
|
|
3934
|
+
style: { padding: "8px 16px", borderRadius: "10px", border: "none", background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")", color: "#fff", fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3935
|
+
},
|
|
3936
|
+
"Add to Cart"
|
|
3937
|
+
))))
|
|
3938
|
+
);
|
|
3939
|
+
};
|
|
3940
|
+
|
|
3941
|
+
// src/components/IDCard/IDCard.jsx
|
|
3942
|
+
var import_react26 = __toESM(require("react"));
|
|
3943
|
+
var IDCard = ({
|
|
3944
|
+
name = "John Doe",
|
|
3945
|
+
role = "Software Engineer",
|
|
3946
|
+
company = "TechCorp",
|
|
3947
|
+
photo = "https://images.unsplash.com/photo-1544005313-94ddf0286df2?w=600&q=80",
|
|
3948
|
+
accent = "#6366f1",
|
|
3949
|
+
bg = "#0f172a",
|
|
3950
|
+
onContactClick = () => {
|
|
3951
|
+
}
|
|
3952
|
+
}) => {
|
|
3953
|
+
const alpha = (hex, op) => {
|
|
3954
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3955
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3956
|
+
};
|
|
3957
|
+
return /* @__PURE__ */ import_react26.default.createElement("div", { style: { background: bg, borderRadius: "20px", padding: "24px", width: "300px", color: "#fff", fontFamily: "system-ui,sans-serif", boxShadow: "0 10px 40px rgba(0,0,0,0.5)", border: "1px solid " + alpha(accent, 0.25), position: "relative" } }, /* @__PURE__ */ import_react26.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "16px", marginBottom: "20px" } }, /* @__PURE__ */ import_react26.default.createElement("div", { style: { width: "80px", height: "80px", borderRadius: "50%", overflow: "hidden", border: "2px solid " + alpha(accent, 0.5) } }, /* @__PURE__ */ import_react26.default.createElement("img", { src: photo, alt: name, style: { width: "100%", height: "100%", objectFit: "cover" } })), /* @__PURE__ */ import_react26.default.createElement("div", null, /* @__PURE__ */ import_react26.default.createElement("div", { style: { fontSize: "18px", fontWeight: "700", marginBottom: "4px" } }, name), /* @__PURE__ */ import_react26.default.createElement("div", { style: { fontSize: "13px", color: "rgba(255,255,255,0.5)" } }, role))), /* @__PURE__ */ import_react26.default.createElement("div", { style: { fontSize: "14px", color: "rgba(255,255,255,0.6)", marginBottom: "20px", paddingBottom: "20px", borderBottom: "1px solid " + alpha(accent, 0.1) } }, company), /* @__PURE__ */ import_react26.default.createElement("button", { onClick: onContactClick, style: { width: "100%", padding: "12px", borderRadius: "12px", border: "none", background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")", color: "#fff", fontSize: "14px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" } }, "Contact"));
|
|
3958
|
+
};
|
|
3959
|
+
|
|
3960
|
+
// src/components/DatePicker/DatePicker.jsx
|
|
3961
|
+
var import_react27 = __toESM(require("react"));
|
|
3962
|
+
var DatePicker = ({
|
|
3963
|
+
selectedDate = /* @__PURE__ */ new Date(),
|
|
3964
|
+
accent = "#6366f1",
|
|
3965
|
+
bg = "#0f172a",
|
|
3966
|
+
onDateChange = () => {
|
|
3967
|
+
}
|
|
3968
|
+
}) => {
|
|
3969
|
+
const [date, setDate] = (0, import_react27.useState)(selectedDate);
|
|
3970
|
+
const alpha = (hex, op) => {
|
|
3971
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3972
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3973
|
+
};
|
|
3974
|
+
const handleDateChange = (e) => {
|
|
3975
|
+
const newDate = new Date(e.target.value);
|
|
3976
|
+
setDate(newDate);
|
|
3977
|
+
onDateChange(newDate);
|
|
3978
|
+
};
|
|
3979
|
+
return /* @__PURE__ */ import_react27.default.createElement("div", { style: { background: bg, borderRadius: "12px", padding: "16px", width: "280px", fontFamily: "system-ui,sans-serif", boxShadow: "0 10px 40px rgba(0,0,0,0.5)", border: "1px solid rgba(255,255,255,0.07)" } }, /* @__PURE__ */ import_react27.default.createElement(
|
|
3980
|
+
"input",
|
|
3981
|
+
{
|
|
3982
|
+
type: "date",
|
|
3983
|
+
value: date.toISOString().split("T")[0],
|
|
3984
|
+
onChange: handleDateChange,
|
|
3985
|
+
style: {
|
|
3986
|
+
width: "100%",
|
|
3987
|
+
padding: "12px",
|
|
3988
|
+
borderRadius: "8px",
|
|
3989
|
+
border: "1px solid " + alpha(accent, 0.3),
|
|
3990
|
+
background: "transparent",
|
|
3991
|
+
color: "#fff",
|
|
3992
|
+
fontFamily: "inherit",
|
|
3993
|
+
fontSize: "14px",
|
|
3994
|
+
outline: "none",
|
|
3995
|
+
cursor: "pointer"
|
|
3996
|
+
}
|
|
3997
|
+
}
|
|
3998
|
+
));
|
|
3999
|
+
};
|
|
3991
4000
|
// Annotate the CommonJS export names for ESM import in node:
|
|
3992
4001
|
0 && (module.exports = {
|
|
3993
4002
|
AnimatedButton,
|
|
@@ -3998,9 +4007,11 @@ var AnimatedButton = ({
|
|
|
3998
4007
|
Card,
|
|
3999
4008
|
Charts,
|
|
4000
4009
|
ColorPicker,
|
|
4001
|
-
|
|
4010
|
+
DatePicker,
|
|
4011
|
+
ECommerceCard,
|
|
4002
4012
|
FileUpload,
|
|
4003
4013
|
Footer,
|
|
4014
|
+
IDCard,
|
|
4004
4015
|
ImageCard,
|
|
4005
4016
|
ImageSlider,
|
|
4006
4017
|
InvoiceCard,
|
package/dist/index.mjs
CHANGED
|
@@ -3523,64 +3523,8 @@ var ProgressBar = ({
|
|
|
3523
3523
|
return null;
|
|
3524
3524
|
};
|
|
3525
3525
|
|
|
3526
|
-
// src/components/EcommerceCard/EcommerceCard.jsx
|
|
3527
|
-
import React20, { useState as useState18 } from "react";
|
|
3528
|
-
var EcommerceCard = ({
|
|
3529
|
-
image = "https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=600&q=80",
|
|
3530
|
-
title = "Wireless Headphones",
|
|
3531
|
-
description = "Premium noise-cancelling headphones with 40 hours battery life.",
|
|
3532
|
-
price = 199,
|
|
3533
|
-
currency = "$",
|
|
3534
|
-
accent = "#6366f1",
|
|
3535
|
-
bg = "#0f172a",
|
|
3536
|
-
onAddToCart = () => {
|
|
3537
|
-
},
|
|
3538
|
-
onViewDetails = () => {
|
|
3539
|
-
}
|
|
3540
|
-
}) => {
|
|
3541
|
-
const [hovered, setHovered] = useState18(false);
|
|
3542
|
-
const alpha = (hex, op) => {
|
|
3543
|
-
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3544
|
-
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3545
|
-
};
|
|
3546
|
-
return /* @__PURE__ */ React20.createElement(
|
|
3547
|
-
"div",
|
|
3548
|
-
{
|
|
3549
|
-
onMouseEnter: () => setHovered(true),
|
|
3550
|
-
onMouseLeave: () => setHovered(false),
|
|
3551
|
-
style: {
|
|
3552
|
-
background: bg,
|
|
3553
|
-
borderRadius: "20px",
|
|
3554
|
-
overflow: "hidden",
|
|
3555
|
-
width: "300px",
|
|
3556
|
-
border: "1px solid " + (hovered ? alpha(accent, 0.3) : "rgba(255,255,255,0.07)"),
|
|
3557
|
-
fontFamily: "system-ui,sans-serif",
|
|
3558
|
-
transition: "transform 0.25s, box-shadow 0.25s",
|
|
3559
|
-
transform: hovered ? "translateY(-4px)" : "translateY(0px)",
|
|
3560
|
-
boxShadow: hovered ? "0 16px 40px rgba(0,0,0,0.5)" : "0 4px 20px rgba(0,0,0,0.3)"
|
|
3561
|
-
}
|
|
3562
|
-
},
|
|
3563
|
-
/* @__PURE__ */ React20.createElement("div", { style: { position: "relative", width: "100%", height: "200px", overflow: "hidden" } }, /* @__PURE__ */ React20.createElement("img", { src: image, alt: title, style: { width: "100%", height: "100%", objectFit: "cover", transform: hovered ? "scale(1.05)" : "scale(1)", transition: "transform 0.4s ease" } }), /* @__PURE__ */ React20.createElement("div", { style: { position: "absolute", inset: 0, background: "linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%)" } })),
|
|
3564
|
-
/* @__PURE__ */ React20.createElement("div", { style: { padding: "18px" } }, /* @__PURE__ */ React20.createElement("h3", { style: { fontSize: "15px", fontWeight: "700", color: "#fff", margin: "0 0 8px", lineHeight: 1.4 } }, title), /* @__PURE__ */ React20.createElement("p", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", lineHeight: 1.65, margin: "0 0 18px" } }, description), /* @__PURE__ */ React20.createElement("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between", marginBottom: "18px" } }, /* @__PURE__ */ React20.createElement("span", { style: { fontSize: "24px", fontWeight: "800", color: "#fff" } }, currency, price), /* @__PURE__ */ React20.createElement(
|
|
3565
|
-
"button",
|
|
3566
|
-
{
|
|
3567
|
-
onClick: onAddToCart,
|
|
3568
|
-
style: { padding: "8px 16px", borderRadius: "12px", border: "none", background: accent, color: "#fff", fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3569
|
-
},
|
|
3570
|
-
"Add to Cart"
|
|
3571
|
-
)), /* @__PURE__ */ React20.createElement(
|
|
3572
|
-
"button",
|
|
3573
|
-
{
|
|
3574
|
-
onClick: onViewDetails,
|
|
3575
|
-
style: { width: "100%", padding: "11px", borderRadius: "12px", border: "1px solid " + alpha(accent, 0.3), background: "transparent", color: accent, fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3576
|
-
},
|
|
3577
|
-
"View Details"
|
|
3578
|
-
))
|
|
3579
|
-
);
|
|
3580
|
-
};
|
|
3581
|
-
|
|
3582
3526
|
// src/components/AnimatedForm/AnimatedForm.jsx
|
|
3583
|
-
import
|
|
3527
|
+
import React20, { useState as useState18 } from "react";
|
|
3584
3528
|
var AnimatedForm = ({
|
|
3585
3529
|
title = "Contact Us",
|
|
3586
3530
|
description = "We'll get back to you shortly",
|
|
@@ -3590,15 +3534,15 @@ var AnimatedForm = ({
|
|
|
3590
3534
|
onSubmit = () => {
|
|
3591
3535
|
}
|
|
3592
3536
|
}) => {
|
|
3593
|
-
const [name, setName] =
|
|
3594
|
-
const [email, setEmail] =
|
|
3595
|
-
const [message, setMessage] =
|
|
3596
|
-
const [hovered, setHovered] =
|
|
3537
|
+
const [name, setName] = useState18("");
|
|
3538
|
+
const [email, setEmail] = useState18("");
|
|
3539
|
+
const [message, setMessage] = useState18("");
|
|
3540
|
+
const [hovered, setHovered] = useState18(false);
|
|
3597
3541
|
const alpha = (hex, op) => {
|
|
3598
3542
|
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3599
3543
|
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3600
3544
|
};
|
|
3601
|
-
return /* @__PURE__ */
|
|
3545
|
+
return /* @__PURE__ */ React20.createElement(
|
|
3602
3546
|
"div",
|
|
3603
3547
|
{
|
|
3604
3548
|
onMouseEnter: () => setHovered(true),
|
|
@@ -3615,9 +3559,9 @@ var AnimatedForm = ({
|
|
|
3615
3559
|
boxShadow: hovered ? "0 16px 40px rgba(0,0,0,0.5)" : "0 4px 20px rgba(0,0,0,0.3)"
|
|
3616
3560
|
}
|
|
3617
3561
|
},
|
|
3618
|
-
/* @__PURE__ */
|
|
3619
|
-
/* @__PURE__ */
|
|
3620
|
-
/* @__PURE__ */
|
|
3562
|
+
/* @__PURE__ */ React20.createElement("h2", { style: { fontSize: "20px", fontWeight: "700", color: "#fff", margin: "0 0 8px" } }, title),
|
|
3563
|
+
/* @__PURE__ */ React20.createElement("p", { style: { fontSize: "14px", color: "rgba(255,255,255,0.45)", margin: "0 0 24px" } }, description),
|
|
3564
|
+
/* @__PURE__ */ React20.createElement(
|
|
3621
3565
|
"input",
|
|
3622
3566
|
{
|
|
3623
3567
|
type: "text",
|
|
@@ -3639,7 +3583,7 @@ var AnimatedForm = ({
|
|
|
3639
3583
|
}
|
|
3640
3584
|
}
|
|
3641
3585
|
),
|
|
3642
|
-
/* @__PURE__ */
|
|
3586
|
+
/* @__PURE__ */ React20.createElement(
|
|
3643
3587
|
"input",
|
|
3644
3588
|
{
|
|
3645
3589
|
type: "email",
|
|
@@ -3661,7 +3605,7 @@ var AnimatedForm = ({
|
|
|
3661
3605
|
}
|
|
3662
3606
|
}
|
|
3663
3607
|
),
|
|
3664
|
-
/* @__PURE__ */
|
|
3608
|
+
/* @__PURE__ */ React20.createElement(
|
|
3665
3609
|
"textarea",
|
|
3666
3610
|
{
|
|
3667
3611
|
placeholder: "Your Message",
|
|
@@ -3684,7 +3628,7 @@ var AnimatedForm = ({
|
|
|
3684
3628
|
}
|
|
3685
3629
|
}
|
|
3686
3630
|
),
|
|
3687
|
-
/* @__PURE__ */
|
|
3631
|
+
/* @__PURE__ */ React20.createElement(
|
|
3688
3632
|
"button",
|
|
3689
3633
|
{
|
|
3690
3634
|
onClick: () => onSubmit({ name, email, message }),
|
|
@@ -3707,7 +3651,7 @@ var AnimatedForm = ({
|
|
|
3707
3651
|
};
|
|
3708
3652
|
|
|
3709
3653
|
// src/components/ReviewCard/ReviewCard.jsx
|
|
3710
|
-
import
|
|
3654
|
+
import React21 from "react";
|
|
3711
3655
|
var ReviewCard = ({
|
|
3712
3656
|
avatar = "https://images.unsplash.com/photo-1633332755192-727a05c4013d?w=800&q=80",
|
|
3713
3657
|
name = "John Doe",
|
|
@@ -3723,11 +3667,11 @@ var ReviewCard = ({
|
|
|
3723
3667
|
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3724
3668
|
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3725
3669
|
};
|
|
3726
|
-
return /* @__PURE__ */
|
|
3670
|
+
return /* @__PURE__ */ React21.createElement("div", { style: { background: bg, borderRadius: "16px", padding: "16px", width: "320px", fontFamily: "system-ui,sans-serif", border: "1px solid rgba(255,255,255,0.08)", boxShadow: "0 4px 16px rgba(0,0,0,0.3)" } }, /* @__PURE__ */ React21.createElement("div", { style: { display: "flex", alignItems: "center", gap: "12px", marginBottom: "12px" } }, /* @__PURE__ */ React21.createElement("img", { src: avatar, alt: name, onClick: onProfileClick, style: { width: "40px", height: "40px", borderRadius: "50%", cursor: "pointer" } }), /* @__PURE__ */ React21.createElement("div", { style: { display: "flex", flexDirection: "column", gap: "2px" } }, /* @__PURE__ */ React21.createElement("div", { style: { fontSize: "14px", fontWeight: "700", color: "#fff" } }, name), /* @__PURE__ */ React21.createElement("div", { style: { display: "flex", alignItems: "center", gap: "4px" } }, Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ React21.createElement("svg", { key: i, width: "14", height: "14", viewBox: "0 0 24 24", fill: i < rating ? accent : "rgba(255,255,255,0.15)", stroke: "none" }, /* @__PURE__ */ React21.createElement("path", { d: "M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z" })))))), /* @__PURE__ */ React21.createElement("div", { style: { fontSize: "13px", color: "rgba(255,255,255,0.7)", lineHeight: 1.5, marginBottom: "12px" } }, review), /* @__PURE__ */ React21.createElement("div", { style: { fontSize: "11px", color: "rgba(255,255,255,0.4)" } }, date));
|
|
3727
3671
|
};
|
|
3728
3672
|
|
|
3729
3673
|
// src/components/Card/Card.jsx
|
|
3730
|
-
import
|
|
3674
|
+
import React22, { useState as useState19 } from "react";
|
|
3731
3675
|
var Card = ({
|
|
3732
3676
|
title = "Performance",
|
|
3733
3677
|
description = "Real-time metrics with live dashboard updates every second.",
|
|
@@ -3735,8 +3679,8 @@ var Card = ({
|
|
|
3735
3679
|
tag = "Active",
|
|
3736
3680
|
onClick
|
|
3737
3681
|
}) => {
|
|
3738
|
-
const [hovered, setHovered] =
|
|
3739
|
-
return /* @__PURE__ */
|
|
3682
|
+
const [hovered, setHovered] = useState19(false);
|
|
3683
|
+
return /* @__PURE__ */ React22.createElement(
|
|
3740
3684
|
"div",
|
|
3741
3685
|
{
|
|
3742
3686
|
onMouseEnter: () => setHovered(true),
|
|
@@ -3756,7 +3700,7 @@ var Card = ({
|
|
|
3756
3700
|
width: "260px"
|
|
3757
3701
|
}
|
|
3758
3702
|
},
|
|
3759
|
-
/* @__PURE__ */
|
|
3703
|
+
/* @__PURE__ */ React22.createElement("div", { style: {
|
|
3760
3704
|
position: "absolute",
|
|
3761
3705
|
top: 0,
|
|
3762
3706
|
left: 0,
|
|
@@ -3765,7 +3709,7 @@ var Card = ({
|
|
|
3765
3709
|
background: "#1D9E75",
|
|
3766
3710
|
borderRadius: "12px 12px 0 0"
|
|
3767
3711
|
} }),
|
|
3768
|
-
/* @__PURE__ */
|
|
3712
|
+
/* @__PURE__ */ React22.createElement("div", { style: {
|
|
3769
3713
|
width: 40,
|
|
3770
3714
|
height: 40,
|
|
3771
3715
|
borderRadius: 8,
|
|
@@ -3776,22 +3720,22 @@ var Card = ({
|
|
|
3776
3720
|
fontSize: 18,
|
|
3777
3721
|
marginBottom: 14
|
|
3778
3722
|
} }, icon),
|
|
3779
|
-
/* @__PURE__ */
|
|
3780
|
-
/* @__PURE__ */
|
|
3781
|
-
/* @__PURE__ */
|
|
3723
|
+
/* @__PURE__ */ React22.createElement("p", { style: { fontSize: 15, fontWeight: 700, color: "#111", margin: "0 0 6px" } }, title),
|
|
3724
|
+
/* @__PURE__ */ React22.createElement("p", { style: { fontSize: 13, color: "#666", lineHeight: 1.6, margin: "0 0 16px" } }, description),
|
|
3725
|
+
/* @__PURE__ */ React22.createElement("div", { style: {
|
|
3782
3726
|
display: "flex",
|
|
3783
3727
|
alignItems: "center",
|
|
3784
3728
|
justifyContent: "space-between",
|
|
3785
3729
|
borderTop: "0.5px solid #0000001a",
|
|
3786
3730
|
paddingTop: 12
|
|
3787
|
-
} }, /* @__PURE__ */
|
|
3731
|
+
} }, /* @__PURE__ */ React22.createElement("span", { style: {
|
|
3788
3732
|
fontSize: 11,
|
|
3789
3733
|
fontWeight: 500,
|
|
3790
3734
|
padding: "3px 9px",
|
|
3791
3735
|
borderRadius: 20,
|
|
3792
3736
|
background: "#E1F5EE",
|
|
3793
3737
|
color: "#0F6E56"
|
|
3794
|
-
} }, tag), /* @__PURE__ */
|
|
3738
|
+
} }, tag), /* @__PURE__ */ React22.createElement("span", { style: {
|
|
3795
3739
|
fontSize: 14,
|
|
3796
3740
|
color: "#999",
|
|
3797
3741
|
display: "inline-block",
|
|
@@ -3802,90 +3746,36 @@ var Card = ({
|
|
|
3802
3746
|
};
|
|
3803
3747
|
|
|
3804
3748
|
// src/components/Button/Button.jsx
|
|
3805
|
-
import
|
|
3806
|
-
var Button = ({
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
size = "md",
|
|
3811
|
-
// sm | md | lg
|
|
3812
|
-
icon,
|
|
3813
|
-
loading = false,
|
|
3814
|
-
disabled = false,
|
|
3815
|
-
onClick
|
|
3816
|
-
}) => {
|
|
3817
|
-
const [hovered, setHovered] = useState21(false);
|
|
3818
|
-
const variants = {
|
|
3819
|
-
primary: {
|
|
3820
|
-
background: "#2563eb",
|
|
3821
|
-
color: "#fff",
|
|
3822
|
-
border: "none"
|
|
3823
|
-
},
|
|
3824
|
-
outline: {
|
|
3825
|
-
background: "transparent",
|
|
3826
|
-
color: "#2563eb",
|
|
3827
|
-
border: "1px solid #2563eb"
|
|
3828
|
-
},
|
|
3829
|
-
ghost: {
|
|
3830
|
-
background: "transparent",
|
|
3831
|
-
color: "#111",
|
|
3832
|
-
border: "none"
|
|
3833
|
-
},
|
|
3834
|
-
gradient: {
|
|
3835
|
-
background: "linear-gradient(135deg, #6366f1, #06b6d4)",
|
|
3836
|
-
color: "#fff",
|
|
3837
|
-
border: "none"
|
|
3838
|
-
}
|
|
3839
|
-
};
|
|
3840
|
-
const sizes = {
|
|
3841
|
-
sm: { padding: "6px 12px", fontSize: "12px" },
|
|
3842
|
-
md: { padding: "10px 18px", fontSize: "14px" },
|
|
3843
|
-
lg: { padding: "14px 24px", fontSize: "16px" }
|
|
3844
|
-
};
|
|
3845
|
-
return /* @__PURE__ */ React24.createElement(
|
|
3749
|
+
import React23 from "react";
|
|
3750
|
+
var Button = ({ text = "Get Started", bg = "#7c3aed", color = "#fff", size = "md", disabled = false, loading = false, onClick = () => {
|
|
3751
|
+
} }) => {
|
|
3752
|
+
const sizes = { sm: "8px 16px", md: "11px 24px", lg: "14px 32px" };
|
|
3753
|
+
return /* @__PURE__ */ React23.createElement(
|
|
3846
3754
|
"button",
|
|
3847
3755
|
{
|
|
3848
3756
|
onClick,
|
|
3849
3757
|
disabled: disabled || loading,
|
|
3850
|
-
onMouseEnter: () => setHovered(true),
|
|
3851
|
-
onMouseLeave: () => setHovered(false),
|
|
3852
3758
|
style: {
|
|
3853
|
-
|
|
3854
|
-
|
|
3759
|
+
background: bg,
|
|
3760
|
+
color,
|
|
3761
|
+
padding: sizes[size],
|
|
3855
3762
|
borderRadius: "10px",
|
|
3763
|
+
border: "none",
|
|
3856
3764
|
cursor: disabled ? "not-allowed" : "pointer",
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3860
|
-
|
|
3861
|
-
fontFamily: "sans-serif",
|
|
3862
|
-
// 🔥 Animation
|
|
3863
|
-
transform: hovered ? "translateY(-2px) scale(1.02)" : "scale(1)",
|
|
3864
|
-
boxShadow: hovered ? "0 10px 20px rgba(0,0,0,0.15)" : "0 2px 6px rgba(0,0,0,0.1)",
|
|
3865
|
-
transition: "all 0.2s ease",
|
|
3765
|
+
fontWeight: "700",
|
|
3766
|
+
fontSize: "15px",
|
|
3767
|
+
fontFamily: "system-ui,sans-serif",
|
|
3768
|
+
boxShadow: "0 4px 14px rgba(124,58,237,0.4)",
|
|
3866
3769
|
opacity: disabled ? 0.6 : 1,
|
|
3867
|
-
|
|
3868
|
-
overflow: "hidden"
|
|
3770
|
+
transition: "opacity 0.2s"
|
|
3869
3771
|
}
|
|
3870
3772
|
},
|
|
3871
|
-
|
|
3872
|
-
"span",
|
|
3873
|
-
{
|
|
3874
|
-
style: {
|
|
3875
|
-
position: "absolute",
|
|
3876
|
-
inset: 0,
|
|
3877
|
-
background: "rgba(255,255,255,0.2)",
|
|
3878
|
-
opacity: hovered ? 1 : 0,
|
|
3879
|
-
transition: "opacity 0.3s"
|
|
3880
|
-
}
|
|
3881
|
-
}
|
|
3882
|
-
),
|
|
3883
|
-
loading ? /* @__PURE__ */ React24.createElement("span", null, "Loading...") : /* @__PURE__ */ React24.createElement(React24.Fragment, null, icon && /* @__PURE__ */ React24.createElement("span", null, icon), /* @__PURE__ */ React24.createElement("span", null, text))
|
|
3773
|
+
loading ? "Loading..." : text
|
|
3884
3774
|
);
|
|
3885
3775
|
};
|
|
3886
3776
|
|
|
3887
3777
|
// src/components/AnimatedButton/AnimatedButton.jsx
|
|
3888
|
-
import
|
|
3778
|
+
import React24, { useState as useState20 } from "react";
|
|
3889
3779
|
var AnimatedButton = ({
|
|
3890
3780
|
text = "Click Me!",
|
|
3891
3781
|
bg = "#7c3aed",
|
|
@@ -3899,8 +3789,8 @@ var AnimatedButton = ({
|
|
|
3899
3789
|
onClick
|
|
3900
3790
|
}) => {
|
|
3901
3791
|
const sizes = { sm: "8px 16px", md: "12px 24px", lg: "16px 32px" };
|
|
3902
|
-
const [hovered, setHovered] =
|
|
3903
|
-
return /* @__PURE__ */
|
|
3792
|
+
const [hovered, setHovered] = useState20(false);
|
|
3793
|
+
return /* @__PURE__ */ React24.createElement(
|
|
3904
3794
|
"button",
|
|
3905
3795
|
{
|
|
3906
3796
|
onClick,
|
|
@@ -3929,6 +3819,123 @@ var AnimatedButton = ({
|
|
|
3929
3819
|
text
|
|
3930
3820
|
);
|
|
3931
3821
|
};
|
|
3822
|
+
|
|
3823
|
+
// src/components/ECommerceCard/ECommerceCard.jsx
|
|
3824
|
+
import React25, { useState as useState21 } from "react";
|
|
3825
|
+
var ECommerceCard = ({
|
|
3826
|
+
title = "Wireless Headphones",
|
|
3827
|
+
description = "Experience immersive sound with noise cancellation.",
|
|
3828
|
+
price = 199.99,
|
|
3829
|
+
currency = "$",
|
|
3830
|
+
image = "https://images.unsplash.com/photo-1618366712010-f4ae9c647dc5?w=600&q=80",
|
|
3831
|
+
rating = 4.5,
|
|
3832
|
+
accent = "#6366f1",
|
|
3833
|
+
bg = "#0f172a",
|
|
3834
|
+
onAddToCart = () => {
|
|
3835
|
+
},
|
|
3836
|
+
onViewDetails = () => {
|
|
3837
|
+
}
|
|
3838
|
+
}) => {
|
|
3839
|
+
const [hovered, setHovered] = useState21(false);
|
|
3840
|
+
const alpha = (hex, op) => {
|
|
3841
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3842
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3843
|
+
};
|
|
3844
|
+
return /* @__PURE__ */ React25.createElement(
|
|
3845
|
+
"div",
|
|
3846
|
+
{
|
|
3847
|
+
onMouseEnter: () => setHovered(true),
|
|
3848
|
+
onMouseLeave: () => setHovered(false),
|
|
3849
|
+
style: {
|
|
3850
|
+
background: bg,
|
|
3851
|
+
borderRadius: "20px",
|
|
3852
|
+
overflow: "hidden",
|
|
3853
|
+
width: "280px",
|
|
3854
|
+
border: "1px solid " + (hovered ? alpha(accent, 0.3) : "rgba(255,255,255,0.07)"),
|
|
3855
|
+
fontFamily: "system-ui,sans-serif",
|
|
3856
|
+
transition: "transform 0.25s, box-shadow 0.25s",
|
|
3857
|
+
transform: hovered ? "translateY(-4px)" : "translateY(0px)",
|
|
3858
|
+
boxShadow: hovered ? "0 16px 40px rgba(0,0,0,0.5)" : "0 4px 20px rgba(0,0,0,0.3)"
|
|
3859
|
+
}
|
|
3860
|
+
},
|
|
3861
|
+
/* @__PURE__ */ React25.createElement("div", { style: { position: "relative", width: "100%", height: "180px", overflow: "hidden" } }, /* @__PURE__ */ React25.createElement("img", { src: image, alt: title, style: { width: "100%", height: "100%", objectFit: "cover", transform: hovered ? "scale(1.05)" : "scale(1)", transition: "transform 0.4s ease" } }), /* @__PURE__ */ React25.createElement("div", { style: { position: "absolute", inset: 0, background: "linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%)" } }), /* @__PURE__ */ React25.createElement("div", { style: { position: "absolute", top: "12px", left: "12px", padding: "4px 10px", borderRadius: "20px", background: alpha(accent, 0.85), fontSize: "10px", fontWeight: "700", color: "#fff", textTransform: "uppercase", letterSpacing: "0.5px" } }, rating.toFixed(1), " \u2605")),
|
|
3862
|
+
/* @__PURE__ */ React25.createElement("div", { style: { padding: "18px" } }, /* @__PURE__ */ React25.createElement("h3", { style: { fontSize: "15px", fontWeight: "700", color: "#fff", margin: "0 0 8px", lineHeight: 1.4 } }, title), /* @__PURE__ */ React25.createElement("p", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", lineHeight: 1.65, margin: "0 0 18px" } }, description), /* @__PURE__ */ React25.createElement("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between" } }, /* @__PURE__ */ React25.createElement("div", { style: { fontSize: "24px", fontWeight: "800", color: accent } }, currency, Math.round(price)), /* @__PURE__ */ React25.createElement("div", { style: { display: "flex", gap: "8px" } }, /* @__PURE__ */ React25.createElement(
|
|
3863
|
+
"button",
|
|
3864
|
+
{
|
|
3865
|
+
onClick: onViewDetails,
|
|
3866
|
+
style: { padding: "8px 16px", borderRadius: "10px", border: "1px solid " + alpha(accent, 0.3), background: "transparent", color: accent, fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3867
|
+
},
|
|
3868
|
+
"Details"
|
|
3869
|
+
), /* @__PURE__ */ React25.createElement(
|
|
3870
|
+
"button",
|
|
3871
|
+
{
|
|
3872
|
+
onClick: onAddToCart,
|
|
3873
|
+
style: { padding: "8px 16px", borderRadius: "10px", border: "none", background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")", color: "#fff", fontSize: "13px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" }
|
|
3874
|
+
},
|
|
3875
|
+
"Add to Cart"
|
|
3876
|
+
))))
|
|
3877
|
+
);
|
|
3878
|
+
};
|
|
3879
|
+
|
|
3880
|
+
// src/components/IDCard/IDCard.jsx
|
|
3881
|
+
import React26 from "react";
|
|
3882
|
+
var IDCard = ({
|
|
3883
|
+
name = "John Doe",
|
|
3884
|
+
role = "Software Engineer",
|
|
3885
|
+
company = "TechCorp",
|
|
3886
|
+
photo = "https://images.unsplash.com/photo-1544005313-94ddf0286df2?w=600&q=80",
|
|
3887
|
+
accent = "#6366f1",
|
|
3888
|
+
bg = "#0f172a",
|
|
3889
|
+
onContactClick = () => {
|
|
3890
|
+
}
|
|
3891
|
+
}) => {
|
|
3892
|
+
const alpha = (hex, op) => {
|
|
3893
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3894
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3895
|
+
};
|
|
3896
|
+
return /* @__PURE__ */ React26.createElement("div", { style: { background: bg, borderRadius: "20px", padding: "24px", width: "300px", color: "#fff", fontFamily: "system-ui,sans-serif", boxShadow: "0 10px 40px rgba(0,0,0,0.5)", border: "1px solid " + alpha(accent, 0.25), position: "relative" } }, /* @__PURE__ */ React26.createElement("div", { style: { display: "flex", alignItems: "center", gap: "16px", marginBottom: "20px" } }, /* @__PURE__ */ React26.createElement("div", { style: { width: "80px", height: "80px", borderRadius: "50%", overflow: "hidden", border: "2px solid " + alpha(accent, 0.5) } }, /* @__PURE__ */ React26.createElement("img", { src: photo, alt: name, style: { width: "100%", height: "100%", objectFit: "cover" } })), /* @__PURE__ */ React26.createElement("div", null, /* @__PURE__ */ React26.createElement("div", { style: { fontSize: "18px", fontWeight: "700", marginBottom: "4px" } }, name), /* @__PURE__ */ React26.createElement("div", { style: { fontSize: "13px", color: "rgba(255,255,255,0.5)" } }, role))), /* @__PURE__ */ React26.createElement("div", { style: { fontSize: "14px", color: "rgba(255,255,255,0.6)", marginBottom: "20px", paddingBottom: "20px", borderBottom: "1px solid " + alpha(accent, 0.1) } }, company), /* @__PURE__ */ React26.createElement("button", { onClick: onContactClick, style: { width: "100%", padding: "12px", borderRadius: "12px", border: "none", background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")", color: "#fff", fontSize: "14px", fontWeight: "700", cursor: "pointer", fontFamily: "inherit" } }, "Contact"));
|
|
3897
|
+
};
|
|
3898
|
+
|
|
3899
|
+
// src/components/DatePicker/DatePicker.jsx
|
|
3900
|
+
import React27, { useState as useState22 } from "react";
|
|
3901
|
+
var DatePicker = ({
|
|
3902
|
+
selectedDate = /* @__PURE__ */ new Date(),
|
|
3903
|
+
accent = "#6366f1",
|
|
3904
|
+
bg = "#0f172a",
|
|
3905
|
+
onDateChange = () => {
|
|
3906
|
+
}
|
|
3907
|
+
}) => {
|
|
3908
|
+
const [date, setDate] = useState22(selectedDate);
|
|
3909
|
+
const alpha = (hex, op) => {
|
|
3910
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
3911
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
3912
|
+
};
|
|
3913
|
+
const handleDateChange = (e) => {
|
|
3914
|
+
const newDate = new Date(e.target.value);
|
|
3915
|
+
setDate(newDate);
|
|
3916
|
+
onDateChange(newDate);
|
|
3917
|
+
};
|
|
3918
|
+
return /* @__PURE__ */ React27.createElement("div", { style: { background: bg, borderRadius: "12px", padding: "16px", width: "280px", fontFamily: "system-ui,sans-serif", boxShadow: "0 10px 40px rgba(0,0,0,0.5)", border: "1px solid rgba(255,255,255,0.07)" } }, /* @__PURE__ */ React27.createElement(
|
|
3919
|
+
"input",
|
|
3920
|
+
{
|
|
3921
|
+
type: "date",
|
|
3922
|
+
value: date.toISOString().split("T")[0],
|
|
3923
|
+
onChange: handleDateChange,
|
|
3924
|
+
style: {
|
|
3925
|
+
width: "100%",
|
|
3926
|
+
padding: "12px",
|
|
3927
|
+
borderRadius: "8px",
|
|
3928
|
+
border: "1px solid " + alpha(accent, 0.3),
|
|
3929
|
+
background: "transparent",
|
|
3930
|
+
color: "#fff",
|
|
3931
|
+
fontFamily: "inherit",
|
|
3932
|
+
fontSize: "14px",
|
|
3933
|
+
outline: "none",
|
|
3934
|
+
cursor: "pointer"
|
|
3935
|
+
}
|
|
3936
|
+
}
|
|
3937
|
+
));
|
|
3938
|
+
};
|
|
3932
3939
|
export {
|
|
3933
3940
|
AnimatedButton,
|
|
3934
3941
|
AnimatedForm,
|
|
@@ -3938,9 +3945,11 @@ export {
|
|
|
3938
3945
|
Card,
|
|
3939
3946
|
Charts,
|
|
3940
3947
|
ColorPicker,
|
|
3941
|
-
|
|
3948
|
+
DatePicker,
|
|
3949
|
+
ECommerceCard,
|
|
3942
3950
|
FileUpload,
|
|
3943
3951
|
Footer,
|
|
3952
|
+
IDCard,
|
|
3944
3953
|
ImageCard,
|
|
3945
3954
|
ImageSlider,
|
|
3946
3955
|
InvoiceCard,
|