@retinalabsllc/zairusjs 21.0.9 → 21.1.2

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
@@ -3387,24 +3387,108 @@ var ManagedDocument = ({
3387
3387
  // src/components/ManagedContactBlock.tsx
3388
3388
  var import_react55 = __toESM(require("react"));
3389
3389
  var import_react56 = require("@hugeicons/react");
3390
- var SecureEmail = ({ user, domain, className }) => {
3391
- const [isMounted, setIsMounted] = (0, import_react55.useState)(false);
3392
- (0, import_react55.useEffect)(() => {
3393
- setIsMounted(true);
3394
- }, []);
3395
- if (!isMounted) {
3396
- return /* @__PURE__ */ import_react55.default.createElement("span", { className, style: { opacity: 0 } }, "Loading");
3390
+ var import_core_free_icons20 = require("@hugeicons/core-free-icons");
3391
+ var TextInput2 = ({
3392
+ label,
3393
+ value,
3394
+ onChange,
3395
+ placeholder,
3396
+ maxLength,
3397
+ disabled,
3398
+ readOnly,
3399
+ type = "text",
3400
+ onClick
3401
+ }) => /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-2 flex-1 w-full", onClick }, label && /* @__PURE__ */ import_react55.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, label), /* @__PURE__ */ import_react55.default.createElement(
3402
+ "input",
3403
+ {
3404
+ type,
3405
+ value,
3406
+ onChange: (e) => onChange(e.target.value.substring(0, maxLength || 100)),
3407
+ placeholder,
3408
+ disabled,
3409
+ readOnly,
3410
+ autoComplete: "off",
3411
+ spellCheck: "false",
3412
+ className: `w-full px-2 py-3 text-sm bg-transparent border-b border-stone-200 text-black transition-all outline-none focus:border-[#d97757] disabled:opacity-50 ${readOnly ? "cursor-pointer" : ""}`
3413
+ }
3414
+ ));
3415
+ var TextAreaInput = ({
3416
+ label,
3417
+ value,
3418
+ onChange,
3419
+ placeholder,
3420
+ maxLength,
3421
+ disabled
3422
+ }) => /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-2 w-full" }, label && /* @__PURE__ */ import_react55.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, label), /* @__PURE__ */ import_react55.default.createElement(
3423
+ "textarea",
3424
+ {
3425
+ value,
3426
+ onChange: (e) => onChange(e.target.value.substring(0, maxLength || 3e3)),
3427
+ placeholder,
3428
+ disabled,
3429
+ autoComplete: "off",
3430
+ spellCheck: "false",
3431
+ rows: 4,
3432
+ className: "w-full px-2 py-3 text-sm bg-transparent border-b border-stone-200 text-black transition-all outline-none focus:border-[#d97757] disabled:opacity-50 resize-none"
3397
3433
  }
3398
- const email = `${user}@${domain}`;
3399
- return /* @__PURE__ */ import_react55.default.createElement("a", { href: `mailto:${email}`, className }, email);
3434
+ ));
3435
+ var ThreeDActionButton2 = ({
3436
+ type = "button",
3437
+ disabled = false,
3438
+ isLoading = false,
3439
+ children,
3440
+ className = ""
3441
+ }) => {
3442
+ const isInteractionDisabled = disabled || isLoading;
3443
+ return /* @__PURE__ */ import_react55.default.createElement(
3444
+ "button",
3445
+ {
3446
+ type,
3447
+ disabled: isInteractionDisabled,
3448
+ className: `
3449
+ relative inline-flex items-center justify-center py-2.5 px-8 rounded-full
3450
+ bg-[#d97757] text-white text-xs tracking-widest
3451
+ transition-colors duration-150 select-none group outline-none
3452
+ ${isInteractionDisabled ? "opacity-50 cursor-not-allowed" : "hover:bg-[#d97757]"}
3453
+ ${className}
3454
+ `
3455
+ },
3456
+ /* @__PURE__ */ import_react55.default.createElement("span", { className: "relative z-10 flex items-center justify-center gap-2 leading-none" }, isLoading ? /* @__PURE__ */ import_react55.default.createElement(import_react56.HugeiconsIcon, { icon: import_core_free_icons20.Loading03Icon, size: 16, className: "animate-spin text-white" }) : children)
3457
+ );
3400
3458
  };
3401
3459
  var ManagedContactBlock = ({
3402
3460
  tagline,
3403
3461
  title,
3404
3462
  company,
3405
- emails,
3406
3463
  socials
3407
3464
  }) => {
3465
+ const [formData, setFormData] = (0, import_react55.useState)({ name: "", title: "", phone: "", message: "" });
3466
+ const [status, setStatus] = (0, import_react55.useState)("idle");
3467
+ const [responseMessage, setResponseMessage] = (0, import_react55.useState)("");
3468
+ const handleSubmit = async (e) => {
3469
+ e.preventDefault();
3470
+ setStatus("loading");
3471
+ setResponseMessage("");
3472
+ try {
3473
+ const res = await fetch("/api/contact", {
3474
+ method: "POST",
3475
+ headers: { "Content-Type": "application/json" },
3476
+ body: JSON.stringify(formData)
3477
+ });
3478
+ const data = await res.json();
3479
+ if (res.ok) {
3480
+ setStatus("success");
3481
+ setResponseMessage(data.message || "Message sent successfully!");
3482
+ setFormData({ name: "", title: "", phone: "", message: "" });
3483
+ } else {
3484
+ setStatus("error");
3485
+ setResponseMessage(data.error || "Failed to send message.");
3486
+ }
3487
+ } catch (error) {
3488
+ setStatus("error");
3489
+ setResponseMessage("An unexpected error occurred. Please try again.");
3490
+ }
3491
+ };
3408
3492
  return /* @__PURE__ */ import_react55.default.createElement("div", { className: "grow pt-4 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ import_react55.default.createElement(
3409
3493
  "div",
3410
3494
  {
@@ -3414,28 +3498,21 @@ var ManagedContactBlock = ({
3414
3498
  backgroundRepeat: "repeat"
3415
3499
  }
3416
3500
  }
3417
- ), /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative px-8 md:px-12 py-10" }, tagline && /* @__PURE__ */ import_react55.default.createElement("span", { className: "text-xs tracking-[0.4em] text-stone-500 text-left block " }, tagline), /* @__PURE__ */ import_react55.default.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative px-8 md:px-12 py-8 pb-14" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex flex-wrap gap-12 lg:gap-16 w-full" }, company && /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-sm tracking-[0.2em] text-black mb-4 " }, "Contact Details"), /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-3 text-xs text-stone-600 leading-[1.8]" }, company.name && /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-black" }, company.name), company.lines && company.lines.map((line, idx) => /* @__PURE__ */ import_react55.default.createElement("p", { key: idx }, line)), company.phone && /* @__PURE__ */ import_react55.default.createElement("p", { className: "pt-2" }, /* @__PURE__ */ import_react55.default.createElement(
3501
+ ), /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative px-8 md:px-12 py-10 pb-4" }, tagline && /* @__PURE__ */ import_react55.default.createElement("span", { className: "text-xs tracking-[0.4em] text-stone-500 text-left block " }, tagline), /* @__PURE__ */ import_react55.default.createElement("h1", { className: "text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ import_react55.default.createElement("div", { className: "relative px-8 md:px-12 py-8 pb-14" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex flex-col lg:flex-row gap-16 w-full" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "w-full lg:w-1/3 flex flex-col gap-12" }, company && (company.phone || company.phone2) && /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-6" }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-sm tracking-[0.2em] text-black mb-4" }, "Direct Lines"), /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-3 text-sm text-stone-600 leading-[1.8]" }, company.phone && /* @__PURE__ */ import_react55.default.createElement("p", null, /* @__PURE__ */ import_react55.default.createElement(
3418
3502
  "a",
3419
3503
  {
3420
3504
  href: `tel:${company.phone.replace(/\s+/g, "")}`,
3421
3505
  className: "transition-colors hover:text-black"
3422
3506
  },
3423
3507
  company.phone
3424
- )), company.phone2 && /* @__PURE__ */ import_react55.default.createElement("p", { className: "pt-2" }, /* @__PURE__ */ import_react55.default.createElement(
3508
+ )), company.phone2 && /* @__PURE__ */ import_react55.default.createElement("p", null, /* @__PURE__ */ import_react55.default.createElement(
3425
3509
  "a",
3426
3510
  {
3427
3511
  href: `tel:${company.phone2.replace(/\s+/g, "")}`,
3428
3512
  className: "transition-colors hover:text-black"
3429
3513
  },
3430
3514
  company.phone2
3431
- )))), emails && emails.length > 0 && /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-sm tracking-[0.2em] text-black mb-4 " }, "Email Directory"), /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-6 text-sm" }, emails.map((email, idx) => /* @__PURE__ */ import_react55.default.createElement("div", { key: idx }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-xs tracking-[0.2em] mb-1.5 text-stone-500 " }, email.label), /* @__PURE__ */ import_react55.default.createElement(
3432
- SecureEmail,
3433
- {
3434
- user: email.user,
3435
- domain: email.domain,
3436
- className: "text-stone-600 transition-colors hover:text-black"
3437
- }
3438
- ))))), socials && socials.length > 0 && /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-sm tracking-[0.2em] text-black mb-4 " }, "Find Us Online"), /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex flex-col space-y-5 pt-1" }, socials.map((social, idx) => /* @__PURE__ */ import_react55.default.createElement(
3515
+ )))), socials && socials.length > 0 && /* @__PURE__ */ import_react55.default.createElement("div", { className: "space-y-6" }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-sm tracking-[0.2em] text-black mb-4" }, "Find Us Online"), /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex flex-col space-y-5 pt-1" }, socials.map((social, idx) => /* @__PURE__ */ import_react55.default.createElement(
3439
3516
  "a",
3440
3517
  {
3441
3518
  key: idx,
@@ -3446,6 +3523,51 @@ var ManagedContactBlock = ({
3446
3523
  },
3447
3524
  /* @__PURE__ */ import_react55.default.createElement(import_react56.HugeiconsIcon, { icon: social.icon, size: 18 }),
3448
3525
  /* @__PURE__ */ import_react55.default.createElement("span", { className: "text-xs" }, social.label)
3526
+ ))))), /* @__PURE__ */ import_react55.default.createElement("div", { className: "w-full lg:w-2/3" }, /* @__PURE__ */ import_react55.default.createElement("p", { className: "text-sm tracking-[0.2em] text-black mb-8" }, "Send a Message"), /* @__PURE__ */ import_react55.default.createElement("form", { onSubmit: handleSubmit, className: "space-y-6" }, /* @__PURE__ */ import_react55.default.createElement("div", { className: "flex flex-col md:flex-row gap-6" }, /* @__PURE__ */ import_react55.default.createElement(
3527
+ TextInput2,
3528
+ {
3529
+ label: "YOUR NAME",
3530
+ placeholder: "John Doe",
3531
+ value: formData.name,
3532
+ onChange: (val) => setFormData({ ...formData, name: val }),
3533
+ disabled: status === "loading"
3534
+ }
3535
+ ), /* @__PURE__ */ import_react55.default.createElement(
3536
+ TextInput2,
3537
+ {
3538
+ label: "SUBJECT TITLE",
3539
+ placeholder: "Partnership Inquiry",
3540
+ value: formData.title,
3541
+ onChange: (val) => setFormData({ ...formData, title: val }),
3542
+ disabled: status === "loading"
3543
+ }
3544
+ )), /* @__PURE__ */ import_react55.default.createElement(
3545
+ TextInput2,
3546
+ {
3547
+ label: "PHONE NUMBER (OPTIONAL)",
3548
+ type: "tel",
3549
+ placeholder: "+1 234 567 8900",
3550
+ value: formData.phone,
3551
+ onChange: (val) => setFormData({ ...formData, phone: val }),
3552
+ disabled: status === "loading"
3553
+ }
3554
+ ), /* @__PURE__ */ import_react55.default.createElement(
3555
+ TextAreaInput,
3556
+ {
3557
+ label: "MESSAGE",
3558
+ placeholder: "How can we help you?",
3559
+ value: formData.message,
3560
+ onChange: (val) => setFormData({ ...formData, message: val }),
3561
+ disabled: status === "loading"
3562
+ }
3563
+ ), responseMessage && /* @__PURE__ */ import_react55.default.createElement("p", { className: `text-sm ${status === "error" ? "text-red-500" : "text-green-600"}` }, responseMessage), /* @__PURE__ */ import_react55.default.createElement("div", { className: "pt-4" }, /* @__PURE__ */ import_react55.default.createElement(
3564
+ ThreeDActionButton2,
3565
+ {
3566
+ type: "submit",
3567
+ isLoading: status === "loading",
3568
+ disabled: !formData.name || !formData.title || !formData.message
3569
+ },
3570
+ "Submit Message"
3449
3571
  )))))))));
3450
3572
  };
3451
3573
 
