virtual-ui-lib 1.0.29 → 1.0.30

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 CHANGED
@@ -30,6 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  var index_exports = {};
31
31
  __export(index_exports, {
32
32
  AlertBanner: () => AlertBanner,
33
+ AnimatedProgressBar: () => AnimatedProgressBar,
33
34
  Button: () => Button,
34
35
  Card: () => Card,
35
36
  CopyButton: () => CopyButton,
@@ -875,9 +876,37 @@ var Footer = ({
875
876
  }) => {
876
877
  return /* @__PURE__ */ import_react16.default.createElement("footer", { style: { background: bg, color: textColor, padding: "20px 40px", fontFamily: "system-ui, sans-serif" } }, /* @__PURE__ */ import_react16.default.createElement("div", { style: { display: "flex", flexDirection: "column", alignItems: "center" } }, /* @__PURE__ */ import_react16.default.createElement("h2", { style: { margin: "0 0 10px", fontSize: "24px", fontWeight: "700" } }, brandTitle), /* @__PURE__ */ import_react16.default.createElement("p", { style: { margin: "0 0 20px", fontSize: "14px", textAlign: "center" } }, description), /* @__PURE__ */ import_react16.default.createElement("nav", { style: { display: "flex", justifyContent: "center", gap: "20px", marginBottom: "20px" } }, links.map((link) => /* @__PURE__ */ import_react16.default.createElement("a", { key: link.text, href: link.url, style: { color: textColor, textDecoration: "none", fontSize: "16px", transition: "color 0.3s" }, onMouseOver: (e) => e.currentTarget.style.color = "#7c3aed", onMouseOut: (e) => e.currentTarget.style.color = textColor }, link.text))), /* @__PURE__ */ import_react16.default.createElement("div", { style: { display: "flex", gap: "20px" } }, socialLinks.map((social) => /* @__PURE__ */ import_react16.default.createElement("a", { key: social.url, href: social.url, style: { color: textColor, fontSize: "24px", textDecoration: "none", transition: "color 0.3s" }, onMouseOver: (e) => e.currentTarget.style.color = "#7c3aed", onMouseOut: (e) => e.currentTarget.style.color = textColor }, social.icon)))), /* @__PURE__ */ import_react16.default.createElement("div", { style: { marginTop: "20px", fontSize: "12px", textAlign: "center", color: "#94a3b8" } }, "\xA9 ", (/* @__PURE__ */ new Date()).getFullYear(), " ", brandTitle, ". All rights reserved."));
877
878
  };
879
+
880
+ // src/components/AnimatedProgressBar/AnimatedProgressBar.jsx
881
+ var import_react17 = __toESM(require("react"));
882
+ var AnimatedProgressBar = ({
883
+ percentage = 75,
884
+ bgColor = "linear-gradient(135deg, #2563eb, #7c3aed)",
885
+ height = "24px",
886
+ borderRadius = "12px",
887
+ textColor = "#ffffff",
888
+ fontSize = "14px"
889
+ }) => {
890
+ return /* @__PURE__ */ import_react17.default.createElement("div", { style: { width: "100%", background: "#e5e7eb", borderRadius, overflow: "hidden", position: "relative" } }, /* @__PURE__ */ import_react17.default.createElement("div", { style: {
891
+ width: percentage + "%",
892
+ height,
893
+ background: bgColor,
894
+ borderRadius,
895
+ transition: "width 0.5s ease-in-out"
896
+ } }), /* @__PURE__ */ import_react17.default.createElement("span", { style: {
897
+ position: "absolute",
898
+ top: "50%",
899
+ left: "50%",
900
+ transform: "translate(-50%, -50%)",
901
+ color: textColor,
902
+ fontSize,
903
+ fontWeight: "600"
904
+ } }, percentage, "%"));
905
+ };
878
906
  // Annotate the CommonJS export names for ESM import in node:
879
907
  0 && (module.exports = {
880
908
  AlertBanner,
909
+ AnimatedProgressBar,
881
910
  Button,
882
911
  Card,
883
912
  CopyButton,
package/dist/index.mjs CHANGED
@@ -825,8 +825,36 @@ var Footer = ({
825
825
  }) => {
826
826
  return /* @__PURE__ */ React16.createElement("footer", { style: { background: bg, color: textColor, padding: "20px 40px", fontFamily: "system-ui, sans-serif" } }, /* @__PURE__ */ React16.createElement("div", { style: { display: "flex", flexDirection: "column", alignItems: "center" } }, /* @__PURE__ */ React16.createElement("h2", { style: { margin: "0 0 10px", fontSize: "24px", fontWeight: "700" } }, brandTitle), /* @__PURE__ */ React16.createElement("p", { style: { margin: "0 0 20px", fontSize: "14px", textAlign: "center" } }, description), /* @__PURE__ */ React16.createElement("nav", { style: { display: "flex", justifyContent: "center", gap: "20px", marginBottom: "20px" } }, links.map((link) => /* @__PURE__ */ React16.createElement("a", { key: link.text, href: link.url, style: { color: textColor, textDecoration: "none", fontSize: "16px", transition: "color 0.3s" }, onMouseOver: (e) => e.currentTarget.style.color = "#7c3aed", onMouseOut: (e) => e.currentTarget.style.color = textColor }, link.text))), /* @__PURE__ */ React16.createElement("div", { style: { display: "flex", gap: "20px" } }, socialLinks.map((social) => /* @__PURE__ */ React16.createElement("a", { key: social.url, href: social.url, style: { color: textColor, fontSize: "24px", textDecoration: "none", transition: "color 0.3s" }, onMouseOver: (e) => e.currentTarget.style.color = "#7c3aed", onMouseOut: (e) => e.currentTarget.style.color = textColor }, social.icon)))), /* @__PURE__ */ React16.createElement("div", { style: { marginTop: "20px", fontSize: "12px", textAlign: "center", color: "#94a3b8" } }, "\xA9 ", (/* @__PURE__ */ new Date()).getFullYear(), " ", brandTitle, ". All rights reserved."));
827
827
  };
828
+
829
+ // src/components/AnimatedProgressBar/AnimatedProgressBar.jsx
830
+ import React17 from "react";
831
+ var AnimatedProgressBar = ({
832
+ percentage = 75,
833
+ bgColor = "linear-gradient(135deg, #2563eb, #7c3aed)",
834
+ height = "24px",
835
+ borderRadius = "12px",
836
+ textColor = "#ffffff",
837
+ fontSize = "14px"
838
+ }) => {
839
+ return /* @__PURE__ */ React17.createElement("div", { style: { width: "100%", background: "#e5e7eb", borderRadius, overflow: "hidden", position: "relative" } }, /* @__PURE__ */ React17.createElement("div", { style: {
840
+ width: percentage + "%",
841
+ height,
842
+ background: bgColor,
843
+ borderRadius,
844
+ transition: "width 0.5s ease-in-out"
845
+ } }), /* @__PURE__ */ React17.createElement("span", { style: {
846
+ position: "absolute",
847
+ top: "50%",
848
+ left: "50%",
849
+ transform: "translate(-50%, -50%)",
850
+ color: textColor,
851
+ fontSize,
852
+ fontWeight: "600"
853
+ } }, percentage, "%"));
854
+ };
828
855
  export {
829
856
  AlertBanner,
857
+ AnimatedProgressBar,
830
858
  Button,
831
859
  Card,
832
860
  CopyButton,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "virtual-ui-lib",
3
- "version": "1.0.29",
3
+ "version": "1.0.30",
4
4
  "description": "Virtual UI React Component Library",
5
5
  "author": "Ankush",
6
6
  "license": "ISC",