bhoomi-virtual-ui-library 1.0.0 → 1.0.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/index.js CHANGED
@@ -30,7 +30,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  var index_exports = {};
31
31
  __export(index_exports, {
32
32
  Button: () => Button,
33
- Card: () => Card
33
+ Card: () => Card,
34
+ Profilecard: () => Profilecard
34
35
  });
35
36
  module.exports = __toCommonJS(index_exports);
36
37
 
@@ -364,8 +365,265 @@ var Card = ({
364
365
  (footer || onClick) && /* @__PURE__ */ import_react2.default.createElement("div", { style: footerStyle }, /* @__PURE__ */ import_react2.default.createElement("span", { style: { fontSize: "13px", color: "#999", fontFamily: "'DM Mono', monospace" } }, footer || "View details"), onClick && /* @__PURE__ */ import_react2.default.createElement("div", { style: arrowStyle }, "\u2192"))
365
366
  ));
366
367
  };
368
+
369
+ // src/components/Profilecard/Profilecard.jsx
370
+ var import_react3 = __toESM(require("react"));
371
+ var Profilecard = ({
372
+ name = "Aria Montoya",
373
+ role = "Senior Product Designer",
374
+ location = "San Francisco, CA",
375
+ bio = "Crafting digital experiences that balance beauty and function. 8 years shaping products at the intersection of design and technology.",
376
+ avatar = null,
377
+ stats = [
378
+ { label: "Projects", value: "124" },
379
+ { label: "Followers", value: "8.4k" },
380
+ { label: "Following", value: "312" }
381
+ ],
382
+ skills = ["Figma", "Motion", "Research", "Systems"],
383
+ social = {
384
+ twitter: "@ariamontoya",
385
+ github: "aria-m",
386
+ dribbble: "ariamontoya"
387
+ },
388
+ available = true,
389
+ coverColor = "#0d0d0d",
390
+ accentColor = "#c8f135",
391
+ onFollow = null,
392
+ onMessage = null
393
+ }) => {
394
+ const [followed, setFollowed] = (0, import_react3.useState)(false);
395
+ const [hoveredStat, setHoveredStat] = (0, import_react3.useState)(null);
396
+ const [hoveredBtn, setHoveredBtn] = (0, import_react3.useState)(null);
397
+ const handleFollow = () => {
398
+ setFollowed((f) => !f);
399
+ onFollow == null ? void 0 : onFollow();
400
+ };
401
+ return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement("style", null, `
402
+ @import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:wght@300;400;500&display=swap');
403
+ @keyframes fadeUp {
404
+ from { opacity: 0; transform: translateY(16px); }
405
+ to { opacity: 1; transform: translateY(0); }
406
+ }
407
+ @keyframes pulse {
408
+ 0%, 100% { opacity: 1; transform: scale(1); }
409
+ 50% { opacity: 0.6; transform: scale(0.85); }
410
+ }
411
+ `), /* @__PURE__ */ import_react3.default.createElement("div", { style: {
412
+ width: "360px",
413
+ borderRadius: "24px",
414
+ overflow: "hidden",
415
+ background: "#ffffff",
416
+ boxShadow: "0 24px 80px rgba(0,0,0,0.13), 0 4px 16px rgba(0,0,0,0.06)",
417
+ fontFamily: "'DM Sans', sans-serif",
418
+ animation: "fadeUp 0.5s cubic-bezier(0.22,1,0.36,1) both"
419
+ } }, /* @__PURE__ */ import_react3.default.createElement("div", { style: {
420
+ height: "110px",
421
+ background: coverColor,
422
+ position: "relative",
423
+ overflow: "hidden"
424
+ } }, [...Array(5)].map((_, i) => /* @__PURE__ */ import_react3.default.createElement("div", { key: i, style: {
425
+ position: "absolute",
426
+ height: "1px",
427
+ width: "100%",
428
+ background: `${accentColor}${["18", "22", "18", "12", "0a"][i]}`,
429
+ top: `${18 + i * 20}px`
430
+ } })), /* @__PURE__ */ import_react3.default.createElement("div", { style: {
431
+ position: "absolute",
432
+ width: "180px",
433
+ height: "180px",
434
+ borderRadius: "50%",
435
+ background: `${accentColor}0e`,
436
+ right: "-40px",
437
+ top: "-60px"
438
+ } }), /* @__PURE__ */ import_react3.default.createElement("div", { style: {
439
+ position: "absolute",
440
+ width: "80px",
441
+ height: "80px",
442
+ borderRadius: "50%",
443
+ background: `${accentColor}14`,
444
+ left: "20px",
445
+ bottom: "-30px"
446
+ } }), available && /* @__PURE__ */ import_react3.default.createElement("div", { style: {
447
+ position: "absolute",
448
+ top: "14px",
449
+ right: "16px",
450
+ display: "flex",
451
+ alignItems: "center",
452
+ gap: "5px",
453
+ background: "rgba(255,255,255,0.08)",
454
+ backdropFilter: "blur(8px)",
455
+ border: "1px solid rgba(255,255,255,0.12)",
456
+ borderRadius: "100px",
457
+ padding: "4px 10px 4px 7px"
458
+ } }, /* @__PURE__ */ import_react3.default.createElement("div", { style: {
459
+ width: "7px",
460
+ height: "7px",
461
+ borderRadius: "50%",
462
+ background: accentColor,
463
+ animation: "pulse 2s ease-in-out infinite"
464
+ } }), /* @__PURE__ */ import_react3.default.createElement("span", { style: {
465
+ fontSize: "10px",
466
+ fontFamily: "'Syne', sans-serif",
467
+ fontWeight: "600",
468
+ letterSpacing: "0.08em",
469
+ color: accentColor,
470
+ textTransform: "uppercase"
471
+ } }, "Available"))), /* @__PURE__ */ import_react3.default.createElement("div", { style: { padding: "0 24px", position: "relative" } }, /* @__PURE__ */ import_react3.default.createElement("div", { style: {
472
+ width: "80px",
473
+ height: "80px",
474
+ borderRadius: "50%",
475
+ border: "4px solid #ffffff",
476
+ background: avatar ? "transparent" : `linear-gradient(135deg, ${coverColor} 0%, ${accentColor}88 100%)`,
477
+ marginTop: "-40px",
478
+ overflow: "hidden",
479
+ boxShadow: "0 4px 16px rgba(0,0,0,0.12)",
480
+ display: "flex",
481
+ alignItems: "center",
482
+ justifyContent: "center",
483
+ position: "relative"
484
+ } }, avatar ? /* @__PURE__ */ import_react3.default.createElement("img", { src: avatar, alt: name, style: { width: "100%", height: "100%", objectFit: "cover" } }) : /* @__PURE__ */ import_react3.default.createElement("span", { style: {
485
+ fontFamily: "'Syne', sans-serif",
486
+ fontWeight: "800",
487
+ fontSize: "26px",
488
+ color: "#fff"
489
+ } }, name.split(" ").map((w) => w[0]).join("").slice(0, 2)))), /* @__PURE__ */ import_react3.default.createElement("div", { style: { padding: "10px 24px 0" } }, /* @__PURE__ */ import_react3.default.createElement("div", { style: {
490
+ fontFamily: "'Syne', sans-serif",
491
+ fontWeight: "800",
492
+ fontSize: "21px",
493
+ color: "#0d0d0d",
494
+ letterSpacing: "-0.02em",
495
+ lineHeight: 1.15
496
+ } }, name), /* @__PURE__ */ import_react3.default.createElement("div", { style: {
497
+ fontFamily: "'Syne', sans-serif",
498
+ fontWeight: "600",
499
+ fontSize: "12px",
500
+ color: accentColor === "#c8f135" ? "#6b7280" : accentColor,
501
+ letterSpacing: "0.04em",
502
+ marginTop: "3px"
503
+ } }, role), /* @__PURE__ */ import_react3.default.createElement("div", { style: {
504
+ display: "flex",
505
+ alignItems: "center",
506
+ gap: "5px",
507
+ marginTop: "6px"
508
+ } }, /* @__PURE__ */ import_react3.default.createElement("span", { style: { fontSize: "12px" } }, "\u{1F4CD}"), /* @__PURE__ */ import_react3.default.createElement("span", { style: { fontSize: "12px", color: "#9ca3af", letterSpacing: "0.02em" } }, location)), /* @__PURE__ */ import_react3.default.createElement("p", { style: {
509
+ fontSize: "13px",
510
+ color: "#4b5563",
511
+ lineHeight: "1.65",
512
+ marginTop: "12px",
513
+ marginBottom: "0"
514
+ } }, bio)), /* @__PURE__ */ import_react3.default.createElement("div", { style: {
515
+ display: "flex",
516
+ margin: "18px 16px 0",
517
+ borderRadius: "14px",
518
+ overflow: "hidden",
519
+ border: "1px solid #f0f0f0"
520
+ } }, stats.map((s, i) => /* @__PURE__ */ import_react3.default.createElement(
521
+ "div",
522
+ {
523
+ key: i,
524
+ onMouseEnter: () => setHoveredStat(i),
525
+ onMouseLeave: () => setHoveredStat(null),
526
+ style: {
527
+ flex: 1,
528
+ textAlign: "center",
529
+ padding: "14px 8px",
530
+ borderRight: i < stats.length - 1 ? "1px solid #f0f0f0" : "none",
531
+ background: hoveredStat === i ? `${accentColor}12` : "transparent",
532
+ transition: "background 0.2s ease",
533
+ cursor: "default"
534
+ }
535
+ },
536
+ /* @__PURE__ */ import_react3.default.createElement("div", { style: {
537
+ fontFamily: "'Syne', sans-serif",
538
+ fontWeight: "800",
539
+ fontSize: "18px",
540
+ color: "#0d0d0d",
541
+ letterSpacing: "-0.02em"
542
+ } }, s.value),
543
+ /* @__PURE__ */ import_react3.default.createElement("div", { style: {
544
+ fontSize: "10px",
545
+ color: "#9ca3af",
546
+ fontFamily: "'Syne', sans-serif",
547
+ fontWeight: "600",
548
+ letterSpacing: "0.1em",
549
+ textTransform: "uppercase",
550
+ marginTop: "2px"
551
+ } }, s.label)
552
+ ))), /* @__PURE__ */ import_react3.default.createElement("div", { style: { padding: "16px 24px 0" } }, /* @__PURE__ */ import_react3.default.createElement("div", { style: {
553
+ fontSize: "10px",
554
+ fontFamily: "'Syne', sans-serif",
555
+ fontWeight: "700",
556
+ letterSpacing: "0.15em",
557
+ textTransform: "uppercase",
558
+ color: "#9ca3af",
559
+ marginBottom: "8px"
560
+ } }, "Skills"), /* @__PURE__ */ import_react3.default.createElement("div", { style: { display: "flex", flexWrap: "wrap", gap: "6px" } }, skills.map((sk, i) => /* @__PURE__ */ import_react3.default.createElement("span", { key: i, style: {
561
+ padding: "4px 12px",
562
+ background: i === 0 ? coverColor : "#f4f4f5",
563
+ color: i === 0 ? accentColor : "#374151",
564
+ fontSize: "11px",
565
+ fontFamily: "'Syne', sans-serif",
566
+ fontWeight: "600",
567
+ letterSpacing: "0.06em",
568
+ borderRadius: "100px"
569
+ } }, sk)))), /* @__PURE__ */ import_react3.default.createElement("div", { style: { padding: "14px 24px 0", display: "flex", gap: "8px" } }, Object.entries(social).map(([platform, handle]) => /* @__PURE__ */ import_react3.default.createElement("div", { key: platform, style: {
570
+ flex: 1,
571
+ padding: "7px",
572
+ background: "#f9fafb",
573
+ borderRadius: "10px",
574
+ textAlign: "center"
575
+ } }, /* @__PURE__ */ import_react3.default.createElement("div", { style: { fontSize: "9px", color: "#9ca3af", fontFamily: "'Syne', sans-serif", fontWeight: "600", letterSpacing: "0.1em", textTransform: "uppercase" } }, platform), /* @__PURE__ */ import_react3.default.createElement("div", { style: { fontSize: "10px", color: "#374151", fontFamily: "'DM Sans'", fontWeight: "500", marginTop: "2px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" } }, handle)))), /* @__PURE__ */ import_react3.default.createElement("div", { style: { padding: "16px 24px 24px", display: "flex", gap: "10px" } }, /* @__PURE__ */ import_react3.default.createElement(
576
+ "button",
577
+ {
578
+ onClick: handleFollow,
579
+ onMouseEnter: () => setHoveredBtn("follow"),
580
+ onMouseLeave: () => setHoveredBtn(null),
581
+ style: {
582
+ flex: 1,
583
+ padding: "12px",
584
+ borderRadius: "12px",
585
+ border: "none",
586
+ background: followed ? "#f4f4f5" : hoveredBtn === "follow" ? coverColor : coverColor,
587
+ color: followed ? "#374151" : accentColor,
588
+ fontFamily: "'Syne', sans-serif",
589
+ fontWeight: "700",
590
+ fontSize: "13px",
591
+ letterSpacing: "0.04em",
592
+ cursor: "pointer",
593
+ transition: "all 0.2s ease",
594
+ transform: hoveredBtn === "follow" ? "scale(0.97)" : "scale(1)",
595
+ boxShadow: !followed && hoveredBtn === "follow" ? `0 6px 20px ${coverColor}55` : "none"
596
+ }
597
+ },
598
+ followed ? "\u2713 Following" : "Follow"
599
+ ), /* @__PURE__ */ import_react3.default.createElement(
600
+ "button",
601
+ {
602
+ onClick: onMessage,
603
+ onMouseEnter: () => setHoveredBtn("msg"),
604
+ onMouseLeave: () => setHoveredBtn(null),
605
+ style: {
606
+ flex: 1,
607
+ padding: "12px",
608
+ borderRadius: "12px",
609
+ border: "1.5px solid #e5e7eb",
610
+ background: hoveredBtn === "msg" ? "#f9fafb" : "#ffffff",
611
+ color: "#374151",
612
+ fontFamily: "'Syne', sans-serif",
613
+ fontWeight: "700",
614
+ fontSize: "13px",
615
+ letterSpacing: "0.04em",
616
+ cursor: "pointer",
617
+ transition: "all 0.2s ease",
618
+ transform: hoveredBtn === "msg" ? "scale(0.97)" : "scale(1)"
619
+ }
620
+ },
621
+ "Message"
622
+ ))));
623
+ };
367
624
  // Annotate the CommonJS export names for ESM import in node:
368
625
  0 && (module.exports = {
369
626
  Button,
370
- Card
627
+ Card,
628
+ Profilecard
371
629
  });
package/dist/index.mjs CHANGED
@@ -328,7 +328,264 @@ var Card = ({
328
328
  (footer || onClick) && /* @__PURE__ */ React2.createElement("div", { style: footerStyle }, /* @__PURE__ */ React2.createElement("span", { style: { fontSize: "13px", color: "#999", fontFamily: "'DM Mono', monospace" } }, footer || "View details"), onClick && /* @__PURE__ */ React2.createElement("div", { style: arrowStyle }, "\u2192"))
329
329
  ));
330
330
  };
331
+
332
+ // src/components/Profilecard/Profilecard.jsx
333
+ import React3, { useState as useState3 } from "react";
334
+ var Profilecard = ({
335
+ name = "Aria Montoya",
336
+ role = "Senior Product Designer",
337
+ location = "San Francisco, CA",
338
+ bio = "Crafting digital experiences that balance beauty and function. 8 years shaping products at the intersection of design and technology.",
339
+ avatar = null,
340
+ stats = [
341
+ { label: "Projects", value: "124" },
342
+ { label: "Followers", value: "8.4k" },
343
+ { label: "Following", value: "312" }
344
+ ],
345
+ skills = ["Figma", "Motion", "Research", "Systems"],
346
+ social = {
347
+ twitter: "@ariamontoya",
348
+ github: "aria-m",
349
+ dribbble: "ariamontoya"
350
+ },
351
+ available = true,
352
+ coverColor = "#0d0d0d",
353
+ accentColor = "#c8f135",
354
+ onFollow = null,
355
+ onMessage = null
356
+ }) => {
357
+ const [followed, setFollowed] = useState3(false);
358
+ const [hoveredStat, setHoveredStat] = useState3(null);
359
+ const [hoveredBtn, setHoveredBtn] = useState3(null);
360
+ const handleFollow = () => {
361
+ setFollowed((f) => !f);
362
+ onFollow == null ? void 0 : onFollow();
363
+ };
364
+ return /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement("style", null, `
365
+ @import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:wght@300;400;500&display=swap');
366
+ @keyframes fadeUp {
367
+ from { opacity: 0; transform: translateY(16px); }
368
+ to { opacity: 1; transform: translateY(0); }
369
+ }
370
+ @keyframes pulse {
371
+ 0%, 100% { opacity: 1; transform: scale(1); }
372
+ 50% { opacity: 0.6; transform: scale(0.85); }
373
+ }
374
+ `), /* @__PURE__ */ React3.createElement("div", { style: {
375
+ width: "360px",
376
+ borderRadius: "24px",
377
+ overflow: "hidden",
378
+ background: "#ffffff",
379
+ boxShadow: "0 24px 80px rgba(0,0,0,0.13), 0 4px 16px rgba(0,0,0,0.06)",
380
+ fontFamily: "'DM Sans', sans-serif",
381
+ animation: "fadeUp 0.5s cubic-bezier(0.22,1,0.36,1) both"
382
+ } }, /* @__PURE__ */ React3.createElement("div", { style: {
383
+ height: "110px",
384
+ background: coverColor,
385
+ position: "relative",
386
+ overflow: "hidden"
387
+ } }, [...Array(5)].map((_, i) => /* @__PURE__ */ React3.createElement("div", { key: i, style: {
388
+ position: "absolute",
389
+ height: "1px",
390
+ width: "100%",
391
+ background: `${accentColor}${["18", "22", "18", "12", "0a"][i]}`,
392
+ top: `${18 + i * 20}px`
393
+ } })), /* @__PURE__ */ React3.createElement("div", { style: {
394
+ position: "absolute",
395
+ width: "180px",
396
+ height: "180px",
397
+ borderRadius: "50%",
398
+ background: `${accentColor}0e`,
399
+ right: "-40px",
400
+ top: "-60px"
401
+ } }), /* @__PURE__ */ React3.createElement("div", { style: {
402
+ position: "absolute",
403
+ width: "80px",
404
+ height: "80px",
405
+ borderRadius: "50%",
406
+ background: `${accentColor}14`,
407
+ left: "20px",
408
+ bottom: "-30px"
409
+ } }), available && /* @__PURE__ */ React3.createElement("div", { style: {
410
+ position: "absolute",
411
+ top: "14px",
412
+ right: "16px",
413
+ display: "flex",
414
+ alignItems: "center",
415
+ gap: "5px",
416
+ background: "rgba(255,255,255,0.08)",
417
+ backdropFilter: "blur(8px)",
418
+ border: "1px solid rgba(255,255,255,0.12)",
419
+ borderRadius: "100px",
420
+ padding: "4px 10px 4px 7px"
421
+ } }, /* @__PURE__ */ React3.createElement("div", { style: {
422
+ width: "7px",
423
+ height: "7px",
424
+ borderRadius: "50%",
425
+ background: accentColor,
426
+ animation: "pulse 2s ease-in-out infinite"
427
+ } }), /* @__PURE__ */ React3.createElement("span", { style: {
428
+ fontSize: "10px",
429
+ fontFamily: "'Syne', sans-serif",
430
+ fontWeight: "600",
431
+ letterSpacing: "0.08em",
432
+ color: accentColor,
433
+ textTransform: "uppercase"
434
+ } }, "Available"))), /* @__PURE__ */ React3.createElement("div", { style: { padding: "0 24px", position: "relative" } }, /* @__PURE__ */ React3.createElement("div", { style: {
435
+ width: "80px",
436
+ height: "80px",
437
+ borderRadius: "50%",
438
+ border: "4px solid #ffffff",
439
+ background: avatar ? "transparent" : `linear-gradient(135deg, ${coverColor} 0%, ${accentColor}88 100%)`,
440
+ marginTop: "-40px",
441
+ overflow: "hidden",
442
+ boxShadow: "0 4px 16px rgba(0,0,0,0.12)",
443
+ display: "flex",
444
+ alignItems: "center",
445
+ justifyContent: "center",
446
+ position: "relative"
447
+ } }, avatar ? /* @__PURE__ */ React3.createElement("img", { src: avatar, alt: name, style: { width: "100%", height: "100%", objectFit: "cover" } }) : /* @__PURE__ */ React3.createElement("span", { style: {
448
+ fontFamily: "'Syne', sans-serif",
449
+ fontWeight: "800",
450
+ fontSize: "26px",
451
+ color: "#fff"
452
+ } }, name.split(" ").map((w) => w[0]).join("").slice(0, 2)))), /* @__PURE__ */ React3.createElement("div", { style: { padding: "10px 24px 0" } }, /* @__PURE__ */ React3.createElement("div", { style: {
453
+ fontFamily: "'Syne', sans-serif",
454
+ fontWeight: "800",
455
+ fontSize: "21px",
456
+ color: "#0d0d0d",
457
+ letterSpacing: "-0.02em",
458
+ lineHeight: 1.15
459
+ } }, name), /* @__PURE__ */ React3.createElement("div", { style: {
460
+ fontFamily: "'Syne', sans-serif",
461
+ fontWeight: "600",
462
+ fontSize: "12px",
463
+ color: accentColor === "#c8f135" ? "#6b7280" : accentColor,
464
+ letterSpacing: "0.04em",
465
+ marginTop: "3px"
466
+ } }, role), /* @__PURE__ */ React3.createElement("div", { style: {
467
+ display: "flex",
468
+ alignItems: "center",
469
+ gap: "5px",
470
+ marginTop: "6px"
471
+ } }, /* @__PURE__ */ React3.createElement("span", { style: { fontSize: "12px" } }, "\u{1F4CD}"), /* @__PURE__ */ React3.createElement("span", { style: { fontSize: "12px", color: "#9ca3af", letterSpacing: "0.02em" } }, location)), /* @__PURE__ */ React3.createElement("p", { style: {
472
+ fontSize: "13px",
473
+ color: "#4b5563",
474
+ lineHeight: "1.65",
475
+ marginTop: "12px",
476
+ marginBottom: "0"
477
+ } }, bio)), /* @__PURE__ */ React3.createElement("div", { style: {
478
+ display: "flex",
479
+ margin: "18px 16px 0",
480
+ borderRadius: "14px",
481
+ overflow: "hidden",
482
+ border: "1px solid #f0f0f0"
483
+ } }, stats.map((s, i) => /* @__PURE__ */ React3.createElement(
484
+ "div",
485
+ {
486
+ key: i,
487
+ onMouseEnter: () => setHoveredStat(i),
488
+ onMouseLeave: () => setHoveredStat(null),
489
+ style: {
490
+ flex: 1,
491
+ textAlign: "center",
492
+ padding: "14px 8px",
493
+ borderRight: i < stats.length - 1 ? "1px solid #f0f0f0" : "none",
494
+ background: hoveredStat === i ? `${accentColor}12` : "transparent",
495
+ transition: "background 0.2s ease",
496
+ cursor: "default"
497
+ }
498
+ },
499
+ /* @__PURE__ */ React3.createElement("div", { style: {
500
+ fontFamily: "'Syne', sans-serif",
501
+ fontWeight: "800",
502
+ fontSize: "18px",
503
+ color: "#0d0d0d",
504
+ letterSpacing: "-0.02em"
505
+ } }, s.value),
506
+ /* @__PURE__ */ React3.createElement("div", { style: {
507
+ fontSize: "10px",
508
+ color: "#9ca3af",
509
+ fontFamily: "'Syne', sans-serif",
510
+ fontWeight: "600",
511
+ letterSpacing: "0.1em",
512
+ textTransform: "uppercase",
513
+ marginTop: "2px"
514
+ } }, s.label)
515
+ ))), /* @__PURE__ */ React3.createElement("div", { style: { padding: "16px 24px 0" } }, /* @__PURE__ */ React3.createElement("div", { style: {
516
+ fontSize: "10px",
517
+ fontFamily: "'Syne', sans-serif",
518
+ fontWeight: "700",
519
+ letterSpacing: "0.15em",
520
+ textTransform: "uppercase",
521
+ color: "#9ca3af",
522
+ marginBottom: "8px"
523
+ } }, "Skills"), /* @__PURE__ */ React3.createElement("div", { style: { display: "flex", flexWrap: "wrap", gap: "6px" } }, skills.map((sk, i) => /* @__PURE__ */ React3.createElement("span", { key: i, style: {
524
+ padding: "4px 12px",
525
+ background: i === 0 ? coverColor : "#f4f4f5",
526
+ color: i === 0 ? accentColor : "#374151",
527
+ fontSize: "11px",
528
+ fontFamily: "'Syne', sans-serif",
529
+ fontWeight: "600",
530
+ letterSpacing: "0.06em",
531
+ borderRadius: "100px"
532
+ } }, sk)))), /* @__PURE__ */ React3.createElement("div", { style: { padding: "14px 24px 0", display: "flex", gap: "8px" } }, Object.entries(social).map(([platform, handle]) => /* @__PURE__ */ React3.createElement("div", { key: platform, style: {
533
+ flex: 1,
534
+ padding: "7px",
535
+ background: "#f9fafb",
536
+ borderRadius: "10px",
537
+ textAlign: "center"
538
+ } }, /* @__PURE__ */ React3.createElement("div", { style: { fontSize: "9px", color: "#9ca3af", fontFamily: "'Syne', sans-serif", fontWeight: "600", letterSpacing: "0.1em", textTransform: "uppercase" } }, platform), /* @__PURE__ */ React3.createElement("div", { style: { fontSize: "10px", color: "#374151", fontFamily: "'DM Sans'", fontWeight: "500", marginTop: "2px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" } }, handle)))), /* @__PURE__ */ React3.createElement("div", { style: { padding: "16px 24px 24px", display: "flex", gap: "10px" } }, /* @__PURE__ */ React3.createElement(
539
+ "button",
540
+ {
541
+ onClick: handleFollow,
542
+ onMouseEnter: () => setHoveredBtn("follow"),
543
+ onMouseLeave: () => setHoveredBtn(null),
544
+ style: {
545
+ flex: 1,
546
+ padding: "12px",
547
+ borderRadius: "12px",
548
+ border: "none",
549
+ background: followed ? "#f4f4f5" : hoveredBtn === "follow" ? coverColor : coverColor,
550
+ color: followed ? "#374151" : accentColor,
551
+ fontFamily: "'Syne', sans-serif",
552
+ fontWeight: "700",
553
+ fontSize: "13px",
554
+ letterSpacing: "0.04em",
555
+ cursor: "pointer",
556
+ transition: "all 0.2s ease",
557
+ transform: hoveredBtn === "follow" ? "scale(0.97)" : "scale(1)",
558
+ boxShadow: !followed && hoveredBtn === "follow" ? `0 6px 20px ${coverColor}55` : "none"
559
+ }
560
+ },
561
+ followed ? "\u2713 Following" : "Follow"
562
+ ), /* @__PURE__ */ React3.createElement(
563
+ "button",
564
+ {
565
+ onClick: onMessage,
566
+ onMouseEnter: () => setHoveredBtn("msg"),
567
+ onMouseLeave: () => setHoveredBtn(null),
568
+ style: {
569
+ flex: 1,
570
+ padding: "12px",
571
+ borderRadius: "12px",
572
+ border: "1.5px solid #e5e7eb",
573
+ background: hoveredBtn === "msg" ? "#f9fafb" : "#ffffff",
574
+ color: "#374151",
575
+ fontFamily: "'Syne', sans-serif",
576
+ fontWeight: "700",
577
+ fontSize: "13px",
578
+ letterSpacing: "0.04em",
579
+ cursor: "pointer",
580
+ transition: "all 0.2s ease",
581
+ transform: hoveredBtn === "msg" ? "scale(0.97)" : "scale(1)"
582
+ }
583
+ },
584
+ "Message"
585
+ ))));
586
+ };
331
587
  export {
332
588
  Button,
333
- Card
589
+ Card,
590
+ Profilecard
334
591
  };
package/package.json CHANGED
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "name": "bhoomi-virtual-ui-library",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.mjs",
6
- "files": ["dist"],
6
+ "files": [
7
+ "dist"
8
+ ],
7
9
  "scripts": {
8
10
  "build": "tsup"
9
11
  },