@@ -3546,7 +3668,7 @@ var ManagedPricingBlock = ({
3546
3668
  var import_react58 = __toESM(require("react"));
3547
3669
  var import_image5 = __toESM(require("next/image"));
3548
3670
  var import_react59 = require("@hugeicons/react");
3549
- var import_core_free_icons20 = require("@hugeicons/core-free-icons");
3671
+ var import_core_free_icons21 = require("@hugeicons/core-free-icons");
3550
3672
  var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ import_react58.default.createElement(
3551
3673
  "a",
3552
3674
  {
@@ -3586,7 +3708,7 @@ var ManagedBoardBlock = ({
3586
3708
  MemberSocialLink,
3587
3709
  {
3588
3710
  href: `https://x.com/${member.twitterHandle}`,
3589
- icon: import_core_free_icons20.TwitterIcon,
3711
+ icon: import_core_free_icons21.TwitterIcon,
3590
3712
  label: "X",
3591
3713
  name: member.name
3592
3714
  }
@@ -3594,7 +3716,7 @@ var ManagedBoardBlock = ({
3594
3716
  MemberSocialLink,
3595
3717
  {
3596
3718
  href: member.linkedinHandle,
3597
- icon: import_core_free_icons20.LinkedinIcon,
3719
+ icon: import_core_free_icons21.LinkedinIcon,
3598
3720
  label: "LinkedIn",
3599
3721
  name: member.name
3600
3722
  }
@@ -3770,7 +3892,7 @@ var PortfolioHero = ({
3770
3892
  var import_react63 = __toESM(require("react"));
3771
3893
  var import_image8 = __toESM(require("next/image"));
3772
3894
  var import_react64 = require("@hugeicons/react");
3773
- var import_core_free_icons21 = require("@hugeicons/core-free-icons");
3895
+ var import_core_free_icons22 = require("@hugeicons/core-free-icons");
3774
3896
  var GifFeatureCard = ({
3775
3897
  gifSrc,
3776
3898
  title,
@@ -3782,7 +3904,7 @@ var GifFeatureCard = ({
3782
3904
  return /* @__PURE__ */ import_react63.default.createElement("div", { className: `relative w-full bg-black overflow-hidden ${className}` }, isLoading && /* @__PURE__ */ import_react63.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-black" }, /* @__PURE__ */ import_react63.default.createElement(
3783
3905
  import_react64.HugeiconsIcon,
3784
3906
  {
3785
- icon: import_core_free_icons21.Loading03Icon,
3907
+ icon: import_core_free_icons22.Loading03Icon,
3786
3908
  size: 32,
3787
3909
  className: "animate-spin text-white"
3788
3910
  }
@@ -3864,10 +3986,10 @@ var MedicalFeatureStatsBlock = ({
3864
3986
  var import_react66 = __toESM(require("react"));
3865
3987
  var import_image10 = __toESM(require("next/image"));
3866
3988
  var import_react67 = require("@hugeicons/react");
3867
- var import_core_free_icons22 = require("@hugeicons/core-free-icons");
3989
+ var import_core_free_icons23 = require("@hugeicons/core-free-icons");
3868
3990
  var ImageWithLoader = ({ src, alt, className, sizes, priority = false }) => {
3869
3991
  const [isLoading, setIsLoading] = (0, import_react66.useState)(true);
3870
- return /* @__PURE__ */ import_react66.default.createElement("div", { className: `absolute inset-0 bg-stone-800 ${className}` }, isLoading && /* @__PURE__ */ import_react66.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-stone-800/50 backdrop-blur-md transition-opacity duration-300" }, /* @__PURE__ */ import_react66.default.createElement(import_react67.HugeiconsIcon, { icon: import_core_free_icons22.Loading03Icon, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ import_react66.default.createElement(
3992
+ return /* @__PURE__ */ import_react66.default.createElement("div", { className: `absolute inset-0 bg-stone-800 ${className}` }, isLoading && /* @__PURE__ */ import_react66.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-stone-800/50 backdrop-blur-md transition-opacity duration-300" }, /* @__PURE__ */ import_react66.default.createElement(import_react67.HugeiconsIcon, { icon: import_core_free_icons23.Loading03Icon, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ import_react66.default.createElement(
3871
3993
  import_image10.default,
3872
3994
  {
3873
3995
  src,
@@ -3959,7 +4081,7 @@ var ConsultantShowcase = ({
3959
4081
  var import_react68 = __toESM(require("react"));
3960
4082
  var import_image11 = __toESM(require("next/image"));
3961
4083
  var import_react69 = require("@hugeicons/react");
3962
- var import_core_free_icons23 = require("@hugeicons/core-free-icons");
4084
+ var import_core_free_icons24 = require("@hugeicons/core-free-icons");
3963
4085
  var ContentGridBlock = ({
3964
4086
  header,
3965
4087
  leftCard,
@@ -4032,7 +4154,7 @@ var ManagedProjectsBlock = ({
4032
4154
  // src/components/UniversalVerificationPage.tsx
4033
4155
  var import_react71 = __toESM(require("react"));
4034
4156
  var import_react72 = require("@hugeicons/react");
4035
- var import_core_free_icons24 = require("@hugeicons/core-free-icons");
4157
+ var import_core_free_icons25 = require("@hugeicons/core-free-icons");
4036
4158
  var VerificationRow = ({
4037
4159
  icon,
4038
4160
  title,
@@ -4050,14 +4172,14 @@ var VerificationRow = ({
4050
4172
  case "APPROVED":
4051
4173
  statusText = "Completed";
4052
4174
  statusColor = "text-stone-600";
4053
- StatusIcon = import_core_free_icons24.CheckmarkCircle01Icon;
4175
+ StatusIcon = import_core_free_icons25.CheckmarkCircle01Icon;
4054
4176
  bg = "bg-stone-50";
4055
4177
  iconColor = "text-green-500";
4056
4178
  break;
4057
4179
  case "PENDING":
4058
4180
  statusText = "Awaiting Approval";
4059
4181
  statusColor = "text-stone-500";
4060
- StatusIcon = import_core_free_icons24.Time02Icon;
4182
+ StatusIcon = import_core_free_icons25.Time02Icon;
4061
4183
  bg = "bg-stone-50";
4062
4184
  iconColor = "text-orange-500";
4063
4185
  break;
@@ -4065,7 +4187,7 @@ var VerificationRow = ({
4065
4187
  statusText = "Action required to fix issue";
4066
4188
  statusColor = "text-stone-500";
4067
4189
  bg = "bg-stone-50";
4068
- StatusIcon = import_core_free_icons24.InformationCircleIcon;
4190
+ StatusIcon = import_core_free_icons25.InformationCircleIcon;
4069
4191
  iconColor = "text-[#d97757]";
4070
4192
  break;
4071
4193
  case "ACTION_REQUIRED":
@@ -4073,7 +4195,7 @@ var VerificationRow = ({
4073
4195
  statusText = "Start verification";
4074
4196
  statusColor = "text-stone-500";
4075
4197
  bg = "bg-stone-50";
4076
- StatusIcon = import_core_free_icons24.InformationCircleIcon;
4198
+ StatusIcon = import_core_free_icons25.InformationCircleIcon;
4077
4199
  iconColor = "text-stone-400";
4078
4200
  break;
4079
4201
  }
@@ -4086,7 +4208,7 @@ var VerificationRow = ({
4086
4208
  },
4087
4209
  /* @__PURE__ */ import_react71.default.createElement("div", { className: "w-9 h-9 rounded-full border border-stone-200 bg-white flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon, size: 16, className: "text-black" })),
4088
4210
  /* @__PURE__ */ import_react71.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react71.default.createElement("p", { className: "text-sm truncate text-black" }, title), /* @__PURE__ */ import_react71.default.createElement("p", { className: `text-xs inline-flex items-center ${bg} rounded-full px-2 py-1 ${statusColor} mt-0.5` }, statusText)),
4089
- /* @__PURE__ */ import_react71.default.createElement("div", { className: "shrink-0 ml-2" }, isLoading ? /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon: import_core_free_icons24.Loading03Icon, size: 20, className: "animate-spin text-black" }) : /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon: StatusIcon, size: 20, className: iconColor }))
4211
+ /* @__PURE__ */ import_react71.default.createElement("div", { className: "shrink-0 ml-2" }, isLoading ? /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon: import_core_free_icons25.Loading03Icon, size: 20, className: "animate-spin text-black" }) : /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon: StatusIcon, size: 20, className: iconColor }))
4090
4212
  );
4091
4213
  };
4092
4214
  var UniversalVerificationPage = ({
@@ -4105,12 +4227,12 @@ var UniversalVerificationPage = ({
4105
4227
  onClick: onBack,
4106
4228
  className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none"
4107
4229
  },
4108
- /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon: import_core_free_icons24.ArrowLeft01Icon, size: 16 }),
4230
+ /* @__PURE__ */ import_react71.default.createElement(import_react72.HugeiconsIcon, { icon: import_core_free_icons25.ArrowLeft01Icon, size: 16 }),
4109
4231
  " Back"
4110
4232
  )), /* @__PURE__ */ import_react71.default.createElement("div", { className: "w-full flex flex-col gap-4 mb-8" }, /* @__PURE__ */ import_react71.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react71.default.createElement(
4111
4233
  VerificationRow,
4112
4234
  {
4113
- icon: import_core_free_icons24.Mail01Icon,
4235
+ icon: import_core_free_icons25.Mail01Icon,
4114
4236
  title: "Email Verification",
4115
4237
  status: emailStatus,
4116
4238
  isLoading: activeLoadingType === "EMAIL",
@@ -4119,7 +4241,7 @@ var UniversalVerificationPage = ({
4119
4241
  ), /* @__PURE__ */ import_react71.default.createElement(
4120
4242
  VerificationRow,
4121
4243
  {
4122
- icon: import_core_free_icons24.SmartPhone01Icon,
4244
+ icon: import_core_free_icons25.SmartPhone01Icon,
4123
4245
  title: "Phone Verification",
4124
4246
  status: phoneStatus,
4125
4247
  isLoading: activeLoadingType === "PHONE",
@@ -4128,7 +4250,7 @@ var UniversalVerificationPage = ({
4128
4250
  ), /* @__PURE__ */ import_react71.default.createElement(
4129
4251
  VerificationRow,
4130
4252
  {
4131
- icon: import_core_free_icons24.UserIcon,
4253
+ icon: import_core_free_icons25.UserIcon,
4132
4254
  title: "Identity Verification",
4133
4255
  status: identityStatus,
4134
4256
  isLoading: activeLoadingType === "IDENTITY",
@@ -4145,17 +4267,17 @@ var import_react_hot_toast10 = __toESM(require("react-hot-toast"));
4145
4267
  var import_react_confetti = __toESM(require("react-confetti"));
4146
4268
  var import_react_use = require("react-use");
4147
4269
  var import_react74 = require("@hugeicons/react");
4148
- var import_core_free_icons25 = require("@hugeicons/core-free-icons");
4270
+ var import_core_free_icons26 = require("@hugeicons/core-free-icons");
4149
4271
  var formatWeb3Name = (name) => {
4150
4272
  if (!name) return "";
4151
4273
  return name.toLowerCase().replace(/\b\w/g, (c) => c.toUpperCase());
4152
4274
  };
4153
- var PageSpinner4 = () => /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex justify-center items-center py-12 w-full" }, /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons25.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
4275
+ var PageSpinner4 = () => /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex justify-center items-center py-12 w-full" }, /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons26.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
4154
4276
  var AvatarLogo = ({ src, alt, name, sizeClass = "w-12 h-12" }) => {
4155
4277
  const [isLoaded, setIsLoaded] = (0, import_react73.useState)(false);
4156
4278
  const fallbackUrl = `/api/avatar/?name=${encodeURIComponent(name || " ")}&background=ffffff&color=000000&size=100&font-size=0.33`;
4157
4279
  const finalSrc = src || fallbackUrl;
4158
- return /* @__PURE__ */ import_react73.default.createElement("div", { className: `relative shrink-0 rounded-full bg-stone-100 flex items-center justify-center overflow-hidden border-[3px] border-white ${sizeClass}` }, !isLoaded && /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons25.Loading03Icon, size: 16, className: "animate-spin text-stone-400 absolute" }), /* @__PURE__ */ import_react73.default.createElement("img", { src: finalSrc, alt, onLoad: () => setIsLoaded(true), className: `w-full h-full object-cover transition-opacity duration-300 ${isLoaded ? "opacity-100" : "opacity-0"}` }));
4280
+ return /* @__PURE__ */ import_react73.default.createElement("div", { className: `relative shrink-0 rounded-full bg-stone-100 flex items-center justify-center overflow-hidden border-[3px] border-white ${sizeClass}` }, !isLoaded && /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons26.Loading03Icon, size: 16, className: "animate-spin text-stone-400 absolute" }), /* @__PURE__ */ import_react73.default.createElement("img", { src: finalSrc, alt, onLoad: () => setIsLoaded(true), className: `w-full h-full object-cover transition-opacity duration-300 ${isLoaded ? "opacity-100" : "opacity-0"}` }));
4159
4281
  };
4160
4282
  var UniversalRewardPage = ({
4161
4283
  leaderboardToday,
@@ -4205,7 +4327,7 @@ var UniversalRewardPage = ({
4205
4327
  setIsClaiming(false);
4206
4328
  }
4207
4329
  };
4208
- return /* @__PURE__ */ import_react73.default.createElement("div", null, /* @__PURE__ */ import_react73.default.createElement("div", { className: "mb-6 flex max-w-3xl w-full mx-auto items-center px-1" }, /* @__PURE__ */ import_react73.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons25.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react73.default.createElement(ManagedToaster, null), showConfetti && /* @__PURE__ */ import_react73.default.createElement("div", { className: "fixed inset-0 z-200 pointer-events-none" }, /* @__PURE__ */ import_react73.default.createElement(import_react_confetti.default, { width, height, recycle: false, numberOfPieces: 500, gravity: 0.15 })), isLoading ? /* @__PURE__ */ import_react73.default.createElement(PageSpinner4, null) : /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full p-4 pt-10 mb-6 flex items-end justify-center gap-2 sm:gap-6 h-64 relative overflow-hidden" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col items-center w-1/3 z-10" }, secondPlace ? /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-xs mb-2 truncate max-w-full px-1" }, formatWeb3Name(secondPlace.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: secondPlace.profile.avatarUrl, alt: secondPlace.profile.username, name: formatWeb3Name(secondPlace.profile.web3Name), sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute -bottom-2 right-0 w-5 h-5 rounded-full bg-[#ceff8a] text-black flex items-center justify-center text-xs border border-white " }, "2")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-100 to-[#ceff8a] rounded-t-xl h-24 flex items-center justify-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-stone-800/30 text-2xl " }, "2nd"))) : /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-200 to-stone-100 rounded-t-xl h-24 mt-auto" })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col items-center w-1/3 z-20 -mt-8" }, firstPlace ? /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-xs mb-2 truncate max-w-full px-1" }, formatWeb3Name(firstPlace.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: firstPlace.profile.avatarUrl, alt: firstPlace.profile.username, name: formatWeb3Name(firstPlace.profile.web3Name), sizeClass: "w-17 h-17" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute -bottom-2 right-2 w-5 h-5 rounded-full bg-[#143731] text-white flex items-center justify-center text-xs border border-white " }, "1")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-100 to-[#143731] rounded-t-xl h-32 flex items-center justify-center " }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-white/40 text-3xl tracking-widest" }, "1st"))) : /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-200 to-stone-100 rounded-t-xl h-32 mt-auto" })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col items-center w-1/3 z-10" }, thirdPlace ? /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-xs mb-2 truncate max-w-full px-1" }, formatWeb3Name(thirdPlace.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: thirdPlace.profile.avatarUrl, alt: thirdPlace.profile.username, name: formatWeb3Name(thirdPlace.profile.web3Name), sizeClass: "w-12 h-12" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute -bottom-2 right-0 w-5 h-5 rounded-full bg-[#ceff8a] text-black flex items-center justify-center text-xs border border-white " }, "3")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-100 to-[#ceff8a] rounded-t-xl h-20 flex items-center justify-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-stone-800/30 text-xl " }, "3rd"))) : /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-200 to-stone-100 rounded-t-xl h-20 mt-auto" }))), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center justify-center mb-6 sm:mb-8 w-full animate-in fade-in duration-300 px-2" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar " }, tabs.map((tab, idx) => {
4330
+ return /* @__PURE__ */ import_react73.default.createElement("div", null, /* @__PURE__ */ import_react73.default.createElement("div", { className: "mb-6 flex max-w-3xl w-full mx-auto items-center px-1" }, /* @__PURE__ */ import_react73.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons26.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react73.default.createElement(ManagedToaster, null), showConfetti && /* @__PURE__ */ import_react73.default.createElement("div", { className: "fixed inset-0 z-200 pointer-events-none" }, /* @__PURE__ */ import_react73.default.createElement(import_react_confetti.default, { width, height, recycle: false, numberOfPieces: 500, gravity: 0.15 })), isLoading ? /* @__PURE__ */ import_react73.default.createElement(PageSpinner4, null) : /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full p-4 pt-10 mb-6 flex items-end justify-center gap-2 sm:gap-6 h-64 relative overflow-hidden" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col items-center w-1/3 z-10" }, secondPlace ? /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-xs mb-2 truncate max-w-full px-1" }, formatWeb3Name(secondPlace.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: secondPlace.profile.avatarUrl, alt: secondPlace.profile.username, name: formatWeb3Name(secondPlace.profile.web3Name), sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute -bottom-2 right-0 w-5 h-5 rounded-full bg-[#ceff8a] text-black flex items-center justify-center text-xs border border-white " }, "2")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-100 to-[#ceff8a] rounded-t-xl h-24 flex items-center justify-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-stone-800/30 text-2xl " }, "2nd"))) : /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-200 to-stone-100 rounded-t-xl h-24 mt-auto" })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col items-center w-1/3 z-20 -mt-8" }, firstPlace ? /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-xs mb-2 truncate max-w-full px-1" }, formatWeb3Name(firstPlace.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: firstPlace.profile.avatarUrl, alt: firstPlace.profile.username, name: formatWeb3Name(firstPlace.profile.web3Name), sizeClass: "w-17 h-17" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute -bottom-2 right-2 w-5 h-5 rounded-full bg-[#143731] text-white flex items-center justify-center text-xs border border-white " }, "1")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-100 to-[#143731] rounded-t-xl h-32 flex items-center justify-center " }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-white/40 text-3xl tracking-widest" }, "1st"))) : /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-200 to-stone-100 rounded-t-xl h-32 mt-auto" })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col items-center w-1/3 z-10" }, thirdPlace ? /* @__PURE__ */ import_react73.default.createElement(import_react73.default.Fragment, null, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-xs mb-2 truncate max-w-full px-1" }, formatWeb3Name(thirdPlace.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: thirdPlace.profile.avatarUrl, alt: thirdPlace.profile.username, name: formatWeb3Name(thirdPlace.profile.web3Name), sizeClass: "w-12 h-12" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute -bottom-2 right-0 w-5 h-5 rounded-full bg-[#ceff8a] text-black flex items-center justify-center text-xs border border-white " }, "3")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-100 to-[#ceff8a] rounded-t-xl h-20 flex items-center justify-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-stone-800/30 text-xl " }, "3rd"))) : /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full bg-linear-to-t from-stone-200 to-stone-100 rounded-t-xl h-20 mt-auto" }))), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center justify-center mb-6 sm:mb-8 w-full animate-in fade-in duration-300 px-2" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar " }, tabs.map((tab, idx) => {
4209
4331
  const isActive = activeTabIndex === idx;
4210
4332
  return /* @__PURE__ */ import_react73.default.createElement(
4211
4333
  "button",
@@ -4225,7 +4347,7 @@ var UniversalRewardPage = ({
4225
4347
  onClick: () => setSelectedReward(reward),
4226
4348
  className: "flex items-center justify-between py-4 hover:bg-stone-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl"
4227
4349
  },
4228
- /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-10 h-10 shrink-0 rounded-full flex items-center justify-center border border-stone-200 text-black" }, /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons25.GiftIcon, size: 16 })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col items-start gap-0.5 pr-4" }, /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-sm text-black truncate w-full" }, reward.title), /* @__PURE__ */ import_react73.default.createElement("p", { className: `text-xs inline-flex items-center bg-stone-50 rounded-full px-2 py-1 text-stone-500 mt-0.5` }, statusText))),
4350
+ /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-10 h-10 shrink-0 rounded-full flex items-center justify-center border border-stone-200 text-black" }, /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons26.GiftIcon, size: 16 })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col items-start gap-0.5 pr-4" }, /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-sm text-black truncate w-full" }, reward.title), /* @__PURE__ */ import_react73.default.createElement("p", { className: `text-xs inline-flex items-center bg-stone-50 rounded-full px-2 py-1 text-stone-500 mt-0.5` }, statusText))),
4229
4351
  /* @__PURE__ */ import_react73.default.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-sm text-black" }, reward.amount))
4230
4352
  );
4231
4353
  }))), remainingLeaderboard.length > 0 && /* @__PURE__ */ import_react73.default.createElement("div", { className: "bg-white rounded-2xl p-6 " }, /* @__PURE__ */ import_react73.default.createElement("h2", { className: "text-black text-lg mb-4 tracking-tight" }, "Leaderboard"), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col" }, remainingLeaderboard.map((lb) => /* @__PURE__ */ import_react73.default.createElement("div", { key: lb.profile.username, className: "flex items-center justify-between py-3 min-w-0" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "text-xs text-stone-400 w-4" }, lb.position), /* @__PURE__ */ import_react73.default.createElement(AvatarLogo, { src: lb.profile.avatarUrl, alt: lb.profile.username, name: formatWeb3Name(lb.profile.web3Name), sizeClass: "w-9 h-9" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col" }, /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-sm text-black truncate" }, formatWeb3Name(lb.profile.web3Name)), /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-xs text-stone-400 truncate" }, "@", lb.profile.username))), /* @__PURE__ */ import_react73.default.createElement("div", { className: "shrink-0 text-sm text-black" }, lb.amount))))))), selectedReward && /* @__PURE__ */ import_react73.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: () => !isClaiming && setSelectedReward(null) }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-3xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex-1 p-6 flex flex-col items-center text-center mt-2" }, /* @__PURE__ */ import_react73.default.createElement("h2", { className: "text-xl text-black mb-2" }, selectedReward.title), /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-sm text-stone-500 mb-6 leading-relaxed" }, selectedReward.description), selectedReward.progressText && /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full mb-6" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: `px-4 py-2 rounded-full text-xs tracking-wide ${selectedReward.status === "CLAIMED" ? "bg-green-50 text-green-600" : selectedReward.isEligible ? "bg-blue-50 text-blue-600" : "bg-stone-100 text-stone-600"}` }, selectedReward.progressText)), /* @__PURE__ */ import_react73.default.createElement("div", { className: " w-full rounded-xl p-4 mb-8 flex flex-col items-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-xs tracking-widest text-stone-400 mb-1" }, "Reward Value"), /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-3xl text-black " }, selectedReward.amount)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col gap-3 w-full" }, /* @__PURE__ */ import_react73.default.createElement(
@@ -4252,8 +4374,8 @@ var UniversalRewardPage = ({
4252
4374
  var import_react75 = __toESM(require("react"));
4253
4375
  var import_react_hot_toast11 = __toESM(require("react-hot-toast"));
4254
4376
  var import_react76 = require("@hugeicons/react");
4255
- var import_core_free_icons26 = require("@hugeicons/core-free-icons");
4256
- var PageSpinner5 = () => /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
4377
+ var import_core_free_icons27 = require("@hugeicons/core-free-icons");
4378
+ var PageSpinner5 = () => /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons27.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
4257
4379
  var formatWeb3Name2 = (name) => {
4258
4380
  if (!name) return "";
4259
4381
  return name.toLowerCase().replace(/\b\w/g, (c) => c.toUpperCase());
@@ -4288,16 +4410,16 @@ var UniversalReferralPage = ({
4288
4410
  const [isLoaded, setIsLoaded] = (0, import_react75.useState)(false);
4289
4411
  const fallbackUrl = `/api/avatar/?name=${encodeURIComponent(name || " ")}&background=e0e0e0&color=000000&size=100&font-size=0.33`;
4290
4412
  const finalSrc = src || fallbackUrl;
4291
- return /* @__PURE__ */ import_react75.default.createElement("div", { className: `relative shrink-0 rounded-full bg-stone-100 flex items-center justify-center overflow-hidden border-2 border-white ${sizeClass}` }, !isLoaded && /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.Loading03Icon, size: 16, className: "animate-spin text-stone-400 absolute" }), /* @__PURE__ */ import_react75.default.createElement("img", { src: finalSrc, alt, onLoad: () => setIsLoaded(true), className: `w-full h-full object-cover transition-opacity duration-300 ${isLoaded ? "opacity-100" : "opacity-0"}` }));
4413
+ return /* @__PURE__ */ import_react75.default.createElement("div", { className: `relative shrink-0 rounded-full bg-stone-100 flex items-center justify-center overflow-hidden border-2 border-white ${sizeClass}` }, !isLoaded && /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons27.Loading03Icon, size: 16, className: "animate-spin text-stone-400 absolute" }), /* @__PURE__ */ import_react75.default.createElement("img", { src: finalSrc, alt, onLoad: () => setIsLoaded(true), className: `w-full h-full object-cover transition-opacity duration-300 ${isLoaded ? "opacity-100" : "opacity-0"}` }));
4292
4414
  };
4293
- return /* @__PURE__ */ import_react75.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react75.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react75.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react75.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-4 mb-6 px-1" }, /* @__PURE__ */ import_react75.default.createElement("div", null, /* @__PURE__ */ import_react75.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Your Referrals"), /* @__PURE__ */ import_react75.default.createElement("p", { className: "text-xs text-stone-500" }, "Invite friends and earn rewards when they verify and activate cards.")), /* @__PURE__ */ import_react75.default.createElement("div", { className: "bg-[#143731] rounded-3xl p-6 relative overflow-hidden flex flex-col min-h-25 w-full mt-2" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "relative z-10 flex flex-col items-start" }, /* @__PURE__ */ import_react75.default.createElement("p", { className: "text-xs text-white leading-tight mb-1" }, /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-white/60" }, "AFT Balance")), isLoading ? /* @__PURE__ */ import_react75.default.createElement("div", { className: "h-8 w-32 bg-white/10 animate-pulse rounded mt-2" }) : /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-lg text-white tracking-tight mt-1" }, referralCoins)))), /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-6 p-4 rounded-3xl bg-white w-full" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "border border-stone-200 rounded-xl p-4 flex items-center justify-between" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-xs tracking-widest text-stone-400 " }, "Invitation Code"), isLoading && !referralCode ? /* @__PURE__ */ import_react75.default.createElement("div", { className: "h-6 w-24 bg-stone-50 animate-pulse rounded mt-1" }) : /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-sm text-black tracking-widest" }, referralCode)), /* @__PURE__ */ import_react75.default.createElement(
4415
+ return /* @__PURE__ */ import_react75.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react75.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react75.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react75.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons27.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-4 mb-6 px-1" }, /* @__PURE__ */ import_react75.default.createElement("div", null, /* @__PURE__ */ import_react75.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Your Referrals"), /* @__PURE__ */ import_react75.default.createElement("p", { className: "text-xs text-stone-500" }, "Invite friends and earn rewards when they verify and activate cards.")), /* @__PURE__ */ import_react75.default.createElement("div", { className: "bg-[#143731] rounded-3xl p-6 relative overflow-hidden flex flex-col min-h-25 w-full mt-2" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "relative z-10 flex flex-col items-start" }, /* @__PURE__ */ import_react75.default.createElement("p", { className: "text-xs text-white leading-tight mb-1" }, /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-white/60" }, "AFT Balance")), isLoading ? /* @__PURE__ */ import_react75.default.createElement("div", { className: "h-8 w-32 bg-white/10 animate-pulse rounded mt-2" }) : /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-lg text-white tracking-tight mt-1" }, referralCoins)))), /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-6 p-4 rounded-3xl bg-white w-full" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "border border-stone-200 rounded-xl p-4 flex items-center justify-between" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-xs tracking-widest text-stone-400 " }, "Invitation Code"), isLoading && !referralCode ? /* @__PURE__ */ import_react75.default.createElement("div", { className: "h-6 w-24 bg-stone-50 animate-pulse rounded mt-1" }) : /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-sm text-black tracking-widest" }, referralCode)), /* @__PURE__ */ import_react75.default.createElement(
4294
4416
  "button",
