bhoomi-virtual-ui-library 1.0.6 → 1.0.8
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/index.js +131 -2
- package/dist/index.mjs +128 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -31,9 +31,11 @@ var index_exports = {};
|
|
|
31
31
|
__export(index_exports, {
|
|
32
32
|
Button: () => Button,
|
|
33
33
|
Card: () => Card,
|
|
34
|
+
DualRingLoader: () => DualRingLoader,
|
|
34
35
|
ECommerceCard: () => ECommerceCard,
|
|
35
36
|
PricingCard: () => PricingCard,
|
|
36
|
-
Profilecard: () => Profilecard
|
|
37
|
+
Profilecard: () => Profilecard,
|
|
38
|
+
ShoesCard: () => ShoesCard
|
|
37
39
|
});
|
|
38
40
|
module.exports = __toCommonJS(index_exports);
|
|
39
41
|
|
|
@@ -668,11 +670,138 @@ var PricingCard = ({
|
|
|
668
670
|
};
|
|
669
671
|
return /* @__PURE__ */ import_react5.default.createElement("div", { style: { background: bg, borderRadius: "20px", padding: "28px 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", overflow: "hidden" } }, /* @__PURE__ */ import_react5.default.createElement("div", { style: { position: "absolute", top: 0, left: 0, right: 0, height: "3px", background: "linear-gradient(90deg, " + accent + ", " + alpha(accent, 0.3) + ")" } }), badgeText && /* @__PURE__ */ import_react5.default.createElement("div", { style: { display: "inline-flex", alignItems: "center", gap: "6px", padding: "4px 12px", borderRadius: "100px", marginBottom: "14px", background: alpha(accent, 0.12), border: "1px solid " + alpha(accent, 0.3), fontSize: "11px", fontWeight: "700", color: accent, textTransform: "uppercase", letterSpacing: "0.5px" } }, /* @__PURE__ */ import_react5.default.createElement("div", { style: { width: 6, height: 6, borderRadius: "50%", background: accent } }), badgeText), /* @__PURE__ */ import_react5.default.createElement("div", { style: { fontSize: "20px", fontWeight: "800", marginBottom: "4px" } }, planName), /* @__PURE__ */ import_react5.default.createElement("div", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", marginBottom: "20px" } }, description), /* @__PURE__ */ import_react5.default.createElement("div", { style: { display: "flex", alignItems: "flex-end", gap: "3px", marginBottom: "4px" } }, /* @__PURE__ */ import_react5.default.createElement("span", { style: { fontSize: "18px", fontWeight: "700", color: "rgba(255,255,255,0.5)", lineHeight: 2 } }, currency), /* @__PURE__ */ import_react5.default.createElement("span", { style: { fontSize: "52px", fontWeight: "800", lineHeight: 1 } }, Math.round(price))), /* @__PURE__ */ import_react5.default.createElement("div", { style: { fontSize: "12px", color: "rgba(255,255,255,0.35)", marginBottom: "20px" } }, period), /* @__PURE__ */ import_react5.default.createElement("div", { style: { height: "1px", background: "rgba(255,255,255,0.07)", marginBottom: "16px" } }), /* @__PURE__ */ import_react5.default.createElement("ul", { style: { listStyle: "none", padding: 0, margin: "0 0 22px", display: "flex", flexDirection: "column", gap: "10px" } }, features.map((f, i) => /* @__PURE__ */ import_react5.default.createElement("li", { key: i, style: { display: "flex", alignItems: "center", gap: "10px", fontSize: "13px", color: "rgba(255,255,255,0.75)", cursor: "pointer" } }, /* @__PURE__ */ import_react5.default.createElement("div", { style: { width: "18px", height: "18px", borderRadius: "50%", display: "flex", alignItems: "center", justifyContent: "center", background: alpha(accent, 0.18), border: "1px solid " + alpha(accent, 0.4), flexShrink: 0 } }, /* @__PURE__ */ import_react5.default.createElement("svg", { width: "10", height: "10", viewBox: "0 0 12 12", fill: "none", stroke: "#fff", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, /* @__PURE__ */ import_react5.default.createElement("polyline", { points: "1.5,6 4.5,9 10.5,3" }))), f))), /* @__PURE__ */ import_react5.default.createElement("button", { onClick: onCtaClick, style: { width: "100%", padding: "13px", borderRadius: "12px", border: "none", background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")", color: "#fff", fontSize: "14px", fontWeight: "700", cursor: "pointer", fontFamily: "system-ui,sans-serif" } }, ctaText));
|
|
670
672
|
};
|
|
673
|
+
|
|
674
|
+
// src/components/ShoesCard/ShoesCard.jsx
|
|
675
|
+
var import_react6 = __toESM(require("react"));
|
|
676
|
+
var ShoesCard = ({
|
|
677
|
+
image = "https://images.unsplash.com/photo-1524015436451-442ee98d8b0e?w=600&q=80",
|
|
678
|
+
title = "Sneaker for the Modern Athlete",
|
|
679
|
+
description = "Experience the perfect blend of style and performance in our latest sneaker release.",
|
|
680
|
+
price = 129,
|
|
681
|
+
currency = "$",
|
|
682
|
+
period = "per pair",
|
|
683
|
+
accent = "#6366f1",
|
|
684
|
+
bg = "#0f172a",
|
|
685
|
+
onButtonClick = () => {
|
|
686
|
+
}
|
|
687
|
+
}) => {
|
|
688
|
+
const alpha = (hex, op) => {
|
|
689
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
690
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
691
|
+
};
|
|
692
|
+
return /* @__PURE__ */ import_react6.default.createElement("div", { style: {
|
|
693
|
+
background: bg,
|
|
694
|
+
borderRadius: "20px",
|
|
695
|
+
overflow: "hidden",
|
|
696
|
+
width: "300px",
|
|
697
|
+
border: "1px solid " + alpha(accent, 0.3),
|
|
698
|
+
fontFamily: "system-ui,sans-serif",
|
|
699
|
+
transition: "transform 0.25s, box-shadow 0.25s",
|
|
700
|
+
transform: "translateY(0px)",
|
|
701
|
+
boxShadow: "0 4px 20px rgba(0,0,0,0.3)"
|
|
702
|
+
} }, /* @__PURE__ */ import_react6.default.createElement("div", { style: { position: "relative", width: "100%", height: "180px", overflow: "hidden" } }, /* @__PURE__ */ import_react6.default.createElement("img", { src: image, alt: title, style: {
|
|
703
|
+
width: "100%",
|
|
704
|
+
height: "100%",
|
|
705
|
+
objectFit: "cover",
|
|
706
|
+
transform: "scale(1)",
|
|
707
|
+
transition: "transform 0.4s ease"
|
|
708
|
+
} }), /* @__PURE__ */ import_react6.default.createElement("div", { style: { position: "absolute", inset: 0, background: "linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%)" } })), /* @__PURE__ */ import_react6.default.createElement("div", { style: { padding: "18px" } }, /* @__PURE__ */ import_react6.default.createElement("h3", { style: { fontSize: "15px", fontWeight: "700", color: "#fff", margin: "0 0 8px", lineHeight: 1.4 } }, title), /* @__PURE__ */ import_react6.default.createElement("p", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", lineHeight: 1.65, margin: "0 0 18px" } }, description), /* @__PURE__ */ import_react6.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "3px", fontSize: "15px", color: "rgba(255,255,255,0.5)", marginBottom: "4px" } }, /* @__PURE__ */ import_react6.default.createElement("span", { style: { fontSize: "18px", fontWeight: "700" } }, currency), /* @__PURE__ */ import_react6.default.createElement("span", { style: { fontSize: "52px", fontWeight: "800" } }, Math.round(price))), /* @__PURE__ */ import_react6.default.createElement("div", { style: { fontSize: "12px", color: "rgba(255,255,255,0.35)", marginBottom: "20px" } }, period), /* @__PURE__ */ import_react6.default.createElement("button", { onClick: onButtonClick, style: {
|
|
709
|
+
width: "100%",
|
|
710
|
+
padding: "11px",
|
|
711
|
+
borderRadius: "12px",
|
|
712
|
+
border: "none",
|
|
713
|
+
background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")",
|
|
714
|
+
color: "#fff",
|
|
715
|
+
fontSize: "13px",
|
|
716
|
+
fontWeight: "700",
|
|
717
|
+
cursor: "pointer",
|
|
718
|
+
fontFamily: "system-ui,sans-serif"
|
|
719
|
+
} }, "Buy Now")));
|
|
720
|
+
};
|
|
721
|
+
|
|
722
|
+
// src/components/DualRingLoader/DualRingLoader.jsx
|
|
723
|
+
var import_react7 = __toESM(require("react"));
|
|
724
|
+
var DualRingLoader = ({
|
|
725
|
+
size = 40,
|
|
726
|
+
outerColor = "#7F77DD",
|
|
727
|
+
innerColor = "#D85A30",
|
|
728
|
+
speed = 1,
|
|
729
|
+
label = null
|
|
730
|
+
}) => {
|
|
731
|
+
const outerRef = (0, import_react7.useRef)(null);
|
|
732
|
+
const innerRef = (0, import_react7.useRef)(null);
|
|
733
|
+
const borderWidth = Math.max(2, Math.round(size * 0.08));
|
|
734
|
+
const innerInset = Math.round(size * 0.16);
|
|
735
|
+
const innerSize = size - innerInset * 2;
|
|
736
|
+
(0, import_react7.useEffect)(() => {
|
|
737
|
+
const outerDuration = (0.8 / speed).toFixed(2) + "s";
|
|
738
|
+
const innerDuration = (1.1 / speed).toFixed(2) + "s";
|
|
739
|
+
if (outerRef.current) {
|
|
740
|
+
outerRef.current.style.animation = "dual-ring-spin " + outerDuration + " linear infinite";
|
|
741
|
+
}
|
|
742
|
+
if (innerRef.current) {
|
|
743
|
+
innerRef.current.style.animation = "dual-ring-spin " + innerDuration + " linear infinite reverse";
|
|
744
|
+
}
|
|
745
|
+
}, [speed]);
|
|
746
|
+
return /* @__PURE__ */ import_react7.default.createElement(import_react7.default.Fragment, null, /* @__PURE__ */ import_react7.default.createElement("style", null, `
|
|
747
|
+
@import url('https://fonts.googleapis.com/css2?family=Lora:wght@400;600;700&family=DM+Mono:wght@400;500&display=swap');
|
|
748
|
+
@keyframes dual-ring-spin { to { transform: rotate(360deg); } }
|
|
749
|
+
`), /* @__PURE__ */ import_react7.default.createElement("div", { style: { display: "inline-flex", flexDirection: "column", alignItems: "center", gap: "12px" } }, /* @__PURE__ */ import_react7.default.createElement(
|
|
750
|
+
"div",
|
|
751
|
+
{
|
|
752
|
+
role: "status",
|
|
753
|
+
"aria-label": label || "Loading",
|
|
754
|
+
style: {
|
|
755
|
+
width: size + "px",
|
|
756
|
+
height: size + "px",
|
|
757
|
+
position: "relative",
|
|
758
|
+
flexShrink: 0
|
|
759
|
+
}
|
|
760
|
+
},
|
|
761
|
+
/* @__PURE__ */ import_react7.default.createElement(
|
|
762
|
+
"div",
|
|
763
|
+
{
|
|
764
|
+
ref: outerRef,
|
|
765
|
+
style: {
|
|
766
|
+
position: "absolute",
|
|
767
|
+
inset: 0,
|
|
768
|
+
borderRadius: "50%",
|
|
769
|
+
border: borderWidth + "px solid transparent",
|
|
770
|
+
borderTopColor: outerColor
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
),
|
|
774
|
+
/* @__PURE__ */ import_react7.default.createElement(
|
|
775
|
+
"div",
|
|
776
|
+
{
|
|
777
|
+
ref: innerRef,
|
|
778
|
+
style: {
|
|
779
|
+
position: "absolute",
|
|
780
|
+
top: innerInset + "px",
|
|
781
|
+
left: innerInset + "px",
|
|
782
|
+
width: innerSize + "px",
|
|
783
|
+
height: innerSize + "px",
|
|
784
|
+
borderRadius: "50%",
|
|
785
|
+
border: borderWidth + "px solid transparent",
|
|
786
|
+
borderBottomColor: innerColor
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
)
|
|
790
|
+
), label && /* @__PURE__ */ import_react7.default.createElement("span", { style: {
|
|
791
|
+
fontFamily: "'DM Mono', monospace",
|
|
792
|
+
fontSize: "11px",
|
|
793
|
+
letterSpacing: "0.1em",
|
|
794
|
+
color: "#999",
|
|
795
|
+
textTransform: "uppercase"
|
|
796
|
+
} }, label)));
|
|
797
|
+
};
|
|
671
798
|
// Annotate the CommonJS export names for ESM import in node:
|
|
672
799
|
0 && (module.exports = {
|
|
673
800
|
Button,
|
|
674
801
|
Card,
|
|
802
|
+
DualRingLoader,
|
|
675
803
|
ECommerceCard,
|
|
676
804
|
PricingCard,
|
|
677
|
-
Profilecard
|
|
805
|
+
Profilecard,
|
|
806
|
+
ShoesCard
|
|
678
807
|
});
|
package/dist/index.mjs
CHANGED
|
@@ -629,10 +629,137 @@ var PricingCard = ({
|
|
|
629
629
|
};
|
|
630
630
|
return /* @__PURE__ */ React5.createElement("div", { style: { background: bg, borderRadius: "20px", padding: "28px 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", overflow: "hidden" } }, /* @__PURE__ */ React5.createElement("div", { style: { position: "absolute", top: 0, left: 0, right: 0, height: "3px", background: "linear-gradient(90deg, " + accent + ", " + alpha(accent, 0.3) + ")" } }), badgeText && /* @__PURE__ */ React5.createElement("div", { style: { display: "inline-flex", alignItems: "center", gap: "6px", padding: "4px 12px", borderRadius: "100px", marginBottom: "14px", background: alpha(accent, 0.12), border: "1px solid " + alpha(accent, 0.3), fontSize: "11px", fontWeight: "700", color: accent, textTransform: "uppercase", letterSpacing: "0.5px" } }, /* @__PURE__ */ React5.createElement("div", { style: { width: 6, height: 6, borderRadius: "50%", background: accent } }), badgeText), /* @__PURE__ */ React5.createElement("div", { style: { fontSize: "20px", fontWeight: "800", marginBottom: "4px" } }, planName), /* @__PURE__ */ React5.createElement("div", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", marginBottom: "20px" } }, description), /* @__PURE__ */ React5.createElement("div", { style: { display: "flex", alignItems: "flex-end", gap: "3px", marginBottom: "4px" } }, /* @__PURE__ */ React5.createElement("span", { style: { fontSize: "18px", fontWeight: "700", color: "rgba(255,255,255,0.5)", lineHeight: 2 } }, currency), /* @__PURE__ */ React5.createElement("span", { style: { fontSize: "52px", fontWeight: "800", lineHeight: 1 } }, Math.round(price))), /* @__PURE__ */ React5.createElement("div", { style: { fontSize: "12px", color: "rgba(255,255,255,0.35)", marginBottom: "20px" } }, period), /* @__PURE__ */ React5.createElement("div", { style: { height: "1px", background: "rgba(255,255,255,0.07)", marginBottom: "16px" } }), /* @__PURE__ */ React5.createElement("ul", { style: { listStyle: "none", padding: 0, margin: "0 0 22px", display: "flex", flexDirection: "column", gap: "10px" } }, features.map((f, i) => /* @__PURE__ */ React5.createElement("li", { key: i, style: { display: "flex", alignItems: "center", gap: "10px", fontSize: "13px", color: "rgba(255,255,255,0.75)", cursor: "pointer" } }, /* @__PURE__ */ React5.createElement("div", { style: { width: "18px", height: "18px", borderRadius: "50%", display: "flex", alignItems: "center", justifyContent: "center", background: alpha(accent, 0.18), border: "1px solid " + alpha(accent, 0.4), flexShrink: 0 } }, /* @__PURE__ */ React5.createElement("svg", { width: "10", height: "10", viewBox: "0 0 12 12", fill: "none", stroke: "#fff", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, /* @__PURE__ */ React5.createElement("polyline", { points: "1.5,6 4.5,9 10.5,3" }))), f))), /* @__PURE__ */ React5.createElement("button", { onClick: onCtaClick, style: { width: "100%", padding: "13px", borderRadius: "12px", border: "none", background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")", color: "#fff", fontSize: "14px", fontWeight: "700", cursor: "pointer", fontFamily: "system-ui,sans-serif" } }, ctaText));
|
|
631
631
|
};
|
|
632
|
+
|
|
633
|
+
// src/components/ShoesCard/ShoesCard.jsx
|
|
634
|
+
import React6 from "react";
|
|
635
|
+
var ShoesCard = ({
|
|
636
|
+
image = "https://images.unsplash.com/photo-1524015436451-442ee98d8b0e?w=600&q=80",
|
|
637
|
+
title = "Sneaker for the Modern Athlete",
|
|
638
|
+
description = "Experience the perfect blend of style and performance in our latest sneaker release.",
|
|
639
|
+
price = 129,
|
|
640
|
+
currency = "$",
|
|
641
|
+
period = "per pair",
|
|
642
|
+
accent = "#6366f1",
|
|
643
|
+
bg = "#0f172a",
|
|
644
|
+
onButtonClick = () => {
|
|
645
|
+
}
|
|
646
|
+
}) => {
|
|
647
|
+
const alpha = (hex, op) => {
|
|
648
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
649
|
+
return "rgba(" + r + "," + g + "," + b + "," + op + ")";
|
|
650
|
+
};
|
|
651
|
+
return /* @__PURE__ */ React6.createElement("div", { style: {
|
|
652
|
+
background: bg,
|
|
653
|
+
borderRadius: "20px",
|
|
654
|
+
overflow: "hidden",
|
|
655
|
+
width: "300px",
|
|
656
|
+
border: "1px solid " + alpha(accent, 0.3),
|
|
657
|
+
fontFamily: "system-ui,sans-serif",
|
|
658
|
+
transition: "transform 0.25s, box-shadow 0.25s",
|
|
659
|
+
transform: "translateY(0px)",
|
|
660
|
+
boxShadow: "0 4px 20px rgba(0,0,0,0.3)"
|
|
661
|
+
} }, /* @__PURE__ */ React6.createElement("div", { style: { position: "relative", width: "100%", height: "180px", overflow: "hidden" } }, /* @__PURE__ */ React6.createElement("img", { src: image, alt: title, style: {
|
|
662
|
+
width: "100%",
|
|
663
|
+
height: "100%",
|
|
664
|
+
objectFit: "cover",
|
|
665
|
+
transform: "scale(1)",
|
|
666
|
+
transition: "transform 0.4s ease"
|
|
667
|
+
} }), /* @__PURE__ */ React6.createElement("div", { style: { position: "absolute", inset: 0, background: "linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%)" } })), /* @__PURE__ */ React6.createElement("div", { style: { padding: "18px" } }, /* @__PURE__ */ React6.createElement("h3", { style: { fontSize: "15px", fontWeight: "700", color: "#fff", margin: "0 0 8px", lineHeight: 1.4 } }, title), /* @__PURE__ */ React6.createElement("p", { style: { fontSize: "13px", color: "rgba(255,255,255,0.45)", lineHeight: 1.65, margin: "0 0 18px" } }, description), /* @__PURE__ */ React6.createElement("div", { style: { display: "flex", alignItems: "center", gap: "3px", fontSize: "15px", color: "rgba(255,255,255,0.5)", marginBottom: "4px" } }, /* @__PURE__ */ React6.createElement("span", { style: { fontSize: "18px", fontWeight: "700" } }, currency), /* @__PURE__ */ React6.createElement("span", { style: { fontSize: "52px", fontWeight: "800" } }, Math.round(price))), /* @__PURE__ */ React6.createElement("div", { style: { fontSize: "12px", color: "rgba(255,255,255,0.35)", marginBottom: "20px" } }, period), /* @__PURE__ */ React6.createElement("button", { onClick: onButtonClick, style: {
|
|
668
|
+
width: "100%",
|
|
669
|
+
padding: "11px",
|
|
670
|
+
borderRadius: "12px",
|
|
671
|
+
border: "none",
|
|
672
|
+
background: "linear-gradient(135deg, " + accent + ", " + alpha(accent, 0.7) + ")",
|
|
673
|
+
color: "#fff",
|
|
674
|
+
fontSize: "13px",
|
|
675
|
+
fontWeight: "700",
|
|
676
|
+
cursor: "pointer",
|
|
677
|
+
fontFamily: "system-ui,sans-serif"
|
|
678
|
+
} }, "Buy Now")));
|
|
679
|
+
};
|
|
680
|
+
|
|
681
|
+
// src/components/DualRingLoader/DualRingLoader.jsx
|
|
682
|
+
import React7, { useState as useState4, useEffect, useRef } from "react";
|
|
683
|
+
var DualRingLoader = ({
|
|
684
|
+
size = 40,
|
|
685
|
+
outerColor = "#7F77DD",
|
|
686
|
+
innerColor = "#D85A30",
|
|
687
|
+
speed = 1,
|
|
688
|
+
label = null
|
|
689
|
+
}) => {
|
|
690
|
+
const outerRef = useRef(null);
|
|
691
|
+
const innerRef = useRef(null);
|
|
692
|
+
const borderWidth = Math.max(2, Math.round(size * 0.08));
|
|
693
|
+
const innerInset = Math.round(size * 0.16);
|
|
694
|
+
const innerSize = size - innerInset * 2;
|
|
695
|
+
useEffect(() => {
|
|
696
|
+
const outerDuration = (0.8 / speed).toFixed(2) + "s";
|
|
697
|
+
const innerDuration = (1.1 / speed).toFixed(2) + "s";
|
|
698
|
+
if (outerRef.current) {
|
|
699
|
+
outerRef.current.style.animation = "dual-ring-spin " + outerDuration + " linear infinite";
|
|
700
|
+
}
|
|
701
|
+
if (innerRef.current) {
|
|
702
|
+
innerRef.current.style.animation = "dual-ring-spin " + innerDuration + " linear infinite reverse";
|
|
703
|
+
}
|
|
704
|
+
}, [speed]);
|
|
705
|
+
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, /* @__PURE__ */ React7.createElement("style", null, `
|
|
706
|
+
@import url('https://fonts.googleapis.com/css2?family=Lora:wght@400;600;700&family=DM+Mono:wght@400;500&display=swap');
|
|
707
|
+
@keyframes dual-ring-spin { to { transform: rotate(360deg); } }
|
|
708
|
+
`), /* @__PURE__ */ React7.createElement("div", { style: { display: "inline-flex", flexDirection: "column", alignItems: "center", gap: "12px" } }, /* @__PURE__ */ React7.createElement(
|
|
709
|
+
"div",
|
|
710
|
+
{
|
|
711
|
+
role: "status",
|
|
712
|
+
"aria-label": label || "Loading",
|
|
713
|
+
style: {
|
|
714
|
+
width: size + "px",
|
|
715
|
+
height: size + "px",
|
|
716
|
+
position: "relative",
|
|
717
|
+
flexShrink: 0
|
|
718
|
+
}
|
|
719
|
+
},
|
|
720
|
+
/* @__PURE__ */ React7.createElement(
|
|
721
|
+
"div",
|
|
722
|
+
{
|
|
723
|
+
ref: outerRef,
|
|
724
|
+
style: {
|
|
725
|
+
position: "absolute",
|
|
726
|
+
inset: 0,
|
|
727
|
+
borderRadius: "50%",
|
|
728
|
+
border: borderWidth + "px solid transparent",
|
|
729
|
+
borderTopColor: outerColor
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
),
|
|
733
|
+
/* @__PURE__ */ React7.createElement(
|
|
734
|
+
"div",
|
|
735
|
+
{
|
|
736
|
+
ref: innerRef,
|
|
737
|
+
style: {
|
|
738
|
+
position: "absolute",
|
|
739
|
+
top: innerInset + "px",
|
|
740
|
+
left: innerInset + "px",
|
|
741
|
+
width: innerSize + "px",
|
|
742
|
+
height: innerSize + "px",
|
|
743
|
+
borderRadius: "50%",
|
|
744
|
+
border: borderWidth + "px solid transparent",
|
|
745
|
+
borderBottomColor: innerColor
|
|
746
|
+
}
|
|
747
|
+
}
|
|
748
|
+
)
|
|
749
|
+
), label && /* @__PURE__ */ React7.createElement("span", { style: {
|
|
750
|
+
fontFamily: "'DM Mono', monospace",
|
|
751
|
+
fontSize: "11px",
|
|
752
|
+
letterSpacing: "0.1em",
|
|
753
|
+
color: "#999",
|
|
754
|
+
textTransform: "uppercase"
|
|
755
|
+
} }, label)));
|
|
756
|
+
};
|
|
632
757
|
export {
|
|
633
758
|
Button,
|
|
634
759
|
Card,
|
|
760
|
+
DualRingLoader,
|
|
635
761
|
ECommerceCard,
|
|
636
762
|
PricingCard,
|
|
637
|
-
Profilecard
|
|
763
|
+
Profilecard,
|
|
764
|
+
ShoesCard
|
|
638
765
|
};
|