4295
4417
  {
4296
4418
  onClick: handleCopyCode,
4297
4419
  disabled: isLoading || !referralCode,
4298
4420
  className: "w-10 h-10 rounded-full bg-white flex items-center justify-center text-stone-500 hover:text-black transition-colors outline-none disabled:opacity-50"
4299
4421
  },
4300
- /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.Copy01Icon, size: 18 })
4422
+ /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons27.Copy01Icon, size: 18 })
4301
4423
  )), /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex items-center justify-between text-sm text-stone-500 px-1" }, /* @__PURE__ */ import_react75.default.createElement("span", null, "Total Invited: ", /* @__PURE__ */ import_react75.default.createElement("span", { className: "text-black " }, isLoading && !totalCount ? "-" : totalCount)))), /* @__PURE__ */ import_react75.default.createElement("div", { className: "w-full overflow-hidden" }, isLoading ? /* @__PURE__ */ import_react75.default.createElement(PageSpinner5, null) : /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react75.default.createElement("div", null, referrals.length === 0 ? /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col items-center justify-center py-8 opacity-50" }, /* @__PURE__ */ import_react75.default.createElement("p", { className: "text-xs text-stone-500 text-center" }, "You haven't referred anyone yet.")) : referrals.map((ref, idx) => /* @__PURE__ */ import_react75.default.createElement(
4302
4424
  "div",
4303
4425
  {
@@ -4320,7 +4442,7 @@ var UniversalReferralPage = ({
4320
4442
  disabled: currentPage <= 1 || isLoading,
4321
4443
  className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
4322
4444
  },
4323
- /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.ArrowLeft01Icon, size: 14 })
4445
+ /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons27.ArrowLeft01Icon, size: 14 })
4324
4446
  ), /* @__PURE__ */ import_react75.default.createElement(
4325
4447
  "button",
4326
4448
  {
@@ -4328,7 +4450,7 @@ var UniversalReferralPage = ({
4328
4450
  disabled: currentPage >= totalPages || isLoading || totalPages === 0,
4329
4451
  className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
4330
4452
  },
4331
- /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.ArrowRight01Icon, size: 14 })
4453
+ /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons27.ArrowRight01Icon, size: 14 })
4332
4454
  )))))));
4333
4455
  };
4334
4456
 
@@ -4337,7 +4459,7 @@ var import_react77 = __toESM(require("react"));
4337
4459
  var import_react_confetti2 = __toESM(require("react-confetti"));
4338
4460
  var import_react_use2 = require("react-use");
4339
4461
  var import_react78 = require("@hugeicons/react");
4340
- var import_core_free_icons27 = require("@hugeicons/core-free-icons");
4462
+ var import_core_free_icons28 = require("@hugeicons/core-free-icons");
4341
4463
  var CheckIcon2 = ({ className = "" }) => /* @__PURE__ */ import_react77.default.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ import_react77.default.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "black" }), /* @__PURE__ */ import_react77.default.createElement("path", { d: "M8 12L11 15L16 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
4342
4464
  var CrossIcon2 = ({ className = "" }) => /* @__PURE__ */ import_react77.default.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ import_react77.default.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "#F5F5F5" }), /* @__PURE__ */ import_react77.default.createElement("path", { d: "M15 9L9 15M9 9l6 6", stroke: "#D4D4D4", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
4343
4465
  var formatTierName = (name) => {
@@ -4426,9 +4548,9 @@ var UniversalCardActionPage = ({
4426
4548
  onClick: onBackHandler,
4427
4549
  className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none"
4428
4550
  },
4429
- /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons27.ArrowLeft01Icon, size: 16 }),
4551
+ /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons28.ArrowLeft01Icon, size: 16 }),
4430
4552
  " Back"
4431
- )), /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex flex-col animate-in max-w-5xl w-full mx-auto fade-in duration-300" }, /* @__PURE__ */ import_react77.default.createElement("div", { className: "w-full flex flex-col items-center text-center mb-10 px-4" }, /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs tracking-[0.4em] text-stone-400 block mb-3" }, cardType, " CARD ACTIVATION"), /* @__PURE__ */ import_react77.default.createElement("h1", { className: "text-2xl sm:text-3xl text-black tracking-tight mb-2" }, "Select Your Tier"), /* @__PURE__ */ import_react77.default.createElement("p", { className: "text-xs text-stone-500 max-w-lg" }, hasPreordered ? "You have already secured your card. Upgrades are disabled while your order is pending processing." : "Upgrade your tier or secure your card now. Pre-orders guarantee priority processing when the batch goes live.")), isLoadingData ? /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex justify-center py-20" }, /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons27.Loading03Icon, size: 32, className: "animate-spin text-stone-300" })) : /* @__PURE__ */ import_react77.default.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5 w-full max-w-4xl mx-auto px-4" }, availableTiers.map((tier) => {
4553
+ )), /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex flex-col animate-in max-w-5xl w-full mx-auto fade-in duration-300" }, /* @__PURE__ */ import_react77.default.createElement("div", { className: "w-full flex flex-col items-center text-center mb-10 px-4" }, /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs tracking-[0.4em] text-stone-400 block mb-3" }, cardType, " CARD ACTIVATION"), /* @__PURE__ */ import_react77.default.createElement("h1", { className: "text-2xl sm:text-3xl text-black tracking-tight mb-2" }, "Select Your Tier"), /* @__PURE__ */ import_react77.default.createElement("p", { className: "text-xs text-stone-500 max-w-lg" }, hasPreordered ? "You have already secured your card. Upgrades are disabled while your order is pending processing." : "Upgrade your tier or secure your card now. Pre-orders guarantee priority processing when the batch goes live.")), isLoadingData ? /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex justify-center py-20" }, /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons28.Loading03Icon, size: 32, className: "animate-spin text-stone-300" })) : /* @__PURE__ */ import_react77.default.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5 w-full max-w-4xl mx-auto px-4" }, availableTiers.map((tier) => {
4432
4554
  const isCurrent = tier.tierName === currentTier;
4433
4555
  const isCardDisabled = hasPreordered && !isCurrent;
4434
4556
  const isHighlighted = hasPreordered && isCurrent;
@@ -4450,7 +4572,7 @@ var UniversalCardActionPage = ({
4450
4572
  className: `absolute -top-10 -right-10 w-48 h-48 bg-linear-to-bl ${getTierGlow(tier.tierName)} to-transparent opacity-40 blur-2xl rounded-full pointer-events-none`
4451
4573
  }
4452
4574
  ),
4453
- isThisCardLoading && /* @__PURE__ */ import_react77.default.createElement("div", { className: "absolute inset-0 z-50 flex items-center justify-center bg-white/40 backdrop-blur-[1px]" }, /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons27.Loading03Icon, size: 32, className: "animate-spin text-black" })),
4575
+ isThisCardLoading && /* @__PURE__ */ import_react77.default.createElement("div", { className: "absolute inset-0 z-50 flex items-center justify-center bg-white/40 backdrop-blur-[1px]" }, /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons28.Loading03Icon, size: 32, className: "animate-spin text-black" })),
4454
4576
  /* @__PURE__ */ import_react77.default.createElement("div", { className: "mb-6 relative z-10" }, /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex justify-between items-start mb-1" }, /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-black text-sm tracking-widest " }, formatTierName(tier.tierName)), isCurrent && !hasPreordered && /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs bg-stone-100 text-stone-600 px-2 py-1 rounded-full tracking-wider" }, "Current")), /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex items-baseline gap-1 mt-2" }, /* @__PURE__ */ import_react77.default.createElement("h3", { className: "text-3xl font-light text-black" }, tier.priceUSD === 0 ? "Free" : `$${tier.priceUSD.toFixed(2)}`), tier.priceUSD > 0 && /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs text-stone-500" }, tier.isYearly ? "/ year" : "one-time")), /* @__PURE__ */ import_react77.default.createElement("p", { className: "text-sm text-stone-500 mt-3 min-h-12 leading-relaxed" }, tier.description)),
4455
4577
  /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex flex-col gap-2.5 mb-6 relative z-10" }, /* @__PURE__ */ import_react77.default.createElement("div", { className: isPrimaryDisabled ? "opacity-50 pointer-events-none" : "" }, /* @__PURE__ */ import_react77.default.createElement(
4456
4578
  ThreeDActionButton,
@@ -4490,7 +4612,7 @@ var UniversalCardActionPage = ({
4490
4612
  onClick: () => setSelectedTier(null),
4491
4613
  className: "text-stone-400 hover:text-black transition-colors outline-none disabled:opacity-50"
4492
4614
  },
4493
- /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons27.CancelCircleIcon, size: 18 })
4615
+ /* @__PURE__ */ import_react77.default.createElement(import_react78.HugeiconsIcon, { icon: import_core_free_icons28.CancelCircleIcon, size: 18 })
4494
4616
  )), /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 relative z-10" }, /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex flex-col items-center justify-center mb-6" }, /* @__PURE__ */ import_react77.default.createElement("p", { className: "text-2xl text-black mb-1" }, selectedTier.priceUSD === 0 ? "Free" : `$${selectedTier.priceUSD.toFixed(2)}`), /* @__PURE__ */ import_react77.default.createElement("span", { className: `text-xs tracking-widest px-4 py-1.5 rounded-full bg-stone-100 text-black mt-1` }, formatTierName(selectedTier.tierName), " ", formatTierName(cardType))), /* @__PURE__ */ import_react77.default.createElement("div", { className: "grid grid-cols-1 gap-y-6 mb-8 mt-4" }, /* @__PURE__ */ import_react77.default.createElement("div", null, /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs tracking-[0.2em] text-stone-400 block mb-1" }, "Action"), /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-sm text-black " }, intendedAction === "upgrade" ? `Upgrade to ${formatTierName(selectedTier.tierName)}` : `Pre-order Card`)), intendedAction === "pre_order" && selectedTier.priceUSD > 0 && /* @__PURE__ */ import_react77.default.createElement("div", null, /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs tracking-[0.2em] text-stone-400 block mb-1" }, "Payment Notice"), /* @__PURE__ */ import_react77.default.createElement("span", { className: "text-xs text-stone-600 leading-relaxed block" }, "By confirming, $", selectedTier.priceUSD.toFixed(2), " will be securely deducted from your USD asset balance to guarantee your order."))), /* @__PURE__ */ import_react77.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react77.default.createElement(
4495
4617
  ThreeDActionButton,
4496
4618
  {
@@ -4525,7 +4647,7 @@ var UniversalCardActionPage = ({
4525
4647
  // src/components/PinDialerBottomSheet.tsx
4526
4648
  var import_react79 = __toESM(require("react"));
4527
4649
  var import_react80 = require("@hugeicons/react");
4528
- var import_core_free_icons28 = require("@hugeicons/core-free-icons");
4650
+ var import_core_free_icons29 = require("@hugeicons/core-free-icons");
4529
4651
  var PinDialerBottomSheet = ({
4530
4652
  isOpen,
4531
4653
  title = "Action Required",
@@ -4560,7 +4682,7 @@ var PinDialerBottomSheet = ({
4560
4682
  disabled: isVerifying,
4561
4683
  className: "text-stone-400 hover:text-black transition-colors outline-none disabled:opacity-50"
4562
4684
  },
4563
- /* @__PURE__ */ import_react79.default.createElement(import_react80.HugeiconsIcon, { icon: import_core_free_icons28.CancelCircleIcon, size: 20 })
4685
+ /* @__PURE__ */ import_react79.default.createElement(import_react80.HugeiconsIcon, { icon: import_core_free_icons29.CancelCircleIcon, size: 20 })
4564
4686
  )), /* @__PURE__ */ import_react79.default.createElement("div", { className: "flex flex-col px-6 pb-6 pt-2 relative" }, /* @__PURE__ */ import_react79.default.createElement("form", { onSubmit: handleSubmit, className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react79.default.createElement(
4565
4687
  TextInput,
4566
4688
  {
@@ -4588,7 +4710,7 @@ var PinDialerBottomSheet = ({
4588
4710
  var import_react81 = __toESM(require("react"));
4589
4711
  var import_react_hot_toast12 = __toESM(require("react-hot-toast"));
4590
4712
  var import_react82 = require("@hugeicons/react");
4591
- var import_core_free_icons29 = require("@hugeicons/core-free-icons");
4713
+ var import_core_free_icons30 = require("@hugeicons/core-free-icons");
4592
4714
  var CircularLogo = ({ src, alt, fallbackText }) => {
4593
4715
  const [isLoaded, setIsLoaded] = (0, import_react81.useState)(false);
4594
4716
  const [hasError, setHasError] = (0, import_react81.useState)(false);
@@ -4764,7 +4886,7 @@ var UniversalBuyCryptoPage = ({
4764
4886
  }
4765
4887
  };
4766
4888
  const isButtonDisabled = isSubmitting || isCalculating || !fiatAmount || !cryptoAmount || !isAddressValid || !currentRateKey;
4767
- return /* @__PURE__ */ import_react81.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react81.default.createElement(ManagedToaster, null), !hideBackButton && /* @__PURE__ */ import_react81.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react81.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react81.default.createElement(import_react82.HugeiconsIcon, { icon: import_core_free_icons29.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-1 mb-6 px-1" }, /* @__PURE__ */ import_react81.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "Buy Crypto"), /* @__PURE__ */ import_react81.default.createElement("p", { className: "text-xs text-stone-500" }, "Purchase digital assets instantly in your local currency with direct wallet delivery.")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-6 p-6 sm:p-8 rounded-3xl bg-white w-full " }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "relative flex flex-col gap-3" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "border border-stone-200 rounded-2xl p-4 flex items-center justify-between transition-all focus-within:border-black" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-1 flex-1 pr-3 min-w-0" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "text-xs tracking-widest text-stone-400" }, "You Pay (", fiatCurrency.code, ")"), isCalculating && activeSource === "CRYPTO" ? /* @__PURE__ */ import_react81.default.createElement("div", { className: "h-7 w-32 bg-stone-100 animate-pulse rounded-md mt-1" }) : /* @__PURE__ */ import_react81.default.createElement(
4889
+ return /* @__PURE__ */ import_react81.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react81.default.createElement(ManagedToaster, null), !hideBackButton && /* @__PURE__ */ import_react81.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react81.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-stone-500 hover:text-black transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react81.default.createElement(import_react82.HugeiconsIcon, { icon: import_core_free_icons30.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-1 mb-6 px-1" }, /* @__PURE__ */ import_react81.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "Buy Crypto"), /* @__PURE__ */ import_react81.default.createElement("p", { className: "text-xs text-stone-500" }, "Purchase digital assets instantly in your local currency with direct wallet delivery.")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-6 p-6 sm:p-8 rounded-3xl bg-white w-full " }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "relative flex flex-col gap-3" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "border border-stone-200 rounded-2xl p-4 flex items-center justify-between transition-all focus-within:border-black" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-1 flex-1 pr-3 min-w-0" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "text-xs tracking-widest text-stone-400" }, "You Pay (", fiatCurrency.code, ")"), isCalculating && activeSource === "CRYPTO" ? /* @__PURE__ */ import_react81.default.createElement("div", { className: "h-7 w-32 bg-stone-100 animate-pulse rounded-md mt-1" }) : /* @__PURE__ */ import_react81.default.createElement(
4768
4890
  "input",
4769
4891
  {
4770
4892
  type: "text",
@@ -4841,7 +4963,7 @@ var UniversalBuyCryptoPage = ({
4841
4963
  },
4842
4964
  /* @__PURE__ */ import_react81.default.createElement(CircularLogo, { src: c.logoUrl, alt: c.name, fallbackText: c.code }),
4843
4965
  /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col flex-1 min-w-0" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "text-xs text-black truncate" }, c.name), /* @__PURE__ */ import_react81.default.createElement("span", { className: "text-xs text-stone-400" }, c.code)),
4844
- isSelected && /* @__PURE__ */ import_react81.default.createElement(import_react82.HugeiconsIcon, { icon: import_core_free_icons29.CheckmarkCircle02Icon, size: 16, className: "text-black" })
4966
+ isSelected && /* @__PURE__ */ import_react81.default.createElement(import_react82.HugeiconsIcon, { icon: import_core_free_icons30.CheckmarkCircle02Icon, size: 16, className: "text-black" })
4845
4967
  );
4846
4968
  }))))), isNetworkDialogOpen && /* @__PURE__ */ import_react81.default.createElement("div", { className: "fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/40" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "absolute inset-0", onClick: () => setIsNetworkDialogOpen(false) }), /* @__PURE__ */ import_react81.default.createElement("div", { className: "w-full max-w-sm bg-white rounded-2xl shadow-2xl overflow-hidden relative z-10 animate-in fade-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react81.default.createElement("button", { onClick: () => setIsNetworkDialogOpen(false), className: "absolute top-4 right-4 p-2 text-stone-700 hover:text-stone-400 transition-colors outline-none" }, /* @__PURE__ */ import_react81.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, /* @__PURE__ */ import_react81.default.createElement("path", { d: "M18 6 6 18" }), /* @__PURE__ */ import_react81.default.createElement("path", { d: "m6 6 12 12" }))), /* @__PURE__ */ import_react81.default.createElement("div", { className: "p-6 sm:p-8" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "mb-6 mt-2" }, /* @__PURE__ */ import_react81.default.createElement("h2", { className: "text-xl text-black tracking-tight mb-2" }, "Select Network"), /* @__PURE__ */ import_react81.default.createElement("p", { className: "text-sm text-stone-500 leading-relaxed" }, "Ensure your receiving wallet supports this network.")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col gap-2 max-h-72 overflow-y-auto custom-scrollbar pr-1" }, selectedCrypto?.networks?.map((net) => {
4847
4969
  const isSelected = net.id === selectedNetwork.id;
@@ -4857,7 +4979,7 @@ var UniversalBuyCryptoPage = ({
4857
4979
  },
4858
4980
  /* @__PURE__ */ import_react81.default.createElement(CircularLogo, { src: net.logoUrl || selectedCrypto.logoUrl, alt: net.name, fallbackText: net.symbol }),
4859
4981
  /* @__PURE__ */ import_react81.default.createElement("div", { className: "flex flex-col flex-1 min-w-0" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "text-xs text-black truncate" }, net.name), /* @__PURE__ */ import_react81.default.createElement("span", { className: "text-xs text-stone-400" }, net.symbol)),
4860
- isSelected && /* @__PURE__ */ import_react81.default.createElement(import_react82.HugeiconsIcon, { icon: import_core_free_icons29.CheckmarkCircle02Icon, size: 16, className: "text-black" })
4982
+ isSelected && /* @__PURE__ */ import_react81.default.createElement(import_react82.HugeiconsIcon, { icon: import_core_free_icons30.CheckmarkCircle02Icon, size: 16, className: "text-black" })
4861
4983
  );
4862
4984
  }))))));
4863
4985
  };
@@ -4865,7 +4987,7 @@ var UniversalBuyCryptoPage = ({
4865
4987
  // src/components/UniversalHuddlesPage.tsx
4866
4988
  var import_react83 = __toESM(require("react"));
4867
4989
  var import_react84 = require("@hugeicons/react");
4868
- var import_core_free_icons30 = require("@hugeicons/core-free-icons");
4990
+ var import_core_free_icons31 = require("@hugeicons/core-free-icons");
4869
4991
  var HuddleAvatar = ({ timeString, status, sizeClass = "w-10 h-10" }) => {
4870
4992
  const getStatusColor = () => {
4871
4993
  switch (status?.toUpperCase()) {
@@ -4890,9 +5012,9 @@ var HuddleAvatar = ({ timeString, status, sizeClass = "w-10 h-10" }) => {
4890
5012
  month = parts[1].substring(0, 3).toUpperCase();
4891
5013
  }
4892
5014
  }
4893
- return /* @__PURE__ */ import_react83.default.createElement("div", { className: `relative shrink-0 aspect-square ${sizeClass}` }, /* @__PURE__ */ import_react83.default.createElement("div", { className: "w-full h-full aspect-square rounded-lg bg-neutral-100 flex flex-col items-center justify-center overflow-hidden" }, /* @__PURE__ */ import_react83.default.createElement("span", { className: "text-[9px] tracking-wider leading-tight", style: { color: "#d97757" } }, month), /* @__PURE__ */ import_react83.default.createElement("span", { className: "text-sm text-black leading-tight" }, day)), /* @__PURE__ */ import_react83.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3.5 h-3.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
5015
+ return /* @__PURE__ */ import_react83.default.createElement("div", { className: `relative shrink-0 aspect-square ${sizeClass}` }, /* @__PURE__ */ import_react83.default.createElement("div", { className: "w-full h-full aspect-square rounded-lg bg-neutral-50 flex flex-col items-center justify-center overflow-hidden" }, /* @__PURE__ */ import_react83.default.createElement("span", { className: "text-[9px] tracking-wider leading-tight", style: { color: "#d97757" } }, month), /* @__PURE__ */ import_react83.default.createElement("span", { className: "text-sm text-black leading-tight" }, day)), /* @__PURE__ */ import_react83.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3 h-3 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
4894
5016
  };
4895
- var PageSpinner6 = () => /* @__PURE__ */ import_react83.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons30.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
5017
+ var PageSpinner6 = () => /* @__PURE__ */ import_react83.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons31.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
4896
5018
  var UniversalHuddlesPage = ({
4897
5019
  headerTitle,
4898
5020
  headerDescription,
@@ -4920,7 +5042,7 @@ var UniversalHuddlesPage = ({
4920
5042
  },
4921
5043
  /* @__PURE__ */ import_react83.default.createElement(HuddleAvatar, { timeString: huddle.timeString, status: huddle.status }),
4922
5044
  /* @__PURE__ */ import_react83.default.createElement("div", { className: "flex flex-col min-w-0 flex-1" }, /* @__PURE__ */ import_react83.default.createElement("p", { className: "text-sm text-black tracking-tight truncate" }, huddle.name), /* @__PURE__ */ import_react83.default.createElement("span", { className: "text-xs text-stone-500 truncate block mt-0.5" }, huddle.timeString)),
4923
- /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons30.ArrowRight01Icon, size: 14, className: "shrink-0 text-stone-400" })
5045
+ /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons31.ArrowRight01Icon, size: 14, className: "shrink-0 text-stone-400" })
4924
5046
  ))), /* @__PURE__ */ import_react83.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react83.default.createElement("span", { className: "text-xs text-stone-400 tracking-[0.2em]" }, "Page ", currentPage, " of ", totalPages === 0 ? 1 : totalPages), /* @__PURE__ */ import_react83.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react83.default.createElement(
4925
5047
  "button",
4926
5048
  {
@@ -4928,7 +5050,7 @@ var UniversalHuddlesPage = ({
4928
5050
  disabled: currentPage <= 1 || isLoading,
4929
5051
  className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
4930
5052
  },
4931
- /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons30.ArrowLeft01Icon, size: 14 })
5053
+ /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons31.ArrowLeft01Icon, size: 14 })
4932
5054
  ), /* @__PURE__ */ import_react83.default.createElement(
4933
5055
  "button",
4934
5056
  {
@@ -4936,7 +5058,7 @@ var UniversalHuddlesPage = ({
4936
5058
  disabled: currentPage >= totalPages || isLoading || totalPages === 0,
4937
5059
  className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
4938
5060
  },
4939
- /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons30.ArrowRight01Icon, size: 14 })
5061
+ /* @__PURE__ */ import_react83.default.createElement(import_react84.HugeiconsIcon, { icon: import_core_free_icons31.ArrowRight01Icon, size: 14 })
4940
5062
  )))))));
4941
5063
  };
4942
5064
 
@@ -4944,7 +5066,7 @@ var UniversalHuddlesPage = ({
4944
5066
  var import_react85 = __toESM(require("react"));
4945
5067
  var import_react86 = require("@hugeicons/react");
4946
5068
  var import_react_hot_toast13 = __toESM(require("react-hot-toast"));
4947
- var import_core_free_icons31 = require("@hugeicons/core-free-icons");
5069
+ var import_core_free_icons32 = require("@hugeicons/core-free-icons");
4948
5070
  var MemberAvatar2 = ({ src, status }) => {
4949
5071
  const [loaded, setLoaded] = (0, import_react85.useState)(false);
4950
5072
  const [error, setError] = (0, import_react85.useState)(false);
@@ -4964,7 +5086,7 @@ var MemberAvatar2 = ({ src, status }) => {
4964
5086
  return "bg-stone-200";
4965
5087
  }
4966
5088
  };
4967
- return /* @__PURE__ */ import_react85.default.createElement("div", { className: "relative w-10 h-10 shrink-0" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react85.default.createElement(
5089
+ return /* @__PURE__ */ import_react85.default.createElement("div", { className: "relative w-10 h-10 shrink-0" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react85.default.createElement(
4968
5090
  "img",
4969
5091
  {
4970
5092
  src: finalSrc,
@@ -4975,7 +5097,7 @@ var MemberAvatar2 = ({ src, status }) => {
4975
5097
  }
4976
5098
  )), /* @__PURE__ */ import_react85.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-2.5 h-2.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
4977
5099
  };
4978
- var PageSpinner7 = () => /* @__PURE__ */ import_react85.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
5100
+ var PageSpinner7 = () => /* @__PURE__ */ import_react85.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
4979
5101
  var UniversalMembersPage = ({
4980
5102
  headerTitle,
4981
5103
  headerDescription,
@@ -5075,7 +5197,7 @@ var UniversalMembersPage = ({
5075
5197
  onClose: () => setMemberToRemove(null),
5076
5198
  onConfirm: handleConfirmRemove
5077
5199
  }
5078
- ), !isInviteMode && /* @__PURE__ */ import_react85.default.createElement("div", { className: "flex flex-row flex-nowrap mb-4 items-center justify-between gap-4 w-full animate-in fade-in duration-300" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react85.default.createElement(
5200
+ ), !isInviteMode && /* @__PURE__ */ import_react85.default.createElement("div", { className: "flex flex-row flex-nowrap mb-4 items-center justify-between gap-4 w-full animate-in fade-in duration-300" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react85.default.createElement(
5079
5201
  "input",
5080
5202
  {
5081
5203
  type: "text",
@@ -5090,14 +5212,14 @@ var UniversalMembersPage = ({
5090
5212
  onClick: () => setIsStatusModalOpen(true),
5091
5213
  className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none"
5092
5214
  },
5093
- /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.SearchList02Icon, size: 16 })
5215
+ /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.SearchList02Icon, size: 16 })
5094
5216
  ), /* @__PURE__ */ import_react85.default.createElement(
5095
5217
  "button",
5096
5218
  {
5097
5219
  onClick: () => setIsRoleModalOpen(true),
5098
5220
  className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none"
5099
5221
  },
5100
- /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.ListSettingIcon, size: 16 })
5222
+ /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.ListSettingIcon, size: 16 })
5101
5223
  ))), /* @__PURE__ */ import_react85.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "flex flex-row items-start justify-between gap-4" }, /* @__PURE__ */ import_react85.default.createElement("div", null, /* @__PURE__ */ import_react85.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, isInviteMode ? "Add Member" : headerTitle), headerDescription && !isInviteMode && /* @__PURE__ */ import_react85.default.createElement("p", { className: "text-xs text-stone-500" }, headerDescription)), !isInviteMode && /* @__PURE__ */ import_react85.default.createElement(
5102
5224
  "button",
5103
5225
  {
@@ -5165,7 +5287,7 @@ var UniversalMembersPage = ({
5165
5287
  disabled: currentPage <= 1 || isListLoading,
5166
5288
  className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
5167
5289
  },
5168
- /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.ArrowLeft01Icon, size: 14 })
5290
+ /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.ArrowLeft01Icon, size: 14 })
5169
5291
  ), /* @__PURE__ */ import_react85.default.createElement(
5170
5292
  "button",
5171
5293
  {
@@ -5173,7 +5295,7 @@ var UniversalMembersPage = ({
5173
5295
  disabled: currentPage >= totalPages || isListLoading || totalPages === 0,
5174
5296
  className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
5175
5297
  },
5176
- /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons31.ArrowRight01Icon, size: 14 })
5298
+ /* @__PURE__ */ import_react85.default.createElement(import_react86.HugeiconsIcon, { icon: import_core_free_icons32.ArrowRight01Icon, size: 14 })
5177
5299
  )))))), isStatusModalOpen && /* @__PURE__ */ import_react85.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: () => setIsStatusModalOpen(false) }), /* @__PURE__ */ import_react85.default.createElement("div", { ref: statusDropdownRef, className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: "p-6 text-center w-full mb-2" }, /* @__PURE__ */ import_react85.default.createElement("h3", { className: "text-sm text-black tracking-tight" }, "Status Filter")), /* @__PURE__ */ import_react85.default.createElement("div", { className: "w-full flex flex-col pl-2 pr-2 gap-1" }, ["ALL", "ACTIVE", "BUSY", "OFFLINE", "AWAY"].map((option) => /* @__PURE__ */ import_react85.default.createElement(
5178
5300
  "button",
5179
5301
  {
@@ -5204,13 +5326,13 @@ var import_react87 = __toESM(require("react"));
5204
5326
  var import_navigation6 = require("next/navigation");
5205
5327
  var import_react88 = require("@hugeicons/react");
5206
5328
  var import_react_hot_toast14 = __toESM(require("react-hot-toast"));
5207
- var import_core_free_icons32 = require("@hugeicons/core-free-icons");
5329
+ var import_core_free_icons33 = require("@hugeicons/core-free-icons");
5208
5330
  var OrgAvatar = ({ src, sizeClass = "w-10 h-10" }) => {
5209
5331
  const [loaded, setLoaded] = (0, import_react87.useState)(false);
5210
5332
  const [error, setError] = (0, import_react87.useState)(false);
5211
5333
  const defaultAvatar = "https://storage.googleapis.com/retina-cloud-v2/assets/images/office_a.avif";
5212
5334
  const finalSrc = error || !src ? defaultAvatar : src;
5213
- return /* @__PURE__ */ import_react87.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react87.default.createElement(
5335
+ return /* @__PURE__ */ import_react87.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react87.default.createElement(
5214
5336
  "img",
5215
5337
  {
5216
5338
  src: finalSrc,
@@ -5286,7 +5408,7 @@ var UniversalHome2 = ({
5286
5408
  onClose: () => setShowLogoutConfirm(false),
5287
5409
  onConfirm: confirmLogout
5288
5410
  }
5289
- ), /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex items-center justify-between w-full pb-4" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-10 h-10 shrink-0 cursor-pointer", onClick: () => setShowOrgSwitcher(true) }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative w-full h-full rounded-lg overflow-hidden bg-white flex items-center justify-center" }, !isAvatarLoaded && /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-10 bg-white" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Loading03Icon, size: 16, className: "animate-spin text-black" })), /* @__PURE__ */ import_react87.default.createElement(
5411
+ ), /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex items-center justify-between w-full pb-4" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-10 h-10 shrink-0 cursor-pointer", onClick: () => setShowOrgSwitcher(true) }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative w-full h-full rounded-lg overflow-hidden bg-white flex items-center justify-center" }, !isAvatarLoaded && /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-10 bg-white" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, size: 16, className: "animate-spin text-black" })), /* @__PURE__ */ import_react87.default.createElement(
5290
5412
  "img",
5291
5413
  {
5292
5414
  src: finalAvatarSrc,
@@ -5300,7 +5422,7 @@ var UniversalHome2 = ({
5300
5422
  onClick: () => router.push("/app/ai"),
5301
5423
  className: "relative w-10 h-10 flex items-center justify-center rounded-full bg-white outline-none hover:bg-stone-50 transition-colors"
5302
5424
  },
5303
- /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Robot01Icon, size: 20, className: "text-black" })
5425
+ /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Robot01Icon, size: 20, className: "text-black" })
5304
5426
  ), /* @__PURE__ */ import_react87.default.createElement(
5305
5427
  "button",
5306
5428
  {
@@ -5310,7 +5432,7 @@ var UniversalHome2 = ({
5310
5432
  },
5311
5433
  className: "relative w-10 h-10 flex items-center justify-center rounded-full bg-white outline-none hover:bg-stone-50 transition-colors"
5312
5434
  },
5313
- /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Notification01Icon, size: 20, className: "text-black" }),
5435
+ /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Notification01Icon, size: 20, className: "text-black" }),
5314
5436
  hasUnreadNotifs && /* @__PURE__ */ import_react87.default.createElement("span", { className: "absolute top-2.5 right-2.5 w-2 h-2 bg-[#d97757] rounded-full border border-white" })
5315
5437
  ))), /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-full pb-6 flex flex-col gap-4" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "grid grid-cols-2 gap-2" }, /* @__PURE__ */ import_react87.default.createElement(
5316
5438
  "div",
@@ -5318,7 +5440,7 @@ var UniversalHome2 = ({
5318
5440
  onClick: createHuddleAction?.onClick,
5319
5441
  className: "bg-[#d97757] rounded-2xl p-5 relative overflow-hidden flex flex-col h-32 sm:h-36 cursor-pointer hover:opacity-90 transition-opacity"
5320
5442
  },
5321
- /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative z-10 flex flex-col h-full justify-between" }, /* @__PURE__ */ import_react87.default.createElement("p", { className: "text-sm sm:text-sm text-white leading-tight" }, "Create", /* @__PURE__ */ import_react87.default.createElement("br", null), /* @__PURE__ */ import_react87.default.createElement("span", { className: "text-white/70" }, "Huddle")), /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-8 h-8 rounded-full bg-white/10 flex items-center justify-center" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.ArrowUpRight01Icon, size: 16, className: "text-white" }))),
5443
+ /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative z-10 flex flex-col h-full justify-between" }, /* @__PURE__ */ import_react87.default.createElement("p", { className: "text-sm sm:text-sm text-white leading-tight" }, "Create", /* @__PURE__ */ import_react87.default.createElement("br", null), /* @__PURE__ */ import_react87.default.createElement("span", { className: "text-white/70" }, "Huddle")), /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-8 h-8 rounded-full bg-white/10 flex items-center justify-center" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.ArrowUpRight01Icon, size: 16, className: "text-white" }))),
5322
5444
  /* @__PURE__ */ import_react87.default.createElement(
5323
5445
  "img",
5324
5446
  {
@@ -5333,7 +5455,7 @@ var UniversalHome2 = ({
5333
5455
  onClick: joinHuddleAction?.onClick,
5334
5456
  className: "bg-[#ffffff] rounded-2xl p-5 relative overflow-hidden flex flex-col h-32 sm:h-36 cursor-pointer hover:opacity-90 transition-opacity"
5335
5457
  },
5336
- /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative z-10 flex flex-col h-full justify-between" }, /* @__PURE__ */ import_react87.default.createElement("p", { className: "text-sm sm:text-sm text-black leading-tight" }, "Join", /* @__PURE__ */ import_react87.default.createElement("br", null), /* @__PURE__ */ import_react87.default.createElement("span", { className: "text-black/60" }, "Huddle")), /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-8 h-8 rounded-full bg-black/5 flex items-center justify-center" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.ArrowRight01Icon, size: 16, className: "text-black" }))),
5458
+ /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative z-10 flex flex-col h-full justify-between" }, /* @__PURE__ */ import_react87.default.createElement("p", { className: "text-sm sm:text-sm text-black leading-tight" }, "Join", /* @__PURE__ */ import_react87.default.createElement("br", null), /* @__PURE__ */ import_react87.default.createElement("span", { className: "text-black/60" }, "Huddle")), /* @__PURE__ */ import_react87.default.createElement("div", { className: "w-8 h-8 rounded-full bg-black/5 flex items-center justify-center" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.ArrowRight01Icon, size: 16, className: "text-black" }))),
5337
5459
  /* @__PURE__ */ import_react87.default.createElement(
5338
5460
  "img",
5339
5461
  {
@@ -5347,7 +5469,7 @@ var UniversalHome2 = ({
5347
5469
  {
5348
5470
  ...huddlesProps
5349
5471
  }
5350
- )), showOrgSwitcher && /* @__PURE__ */ import_react87.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowOrgSwitcher(false) }), /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[80vh] h-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react87.default.createElement("h3", { className: "text-sm text-black tracking-tight" }, "Switch Workspace"), /* @__PURE__ */ import_react87.default.createElement("button", { onClick: () => setShowOrgSwitcher(false), className: "text-stone-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex flex-col" }, organizations?.length === 0 ? /* @__PURE__ */ import_react87.default.createElement("div", { className: "p-8 text-center text-xs text-stone-400" }, "No organizations found.") : organizations?.map((org) => /* @__PURE__ */ import_react87.default.createElement(
5472
+ )), showOrgSwitcher && /* @__PURE__ */ import_react87.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowOrgSwitcher(false) }), /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[80vh] h-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react87.default.createElement("h3", { className: "text-sm text-black tracking-tight" }, "Switch Workspace"), /* @__PURE__ */ import_react87.default.createElement("button", { onClick: () => setShowOrgSwitcher(false), className: "text-stone-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex flex-col" }, organizations?.length === 0 ? /* @__PURE__ */ import_react87.default.createElement("div", { className: "p-8 text-center text-xs text-stone-400" }, "No organizations found.") : organizations?.map((org) => /* @__PURE__ */ import_react87.default.createElement(
5351
5473
  "button",
5352
5474
  {
5353
5475
  key: org.id,
@@ -5369,16 +5491,16 @@ var UniversalHome2 = ({
5369
5491
  },
5370
5492
  className: "w-full py-2.5 flex items-center justify-center gap-2 rounded-full border border-stone-200 text-stone-600 hover:bg-stone-100 transition-colors outline-none text-xs tracking-wide"
5371
5493
  },
5372
- /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Logout01Icon, size: 15 }),
5494
+ /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Logout01Icon, size: 15 }),
5373
5495
  "Log Out"
5374
- )))), showNotifDialog && /* @__PURE__ */ import_react87.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowNotifDialog(false) }), /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[80vh] h-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, selectedNotif ? /* @__PURE__ */ import_react87.default.createElement("button", { onClick: () => setSelectedNotif(null), disabled: isResolving, className: "text-[#d97757] hover:text-[#d97757] transition-colors outline-none flex items-center gap-2 text-xs tracking-widest disabled:opacity-50" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.ArrowLeft01Icon, size: 14 }), " Back") : /* @__PURE__ */ import_react87.default.createElement("h3", { className: "text-sm text-black tracking-tight flex items-center gap-2" }, "Notifications"), /* @__PURE__ */ import_react87.default.createElement("button", { onClick: () => setShowNotifDialog(false), disabled: isResolving, className: "text-stone-400 hover:text-black transition-colors outline-none disabled:opacity-50" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2 relative" }, isNotifsLoading && !selectedNotif && /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 z-10 flex items-center justify-center" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Loading03Icon, size: 28, className: "animate-spin text-black" })), selectedNotif ? /* @__PURE__ */ import_react87.default.createElement("div", { className: "p-4 text-left" }, selectedNotif.type === "HUDDLE_INVITE" && selectedNotif.meta_json?.action === "RESOLVE_INVITE" && selectedNotif.meta_json?.completed ? /* @__PURE__ */ import_react87.default.createElement("div", { className: "" }) : /* @__PURE__ */ import_react87.default.createElement("h4", { className: "text-sm text-black mb-1" }, selectedNotif.title), /* @__PURE__ */ import_react87.default.createElement("span", { className: "text-xs text-stone-400 tracking-widest mb-4 block" }, formatNotifDate(selectedNotif.createdAt)), /* @__PURE__ */ import_react87.default.createElement("p", { className: "text-xs text-stone-600 leading-relaxed whitespace-pre-wrap" }, selectedNotif.message), selectedNotif.type === "HUDDLE_INVITE" && selectedNotif.meta_json?.action === "RESOLVE_INVITE" && /* @__PURE__ */ import_react87.default.createElement("div", { className: `mt-8 flex gap-3 pt-6 ${selectedNotif.meta_json?.completed ? "opacity-40 pointer-events-none cursor-not-allowed" : ""}` }, /* @__PURE__ */ import_react87.default.createElement(
5496
+ )))), showNotifDialog && /* @__PURE__ */ import_react87.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowNotifDialog(false) }), /* @__PURE__ */ import_react87.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[80vh] h-auto" }, /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, selectedNotif ? /* @__PURE__ */ import_react87.default.createElement("button", { onClick: () => setSelectedNotif(null), disabled: isResolving, className: "text-[#d97757] hover:text-[#d97757] transition-colors outline-none flex items-center gap-2 text-xs tracking-widest disabled:opacity-50" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.ArrowLeft01Icon, size: 14 }), " Back") : /* @__PURE__ */ import_react87.default.createElement("h3", { className: "text-sm text-black tracking-tight flex items-center gap-2" }, "Notifications"), /* @__PURE__ */ import_react87.default.createElement("button", { onClick: () => setShowNotifDialog(false), disabled: isResolving, className: "text-stone-400 hover:text-black transition-colors outline-none disabled:opacity-50" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react87.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2 relative" }, isNotifsLoading && !selectedNotif && /* @__PURE__ */ import_react87.default.createElement("div", { className: "absolute inset-0 z-10 flex items-center justify-center" }, /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, size: 28, className: "animate-spin text-black" })), selectedNotif ? /* @__PURE__ */ import_react87.default.createElement("div", { className: "p-4 text-left" }, selectedNotif.type === "HUDDLE_INVITE" && selectedNotif.meta_json?.action === "RESOLVE_INVITE" && selectedNotif.meta_json?.completed ? /* @__PURE__ */ import_react87.default.createElement("div", { className: "" }) : /* @__PURE__ */ import_react87.default.createElement("h4", { className: "text-sm text-black mb-1" }, selectedNotif.title), /* @__PURE__ */ import_react87.default.createElement("span", { className: "text-xs text-stone-400 tracking-widest mb-4 block" }, formatNotifDate(selectedNotif.createdAt)), /* @__PURE__ */ import_react87.default.createElement("p", { className: "text-xs text-stone-600 leading-relaxed whitespace-pre-wrap" }, selectedNotif.message), selectedNotif.type === "HUDDLE_INVITE" && selectedNotif.meta_json?.action === "RESOLVE_INVITE" && /* @__PURE__ */ import_react87.default.createElement("div", { className: `mt-8 flex gap-3 pt-6 ${selectedNotif.meta_json?.completed ? "opacity-40 pointer-events-none cursor-not-allowed" : ""}` }, /* @__PURE__ */ import_react87.default.createElement(
5375
5497
  "button",
5376
5498
  {
5377
5499
  onClick: () => handleResolve("ACCEPTED"),
5378
5500
  disabled: isResolving || selectedNotif.meta_json?.completed,
5379
5501
  className: "flex-1 py-2.5 rounded-full bg-black text-white text-xs tracking-wide transition-all outline-none hover:bg-stone-800 flex justify-center items-center disabled:opacity-50"
5380
5502
  },
5381
- isResolving ? /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.Loading03Icon, className: "animate-spin", size: 16 }) : "Accept"
5503
+ isResolving ? /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, className: "animate-spin", size: 16 }) : "Accept"
5382
5504
  ), /* @__PURE__ */ import_react87.default.createElement(
5383
5505
  "button",
5384
5506
  {
@@ -5406,7 +5528,7 @@ var UniversalHome2 = ({
5406
5528
  onClick: () => onNotificationPageChange?.(notificationPage - 1),
5407
5529
  className: "w-7 h-7 flex items-center justify-center rounded-full bg-white border border-stone-200 text-stone-600 disabled:opacity-30 outline-none hover:bg-stone-50 transition-colors"
5408
5530
  },
5409
- /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.ArrowLeft01Icon, size: 12 })
5531
+ /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.ArrowLeft01Icon, size: 12 })
5410
5532
  ), /* @__PURE__ */ import_react87.default.createElement(
5411
5533
  "button",
5412
5534
  {
@@ -5414,7 +5536,7 @@ var UniversalHome2 = ({
5414
5536
  onClick: () => onNotificationPageChange?.(notificationPage + 1),
5415
5537
  className: "w-7 h-7 flex items-center justify-center rounded-full bg-white border border-stone-200 text-stone-600 disabled:opacity-30 outline-none hover:bg-stone-50 transition-colors"
5416
5538
  },
5417
- /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons32.ArrowRight01Icon, size: 12 })
5539
+ /* @__PURE__ */ import_react87.default.createElement(import_react88.HugeiconsIcon, { icon: import_core_free_icons33.ArrowRight01Icon, size: 12 })
5418
5540
  ))))));
5419
5541
  };
5420
5542
 
@@ -5422,7 +5544,7 @@ var UniversalHome2 = ({
5422
5544
  var import_react89 = __toESM(require("react"));
5423
5545
  var import_react_hot_toast15 = __toESM(require("react-hot-toast"));
5424
5546
  var import_react90 = require("@hugeicons/react");
5425
- var import_core_free_icons33 = require("@hugeicons/core-free-icons");
5547
+ var import_core_free_icons34 = require("@hugeicons/core-free-icons");
5426
5548
  var MemberAvatar3 = ({ src, status, sizeClass = "w-10 h-10" }) => {
5427
5549
  const [loaded, setLoaded] = (0, import_react89.useState)(false);
5428
5550
  const [error, setError] = (0, import_react89.useState)(false);
@@ -5442,14 +5564,14 @@ var MemberAvatar3 = ({ src, status, sizeClass = "w-10 h-10" }) => {
5442
5564
  return "bg-stone-200";
5443
5565
  }
5444
5566
  };
5445
- return /* @__PURE__ */ import_react89.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react89.default.createElement("img", { src: finalSrc, alt: "Member", className: `w-full h-full object-cover transition-opacity duration-300 ${loaded || error ? "opacity-100" : "opacity-0"}`, onLoad: () => setLoaded(true), onError: () => setError(true) })), /* @__PURE__ */ import_react89.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3.5 h-3.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
5567
+ return /* @__PURE__ */ import_react89.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react89.default.createElement("img", { src: finalSrc, alt: "Member", className: `w-full h-full object-cover transition-opacity duration-300 ${loaded || error ? "opacity-100" : "opacity-0"}`, onLoad: () => setLoaded(true), onError: () => setError(true) })), /* @__PURE__ */ import_react89.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3.5 h-3.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
5446
5568
  };
5447
5569
  var OrgAvatar2 = ({ src, sizeClass = "w-10 h-10" }) => {
5448
5570
  const [loaded, setLoaded] = (0, import_react89.useState)(false);
5449
5571
  const [error, setError] = (0, import_react89.useState)(false);
5450
5572
  const defaultAvatar = "https://storage.googleapis.com/retina-cloud-v2/assets/images/office_a.avif";
5451
5573
  const finalSrc = error || !src ? defaultAvatar : src;
5452
- return /* @__PURE__ */ import_react89.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react89.default.createElement(
5574
+ return /* @__PURE__ */ import_react89.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react89.default.createElement(
5453
5575
  "img",
5454
5576
  {
5455
5577
  src: finalSrc,
@@ -5460,7 +5582,7 @@ var OrgAvatar2 = ({ src, sizeClass = "w-10 h-10" }) => {
5460
5582
  }
5461
5583
  )));
5462
5584
  };
5463
- var PageSpinner8 = () => /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
5585
+ var PageSpinner8 = () => /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
5464
5586
  var InputSpinner3 = () => /* @__PURE__ */ import_react89.default.createElement("svg", { className: "animate-spin h-4 w-4 text-stone-400", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react89.default.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), /* @__PURE__ */ import_react89.default.createElement("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" }));
5465
5587
  var UniversalSettings = ({
5466
5588
  accountType,
@@ -5728,7 +5850,7 @@ var UniversalSettings = ({
5728
5850
  const isOrgSaveDisabled = isSavingOrg || !canManage || isCheckingSlug || !hasOrgChanges || orgName.length < 3 || orgSlug.length < 3 || orgSlug !== initialOrgSlug && slugAvailable === false;
5729
5851
  const hasProfileChanges = `${firstName} ${lastName}`.trim() !== initialFullName || jobTitle !== initialJobTitle || description !== initialDescription || avatarUrl !== initialAvatarUrl;
5730
5852
  const isProfileSaveDisabled = isSavingProfile || !hasProfileChanges || firstName.length < 2 || lastName.length < 2;
5731
- return /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react89.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react89.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-[#d97757] hover:text-[#d97757] transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react89.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "System Settings"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Manage your workspace identity, team configurations, and AI billing parameters.")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-6 mb-6 overflow-x-auto custom-scrollbar px-1" }, isOrg && /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => {
5853
+ return /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react89.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react89.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-[#d97757] hover:text-[#d97757] transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react89.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "System Settings"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Manage your workspace identity, team configurations, and AI billing parameters.")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-6 mb-6 overflow-x-auto custom-scrollbar px-1" }, isOrg && /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => {
5732
5854
  setActiveTab("MEMBERS");
5733
5855
  setExpandedId(null);
5734
5856
  setIsInviteMode(false);
@@ -5745,16 +5867,16 @@ var UniversalSettings = ({
5745
5867
  onClose: () => setMemberToRemove(null),
5746
5868
  onConfirm: handleConfirmRemove
5747
5869
  }
5748
- ), !isInviteMode && !activeExpandedMember && /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-row flex-nowrap mb-4 items-center justify-between gap-4 w-full px-1" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react89.default.createElement("input", { type: "text", placeholder: "Search members...", value: localSearchQuery, onChange: (e) => setLocalSearchQuery(e.target.value), className: "w-full pl-10 pr-4 py-2 bg-white rounded-full text-sm text-black placeholder-stone-400 outline-none transition-colors focus:border-[#d97757] border border-transparent " })), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0 shrink-0" }, /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setIsStatusModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.SearchList02Icon, size: 16 })), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setIsRoleModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.ListSettingIcon, size: 16 })))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, activeExpandedMember ? /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col animate-in fade-in zoom-in-95 duration-300 w-full" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "mb-6 flex w-full items-center" }, /* @__PURE__ */ import_react89.default.createElement(
5870
+ ), !isInviteMode && !activeExpandedMember && /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-row flex-nowrap mb-4 items-center justify-between gap-4 w-full px-1" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react89.default.createElement("input", { type: "text", placeholder: "Search members...", value: localSearchQuery, onChange: (e) => setLocalSearchQuery(e.target.value), className: "w-full pl-10 pr-4 py-2 bg-white rounded-full text-sm text-black placeholder-stone-400 outline-none transition-colors focus:border-[#d97757] border border-transparent " })), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0 shrink-0" }, /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setIsStatusModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.SearchList02Icon, size: 16 })), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setIsRoleModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.ListSettingIcon, size: 16 })))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, activeExpandedMember ? /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col animate-in fade-in zoom-in-95 duration-300 w-full" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "mb-6 flex w-full items-center" }, /* @__PURE__ */ import_react89.default.createElement(
5749
5871
  "button",
5750
5872
  {
5751
5873
  onClick: () => setExpandedId(null),
5752
5874
  disabled: isUpdatingRole,
5753
5875
  className: "flex items-center gap-2 text-[#d97757] hover:text-[#d97757] transition-colors text-sm outline-none disabled:opacity-50"
5754
5876
  },
5755
- /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.ArrowLeft01Icon, size: 16 }),
5877
+ /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 16 }),
5756
5878
  " Back"
5757
- )), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-1 mb-8" }, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, "Member Profile"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "View and manage this member's access privileges.")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4 mb-4" }, /* @__PURE__ */ import_react89.default.createElement(MemberAvatar3, { src: activeExpandedMember.avatarUrl, status: activeExpandedMember.status, sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-sm text-black tracking-tight truncate" }, activeExpandedMember.fullName), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-2 mt-0.5" }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-xs text-stone-500 capitalize" }, activeExpandedMember.role.toLowerCase()), canManage && (isUpdatingRole ? /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, size: 12, className: "animate-spin text-stone-400 ml-1" }) : /* @__PURE__ */ import_react89.default.createElement(import_react89.default.Fragment, null, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-stone-300 text-xs px-0.5" }, "\u2022"), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setRoleEditTarget(activeExpandedMember), className: "text-xs text-[#d97757] hover:underline outline-none" }, "Edit"), /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-stone-300 text-xs px-0.5" }, "\u2022"), /* @__PURE__ */ import_react89.default.createElement(
5879
+ )), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-1 mb-8" }, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, "Member Profile"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "View and manage this member's access privileges.")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4 mb-4" }, /* @__PURE__ */ import_react89.default.createElement(MemberAvatar3, { src: activeExpandedMember.avatarUrl, status: activeExpandedMember.status, sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-sm text-black tracking-tight truncate" }, activeExpandedMember.fullName), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-2 mt-0.5" }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-xs text-stone-500 capitalize" }, activeExpandedMember.role.toLowerCase()), canManage && (isUpdatingRole ? /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 12, className: "animate-spin text-stone-400 ml-1" }) : /* @__PURE__ */ import_react89.default.createElement(import_react89.default.Fragment, null, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-stone-300 text-xs px-0.5" }, "\u2022"), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setRoleEditTarget(activeExpandedMember), className: "text-xs text-[#d97757] hover:underline outline-none" }, "Edit"), /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-stone-300 text-xs px-0.5" }, "\u2022"), /* @__PURE__ */ import_react89.default.createElement(
5758
5880
  "button",
5759
5881
  {
5760
5882
  onClick: () => setMemberToRemove(activeExpandedMember),
@@ -5765,12 +5887,12 @@ var UniversalSettings = ({
5765
5887
  ))))))) : /* @__PURE__ */ import_react89.default.createElement(import_react89.default.Fragment, null, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-row items-center justify-between gap-4" }, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, isInviteMode ? "Add Member" : "Team Directory"), !isInviteMode && canManage && /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => setIsInviteMode(true), className: "shrink-0 px-4 py-1.5 border border-stone-200 text-black text-xs tracking-wide rounded-full hover:bg-stone-50 transition-colors outline-none" }, "Invite Team")), !isInviteMode && /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Manage members and access controls across your organization.")), /* @__PURE__ */ import_react89.default.createElement("div", { className: "w-full overflow-hidden" }, isInviteMode ? /* @__PURE__ */ import_react89.default.createElement("form", { onSubmit: handleInviteSubmit, className: "flex flex-col gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 mt-2" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react89.default.createElement("input", { type: "email", value: inviteEmail, onChange: (e) => setInviteEmail(cleanEmailId(e.target.value)), required: true, autoFocus: true, className: "w-full px-2 py-3 bg-transparent text-sm border-b border-stone-200 text-black outline-none focus:border-black transition-all duration-300", placeholder: "name@company.com" })), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react89.default.createElement(ThreeDActionButton, { type: "submit", disabled: inviteEmail.length < 5 || isInviting, isLoading: isInviting, className: "w-full" }, "Send Invitation"), /* @__PURE__ */ import_react89.default.createElement("button", { type: "button", onClick: () => {
5766
5888
  setIsInviteMode(false);
5767
5889
  setInviteEmail("");
5768
- }, disabled: isInviting, className: "w-full flex items-center justify-center py-2.5 rounded-full border border-stone-200 text-black hover:bg-stone-50 transition-colors outline-none text-xs tracking-wide" }, "Cancel"))) : isMembersLoading || isTyping ? /* @__PURE__ */ import_react89.default.createElement(PageSpinner8, null) : /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col min-w-0 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", null, members.length === 0 ? /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-400 py-6 text-center" }, "No members found") : members.map((member) => /* @__PURE__ */ import_react89.default.createElement("div", { key: member.id, onClick: () => setExpandedId(member.id), className: "flex items-center justify-between py-3 hover:bg-stone-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react89.default.createElement(MemberAvatar3, { src: member.avatarUrl, status: member.status }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-0.5" }, /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-sm text-black truncate" }, member.fullName), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500 capitalize truncate" }, member.role.toLowerCase())))))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-xs text-stone-400 tracking-[0.2em]" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage - 1), disabled: membersCurrentPage <= 1 || isMembersLoading, className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.ArrowLeft01Icon, size: 14 })), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage + 1), disabled: membersCurrentPage >= membersTotalPages || isMembersLoading || membersTotalPages === 0, className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.ArrowRight01Icon, size: 14 })))))))), /* @__PURE__ */ import_react89.default.createElement(ReusableOptions, { isOpen: isStatusModalOpen, onClose: () => setIsStatusModalOpen(false), title: "Status Filter", options: ["ALL", "ACTIVE", "BUSY", "OFFLINE", "AWAY"], selectedOption: activeStatusFilter, onSelect: (status) => onStatusFilterChange(status) }), /* @__PURE__ */ import_react89.default.createElement(ReusableOptions, { isOpen: isRoleModalOpen, onClose: () => setIsRoleModalOpen(false), title: "Role Filter", options: ["ALL", "OWNER", "ADMIN", "MANAGER", "MEMBER", "GUEST"], selectedOption: activeRoleFilter, onSelect: (role) => onRoleFilterChange(role) }), /* @__PURE__ */ import_react89.default.createElement(ReusableOptions, { isOpen: !!roleEditTarget, onClose: () => setRoleEditTarget(null), title: "Modify Access Role", options: ["ADMIN", "MANAGER", "MEMBER"], selectedOption: roleEditTarget?.role || "", onSelect: handleRoleUpdate })), activeTab === "ORGANIZATION" && isOrg && /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "relative group cursor-pointer shrink-0", onClick: () => canManage && !isSavingOrg ? orgFileInputRef.current?.click() : void 0 }, /* @__PURE__ */ import_react89.default.createElement(OrgAvatar2, { src: orgAvatarUrl, sizeClass: "w-14 h-14" }), canManage && /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute -bottom-1 -right-1 w-6 h-6 bg-white border border-stone-200 rounded-full flex items-center justify-center text-stone-500 group-hover:text-black transition-colors z-10" }, isUploadingOrgAvatar ? /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, size: 12, className: "animate-spin" }) : /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.CloudUploadIcon, size: 14 })), /* @__PURE__ */ import_react89.default.createElement("input", { type: "file", ref: orgFileInputRef, className: "hidden", accept: ".png, .jpg, .jpeg", onChange: (e) => handleFileSelect(e, "ORGANIZATION") })), /* @__PURE__ */ import_react89.default.createElement("div", null, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Workspace Details"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Manage your organizational identity and handles."))), !canManage && /* @__PURE__ */ import_react89.default.createElement("span", { className: "p-2 w-9 h-9 bg-stone-100 text-stone-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.CircleLock02Icon, size: 18, className: "text-current" }))), /* @__PURE__ */ import_react89.default.createElement("form", { className: "flex flex-col gap-8 w-full max-w-5xl", onSubmit: handleSaveOrganization, autoComplete: "off" }, /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "Workspace Name", value: orgName, onChange: handleOrgNameChange, disabled: !canManage || isSavingOrg, placeholder: "Acme Corporation", maxLength: 50 }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 relative w-full" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Workspace Handle"), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center relative w-full border-b border-stone-200 focus-within:border-black transition-all duration-300 overflow-hidden" }, /* @__PURE__ */ import_react89.default.createElement("input", { type: "text", value: orgSlug, disabled: !canManage || isSavingOrg, onChange: (e) => handleOrgSlugChange(e.target.value), spellCheck: "false", autoComplete: "off", className: "w-full pr-10 pl-0 py-3 text-sm bg-transparent text-black outline-none disabled:opacity-50 disabled:cursor-not-allowed", placeholder: "workspace-handle" }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute right-2 top-1/2 -translate-y-1/2" }, isCheckingSlug && /* @__PURE__ */ import_react89.default.createElement(InputSpinner3, null), !isCheckingSlug && canManage && orgSlug !== initialOrgSlug && orgSlug.length >= 3 && slugAvailable === false && /* @__PURE__ */ import_react89.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-[#d97757]/10" }, /* @__PURE__ */ import_react89.default.createElement("svg", { className: "w-2 h-2 text-[#d97757]", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react89.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" }))), !isCheckingSlug && canManage && orgSlug !== initialOrgSlug && orgSlug.length >= 3 && slugAvailable === true && /* @__PURE__ */ import_react89.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-green-100" }, /* @__PURE__ */ import_react89.default.createElement("svg", { className: "w-2 h-2 text-green-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react89.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M16.707 5.293a1 1 0 00-1.414 0L8 12.586 4.707 9.293a1 1 0 10-1.414 1.414l4 4a1 1 0 001.414 0l8-8a1 1 0 000-1.414z" })))))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "pt-8 mt-2 flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement(ThreeDActionButton, { type: "submit", disabled: isOrgSaveDisabled, isLoading: isSavingOrg, className: "min-w-32" }, "Save Changes"), hasOrgChanges && !isSavingOrg && canManage && /* @__PURE__ */ import_react89.default.createElement("button", { type: "button", onClick: () => {
5890
+ }, disabled: isInviting, className: "w-full flex items-center justify-center py-2.5 rounded-full border border-stone-200 text-black hover:bg-stone-50 transition-colors outline-none text-xs tracking-wide" }, "Cancel"))) : isMembersLoading || isTyping ? /* @__PURE__ */ import_react89.default.createElement(PageSpinner8, null) : /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col min-w-0 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", null, members.length === 0 ? /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-400 py-6 text-center" }, "No members found") : members.map((member) => /* @__PURE__ */ import_react89.default.createElement("div", { key: member.id, onClick: () => setExpandedId(member.id), className: "flex items-center justify-between py-3 hover:bg-stone-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react89.default.createElement(MemberAvatar3, { src: member.avatarUrl, status: member.status }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-0.5" }, /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-sm text-black truncate" }, member.fullName), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500 capitalize truncate" }, member.role.toLowerCase())))))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-xs text-stone-400 tracking-[0.2em]" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage - 1), disabled: membersCurrentPage <= 1 || isMembersLoading, className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 14 })), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage + 1), disabled: membersCurrentPage >= membersTotalPages || isMembersLoading || membersTotalPages === 0, className: "p-2 bg-white border border-stone-200 rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.ArrowRight01Icon, size: 14 })))))))), /* @__PURE__ */ import_react89.default.createElement(ReusableOptions, { isOpen: isStatusModalOpen, onClose: () => setIsStatusModalOpen(false), title: "Status Filter", options: ["ALL", "ACTIVE", "BUSY", "OFFLINE", "AWAY"], selectedOption: activeStatusFilter, onSelect: (status) => onStatusFilterChange(status) }), /* @__PURE__ */ import_react89.default.createElement(ReusableOptions, { isOpen: isRoleModalOpen, onClose: () => setIsRoleModalOpen(false), title: "Role Filter", options: ["ALL", "OWNER", "ADMIN", "MANAGER", "MEMBER", "GUEST"], selectedOption: activeRoleFilter, onSelect: (role) => onRoleFilterChange(role) }), /* @__PURE__ */ import_react89.default.createElement(ReusableOptions, { isOpen: !!roleEditTarget, onClose: () => setRoleEditTarget(null), title: "Modify Access Role", options: ["ADMIN", "MANAGER", "MEMBER"], selectedOption: roleEditTarget?.role || "", onSelect: handleRoleUpdate })), activeTab === "ORGANIZATION" && isOrg && /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "relative group cursor-pointer shrink-0", onClick: () => canManage && !isSavingOrg ? orgFileInputRef.current?.click() : void 0 }, /* @__PURE__ */ import_react89.default.createElement(OrgAvatar2, { src: orgAvatarUrl, sizeClass: "w-14 h-14" }), canManage && /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute -bottom-1 -right-1 w-6 h-6 bg-white border border-stone-200 rounded-full flex items-center justify-center text-stone-500 group-hover:text-black transition-colors z-10" }, isUploadingOrgAvatar ? /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 12, className: "animate-spin" }) : /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.CloudUploadIcon, size: 14 })), /* @__PURE__ */ import_react89.default.createElement("input", { type: "file", ref: orgFileInputRef, className: "hidden", accept: ".png, .jpg, .jpeg", onChange: (e) => handleFileSelect(e, "ORGANIZATION") })), /* @__PURE__ */ import_react89.default.createElement("div", null, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Workspace Details"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Manage your organizational identity and handles."))), !canManage && /* @__PURE__ */ import_react89.default.createElement("span", { className: "p-2 w-9 h-9 bg-stone-100 text-stone-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.CircleLock02Icon, size: 18, className: "text-current" }))), /* @__PURE__ */ import_react89.default.createElement("form", { className: "flex flex-col gap-8 w-full max-w-5xl", onSubmit: handleSaveOrganization, autoComplete: "off" }, /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "Workspace Name", value: orgName, onChange: handleOrgNameChange, disabled: !canManage || isSavingOrg, placeholder: "Acme Corporation", maxLength: 50 }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 relative w-full" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Workspace Handle"), /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center relative w-full border-b border-stone-200 focus-within:border-black transition-all duration-300 overflow-hidden" }, /* @__PURE__ */ import_react89.default.createElement("input", { type: "text", value: orgSlug, disabled: !canManage || isSavingOrg, onChange: (e) => handleOrgSlugChange(e.target.value), spellCheck: "false", autoComplete: "off", className: "w-full pr-10 pl-0 py-3 text-sm bg-transparent text-black outline-none disabled:opacity-50 disabled:cursor-not-allowed", placeholder: "workspace-handle" }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute right-2 top-1/2 -translate-y-1/2" }, isCheckingSlug && /* @__PURE__ */ import_react89.default.createElement(InputSpinner3, null), !isCheckingSlug && canManage && orgSlug !== initialOrgSlug && orgSlug.length >= 3 && slugAvailable === false && /* @__PURE__ */ import_react89.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-[#d97757]/10" }, /* @__PURE__ */ import_react89.default.createElement("svg", { className: "w-2 h-2 text-[#d97757]", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react89.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" }))), !isCheckingSlug && canManage && orgSlug !== initialOrgSlug && orgSlug.length >= 3 && slugAvailable === true && /* @__PURE__ */ import_react89.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-green-100" }, /* @__PURE__ */ import_react89.default.createElement("svg", { className: "w-2 h-2 text-green-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react89.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M16.707 5.293a1 1 0 00-1.414 0L8 12.586 4.707 9.293a1 1 0 10-1.414 1.414l4 4a1 1 0 001.414 0l8-8a1 1 0 000-1.414z" })))))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "pt-8 mt-2 flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement(ThreeDActionButton, { type: "submit", disabled: isOrgSaveDisabled, isLoading: isSavingOrg, className: "min-w-32" }, "Save Changes"), hasOrgChanges && !isSavingOrg && canManage && /* @__PURE__ */ import_react89.default.createElement("button", { type: "button", onClick: () => {
5769
5891
  setOrgName(initialOrgName || "");
5770
5892
  setOrgSlug(initialOrgSlug || "");
5771
5893
  setOrgAvatarUrl(initialOrgAvatarUrl || "");
5772
5894
  setPendingOrgAvatar(null);
5773
- }, className: "text-xs tracking-widest text-stone-400 hover:text-black transition-colors outline-none" }, "Cancel")))), activeTab === "ACCOUNT" && /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-6 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-8 rounded-2xl p-6 bg-white w-full" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "relative group cursor-pointer shrink-0", onClick: () => !isSavingProfile ? userFileInputRef.current?.click() : void 0 }, /* @__PURE__ */ import_react89.default.createElement(MemberAvatar3, { src: avatarUrl, status: "ACTIVE", sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute -bottom-1 -right-1 w-6 h-6 bg-white border border-stone-200 rounded-full flex items-center justify-center text-stone-500 group-hover:text-black transition-colors z-20" }, isUploadingUserAvatar ? /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Loading03Icon, size: 12, className: "animate-spin" }) : /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.CloudUploadIcon, size: 14 })), /* @__PURE__ */ import_react89.default.createElement("input", { type: "file", ref: userFileInputRef, className: "hidden", accept: ".png, .jpg, .jpeg", onChange: (e) => handleFileSelect(e, "USER") })), /* @__PURE__ */ import_react89.default.createElement("div", null, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Personal Identity"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Update your system display name and contact email.")))), /* @__PURE__ */ import_react89.default.createElement("form", { className: "flex flex-col gap-6 w-full max-w-5xl", onSubmit: handleSaveProfile, autoComplete: "off" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-6" }, /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "First Name", value: firstName, onChange: (v) => setFirstName(v.replace(/[^a-zA-Z\s-]/g, "").substring(0, 50)), disabled: isSavingProfile, placeholder: "First name", maxLength: 50 }), /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "Last Name", value: lastName, onChange: (v) => setLastName(v.replace(/[^a-zA-Z\s-]/g, "").substring(0, 50)), disabled: isSavingProfile, placeholder: "Last name", maxLength: 50 })), /* @__PURE__ */ import_react89.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-6" }, /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "Job Title", value: jobTitle, onChange: (v) => setJobTitle(v.substring(0, 50)), disabled: isSavingProfile, placeholder: "e.g. HR Manager, CEO", maxLength: 50 }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react89.default.createElement("input", { type: "email", value: initialEmail, disabled: true, className: "w-full pb-3 pt-3 text-sm bg-transparent text-stone-400 border-b border-stone-200 outline-none cursor-not-allowed" }))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "About Me"), /* @__PURE__ */ import_react89.default.createElement(
5895
+ }, className: "text-xs tracking-widest text-stone-400 hover:text-black transition-colors outline-none" }, "Cancel")))), activeTab === "ACCOUNT" && /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-6 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col gap-8 rounded-2xl p-6 bg-white w-full" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "relative group cursor-pointer shrink-0", onClick: () => !isSavingProfile ? userFileInputRef.current?.click() : void 0 }, /* @__PURE__ */ import_react89.default.createElement(MemberAvatar3, { src: avatarUrl, status: "ACTIVE", sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "absolute -bottom-1 -right-1 w-6 h-6 bg-white border border-stone-200 rounded-full flex items-center justify-center text-stone-500 group-hover:text-black transition-colors z-20" }, isUploadingUserAvatar ? /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 12, className: "animate-spin" }) : /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.CloudUploadIcon, size: 14 })), /* @__PURE__ */ import_react89.default.createElement("input", { type: "file", ref: userFileInputRef, className: "hidden", accept: ".png, .jpg, .jpeg", onChange: (e) => handleFileSelect(e, "USER") })), /* @__PURE__ */ import_react89.default.createElement("div", null, /* @__PURE__ */ import_react89.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Personal Identity"), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500" }, "Update your system display name and contact email.")))), /* @__PURE__ */ import_react89.default.createElement("form", { className: "flex flex-col gap-6 w-full max-w-5xl", onSubmit: handleSaveProfile, autoComplete: "off" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-6" }, /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "First Name", value: firstName, onChange: (v) => setFirstName(v.replace(/[^a-zA-Z\s-]/g, "").substring(0, 50)), disabled: isSavingProfile, placeholder: "First name", maxLength: 50 }), /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "Last Name", value: lastName, onChange: (v) => setLastName(v.replace(/[^a-zA-Z\s-]/g, "").substring(0, 50)), disabled: isSavingProfile, placeholder: "Last name", maxLength: 50 })), /* @__PURE__ */ import_react89.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-6" }, /* @__PURE__ */ import_react89.default.createElement(TextInput, { label: "Job Title", value: jobTitle, onChange: (v) => setJobTitle(v.substring(0, 50)), disabled: isSavingProfile, placeholder: "e.g. HR Manager, CEO", maxLength: 50 }), /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react89.default.createElement("input", { type: "email", value: initialEmail, disabled: true, className: "w-full pb-3 pt-3 text-sm bg-transparent text-stone-400 border-b border-stone-200 outline-none cursor-not-allowed" }))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react89.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "About Me"), /* @__PURE__ */ import_react89.default.createElement(
5774
5896
  "textarea",
5775
5897
  {
5776
5898
  value: description,
@@ -5780,19 +5902,19 @@ var UniversalSettings = ({
5780
5902
  className: "w-full pb-3 pt-3 text-sm bg-transparent text-black border-b border-stone-200 outline-none focus:border-[#d97757] transition-all duration-300 resize-none h-20 custom-scrollbar",
5781
5903
  maxLength: 300
5782
5904
  }
5783
- )), /* @__PURE__ */ import_react89.default.createElement("div", { className: "pt-4 flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement(ThreeDActionButton, { type: "submit", disabled: isProfileSaveDisabled, isLoading: isSavingProfile, className: "min-w-32" }, "Update Identity")))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "bg-white rounded-2xl p-6 w-full flex flex-col sm:flex-row sm:items-center justify-between gap-6 border border-stone-100" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col items-start max-w-sm" }, /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-400 tracking-[0.2em] mb-2 " }, "AI Credits Balance"), isBillingLoading ? /* @__PURE__ */ import_react89.default.createElement("div", { className: "h-8 w-32 bg-stone-100 animate-pulse rounded mt-1" }) : /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-2 mt-1" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.Coins01Icon, size: 18, className: "text-stone-500" }), /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-xl text-black tracking-tight" }, aiCredits)), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500 mt-4 leading-relaxed" }, "AI credits are consumed when generating intelligent summaries, transcriptions, and automated huddle insights.")), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: onTopUp, className: "w-9 h-9 rounded-full border border-stone-200 flex items-center justify-center text-black hover:bg-stone-50 transition-colors outline-none shrink-0", "aria-label": "Top Up Credits" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons33.PlusSignIcon, size: 18 })))));
5905
+ )), /* @__PURE__ */ import_react89.default.createElement("div", { className: "pt-4 flex items-center gap-4" }, /* @__PURE__ */ import_react89.default.createElement(ThreeDActionButton, { type: "submit", disabled: isProfileSaveDisabled, isLoading: isSavingProfile, className: "min-w-32" }, "Update Identity")))), /* @__PURE__ */ import_react89.default.createElement("div", { className: "bg-white rounded-2xl p-6 w-full flex flex-col sm:flex-row sm:items-center justify-between gap-6 border border-stone-100" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex flex-col items-start max-w-sm" }, /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-400 tracking-[0.2em] mb-2 " }, "AI Credits Balance"), isBillingLoading ? /* @__PURE__ */ import_react89.default.createElement("div", { className: "h-8 w-32 bg-stone-100 animate-pulse rounded mt-1" }) : /* @__PURE__ */ import_react89.default.createElement("div", { className: "flex items-center gap-2 mt-1" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.Coins01Icon, size: 18, className: "text-stone-500" }), /* @__PURE__ */ import_react89.default.createElement("span", { className: "text-xl text-black tracking-tight" }, aiCredits)), /* @__PURE__ */ import_react89.default.createElement("p", { className: "text-xs text-stone-500 mt-4 leading-relaxed" }, "AI credits are consumed when generating intelligent summaries, transcriptions, and automated huddle insights.")), /* @__PURE__ */ import_react89.default.createElement("button", { onClick: onTopUp, className: "w-9 h-9 rounded-full border border-stone-200 flex items-center justify-center text-black hover:bg-stone-50 transition-colors outline-none shrink-0", "aria-label": "Top Up Credits" }, /* @__PURE__ */ import_react89.default.createElement(import_react90.HugeiconsIcon, { icon: import_core_free_icons34.PlusSignIcon, size: 18 })))));
5784
5906
  };
5785
5907
 
5786
5908
  // src/components/UniversalCreateHuddle.tsx
5787
5909
  var import_react91 = __toESM(require("react"));
5788
5910
  var import_react_hot_toast16 = __toESM(require("react-hot-toast"));
5789
5911
  var import_react92 = require("@hugeicons/react");
5790
- var import_core_free_icons34 = require("@hugeicons/core-free-icons");
5912
+ var import_core_free_icons35 = require("@hugeicons/core-free-icons");
5791
5913
  var MemberAvatar4 = ({ src, sizeClass = "w-10 h-10" }) => {
5792
5914
  const [loaded, setLoaded] = (0, import_react91.useState)(false);
5793
5915
  const [error, setError] = (0, import_react91.useState)(false);
5794
5916
  const defaultAvatar = "https://storage.googleapis.com/retina-cloud-v2/assets/images/avatar.avif";
5795
- return /* @__PURE__ */ import_react91.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react91.default.createElement(
5917
+ return /* @__PURE__ */ import_react91.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "w-full h-full rounded-lg bg-stone-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, className: "animate-spin text-stone-400 absolute", size: 14 }), /* @__PURE__ */ import_react91.default.createElement(
5796
5918
  "img",
5797
5919
  {
5798
5920
  src: error || !src ? defaultAvatar : src,
@@ -5892,7 +6014,7 @@ var UniversalCreateHuddle = ({
5892
6014
  setIsSubmitting(false);
5893
6015
  }
5894
6016
  };
5895
- return /* @__PURE__ */ import_react91.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 relative" }, /* @__PURE__ */ import_react91.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react91.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react91.default.createElement("a", { href: onBackHref, className: "flex items-center gap-2 text-[#d97757] hover:text-[#d97757] transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react91.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "Create Huddle"), /* @__PURE__ */ import_react91.default.createElement("p", { className: "text-xs text-stone-500" }, "Schedule a new workspace huddle and manage participant access.")), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react91.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSubmit, autoComplete: "off" }, !canManage && /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex items-start gap-3 p-4 bg-stone-50 rounded-xl" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.CircleLock02Icon, size: 20, className: "text-stone-500 shrink-0 mt-0.5" }), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-sm text-black tracking-tight" }, "Access Restricted"), /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-xs text-stone-500 mt-1 leading-relaxed" }, "You do not have sufficient permissions to access this page. Contact organization admin or manager."))), /* @__PURE__ */ import_react91.default.createElement(
6017
+ return /* @__PURE__ */ import_react91.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 relative" }, /* @__PURE__ */ import_react91.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react91.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react91.default.createElement("a", { href: onBackHref, className: "flex items-center gap-2 text-[#d97757] hover:text-[#d97757] transition-colors text-sm outline-none" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react91.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "Create Huddle"), /* @__PURE__ */ import_react91.default.createElement("p", { className: "text-xs text-stone-500" }, "Schedule a new workspace huddle and manage participant access.")), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react91.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSubmit, autoComplete: "off" }, !canManage && /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex items-start gap-3 p-4 bg-stone-50 rounded-xl" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.CircleLock02Icon, size: 20, className: "text-stone-500 shrink-0 mt-0.5" }), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-sm text-black tracking-tight" }, "Access Restricted"), /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-xs text-stone-500 mt-1 leading-relaxed" }, "You do not have sufficient permissions to access this page. Contact organization admin or manager."))), /* @__PURE__ */ import_react91.default.createElement(
5896
6018
  TextInput,
5897
6019
  {
5898
6020
  label: "Huddle Subject",
@@ -5908,7 +6030,7 @@ var UniversalCreateHuddle = ({
5908
6030
  onClick: () => canManage && !isSubmitting && setCalendarMode("DATE"),
5909
6031
  className: `flex items-center relative w-full border-b border-stone-200 transition-all duration-300 pb-3 pt-3 ${!canManage || isSubmitting ? "opacity-50 pointer-events-none" : "hover:border-black cursor-pointer"}`
5910
6032
  },
5911
- /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Calendar01Icon, size: 16, className: "text-stone-400 absolute left-0" }),
6033
+ /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Calendar01Icon, size: 16, className: "text-stone-400 absolute left-0" }),
5912
6034
  /* @__PURE__ */ import_react91.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, huddleDate.toLocaleDateString("en-GB", { day: "2-digit", month: "short", year: "numeric" }))
5913
6035
  )), /* @__PURE__ */ import_react91.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react91.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Time"), /* @__PURE__ */ import_react91.default.createElement(
5914
6036
  "div",
@@ -5916,7 +6038,7 @@ var UniversalCreateHuddle = ({
5916
6038
  onClick: () => canManage && !isSubmitting && setCalendarMode("TIME"),
5917
6039
  className: `flex items-center relative w-full border-b border-stone-200 transition-all duration-300 pb-3 pt-3 ${!canManage || isSubmitting ? "opacity-50 pointer-events-none" : "hover:border-black cursor-pointer"}`
5918
6040
  },
5919
- /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Clock01Icon, size: 16, className: "text-stone-400 absolute left-0" }),
6041
+ /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Clock01Icon, size: 16, className: "text-stone-400 absolute left-0" }),
5920
6042
  /* @__PURE__ */ import_react91.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, huddleDate.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }))
5921
6043
  )), /* @__PURE__ */ import_react91.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react91.default.createElement("label", { className: "text-xs text-stone-400 tracking-[0.2em] block" }, "Timezone"), /* @__PURE__ */ import_react91.default.createElement(
5922
6044
  "div",
@@ -5924,7 +6046,7 @@ var UniversalCreateHuddle = ({
5924
6046
  onClick: () => canManage && !isSubmitting && setShowTimezoneModal(true),
5925
6047
  className: `flex items-center relative w-full border-b border-stone-200 transition-all duration-300 pb-3 pt-3 ${!canManage || isSubmitting ? "opacity-50 pointer-events-none" : "hover:border-black cursor-pointer"}`
5926
6048
  },
5927
- /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Globe02Icon, size: 16, className: "text-stone-400 absolute left-0" }),
6049
+ /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Globe02Icon, size: 16, className: "text-stone-400 absolute left-0" }),
5928
6050
  /* @__PURE__ */ import_react91.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, timezone)
5929
6051
  ))), /* @__PURE__ */ import_react91.default.createElement("div", { className: `flex items-center justify-between py-2 mt-2 ${!canManage ? "opacity-50 pointer-events-none" : ""}` }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-sm text-black tracking-tight" }, "Private Huddle"), /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-xs text-stone-500" }, "Only invited members can join.")), /* @__PURE__ */ import_react91.default.createElement(
5930
6052
  "button",
@@ -5973,7 +6095,7 @@ var UniversalCreateHuddle = ({
5973
6095
  onSelect: (tz) => setTimezone(tz),
5974
6096
  showSearch: true
5975
6097
  }
5976
- )), showMembersModal && canManage && /* @__PURE__ */ import_react91.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowMembersModal(false) }), /* @__PURE__ */ import_react91.default.createElement("div", { className: "relative w-full max-w-md bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 h-[80vh]" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react91.default.createElement("h3", { className: "text-sm text-black tracking-tight" }, "Select Participants"), /* @__PURE__ */ import_react91.default.createElement("button", { onClick: () => setShowMembersModal(false), className: "text-[#d97757] hover:text-[#d97757] transition-colors outline-none text-sm " }, "Done")), /* @__PURE__ */ import_react91.default.createElement("div", { className: "p-4 shrink-0 " }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "relative w-full" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react91.default.createElement(
6098
+ )), showMembersModal && canManage && /* @__PURE__ */ import_react91.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowMembersModal(false) }), /* @__PURE__ */ import_react91.default.createElement("div", { className: "relative w-full max-w-md bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 h-[80vh]" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react91.default.createElement("h3", { className: "text-sm text-black tracking-tight" }, "Select Participants"), /* @__PURE__ */ import_react91.default.createElement("button", { onClick: () => setShowMembersModal(false), className: "text-[#d97757] hover:text-[#d97757] transition-colors outline-none text-sm " }, "Done")), /* @__PURE__ */ import_react91.default.createElement("div", { className: "p-4 shrink-0 " }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "relative w-full" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react91.default.createElement(
5977
6099
  "input",
5978
6100
  {
5979
6101
  type: "text",
@@ -5982,7 +6104,7 @@ var UniversalCreateHuddle = ({
5982
6104
  onChange: handleSearchInput,
5983
6105
  className: "w-full pl-10 pr-4 py-2.5 bg-stone-100 rounded-full focus:border-[#d97757] border border-transparent text-sm text-black placeholder-stone-400 outline-none focus:bg-stone-200 transition-colors"
5984
6106
  }
5985
- ))), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2 relative" }, isMembersLoading || isTyping ? /* @__PURE__ */ import_react91.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 28, className: "animate-spin text-black" })) : members.length === 0 ? /* @__PURE__ */ import_react91.default.createElement("div", { className: "p-8 text-center text-xs text-stone-400" }, "No members found.") : members.map((member) => {
6107
+ ))), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2 relative" }, isMembersLoading || isTyping ? /* @__PURE__ */ import_react91.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center" }, /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, size: 28, className: "animate-spin text-black" })) : members.length === 0 ? /* @__PURE__ */ import_react91.default.createElement("div", { className: "p-8 text-center text-xs text-stone-400" }, "No members found.") : members.map((member) => {
5986
6108
  const isChecked = selectedParticipants.has(member.userId);
5987
6109
  return /* @__PURE__ */ import_react91.default.createElement(
5988
6110
  "div",
@@ -5992,7 +6114,7 @@ var UniversalCreateHuddle = ({
5992
6114
  className: "flex items-center justify-between p-3 rounded-xl cursor-pointer hover:bg-stone-50 transition-colors select-none"
5993
6115
  },
5994
6116
  /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex items-center gap-3 min-w-0 flex-1" }, /* @__PURE__ */ import_react91.default.createElement(MemberAvatar4, { src: member.avatarUrl, sizeClass: "w-9 h-9" }), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex flex-col min-w-0 flex-1" }, /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-sm text-black truncate" }, member.fullName), /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-xs text-stone-400 capitalize truncate" }, member.role.toLowerCase()))),
5995
- /* @__PURE__ */ import_react91.default.createElement("div", { className: "shrink-0 pl-3" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: `w-5 h-5 rounded-full flex items-center justify-center transition-colors ${isChecked ? "bg-[#d97757]" : "border border-stone-300 bg-white"}` }, isChecked && /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.Tick02Icon, size: 14, className: "text-white" })))
6117
+ /* @__PURE__ */ import_react91.default.createElement("div", { className: "shrink-0 pl-3" }, /* @__PURE__ */ import_react91.default.createElement("div", { className: `w-5 h-5 rounded-full flex items-center justify-center transition-colors ${isChecked ? "bg-[#d97757]" : "border border-stone-300 bg-white"}` }, isChecked && /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.Tick02Icon, size: 14, className: "text-white" })))
5996
6118
  );
5997
6119
  })), /* @__PURE__ */ import_react91.default.createElement("div", { className: "p-4 flex items-center justify-between shrink-0 bg-white" }, /* @__PURE__ */ import_react91.default.createElement("span", { className: "text-xs text-stone-400 tracking-widest" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react91.default.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ import_react91.default.createElement(
5998
6120
  "button",
@@ -6001,7 +6123,7 @@ var UniversalCreateHuddle = ({
6001
6123
  onClick: () => onMembersPageChange(membersCurrentPage - 1),
6002
6124
  className: "w-7 h-7 flex items-center justify-center rounded-full bg-white border border-stone-200 text-stone-600 disabled:opacity-30 outline-none hover:bg-stone-50 transition-colors"
6003
6125
  },
6004
- /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 12 })
6126
+ /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 12 })
6005
6127
  ), /* @__PURE__ */ import_react91.default.createElement(
6006
6128
  "button",
6007
6129
  {
@@ -6009,7 +6131,7 @@ var UniversalCreateHuddle = ({
6009
6131
  onClick: () => onMembersPageChange(membersCurrentPage + 1),
6010
6132
  className: "w-7 h-7 flex items-center justify-center rounded-full bg-white border border-stone-200 text-stone-600 disabled:opacity-30 outline-none hover:bg-stone-50 transition-colors"
6011
6133
  },
6012
- /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons34.ArrowRight01Icon, size: 12 })
6134
+ /* @__PURE__ */ import_react91.default.createElement(import_react92.HugeiconsIcon, { icon: import_core_free_icons35.ArrowRight01Icon, size: 12 })
6013
6135
  ))))));
6014
6136
  };
6015
6137
 
@@ -6017,7 +6139,7 @@ var UniversalCreateHuddle = ({
6017
6139
  var import_react93 = __toESM(require("react"));
6018
6140
  var import_navigation7 = require("next/navigation");
6019
6141
  var import_react94 = require("@hugeicons/react");
6020
- var import_core_free_icons35 = require("@hugeicons/core-free-icons");
6142
+ var import_core_free_icons36 = require("@hugeicons/core-free-icons");
6021
6143
  var MONTHS2 = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
6022
6144
  var DAYS_OF_WEEK2 = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
6023
6145
  var HuddleAvatar2 = ({ timeString, status, sizeClass = "w-10 h-10" }) => {
@@ -6044,7 +6166,7 @@ var HuddleAvatar2 = ({ timeString, status, sizeClass = "w-10 h-10" }) => {
6044
6166
  month = parts[1].substring(0, 3).toUpperCase();
6045
6167
  }
6046
6168
  }
6047
- return /* @__PURE__ */ import_react93.default.createElement("div", { className: `relative shrink-0 aspect-square ${sizeClass}` }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "w-full h-full aspect-square rounded-lg bg-neutral-100 flex flex-col items-center justify-center overflow-hidden" }, /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-[9px] tracking-wider leading-tight", style: { color: "#d97757" } }, month), /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-sm text-black leading-tight" }, day)), /* @__PURE__ */ import_react93.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3.5 h-3.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
6169
+ return /* @__PURE__ */ import_react93.default.createElement("div", { className: `relative shrink-0 aspect-square ${sizeClass}` }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "w-full h-full aspect-square rounded-lg bg-neutral-50 flex flex-col items-center justify-center overflow-hidden" }, /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-[9px] tracking-wider leading-tight", style: { color: "#d97757" } }, month), /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-sm text-black leading-tight" }, day)), /* @__PURE__ */ import_react93.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3 h-3 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
6048
6170
  };
6049
6171
  var HomeHuddleCalendar = ({
6050
6172
  huddles = [],
@@ -6112,7 +6234,7 @@ var HomeHuddleCalendar = ({
6112
6234
  (e) => e.dateObj && e.dateObj.toDateString() === selectedDate.toDateString()
6113
6235
  );
6114
6236
  const displayedEvents = isSearching ? parsedEvents : selectedDayEvents;
6115
- return /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col animate-in fade-in duration-300 w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col gap-6 mb-6 w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center justify-between gap-4" }, /* @__PURE__ */ import_react93.default.createElement("div", null, /* @__PURE__ */ import_react93.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, "Schedule"), /* @__PURE__ */ import_react93.default.createElement("p", { className: "text-xs text-stone-500 mt-0.5" }, "Manage and view your workspace sessions."))), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-row flex-nowrap items-center justify-between gap-4 w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react93.default.createElement(
6237
+ return /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col animate-in fade-in duration-300 w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col gap-6 mb-6 w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center justify-between gap-4" }, /* @__PURE__ */ import_react93.default.createElement("div", null, /* @__PURE__ */ import_react93.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, "Schedule"), /* @__PURE__ */ import_react93.default.createElement("p", { className: "text-xs text-stone-500 mt-0.5" }, "Manage and view your workspace sessions."))), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-row flex-nowrap items-center justify-between gap-4 w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.Search01Icon, size: 16, className: "text-stone-400" })), /* @__PURE__ */ import_react93.default.createElement(
6116
6238
  "input",
6117
6239
  {
6118
6240
  type: "text",
@@ -6121,20 +6243,20 @@ var HomeHuddleCalendar = ({
6121
6243
  onChange: handleSearchInput,
6122
6244
  className: "w-full pl-10 pr-4 py-2 bg-white rounded-full text-sm text-black placeholder-stone-400 outline-none transition-colors focus:border-[#d97757] border border-transparent hover:border-stone-200"
6123
6245
  }
6124
- )), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0 shrink-0" }, /* @__PURE__ */ import_react93.default.createElement("button", { onClick: () => setIsStatusModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none " }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.TimeScheduleIcon, size: 16 }))))), !isSearching && /* @__PURE__ */ import_react93.default.createElement("div", { className: "bg-white rounded-2xl p-5 mb-6 relative overflow-hidden animate-in fade-in duration-300" }, isLoading && /* @__PURE__ */ import_react93.default.createElement("div", { className: "absolute inset-0 z-50 flex items-center justify-center bg-white/60 backdrop-blur-sm" }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, size: 28, className: "animate-spin text-black" })), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center justify-between px-2 mb-4" }, /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-sm text-black tracking-wide" }, MONTHS2[viewMonth], " ", viewYear), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ import_react93.default.createElement(
6246
+ )), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0 shrink-0" }, /* @__PURE__ */ import_react93.default.createElement("button", { onClick: () => setIsStatusModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-stone-500 hover:text-black transition-colors outline-none " }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.TimeScheduleIcon, size: 16 }))))), !isSearching && /* @__PURE__ */ import_react93.default.createElement("div", { className: "bg-white rounded-2xl p-5 mb-6 relative overflow-hidden animate-in fade-in duration-300" }, isLoading && /* @__PURE__ */ import_react93.default.createElement("div", { className: "absolute inset-0 z-50 flex items-center justify-center bg-white/60 backdrop-blur-sm" }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.Loading03Icon, size: 28, className: "animate-spin text-black" })), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center justify-between px-2 mb-4" }, /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-sm text-black tracking-wide" }, MONTHS2[viewMonth], " ", viewYear), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ import_react93.default.createElement(
6125
6247
  "button",
6126
6248
  {
6127
6249
  onClick: handlePrevMonth,
6128
6250
  className: "w-8 h-8 flex items-center justify-center border border-stone-200 rounded-full hover:bg-stone-100 outline-none transition-colors"
6129
6251
  },
6130
- /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 16, className: "text-black" })
6252
+ /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.ArrowLeft01Icon, size: 16, className: "text-black" })
6131
6253
  ), /* @__PURE__ */ import_react93.default.createElement(
6132
6254
  "button",
6133
6255
  {
6134
6256
  onClick: handleNextMonth,
6135
6257
  className: "w-8 h-8 flex items-center justify-center rounded-full border border-stone-200 hover:bg-stone-100 outline-none transition-colors"
6136
6258
  },
6137
- /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.ArrowRight01Icon, size: 16, className: "text-black" })
6259
+ /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.ArrowRight01Icon, size: 16, className: "text-black" })
6138
6260
  ))), /* @__PURE__ */ import_react93.default.createElement("div", { className: "grid grid-cols-7 gap-y-2 gap-x-1" }, DAYS_OF_WEEK2.map((d) => /* @__PURE__ */ import_react93.default.createElement("div", { key: d, className: "text-center text-[11px] text-stone-400 py-2 uppercase tracking-widest" }, d)), Array.from({ length: firstDayOffset }).map((_, i) => /* @__PURE__ */ import_react93.default.createElement("div", { key: `empty-${i}` })), Array.from({ length: daysInMonth }).map((_, i) => {
6139
6261
  const day = i + 1;
6140
6262
  const thisDate = new Date(viewYear, viewMonth, day);
@@ -6157,7 +6279,7 @@ var HomeHuddleCalendar = ({
6157
6279
  dayEventsCount
6158
6280
  )
6159
6281
  ));
6160
- }))), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col gap-4 bg-white rounded-2xl p-6 relative min-h-37.5" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center justify-between pb-4" }, /* @__PURE__ */ import_react93.default.createElement("h3", { className: "text-sm text-black " }, isSearching ? "Search Results" : `Events for ${selectedDate.toLocaleDateString("en-GB", { day: "numeric", month: "short", year: "numeric" })}`), /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-[10px] uppercase tracking-widest text-stone-400 " }, displayedEvents.length, " ", displayedEvents.length === 1 ? "Session" : "Sessions")), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col min-w-0 pt-2" }, isLoading ? /* @__PURE__ */ import_react93.default.createElement("div", { className: "py-8 flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, size: 28, className: "animate-spin text-stone-400" })) : displayedEvents.length === 0 ? /* @__PURE__ */ import_react93.default.createElement("div", { className: "py-8 flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ import_react93.default.createElement("p", { className: "text-xs text-stone-400" }, isSearching ? "No sessions found for this search." : "No sessions scheduled for this date.")) : displayedEvents.map((huddle) => /* @__PURE__ */ import_react93.default.createElement(
6282
+ }))), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col gap-4 bg-white rounded-2xl p-6 relative min-h-37.5" }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center justify-between pb-4" }, /* @__PURE__ */ import_react93.default.createElement("h3", { className: "text-sm text-black " }, isSearching ? "Search Results" : `Events for ${selectedDate.toLocaleDateString("en-GB", { day: "numeric", month: "short", year: "numeric" })}`), /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-[10px] uppercase tracking-widest text-stone-400 " }, displayedEvents.length, " ", displayedEvents.length === 1 ? "Session" : "Sessions")), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col min-w-0 pt-2" }, isLoading ? /* @__PURE__ */ import_react93.default.createElement("div", { className: "py-8 flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.Loading03Icon, size: 28, className: "animate-spin text-stone-400" })) : displayedEvents.length === 0 ? /* @__PURE__ */ import_react93.default.createElement("div", { className: "py-8 flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ import_react93.default.createElement("p", { className: "text-xs text-stone-400" }, isSearching ? "No sessions found for this search." : "No sessions scheduled for this date.")) : displayedEvents.map((huddle) => /* @__PURE__ */ import_react93.default.createElement(
6161
6283
  "div",
6162
6284
  {
6163
6285
  key: huddle.id,
@@ -6166,7 +6288,7 @@ var HomeHuddleCalendar = ({
6166
6288
  },
6167
6289
  /* @__PURE__ */ import_react93.default.createElement(HuddleAvatar2, { timeString: huddle.timeString, status: huddle.status }),
6168
6290
  /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex flex-col min-w-0 flex-1" }, /* @__PURE__ */ import_react93.default.createElement("p", { className: "text-sm text-black tracking-tight truncate" }, huddle.name), /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-[11px] text-stone-500 truncate block mt-1 tracking-wide" }, isSearching ? huddle.timeString : huddle.timeString.split("|")[1]?.trim() || huddle.timeString)),
6169
- /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.ArrowRight01Icon, size: 14, className: "shrink-0 text-stone-400 group-hover:text-black transition-colors" })
6291
+ /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.ArrowRight01Icon, size: 14, className: "shrink-0 text-stone-400 group-hover:text-black transition-colors" })
6170
6292
  )))), huddles.length > 0 && !isLoading && /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-4 mb-2" }, /* @__PURE__ */ import_react93.default.createElement("span", { className: "text-[10px] text-stone-400 tracking-widest uppercase" }, "Page ", currentPage, " of ", totalPages === 0 ? 1 : totalPages), /* @__PURE__ */ import_react93.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react93.default.createElement(
6171
6293
  "button",
6172
6294
  {
@@ -6174,7 +6296,7 @@ var HomeHuddleCalendar = ({
6174
6296
  disabled: currentPage <= 1,
6175
6297
  className: "p-2 bg-white rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none "
6176
6298
  },
6177
- /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 14 })
6299
+ /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.ArrowLeft01Icon, size: 14 })
6178
6300
  ), /* @__PURE__ */ import_react93.default.createElement(
6179
6301
  "button",
6180
6302
  {
@@ -6182,7 +6304,7 @@ var HomeHuddleCalendar = ({
6182
6304
  disabled: currentPage >= totalPages || totalPages === 0,
6183
6305
  className: "p-2 bg-white rounded-full text-black hover:bg-stone-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none "
6184
6306
  },
6185
- /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons35.ArrowRight01Icon, size: 14 })
6307
+ /* @__PURE__ */ import_react93.default.createElement(import_react94.HugeiconsIcon, { icon: import_core_free_icons36.ArrowRight01Icon, size: 14 })
6186
6308
  ))), /* @__PURE__ */ import_react93.default.createElement(
6187
6309
  ReusableOptions,
6188
6310
  {